Solana 文档参考文献

术语

以下术语贯穿于 Solana 文档和开发生态系统中。

账户

Solana 账本中的一条记录,可以存储数据或是一个可执行的程序。

类似于传统银行的账户,Solana 账户可以持有称为 lamports 的资金。类似于 Linux 中的文件,它可以通过一个密钥寻址,通常被称为 公钥 或 pubkey。

密钥可以是以下之一:

  • 一个 ed25519 公钥
  • 一个程序派生的账户地址(32 字节值,强制脱离 ed25519 曲线)
  • 一个 ed25519 公钥与 32 字符串的哈希值

账户所有者

拥有账户的程序的地址。只有拥有该账户的程序可以修改该账户。

另请参阅 权限

应用

与 Solana 集群交互的前端应用程序。

权限

对账户拥有某种权限的用户地址。

例如:

  • 铸造新代币的能力赋予作为代币铸造的“铸造权限”的账户。
  • 升级程序的能力赋予作为程序“升级权限”的账户。

银行状态

在给定的 tick 高度 上解释账本中所有程序的结果。它至少包括持有非零 原生代币 的所有 账户 集合。

区块

由账本上的 条目 组成的连续集合,由一个 投票 覆盖。领导者 在每个 slot 中最多生成一个区块。

区块哈希

标识记录(区块)的唯一值(哈希)。Solana 从区块的最后一个 条目 ID 计算区块哈希。

区块高度

当前区块下方的 区块 数量。创世区块 之后的第一个区块高度为一。

引导验证者

生成区块链创世(第一个)区块验证者

BPF 加载器

Solana 程序拥有并加载 BPF 链上程序,使程序能够与运行时交互。

客户端

访问 Solana 服务器网络 集群 的计算机程序。

承诺

网络对 区块 确认的度量。

集群

维护单一 账本 的一组 验证者

计算预算

每笔交易消耗的最大 计算单元 数量。

计算单元

区块链计算资源消耗的最小计量单位。计算单元用于衡量处理交易时所使用的计算资源。

确认时间

领导者 创建 滴答条目 到创建 确认区块 的时钟持续时间。

确认区块

已获得 账本投票 超级多数区块

控制平面

连接 集群 所有 节点 的八卦网络。

冷却期

质押 被停用后的若干个 epochs 期间,质押逐步变得可供提取。在此期间,质押被视为“停用中”。更多信息请参见:预热和冷却

信用

参见 投票信用

Cross Program Invocation (CPI)

从一个 链上程序 调用另一个链上程序。更多信息请参见程序间调用

数据平面

一种多播网络,用于高效验证 条目 并达成共识。

drone

一种链下服务,作为用户私钥的托管者。通常用于验证和签署交易。

条目

账本 中的一个条目,可以是 tick交易条目

条目 ID

一个对条目最终内容的抗前像 哈希,作为该 条目 的全局唯一标识符。该哈希作为以下的证据:

  • 条目是在一段时间后生成的
  • 指定的 交易 是包含在条目中的交易
  • 条目在 账本 中相对于其他条目的位置

参见 历史证明

epoch

领导者计划 有效的时间,即 slots 的数量。

费用账户

交易中的费用账户是支付将交易包含在账本中的成本的账户。这是交易中的第一个账户。由于支付交易费用会减少账户余额,因此该账户必须在交易中声明为可读写的(可写)。

最终性

当代表 2/3 质押 的节点拥有一个共同的 时。

分叉

从公共条目派生但随后分离的账本

创世区块

链中的第一个区块

创世配置

创世区块准备账本的配置文件。

哈希

一段字节序列的数字指纹。

通胀

随着时间的推移增加代币供应,用于奖励验证和支持 Solana 的持续开发。

内部指令

参见跨程序调用

指令

调用程序中特定指令处理器的调用。指令还指定它希望读取或修改的账户,以及作为指令处理器辅助输入的附加数据。客户端必须在交易中至少包含一个指令,且所有指令必须完成,交易才会被视为成功。

