首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ethereum数据存储方案的基本原理

Ethereum数据存储方案的基本原理
EN

Ethereum用户
提问于 2018-02-24 20:18:21
回答 1查看 287关注 0票数 4

1) Ethereum为什么要以32字节块存储数据?我不认为这是什么落后的兼容性遗留下来,是吗?我们也可以将数据存储在可变长度字段中。

2)我不认为优化是这样的,因为我们已经浪费了超过32字节(对于构成路径+ Merkle Trie节点的元数据的散列的32字节)作为每个这样的字段(从数据Trie根到每个变量的路径)的访问键。

3)编译器如何计算每个变量的访问键?

4)我对Ethereum很陌生,是否有任何经济动机来删除以前占用的数据?

EN

回答 1

Ethereum用户

发布于 2018-02-24 20:36:32

大约1/2:来自https://github.com/ethereum/wiki/wiki/Design-Rationale

32字节字大小--可选为4或8个字节字,就像大多数其他架构中的那样,或者是无限制的,如比特币。对于加密计算来说,4或8个字节字的限制太小,无法存储地址和大值,而且无限的值太难建立一个安全的gas模型。32字节是理想的,因为它仅仅大到足以存储许多密码实现中常见的32个字节值,以及地址(并提供了将地址和值打包到一个存储索引中作为优化的能力),但没有那么大,以至于效率极低。

)已经被询问和回答了。见EVM中256位字的基本原理)

大约3:简单的字段变量、数组和映射之间有区别。从索引0开始,将简单字段打包到存储中。映射由散列的路径组成。请参阅如何获得存储索引/密钥?

约4:你将得到煤气退款从仓库删除或删除(自杀)的合同。请参阅汽油退款的限度是多少?

票数 5
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/40818

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档