作为在 TRON 协议上运行的虚拟机,TVM 需要能够与区块链上的数据进行交互。 因此,它必须能够帮助智能合约访问区块链数据。
智能合约有两种方法可以访问区块链:
1. 区块链数据(即账户数据,投票数据,代币发行等)
2. 智能合约数据:存储
访问链上的数据
在 TVM 运行期间,通常会查询链数据,例如帐户数据和代币发布数据。 在 TRON 的开发过程中,为了防止定期查询硬盘上的链,每个智能合约启动都会创建一个相关的区块链数据缓存。 对于每个智能合约,相同的密钥只能使用两次来访问 LevelDB,一次用于第一次读取,再次用于新数据(包括删除密钥)。
存储
存储用于保持智能合约状态。 每份合约都使用自己的 Solidity 存储。 在 Solidity 中,访问存储数据的主要命令是 SLOAD 和 STORE。
存储中的数据是多个键值对,包括存储密钥和存储值,键值对是一个字(32 字节的实体)。
在 Solidity 中,不同的数据类型具有用于确定其结构相应的规则,因为这在称为 文档。 Solidity 决定了 Storage Key 的逻辑结构。 对于不同的合同,可能会出现相同的存储密钥,因此存储不能直接存储在其逻辑结构中的现有数据库(LevelDB)中。 为了更有效地与链结合,必须相应地设计链上的物理存储。
由于智能合约中的存储访问通常只是存储密钥的一部分,因此最好通过按需访问加载存储,而不是每次都将所有存储加载到内存中。 因此,每个合同中的存储密钥需要全局唯一才能将其存储在同一数据库中。
存储密钥的逻辑结构确定后续的16个字节,以确保同一合同中存储密钥的唯一性。 因此,您可以使用合约地址的哈希值和存储密钥的最后16个字节来形成全局唯一键。 组成逻辑如下:

相关热词:#区块链
物联网在医院的运用方案
时间:2026-03-06
大数据是怎样颠覆医学的
时间:2026-03-06
可穿戴技术的面纱后面是什么
时间:2026-03-06
医疗物联网支撑下医院管理模式解决方案
时间:2026-03-06
物联传感智能医院设计
时间:2026-03-06
如何正确的选择物联网通讯技术
时间:2026-03-06
立功科技的物联网云端平台型服务系统的优势...
时间:2026-03-06
老年人独立生活物联网解决方案
时间:2026-03-06
工业互联网的安全研究与实践
时间:2026-03-06
怎样利用物联网RFID技术来推动石油行业发展
时间:2026-03-06
配电变压器的工作原理和作用
时间:2026-03-05
低压配电方式有三种 低压配电的作用
时间:2026-03-05
中线安防保护器对电网中三次谐波的治理
时间:2026-03-05
什么是单母线接线?主接线的普遍规律
时间:2026-03-05
智能电网包括什么?它的先进性和优势是?
时间:2026-03-05
基于区块链技术的IP电话协议的分散式设计方...
时间:2026-03-05
未来什么技术占主流?会是区块链吗?
时间:2026-03-05
浅谈区块链下的智能合约
时间:2026-03-05
浅显易懂地揭开.Net生态系统的神秘面纱!
时间:2026-03-05
对技术的执着和美的追求变成了程序员的“诗...
时间:2026-03-05