指令处理器

指令处理器是程序中处理来自交易指令的函数。指令处理器可能包含一个或多个跨程序调用

keypair

用于访问账户的公钥和对应的私钥

lamport

价值为 0.000000001 sol 的分数原生代币

在计算预算内,数量为 微 lamports 的值用于计算优先费用

领导者

验证者在向账本追加条目时的角色。

领导者计划

验证者公钥映射到的序列。集群使用领导者计划来确定任何时刻的领导者

账本

包含由客户端签名的交易条目列表。从概念上讲,这可以追溯到创世区块,但实际的验证者的账本可能只包含较新的区块,以减少存储需求,因为设计上不需要旧区块来验证未来的区块。

账本投票

在特定计时高度验证者状态哈希值。它包括验证者对其接收到的区块已被验证的确认,以及在特定时间段内(即锁定期)承诺不对冲突的区块(例如分叉)进行投票。

轻客户端

一种可以验证其指向有效集群客户端。它执行的账本验证比瘦客户端多,但比验证者少。

加载器

一种具有解释其他链上程序二进制编码能力的程序

锁定期

验证者在此期间无法对另一个分叉进行投票的时间长度。

消息

交易的结构化内容。通常包含一个头部、账户地址数组、最近的区块哈希以及指令数组。

交易中的消息格式中了解更多。

中本聪系数

一种去中心化的衡量标准,中本聪系数是能够集体行动关闭区块链的独立实体的最小数量。该术语由 Balaji S. Srinivasan 和 Leland Lee 在量化去中心化中提出。

微 lamport

1,000,000 微 lamports = 1 lamport

中本聪系数

中本聪系数是衡量去中心化程度的指标,它表示能够集体关闭区块链的最小独立实体数量。该术语由 Balaji S. Srinivasan 和 Leland Lee 在《量化去中心化》中提出。

原生代币

用于记录节点在集群中完成工作的代币

节点

参与集群的计算机。

节点数量

参与集群验证者数量。

链上程序

Solana 区块链上的可执行代码,用于解释每笔交易中发送的指令,以读取和修改其控制的账户。这些程序在其他区块链上通常被称为“智能合约”。

PoH

参见历史证明

点数

奖励机制中的加权积分。在验证者奖励机制中,赎回时某个质押应得的点数是投票积分与质押的 lamports 数量的乘积。

私钥

密钥对的私钥。

程序

参见链上程序

程序派生账户 (PDA)

由程序拥有签名权限的账户,因此不像其他账户那样由私钥控制。

程序 ID

包含程序账户的公钥。

历史证明 (PoH)

一组证明,每个证明都表明某些数据在该证明创建之前已经存在,并且在前一个证明之前经过了精确的时间段。类似于 可验证延迟函数 (VDF),历史证明可以在比生成所需时间更短的时间内进行验证。

优先费

用户可以在计算预算 指令 中指定的额外费用,用于优先处理其 交易

优先费的计算方法是将请求的最大计算单元数乘以计算单元价格(以每计算单元 0.000001 lamports 为增量指定),并向上取整到最接近的 lamport。

交易应请求执行所需的最小计算单元数量,以尽量减少费用。

公钥 (pubkey)

密钥对 的公钥。

租金

账户程序 为在区块链上存储数据而支付的费用。当账户余额不足以支付租金时,它们可能会被垃圾回收。

另请参阅下方的 免租金。了解更多关于租金的信息:什么是租金?

免租金

账户保持与其存储数据量成比例的最低 lamport 余额。所有新创建的账户都会永久存储在链上,直到账户被关闭。无法创建低于免租金门槛的账户。

验证者 上达到最大 锁定区块。根是验证者上所有活动分叉的祖先中最高的区块。根的所有祖先区块也通过传递性成为根。不是根的祖先且不是根的后代的区块将被排除在共识考虑之外,并可以被丢弃。

