Solana 文档参考文献

术语

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

账户

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

与传统银行的账户类似,Solana 账户可以持有称为 lamport 的资金。集群中的每个账户都有一个唯一的地址

应用程序

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

地址

Solana 中可用于查找账户的位置。每个地址在 Solana 集群中都是唯一的。

Solana 中的地址可以是 Ed25519 公钥程序派生地址

地址查找表(ALT)

一种存储账户地址列表的数据结构,允许版本化交易使用紧凑的 1 字节索引而非完整的 32 字节公钥来引用账户。地址查找表使单个交易能够引用比原始交易格式所允许的更多账户。

Anchor

一个用 Rust 构建 Solana 链上程序的框架。Anchor 提供了减少样板代码的宏、标准化的账户验证系统,并生成描述程序接口的 IDL。它是 Solana 程序开发中使用最广泛的框架。

关联代币账户(ATA)

一种代币账户,其地址由钱包地址和代币铸造确定性派生。关联代币账户程序确保每个钱包针对每种代币类型都有一个规范的代币账户。

权限

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

例如:

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

自动做市商(AMM)

一种链上交易模型,用户针对由定价公式管理的代币储备池进行交易,而非与交易对手的挂单进行交易。价格随储备量变化而变动,因此交易会产生与交易规模成比例的滑点

银行状态

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

区块

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

区块哈希

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

区块高度

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

引导验证者

产生区块链创世(第一个)区块validator

BPF 加载器

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

bump

在派生 Program Derived Address 时附加到种子的单个字节(0–255),以确保生成的地址不在 ed25519 曲线上,因此是有效的 PDA。规范 bump 是产生有效 PDA 的最高值,通常保存在账户数据中以避免重新计算。

中央限价订单簿(CLOB)

一种交易模型,维护排序的买单和卖单列表;当传入订单与对面的订单交叉时,交易发生。与自动做市商形成对比。

客户端

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

承诺

区块的网络确认程度的度量。

紧凑数组格式

紧凑数组是按以下格式序列化的数组:

紧凑数组格式紧凑数组格式

紧凑数组格式用于在交易消息中编码账户地址数组和指令数组。

集群

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

计算预算

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

计算单位

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

确认时间

领导者创建时钟条目与创建已确认区块之间的实际时长。

已确认区块

已收到账本投票绝对多数区块

控制平面

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

冷却期

质押停用后的若干时期,在此期间质押逐渐变为可提取状态。在此期间,质押被视为"正在停用"。更多信息请参阅:预热和冷却

成本单位

也称为 transaction cost,是对处理交易所需的所有资源的综合估算,以计算单位为单位进行衡量。更多信息请参阅此处

积分

参见投票积分

跨程序调用 (CPI)

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

数据平面

一个用于高效验证条目并达成共识的组播网络。

无人机

一种链外服务,充当用户私钥的托管人。它通常用于验证和签署交易。

条目

账本上的一个条目,可以是时间戳交易条目

条目 ID

对条目最终内容进行抗原像哈希运算,作为条目的全局唯一标识符。该哈希值作为以下证明:

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

参见历史证明

epoch

领导者调度有效的时间,即slot的数量。

托管

一种模式,其中链上程序代表两方或多方在金库中持有代币,直到满足程序定义的条件后再释放它们。用于消除各方之间直接信任的需要。

手续费账户

交易中的手续费账户是支付将交易纳入账本成本的账户。这是交易中的第一个账户。该账户必须在交易中声明为可读写(可写),因为支付交易会减少账户余额。

最终性

当代表 2/3 权益的节点拥有共同的时。

分叉

从共同条目派生但随后分歧的账本

创世区块

链中的第一个区块

创世配置

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

哈希

字节序列的数字指纹。

通货膨胀

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

内部指令

参见 Cross Program Invocation

指令

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

指令处理器

指令处理器是处理来自交易指令程序函数。指令处理器可能包含一个或多个 Cross Program Invocation

IDL

接口定义语言。由 Anchor 生成的 JSON 文件,描述程序的指令处理器、账户和类型。IDL 允许客户端库自动生成用于与链上程序交互的类型化接口。

keypair

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

lamport

值为 0.000000001 SOL 的小数原生代币

在计算预算内,微 lamport 的数量用于计算优先费

领导者

validator账本追加条目时所扮演的角色。

领导者调度表

