Skip to content

lillo/cmd_net_tool

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CommandLine Dependency Builder

This tool allows you to statically analyze a list of Ethereum transactions and determine a safe order of concurrent execution.

The transaction list is specified in the JSON format (see block.json for an example); in particular the json file should contain a list of objects each one with at least the following fields:

  1. type: either “constructor” or “method”; specifies whether this transaction is a contract creation or a method call.
  2. called_address: a string containing either the address of the contract which method has been called, or the address in which the newly created contract will be deployed.
  3. data : a string containing either the bytecode of the contract or the calldata of the method invocation.

The ouput is written to a file named “output.html”.

The details of the design and the implementation of the library are described in

Tosi Samuele. A Library for the concurrent execution of Ethereum blocks. Master's Thesis. University of Florence, 2021.

Usage

./cldb <file.json>

Command Output

The output of the tool is a diagram where each node is a transaction, the number on the nodes represents the index of the transaction in the provided list.

An arc between nodes i and j means that node i must be executed before node j.

JavaScript must be enabled to correctly display the graph.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Rust 89.8%
  • HTML 10.2%