原标题:干货|Eth1.x术语表
目录
数据
区块链历史
见证数据
节点类型
数据
Header
即以太坊协议所定义的Header对象。
Block
一个区块由两部分数据组成:
区块头
BlockBody;区块体又由两部分内容组成:
Transactions
Uncles
BlockBody
就是一个区块中的事务和叔块信息的集合。
事务
即以太坊协议所定义的Transaction对象。
事务的构建
创建一条完全签名的事务的过程:
零知识证明技术开发公司StarkWare推出第一个公开版本Cairo 1.0:1月6日消息,零知识证明技术开发公司 StarkWare 宣布推出第一个公开版本的 Cairo 1.0,Cairo 于 2020 年作为图灵完备的编程语言首次推出,用于高效编写 STARK 可证明的程序。Cairo 1.0 中最重要的变化之一是语法,新版本的 Cairo 允许编写更安全的代码。Cairo 1.0 还引入了 Sierra,这是一种新的中间表示,可确保每次 Cairo 运行都可以得到证明。StarkWare 表示,预计在接下来的几周内,提供与旧版本相同的 Cairo 1.0 功能,对 StarkNet 合约的支持将在即将到来的 StarkNet Alpha 版本中加入。[2023/1/6 10:24:18]
必须知道发起事务的Account的nonce。
一般来说需要使用eth_estimateGas方法来确定该事务需要使用的gas消耗量。
V神:以太坊即将过时的采矿硬件可以直接用于零知识证明:在采访中,Ethereum联合创始人V神(Vitalik Buterin)被问及一旦网络从其当前的共识算法切换到不再需要这种专用硬件的模型时,人们应该如何使用以太坊矿工。Ethereum联合创始人表示,以太坊即将过时的采矿硬件可以直接用于零知识证明。(cointelegraph)[2020/4/26]
需要该账户的私钥,用于生成数字签名。
叔块信息
即被该区块视作叔块的区块的区块头。
区块链历史
HeaderChain
所有历史区块的区块头的集合
截至2021年1月29日,约有1100万个区块头
截至2021年1月29日,全体区块头约占用5GB的存储空间
是验证其余大部分链数据所必需的数据
如果使用HeaderAccumulator,我们将能证明某个区块头存在于主链上
动态 | 波场TRON网络即将进行零知识证明匿名交易公测:据官方最新消息,波场TRON网络即将进行零知识证明匿名交易公测,现在诚邀社区参与MPC过程,参与者越多,匿名交易越安全。通过参与MPC,用户可以将贡献永久的保存在TRON网络中。参考见原文链接。[2019/12/19]
BlockBodyHistory
所有由事务和叔块信息所组成的历史区块的集合
截至2021年1月29日,约有1100万个区块体
截至2021年1月29日,所有区块体需占用约120GB的存储空间
ReceiptHistory
由历史事务所产生的所有收据的集合
截至2021年1月29日,约有10亿条收据
截至2021年1月29日,所有收据需占用约60GB存储
State
所有账户及contractstorage的集合
动态 | 俄罗斯知识产权法院计划在文书工作中引入区块链系统:据bitnovosti消息,俄罗斯知识产权法院计划在文书工作中引入区块链系统,从而在线提供解决知识产权纠纷的信息,满足市场参与者快速获取相关信息的需求。[2018/12/4]
账户
由Header.state_root所代表的主状态树的一部分
字段:balance/nonce/state_root/code_hash
合约存储项
每个账户的Account.state_root标识的单个存储值
所有数据都以0-2^^256-1?范围内的整数作为键
ContractCode
合约代码仅使用Account.code_hash来指代;并非状态的显式部分。
ArchiveState
所有历史状态的集合。详见ArchiveNode
UPS全球海关业务副总裁Chris Rubio:区块链技术确实有助于促进知识产权保护:UPS全球海关业务副总裁克里斯·鲁比奥(Chris Rubio)表示:“通过从供应链开始的过程中追踪任何产品,区块链可能会为未知或未经证实的产品来源提供解决方案。为了让区块链充分发挥其潜力,所有产品都必须被贴上标签,这就需要对该行业处理项目的方式进行彻底改革。国际社会必须团结起来,为区块链制定共同标准,让它有信心(有效地工作)。通过在供应链实时发布信息,数据可以共享,并且可以简化商品流动,消费者可以更快地接收到他们的产品”。他还表示希望业界能够合作提出能被广泛采用的标准,如果没有这些通用标准,不确定性将会阻碍大规模投资,这是阻碍区块链技术在供应链中运用成功的必要条件。[2018/5/8]
使用NaiveDatabaseLayout,存储归档状态需占用约7TB的存储
使用一些基于FlatDatabaseLayout的高级技巧,TrubeGeth客户端使用约800GB实现了归档状态存储
RecentState
指作为近期状态根一部分的状态。
“近期”一般来说是128~256个区块内
维护这一数据需要某种形式的垃圾回收技术,以清除不再是近期状态一部分的状态对象
ColdState
指的是很长一段时间没有被触及的状态对象
DatabaseLayouts
NaiveDatabaseLayout
该数据库实现将所有的状态对象都存储为单个的树节点,通过节点哈希值来访问
导致性能低下以及高硬盘读写开销
相对易于理解和实现
此方案下的垃圾回收算法更加复杂
FlatDatabaseLayout
将所有的状态对象都存储为树的路径,某种程度上有点类似于键值对存储
性能更高、硬盘开销更小
更难以理解和实现
Witness
即以一种可验证的形式存储的状态数据
BlockWitness
一种类型的见证数据,提供了执行区块所需的所有状态数据
TransactionWitness
一种类型的见证数据,提供了一笔事务的EVM执行所需的所有状态数据
NodeType
FullNode
指一个满足了下列要求的节点:
存储了所有的区块头
存储了全部区块体历史
存储了全部收据历史
存储着近期状态
维护者一个主链区块索引系统
维护者一个主链事务索引系统
参与ETHDevP2P协议
ArchiveNode
其他特点与全节点都一样,但归档节点会存储全部归档状态。一般都需要执行FullSync。
LESLightNode
连接到LESDevP2P协议的客户端,意图是跟上区块链并暴露JSON-RPCAPI。
此类客户端依赖于链接到至少一个LESServer来满足对数据的需求。
StatelessNode
一个仍在计划中的客户端类型,如果能够实现区块见证数据的话,就可使之成真。
此类客户端不需要状态数据来执行区块,因为它们可以使用见证数据
UltraLightNode
增加这个术语只是为了区分当前类型的轻节点和一种新类型的轻节点——Piper
一种仅暴露JSO-RPCAPI的节点。
ETHDevP2P协议
DevP2P网络中所用的点对点协议,是所有主网客户端的基石
作为这个点对点网络中的一部分,一个节点需要:
参与TransactionGossip
参与BlockGossip
拥有近期状态
拥有完整的区块链历史
LESDevP2PProtocol
作为轻客户端基础的DevP2P网络所用的点对点协议
LES服务器
参与LES网络、向LES客户端提供数据的节点。
在这个网络中成为一个服务器需要:
完整的近期状态
全部区块链历史
主链区块索引/事务索引
有能力参与事务广播
有能力参与区块广播
LES客户端
参与LES网络、向LES服务器请求数据的节点。
原文链接:https://github.com/ethereum/stateless-ethereum-specs/wiki/Glossary作者:PiperMerriam翻译:阿剑
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。