# Mina Docs｜术语表

By [MinaWallet](https://paragraph.com/@minawallet) · 2021-11-27

---

**ACCOUNT 账户**

![](https://storage.googleapis.com/papyrus_images/1d019f92808ea2c8edb87ee1a93834c5693cf116bdd75f6cac7b8744317e53ad.png)

Mina 使用帐户模型（公钥）来跟踪账本状态。这与比特币维护账本状态的 UTXO 模型不同。

**ARCHIVE NODE 归档节点**

默认情况下，Mina 节点是轻量级的，它们不需要维护关于网络、区块或交易的历史信息。归档节点将历史链数据存储到持久数据源，以便日后检索。

**BEST TIP 最佳 TIP**

最佳 TIP 是具有守护者已知的最高_链强度_（见下文）的区块链最新区块。

**BLOCK 区块**

区块中包含了交易集合和网络状态的共识信息。该信息包含一个证明，证明当前网络状态是合法的。

**BLOCKCHAIN 区块链**

区块链是密码货币中使用的数据结构，用于维护网络中所有账户的一致性状态。

**BLOCK CONFIRMATIONS 区块确认**

引用区块的后继区块的数量会持续增加，新的区块对于祖先区块的引用意味着对该区块对确认。随着确认的数量增加，_重组_（见下文）的可能性降低，从而增加了在引用区块中所有交易被确认的可能性。

**BLOCK FILL RATE 区块填充率**

区块填充率指生成区块的 _slot_（见下文） 的占总 slot 的比例。有些 slot 故意为空以确保在消息延迟的情况下网络能够“赶得上”。

**BLOCK PRODUCER 区块生产者**

区块生产（矿工）是一个节点，参与决定哪些区块被允许生成以及生成包含可以广播到网络的交易的区块。

**BOOTSTRAP 引导**

引导是节点同步过程的一部分。该过程将会从对等节点获取到当前的_转换边界_（见下文）的 _root_（见下文）。在追赶过程中获得的其他转换将应用于这个初始 root 状态。

**BREADCRUMB 面包屑导航**

面包屑导航是转换边界中的“节点”。面包屑导航通过将转换应用到之前的状态而生成，包含_外部转换_（见下文）、阶段性账本和暂挂的 coinbase。

**CATCHUP 追赶**

CATCHUP 是_同步_（见下文）过程的最后阶段。在 catchup 过程中，节点确定并下载存在于转换边界的 root 和当前最佳 TIP 之间的所有转换，从而试图追赶当前的最佳 TIP。首先，节点请求缺失的转换哈希和交易链证明。这个证明验证了所提供的路径是有效的，即所提供的转换哈希将 root 引导至最佳 TIP。一旦节点拥有所有转换哈希，它就会从对等节点为每个转换哈希请求完整的外部转换。

对于每个外部转换，节点通过将每个转换边界应用到之前的状态来构建一个面包屑导航，从而构建自己的转换边界。当 catchup 完成时，节点的本地最佳TIP与网络的最佳 TIP 相同，并且面包屑导航已为所有从转换边界的 root（最佳TIP- k）到当前 TIP 建立了转换，并且每一个都已得到了验证。此时，节点被同步。

在任何时候，如果节点在同一路径上看到不连续的转换，这就可能触发 catchup，即表明存在着转换丢失。

**CHAIN STRENGTH 链强度**

因为在 Mina 中没有完整的历史记录，一个刚连接到网络的节点不能通过应用所有之前的转换从创世同步。因此一个节点需要确定最强的链（认为是合法的链，在比特币中为最长链）。为了确认最强链，一个流动的时间窗口的最小链密度被储存下来。因此，诚实的节点可能会选择最小密度即链强度较高的区块链。

**COMPRESSING 压缩**

为一个计算生成一个 SNARK，这被认为是“压缩”输出，因为证明的大小是固定的。例如，Mina 通过将区块链中的所有历史数据使用 zk-SNARK 压缩来维护简洁的区块链。然而，这在计算上不同于有损压缩，而术语“压缩”更形象地描述了减少请求数据大小的过程。

**CONSENSUS 共识**

当决定更新网络状态时，Mina 节点都同意的一种算法或规则集称为共识。规则可能包括新块可以包含的数据，以及节点被选择产生区块的方式和产生一个区块的奖励。Mina 将 Ouroboros Samisika 作为它的共识机制。

**CONSENSUS NODE 共识节点**

一个在 Mina 网络中参与共识的节点，例如，区块生产者（矿工）。节点参与共识过程（挖矿），需要最近的状态。

**CRYPTOCURRENCY 密码学货币**

一种数字资产或货币，它使用加密原语来保护金融交易，并通过公私密钥对来验证所有权。

**DAEMON 守护进程**

Mina 守护进程是一个后台进程，它实现 Mina 协议并在本地节点上运行。这允许本地客户或钱包与 Mina 网络通信。例如，当一个 CLI 发送一个交易时，这个请求会被发送给 Mina 守护进程，然后它会将这个请求广播到 P2P 网络。它还监听类似新区块这样的消息，并通过 pub-sub 模型将其转发给客户端。

**DELEGATING 委托**

因为质押 mina（例如，参与共识，即挖矿）需要节点在线，一些节点可能希望将他们的 mina 委托给另一个运行质押服务的节点。这个过程被称为委托权益，通常服务提供者或质押池操作员可能会为运行这个服务收取费用，当委托者被选择为区块生产者时，这笔费用将会被扣除。

**EPOCH 纪元**

epoch 是一种时间单位，相当于主网上的 7140 个 slots。一个 epoch 被分为若干个时长为 3 分钟的 slot。

**EXTERNAL PORT 外部接口**

这是 Mina 守护进程用来连接网络上其他节点的端口，可以在启动守护进程时使用 -external-port 设置它。

**EXTERNAL TRANSITION 外部转换**

外部转换也被称为一个_区块_（见下文），是一种外部生成的转换，即由另一个区块生产者生成，并传入到一个节点。

**FINALITY 终局性**

共识常数 k，即不可能重组链的点。一旦一个区块有 k 个确认区块（子孙区块）(由共识常数定义)，它就被认为是确认的。

**FULL NODE 全节点**

全节点是一个可以可信地验证网络状态的 Mina 节点。在 Mina 中，每个节点都是一个完整的节点，因为所有节点都可以接收并验证 zk-SNARK。

**INTERNAL TRANSITION 内部转换**

内部转换是本地生成的一种_转换_（见下文），即由区块生产者产生。生成的转换在本地应用，并在向对等节点广播之前添加到_转换边界_。

**KADEMLIA**

一种用于去中心化点对点网络的分布式哈希表（DHT）。Mina 使用 Kademlia 发现对等节点，这样节点就可以找到邻居节点来共享关于网络状态的信息。

**KEYPAIR 密钥对**

一个_私钥_和_公钥_（见下文）的组合。密钥对可以通过运行的守护进程或使用专用的密钥生成器工具生成。

**MINA**

*   首字母大写的“Mina”指底层加密货币协议和系统所依赖的网络基础设施
    
*   全小写的“mina”是指加密货币单位
    

**NODE 节点**

节点是运行 mina 守护进程的机器。

**NON-CONSENSUS NODE 非共识节点**

Mina 协议中不参与共识的_全节点_（上文），但其仍然可以验证零知识证明，从而去信任地验证链的状态。当提到 Mina 的大小为 22kb 时，这指的是非共识节点。

**NONCE 一次性随机数**

随机数是附加在交易上的一个单调增的数字，防止交易在网络上重复。交易总是按照 nonce 的顺序被包含于区块中。

**PEER-TO-PEER 点对点**

依靠对等节点在彼此之间分发信息的网络系统被称为点对点网络。这些网络通常在本质上是分布式的，与客户机-服务器网络模型不同，其不依赖于任何集中的资源代理。

**PICKLES SNARK**

Pickles 是一个新的证明系统和相关工具包，它是首个能够在不受信任初始化的情况下下进行部署并进行递归组合的 SNARK。Pickles 是开发人员在 Mina 上构建私有的、可扩展的智能合约的基础。阅读更多[参见此文](https://mp.weixin.qq.com/s?__biz=Mzk0OTIzNzg3Nw==&mid=2247485556&idx=1&sn=6b56304ed3b3699c2b7a9d0417606dcb&chksm=c35a296ef42da078280f646d883ce535892d8e4874baa0aaa9eff2604f5952e5b08530ece3cd&mpshare=1&scene=1&srcid=1127HRZ51r1DBk5ZhmLjeyNf&sharer_sharetime=1638015815576&sharer_shareid=b7fba7ceacf72cfe3b5af41b93f5b1a6&key=9c9bdbf0d5562f350495084d03d382c004c79025e7567dda5a4fe65164ea8c8b1f853539176436c84facd084b2ec70be71a2b426178e22d3cc6bfc131848c26a107cfab760f6df17a3b12c198da25f8504460064df3f2852c89cdcddfe6148395f5f5bf139eb119f6c43020ebe66017066c92e7acd38d6ec3025e093b78fe3a4&ascene=0&uin=MTY5MjI5MzMyMA%3D%3D&devicetype=Windows+7+x64&version=63040026&lang=zh_CN&exportkey=A1GFA7hnYkBPJRYOmBrHg2U%3D&pass_ticket=JHrydeNA0uzQYJk%2BMz9bA9nPWYcW21cyHkRTzA89qBo6E6uG6bYP7VhsJR2Z2faF&wx_header=0&fontgear=2)。

**LIBP2P**

LIBP2P 是一个点对点网络库，提供消息广播和文件共享。Mina 使用它作为底层 P2P 网络库。

**PRIVATE KEY 私钥**

私钥是公钥密码学中的另一个组件，它是私有的，而公钥可以公开发布的。只有公钥对应私钥的持有者才能证明公钥的所有权。这使得对交易进行签名可行，从而证明您是与给定公钥相关的资金的持有人。

**PROTOCOL STATE 协议状态**

网络的状态。协议状态包括先前用于连接块的协议状态哈希，以及包含创世状态哈希、区块链状态、共识状态和共识常数的主体。

**PROTOCOL STATE HASH 协议状态哈希**

协议状态哈希是，前一个状态哈希和_协议状态_主体的哈希，并作为区块的唯一标识符。

**PROOF-OF-STAKE 权益证明**

Mina 中共识算法类型使节点对网络的状态达成一致。权益证明（PoS）允许节点在网络上质押 mina，以增加他们被选为下一个块生产者的机会。

**PUBLIC KEY 公钥**

公钥，作为公钥密码学的一个组成部分，在区块链中公钥地址可以被认为是用户对地址或唯一身份标识。

**PUB-SUB 发布-订阅**

发布-订阅的缩写，发布-订阅是一种消息传递模式，在这种模式中，消息发送方广播消息，并且之前订阅了该发送方消息的任何收听方都将得到通知。例如，当一个新的区块被添加到链中，Mina 利用这个模式作为一个通知客户端的方式。这个事件可以被所有收听方“听到”，并且每个收听方不需要独立地轮询新数据。

**REORGANIZATION 重组**

当区块链的竞争分支相对于主要分支的长度增加时，区块链进行重组从而将更强的分支映射为主链。重组之后，被删除的分支上产生的交易不再保证包含在区块链中。

**ROOT(OF TRANSITION FRONTIER) 转换边界的 ROOT**

_转换边界_的 _root_ 是自最佳 TIP 区块的区块 _k_（见上文：FINALITY 终局性）。root 是在引导过程中从对等节点获得的。一旦看到新的最佳 TIP，root 就会移动，因此只有 k 区块被持久化了。root 是由于共识而最终确定区块的点。

**RPC**

远程过程调用（[RPC](https://mp.weixin.qq.com/s?__biz=Mzk0OTIzNzg3Nw==&mid=2247485556&idx=1&sn=6b56304ed3b3699c2b7a9d0417606dcb&chksm=c35a296ef42da078280f646d883ce535892d8e4874baa0aaa9eff2604f5952e5b08530ece3cd&mpshare=1&scene=1&srcid=1127HRZ51r1DBk5ZhmLjeyNf&sharer_sharetime=1638015815576&sharer_shareid=b7fba7ceacf72cfe3b5af41b93f5b1a6&key=9c9bdbf0d5562f350495084d03d382c004c79025e7567dda5a4fe65164ea8c8b1f853539176436c84facd084b2ec70be71a2b426178e22d3cc6bfc131848c26a107cfab760f6df17a3b12c198da25f8504460064df3f2852c89cdcddfe6148395f5f5bf139eb119f6c43020ebe66017066c92e7acd38d6ec3025e093b78fe3a4&ascene=0&uin=MTY5MjI5MzMyMA%3D%3D&devicetype=Windows+7+x64&version=63040026&lang=zh_CN&exportkey=A1GFA7hnYkBPJRYOmBrHg2U%3D&pass_ticket=JHrydeNA0uzQYJk%2BMz9bA9nPWYcW21cyHkRTzA89qBo6E6uG6bYP7VhsJR2Z2faF&wx_header=0&fontgear=2)）用于在网络上的节点之间进行通信，并与正在运行的守护进程进行交互。

**SCAN STATE 扫描状态**

[扫描状态](http://mp.weixin.qq.com/s?__biz=Mzk0OTIzNzg3Nw==&mid=2247485472&idx=1&sn=1ba4c21f4e9b9d90518bef56abce5782&chksm=c35a293af42da02ce0762a15a4306cd18313327369e103571c329e6ce7dca542b2d19420b28b&scene=21#wechat_redirect)是一个数据结构，它对需要 SNARK 证明的交易进行排队，并允许 _snark 工作者_（见下文）并行处理这些交易 SNARK。

**SIGNATURES 签名**

数字签名的缩写，签名是建立消息的真实性或所有权的一种方法。因为一个公钥-私钥对被给定的话，私钥的所有者便可以对消息进行签名，任何人都可以使用相关公钥对签名进行验证。

**SLOT 时隙**

Mina 中的 slot 是时间单位。主网上线时，一个 slot 时长为 3 分钟。一个 _epoch_ 被分为若干个 slot。区块生产者可以赢得在一个 slot 内生成区块的机会。

**SNARK POOL  SNARK 池**

snark 池包含snark 工作者在扫描状态下完成的工作。snark 池，也被称为“snarketplace”，只包含由 snark 工作者为每个工作包提供的最便宜的工作。如果节点看到了更便宜、有效的工作，它将替换池中已经存在的工作。

**SNARK WORKER  SNARK工作者**

SNARK 工作者是网络上参与生成交易 SNARK 证明的节点。由于 Snark 工作者会得到 mina 作为报酬，所以它会去帮助压缩交易。

**SNARKED LEDGER  SNARK 账本**

snark 账本是只包含有相关证明的交易的账本。snark 账本一旦从扫描状态发出了一个证明，且该证明包含在由先前的区块生产者添加的交易树中的所有交易中，那么该账本就会更新。

**STAGED LEDGER 阶段账本**

阶段性账本是当前的账户状态。它包含一个待处理的帐户账本和一个处于扫描状态下待处理的非 SNARK 交易队列。

**STAKING 质押**

根据共识机制，网络上的节点可以通过增加质押的 mina 来增加他们被选为区块生产者的概率。赢得出块权的机会与被质押的 mina 的数量成比例。例如，如果一个节点质押了网络中 50% 的 mina，理论上它们有 50% 的机会被选中来生产新的区块。Mina 使用 Ouroboros Samisika 权益证明协议来实现质押的细节。如果一个节点选择质押它的 mina（进行挖矿），它需要在线并连接到 Mina 网络。

**STAKING LEDGER 质押账本**

质押账本用来确定一个时隙（slot）中的区块生产者，赢得一个时隙的概率（slot）的出块权与质押的数量成正比。当前 epoch 的质押的 mina 的分布是当前 epoch-2 的最后区块的 _snark 账本_（见 STAGED LEDGER 阶段账本）。

**STAKING POOL 质押池**

由质押池所有者经营的委托资金池。其他节点可能会选择将资金委托给质押池，以避免在线的要求。

**SYNCING 同步**

为了生成新的的区块，节点需要获得当前状态。为了实现这一点，节点在初始化时连接到对等节点，进行引导过程，然后执行一次追赶。

通过为转换边界的 root 和当前最佳 TIP 之间的所有转换创建面包屑导航，同步过程构建了节点的转换边界。该过程完成后，该节点将被同步。

**TIME-LOCKED ACCOUNTS 时间锁定账户**

时间锁定账户是拥有一定数量受限代币的帐户。在满足特定条件(如生产一定区块)之前，其资产无法转移。

**TRANSACTION POOL 交易池**

交易池即为所有待处理交易的列表，有时称为“内存池”。每个节点都有一个本地交易池，其中包含已经传入该节点并经过验证的交易。如果交易池已满，则池内的交易可能会依照费用被丢弃，其中费用最低的将被丢弃。

**TRANSITION 转换**

Mina 中的转换是区块的同义词。

**TRANSITION FRONTIER 转换边界**

转换边界是一种包含网络最后的 k 个区块的本地数据存储。它是一个树类型的数据结构，树的每个“节点”可能有多个子节点，即分支。树中的每个节点都被称为面包屑导航。

**USER TRANSACTION 用户交易**

用户交易是由用户发出的交易,可以是支付或是委托更改的操作。

**VRF**

可验证随机函数（verifiable random function，VRF）应用于在一个 slot 内挑选一个区块生产者。它接受一个随机的种子作为输入，该种子派生于上一个 epoch 的 VRF 输出，VRF 是确定的，也就是说，无论它是多久运行一次，它都将一直返回相同的输出。

**ZERO-KNOWLEDGE PROOF 零知识证明**

零知识证明，是通过一方（证明者）向另一方（验证者）证明他们拥有某物的知识，而不泄露特定知识的证明。Mina 使用零知识证明，特别是 zk-SNARK，来生成证明区块链有效性的证明，并允许网络上的任何节点快速验证。

**ZK-SNARK**

它“零知识证明”的一种类型，是“zero-knowledge succinct non-interactive argument of knowledge（简洁的非交互零知识论证）”的缩写。Mina 实现 SNARK 的具体特性是简洁性和非交互性，这使得任何节点都可以快速验证网络状态。

---

*Originally published on [MinaWallet](https://paragraph.com/@minawallet/mina-docs-2)*
