以太坊架构与模块化结构
一:以太坊核心概念
EVM:
以太坊虚拟机,以太坊中智能合约的运行环境
Accounts:
区别去比特币的UTXO,以太坊构建里账户,账户分为两类,内部账户和外部账户,内部账户指合约账户,外部账户指用户账户
Transaction:
在以太坊网络上的任何一个消息的传递都是一次交易
gas:
以太坊网络的运行机制之一,每执行一步合约代码都与要消耗一定的gas,gas的设定一方面是为了提高用户的作恶成本,另一方面也是为了提高矿工的积极性
Mine:
挖矿,以太坊网络通过工作量证明机制保证节点之间的同步与网络的安全运行
Storage, Memory:
存储与主存,storage被称为存储,kv形式储存,memory被称为主存每次合约被调用都会有一块新的被清除过的主存
P2P:
p2p对等网络,作为以太坊网络的构成机制之一,保证网络内的所有节点对等
二:以太坊总体结构与数据结构
以太坊的总体结构可以被简单分为三层:
从低到高为 协议层:P2P网络通信,分布式算法,加密签名和数据存储技术
接口层:接口成与协议层完全的进行分离,包括分布式存储等
应用层:主要利用evm与智能合约构造去中心化的dapp
以太坊的总体结构可以被详细划分为六层:
从低到高为 数据层:以key-value的形式存储数据,使用LevelDb数据库,以及Block
网络层:p2p网络