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

No packages published

Languages

  • Rust 89.8%
  • HTML 10.2%