一个将 validator 公钥映射到时隙的序列。集群使用领导者调度表来确定任何时刻哪个 validator 是领导者

账本

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

账本投票

在给定时钟高度validator 状态哈希值。它包含了 validator 对已收到的区块已被验证的确认,以及在特定时间段(锁定期)内不对冲突的区块(即分叉)投票的承诺。

轻客户端

一种能够验证其指向有效集群客户端类型。它执行的账本验证比瘦客户端多,但比 validator 少。

流动性

在当前价格或接近当前价格的位置可供交易的订单深度或池化储备。更深的流动性可以减少滑点。在中央限价订单簿上,流动性由挂单方订单提供;在自动做市商上,流动性由将代币对存入池中的流动性提供者提供。

加载器

一个能够解释其他链上程序二进制编码的程序

锁定期

validator 无法对另一个分叉进行投票的时间段。

挂单方

挂单方是指其订单通过在订单簿上挂单而非立即匹配对手方来为中央限价订单簿(CLOB)增加流动性的交易者。此类订单称为挂单订单。挂单方通常无需支付费用或可从交易场所获得返佣。

做市商

做市商是通过持续发布买单和卖单来提供流动性的实体。在 Solana 上,做市商可以是程序(如自动做市商(AMM))或运行机器人在中央限价订单簿(CLOB)上发布挂单订单的链下公司。

消息

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

在此处了解更多关于交易中的消息格式的信息。

微 lamport

1,000,000 微 lamport = 1 lamport

中本聪系数

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

原生代币

用于追踪集群节点完成工作量的代币

节点

参与集群的计算机。

节点数量

参与集群验证器数量。

链下

链下是指存在或运行于 Solana 区块链之外的数据、流程或服务,例如 RPC 客户端、索引器、前端界面和链下订单簿做市商。与链上相对应。

链上

链上是指存在或执行于区块链上的数据或程序。

链上程序

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

预言机

一个链上程序,从链外发布数据——通常是现实世界资产的价格——供其他程序读取。

所有者

可能指所属程序所属钱包。例如,getTokenAccountsByOwner获取特定钱包拥有的代币账户,但这些代币账户的所属程序是Token Program

为避免混淆,最好使用所属程序所属钱包,而不是使用通用术语"所有者"。

所属程序

拥有该账户的程序地址。只有所属程序能够修改该账户。

另请参阅权限

所属钱包

与账户关联的钱包。例如,Token Program用于存储与特定钱包和铸币厂关联的代币账户,使用由该钱包铸币厂生成的地址。

PoH

参见历史证明

点数

奖励机制中的加权积分。在validator奖励机制中,赎回时欠某个质押的点数是其赚取的投票积分与质押的lamport数量的乘积。

私钥

keypair的私钥。

程序

参见链上程序

Program Derived Address (PDA)

一个地址基于链上程序和程序作者创建的一个或多个种子生成的账户。PDA地址不是公钥,PDA没有私钥。

PDA 的签名权限归其所属程序所有,即该链上程序

程序 ID

包含程序账户的公钥。

历史证明 (PoH)

一系列堆叠的证明,每个证明都证明某些数据在该证明创建之前就已存在,并且距离前一个证明已经过去了精确的时间段。与 VDF 类似,历史证明的验证时间比生成时间要短。

优先级费用

用户可以在计算预算指令中指定的额外费用,用于提高其交易的优先级。

优先级费用的计算方式为:请求的最大计算单元数乘以计算单元价格(以每计算单元 0.000001 lamport 的增量指定),然后向上舍入到最接近的 lamport

交易应请求执行所需的最少计算单元数,以最大限度地降低费用。

公钥 (pubkey)

密钥对的公钥。公钥是 Solana 上账户可使用的不同类型地址之一。

rent

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

另请参阅下文的 rent exempt。在此处了解有关 rent 的更多信息:什么是 rent?

rent exempt

账户维持与存储在账户上的数据量成比例的最低 lamport 余额。所有新创建的账户都会永久存储在链上,直到账户被关闭。无法创建低于 rent 豁免阈值的账户。

根区块

已在验证节点上达到最大锁定期区块时隙。根区块是验证节点上所有活跃分叉的共同祖先中最高的区块。根区块的所有祖先区块也都传递性地成为根区块。既不是根区块的祖先也不是其后代的区块将被排除在共识考虑之外,可以被丢弃。

运行时

验证节点中负责程序执行的组件。

Sealevel

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

seed