runtime

负责程序执行的验证者组件。

Sealevel

Solana 的并行运行时,用于链上程序

shred

区块的一部分;在验证者之间传输的最小单位。

signature

一个 64 字节的 ed25519 签名,由 R(32 字节)和 S(32 字节)组成。要求 R 是一个非小阶的打包 Edwards 点,S 是范围内的标量 0 <= S < L。此要求确保签名不可篡改。每笔交易必须至少有一个费用账户的签名。因此,交易中的第一个签名可以被视为交易 ID

skip rate

当前 epoch 中跳过的 slot占总领导者 slot 的百分比。由于在 epoch 边界之后样本量较小,以及对于领导者 slot 数量较少的验证者,这一指标的方差较高,因此可能具有误导性。然而,有时也可以用来识别节点配置错误。

skipped slot

一个过去的slot,由于领导者离线或集群共识选择了更好的替代分叉而未生成区块。跳过的 slot 不会作为后续 slot 的区块祖先,也不会增加区块高度,也不会使最旧的 recent_blockhash 过期。

只有当一个 slot 比最新的已根(因此未跳过)slot 更旧时,才能确定它是否被跳过。

slot

每个领导者接收交易并生成区块的时间段。

插槽共同构成了一个逻辑时钟。插槽按顺序排列且不重叠,根据历史证明 (PoH),每个插槽大致对应相等的现实时间。

智能合约

参见链上程序

SOL

Solana 集群原生代币

Solana 程序库 (SPL)

Solana 上的程序库,例如 spl-token,用于简化创建和使用代币等任务。

质押

如果可以证明验证者存在恶意行为,其代币将被没收至集群

基于质押权重的服务质量 (SWQoS)

SWQoS 允许对来自质押验证者的交易提供优先处理

超级多数

集群 的 2/3。

系统变量 (sysvar)

一个系统账户系统变量 提供集群状态信息,例如当前的 tick 高度、奖励点数值等。程序可以通过系统变量账户(公钥)或通过系统调用查询访问系统变量。

精简客户端

一种客户端,信任其正在与有效的集群通信。

tick

一个分类账的条目,用于估算时钟时间。

tick 高度

分类账中第 N 个 tick

代币

一种可数字化转移的资产。

Token Extensions Program

Token Extensions Program 的程序 ID 为 TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb,包含与 Token Program 相同的功能,但增加了扩展功能,例如保密转账、自定义转账逻辑、扩展元数据等更多功能。

代币铸造

一个可以生成(或“铸造”)代币的账户。不同的代币通过其唯一的代币铸造地址来区分。

Token Program

Token Program 的程序 ID 为 TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA,提供了转账、冻结和铸造代币的基本功能。

tps

每秒交易数。

tpu

交易处理单元

交易

客户端使用一个或多个密钥对签名的一个或多个指令,并以原子方式执行,只有两种可能的结果:成功或失败。

交易 ID

交易中的第一个签名,可用于在完整的账本中唯一标识该交易。

交易确认

自交易被接受到账本以来的确认区块数量。当交易所在的区块成为时,该交易即被最终确认。

交易条目

一组可以并行执行的交易

tvu

交易验证单元

验证者

Solana 网络集群中的完全参与者,负责生成新的区块。验证者验证添加到账本中的交易。

VDF

参见可验证延迟函数

可验证延迟函数 (VDF)

一种需要固定时间执行的函数,它会生成一个证明,证明其已运行,该证明可以在比生成所需时间更短的时间内验证。

投票

请参见 轻客户端投票

投票积分

验证者 的奖励统计。当验证者在其投票账户中达到一个 时,会获得一个投票积分。

钱包

一个 密钥对 的集合,允许用户管理其资金。

预热期

质押 被委托后的若干个 epochs 期间,质押逐步生效。在此期间,质押被视为“激活中”。更多信息请参见:预热和冷却

Is this page helpful?