tpmccallum / ethereum_database_research_and_testing

A repository which provides, information, code examples and step by step instructions on how to explore Ethereum's database infrastructure

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The aim of this work is to provide as much information, as possible, in relation to how Ethereum stores its transactions, contracts, account balances and more.

As part of this work, we:

  • begin with an overview of what blockchain "state" means
  • provide an overview of the popular blockchain database software, leveldb
  • introduce the Patricia Trie data structure which Ethereum uses exclusively
  • learn how Ethereum implements the Patricia Trie data structure inside leveldb
  • learn about Ethereum's leveldb structure
  • provide a step by step guide on installing a testbed for Ethereum and leveldb (using Ubuntu Linux 16.04LTS)
  • provide justification for using an Ethereum private network for the testbed (as apposed to the mainnet or testnets)
  • configure and run Ethereum on a private network
  • configure Ethereum to mine on the private network
  • execute transactions and smart contracts on the Ethereum private network
  • explore Ethereum's application data storage layer, leveldb, before and after activity to discover how it works

Please begin here

About

A repository which provides, information, code examples and step by step instructions on how to explore Ethereum's database infrastructure

License:Other


Languages

Language:JavaScript 100.0%