用作派生Program Derived Address时的输入字节值或字节值数组。程序可以使用静态字符串、公钥或其他数据的任意组合作为 seed。seed 与程序 ID 和碰撞值组合,生成唯一的 PDA 地址。

分片

区块的一部分;是验证节点之间传输的最小单元。

签名

一个 64 字节的 ed25519 签名,由 R(32 字节)和 S(32 字节)组成。要求 R 必须是一个非小阶的压缩 Edwards 点,S 必须是范围在 0 <= S < L 内的标量。此要求确保签名不可伪造。每笔交易必须至少有一个针对手续费账户的签名。因此,交易中的第一个签名可以被视为交易标识符

签名者

已授权某个指令交易账户。对于常规keypair,这意味着对交易进行加密签名。对于Program Derived Address,授权由所属程序在执行Cross Program Invocation时断言,因为 PDA 没有私钥。

跳过率

当前epoch中已跳过slot占总领导者slot的百分比。这个指标可能会产生误导,因为在epoch边界之后样本量较小时具有高方差,对于领导者slot数量较少的validator也是如此,但有时也可用于识别节点配置错误。

已跳过slot

过去未能生成区块slot,原因是领导者离线或包含该slot的分叉被集群共识放弃而选择了更好的替代方案。已跳过的slot不会作为后续slot区块的祖先出现,也不会增加区块高度,也不会使最旧的recent_blockhash过期。

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

滑点

交易者预期价格与其交易实际执行价格之间的差异。在自动做市商上,它源于储备变化时定价曲线的移动;在中央限价订单簿上,它源于单个订单以连续更差的价格消耗多个挂单。

slot

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

所有slot共同构成一个逻辑时钟。slot按顺序排列且不重叠,根据历史证明,每个slot大致对应相等的真实世界时间。

智能合约

参见链上程序

SOL

Solana 集群原生代币

Solana程序库(SPL)

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

质押(stake)

如果能够证明验证者存在恶意行为,则向集群没收的代币。

质押加权服务质量(SWQoS)

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

绝对多数(supermajority)

集群的三分之二。

System Program

一个原生的Solana程序(程序ID为11111111111111111111111111111111),负责创建新账户、分配账户数据、将账户分配给程序以及在账户之间转移SOL。Solana上的所有新账户都归System Program所有,直到重新分配。

系统变量(sysvar)

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

吃单方(taker)

一种交易者,其订单通过跨越订单簿对面并匹配一个或多个挂单,从中央限价订单簿中移除流动性。这种订单称为吃单订单,吃单方通常需要支付交易所的交易费用。

轻客户端(thin client)

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

时钟周期(tick)

一个账本条目,用于估算实际时钟持续时间。

时钟周期高度(tick height)

账本中的第N个时钟周期

代币(token)

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

token account

一个持有特定代币余额的账户。token account由Token ProgramToken Extensions Program拥有,存储代币余额、关联的代币铸造地址以及所属钱包地址。

Token Extensions Program

Token Extensions Program的程序ID为TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb,包含与Token Program相同的所有功能,但附带了扩展功能,如机密转账、自定义转账逻辑、扩展元数据等。

代币铸造

一个可以生产(或"铸造")代币的账户。不同的代币通过其唯一的代币铸造地址进行区分。

Token Program

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

tps

每秒交易数。

tpu

交易处理单元

交易

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

交易 ID

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

交易确认数

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

交易条目

一组可以并行执行的交易

tvu

交易验证单元

validator

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

金库

链上程序拥有的 token account,代表用户持有池化资产——例如 AMM 的基础和报价储备、托管中的锁定代币,或 CLOB 的静置余额和累积费用。只有拥有该金库的程序才能将代币从金库中转出,通常在满足交易或释放条件后转入用户自己的 token account

VDF

参见可验证延迟函数

可验证延迟函数(VDF)

一个执行时间固定的函数,它会生成一个运行证明,然后可以在比生成时更短的时间内进行验证。

版本化交易

一种交易格式,支持原始交易格式之外的附加功能。版本 0(v0)是第一个版本化格式,增加了对地址查找表的支持,使交易能够引用比原始格式允许的更多账户。

投票

参见账本投票

投票积分

验证者的奖励记录。当validator到达时,其投票账户会获得一个投票积分。

钱包

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

预热期

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

Is this page helpful?

Table of Contents

Edit Page
©️ 2026 Solana 基金会版权所有