全部产品

数据模型

账户模型

下面是账户的基本参数及说明:

参数 类型 说明
id Identity 账户的业务 ID
auth_map AuthMap 账户或者合约的公钥和权重值
recover_key PublicKey 恢复公钥,用于帐户私钥丢失的情况
balance uint64_t 余额
recover_time uint64_t 上次成功恢复的时间
status uint32_t 状态,0:NORMAL;1:FREEZE;2:RECOVERING
encryption_key bytes 加密公钥,用来加密智能合约中的交易金额

合约模型

下面是合约的基本参数及说明:

参数 类型 说明
id Identity 合约的业务 ID
auth_map AuthMap 账户或者合约的公钥和权重值
recover_key PublicKey 恢复公钥,用于帐户私钥丢失的情况
balance uint64_t 余额
recover_time uint64_t 上次成功恢复的时间
status uint32_t 状态,0:NORMAL;1:FREEZE;2:RECOVERING
storage_root h256 世界状态的默克尔哈希根
code_hash h256 合约代码哈希
code bytes 合约代码
encryption_key bytes 加密公钥,用来加密智能合约中的交易金额

交易模型

下面是交易的基本参数及说明:

参数 类型 说明
hash h256 交易的哈希,由排除 signature 字段的所有字段构成。
type uint32_t 交易的类型
timestamp uint64_t 交易的时间戳
nonce uint64_t 防止重放攻击
period uint64_t 单位为毫秒,事务开始或结束的时间,为未来扩展使用。
from Identity 交易的发送者
to Identity 交易的接收者
value uint64_t 转账金额
gas uint64_t 交易执行的消耗费用
data bytes 见交易对象 data 编码方式
group_id h160 交易在一个群组中执行
signature std::vector 签名,使用一个或者多个私钥对 hash 加签
extensions std::vector 交易扩展字段,类型为 vector,元素类型为 TransactionExtension。TransactionExtension 包含两个字段:key_(uint32_t)value_(bytes),目前用于智能合约中的证明数据。

收据模型

下面是收据的基本参数及说明:

参数 类型 说明
result int32_t 交易结果
gas_used uint64_t 交易执行的消耗费用
logs std::vector 交易执行的日志集合
output bytes 合约的 ouptut
offset uint 解析合约 output 的偏移量

日志模型

下面是收据的基本参数及说明:

参数 类型 说明
from Identity 交易的发送者
to Identity 交易的接收者
topics std::vector 订阅的主题
log_data bytes 交易产生的日志

区块模型

区块模型分为三个部分,分别是区块、区块头、区块体。

  • 区块的基本参数及说明:
参数 类型 说明
header std::shared_ptr 区块头
body std::shared_ptr 区块体
  • 区块头的基本参数及说明:
参数 类型 说明
hash h256 区块头的哈希
version uint32_t 版本
number uint64_t 区块号
parent_hash h256 上一区块哈希
transaction_root h256 区块体中的交易构成的默克尔哈希根
receipt_root h256 区块体中的收据构成的默克尔哈希根
state_root h256 世界状态的默克尔哈希根
gas_used uint64_t 交易执行的总消耗量
timestamp uint64_t 时间戳
log_bloom LogBloom 日志布隆过滤器
  • 区块体的基本参数及说明:
参数 类型 说明
transaction_list std::vector 交易列表
receipt_list std::vector 收据列表
consensus_proof bytes 共识证明