28 个版本
0.11.13 | 2022 年 11 月 6 日 |
---|---|
0.11.11 |
|
0.11.8 |
|
0.9.15 | 2022 年 3 月 19 日 |
0.5.1 |
|
#2585 in 魔法豆
用于 6 crates
225KB
5K SLoC
themelio-stf:themelio 的核心状态转换函数
此 crate 包含构成 Themelio 核心状态转换函数的数据结构和核心算法。任何需要验证 Themelio 交易或回答类似“如果 A、B 和 C 交易发生,Themelio 状态会发生什么”的问题的软件都可以使用这个最小依赖的 crate。
State
类型
crate 中最重要的类型是 State
,以及与之密切相关的类型 SealedState
。在 黄色论文 中进一步讨论了它们,但简而言之
State
表示一个可变的状态 Themelio 世界状态,并且不能直接序列化。它包括验证新交易和区块所需的所有信息,例如所有未偿还币的 SMT、Melmint 参数等。它包含接受Transaction
等的函数,以推进状态,以及其他生成可序列化区块、头部等的函数。SealedState
表示一个密封状态。这大致对应于“给定高度的区块链状态”的概念。区块代表从一个SealedState
到另一个的转换。
注意
此 crate 是 Themelio 的 最关键的共识部分,实际上定义了整个 Themelio 区块链的链上逻辑。
因此,与最新 Themelio 状态不兼容的版本都被 撤回。
依赖项
~12–30MB
~628K SLoC