了解Cardano证书

https://cexplorer.io/article/understanding-cardano-certificates

质押基于存储在区块链中的证书。 矿池运营商 (SPO) 必须通过证书注册其矿池。 质押者必须创建证书才能将质押权委托给所选池。 所有这一切的背后都是加密密钥。 快来深入卡尔达诺证书的世界吧。

块的生产
在卡尔达诺网络中,只有拥有 ADA 币的实体才能生成区块。 ADA 是一种稀缺资源,是网络去中心化和安全性的基础。 每个想要在卡尔达诺网络中生产区块的实体都必须操作卡尔达诺节点并通过证书将其注册为池。 所有 ADA 所有者,包括矿池运营商,都可以将 ADA 币(质押权)委托给所选矿池,他们还需要创建一个证书并将其提交到区块链。

没有中央实体控制这些过程。 任何人都可以成为 ADA 币所有者或注册为矿池运营商,无需第三方许可。 任何人都可以将 ADA 委托给选定的池。

为了正确理解证书以及区块生产的工作原理,您必须首先了解地址的结构。

卡尔达诺使用独特的地址结构,允许将代币花费权与质押权委托分开。 Shelley 支付地址由两部分组成:支付凭证(定义如何从给定地址支出资金)和对权益地址的引用。

质押地址定义了支付地址上的 ADA 是否用于质押以及以何种方式使用。 质押地址允许通过凭证(质押密钥或脚本的哈希值)行使质押权利。

两者都有专用的密钥对,即一对用于支出地址的密钥和一对用于质押地址的密钥。

在下图中您可以看到 Shelley 的付款地址。 UTxO 和凭证存储在名为“资金”的左侧部分中。 凭证定义通过签名密钥或脚本支出资金的可能性。 在右侧名为 Stake Address Reference 的部分中,有对 Stake 地址的引用。

权益地址用作创建委托证书的输入。 请注意付款地址和质押地址引用之间的链接。 地址上的 ADA 数量可能会发生变化(该地址的用户可以购买更多 ADA 币或花费它们),或者用户可能会创建引用同一权益地址的多个新地址。

该参考点指向凭证,即指向可用于从资金部分委托 ADA 币的质押密钥(或脚本哈希)。 或者,它可以引用包含凭据或 Null 的证书。 空值意味着资金不能被委托(即用于质押)。

请注意,质押地址包含一个非基于 UTxO 的账户,系统在其中累积质押奖励。 质押密钥(或脚本)的所有者可以控制质押奖励并可以提取它。 质押者和矿池运营商都使用类似的机制将 ADA 委托给矿池。

已委托给某个矿池的所有 ADA 币(相应的权益地址)都包含在该矿池在插槽领导者选举中的总权益中。 矿池每个时期可以铸造的区块数量(它们被选为插槽领导者的次数)取决于总权益的大小。 奖励的金额取决于矿池铸造的区块数量(时隙领导者可能会错过一个时隙并且由于某种原因不创建区块)。 如果总权益较低,矿池可能不会铸造一个区块。 在这种情况下,他不会得到任何奖励。

当矿池运营者创建注册证书时,除了其他参数(我们将在下面讨论)之外,他还为自己定义了一个奖励(固定奖励和保证金)。 这将影响委托人(质押者)的奖励金额。 奖励由卡尔达诺协议自动分配。 矿池运营商无法控制将质押奖励分配给奖励账户。 如前所述,只有持有质押密钥的人才能从奖励账户中提取奖励。

证书
在本节中,我们将重点关注证书。 为了简单起见,我们不会处理通过脚本委托质押权的可能性。 在解释过程中,我们只会考虑一对键。 签名密钥(所有者必须保密的私钥)和验证密钥(可以发布的公钥)。 在图像中,签名密钥将显示为红色,验证密钥将显示为绿色。 验证密钥主要以散列形式使用。 我们不会在图片中处理它。 您可以将哈希形式视为同一值的另一种表示形式(一个字符串变成另一个字符串,重复时始终相同)。

下图显示了用户对支出资金的控制以及通过签名密钥委托质押权。 验证支出密钥用于创建支出地址。 至从该地址挂起资金,需要相应的签名支出密钥。 验证质押密钥用于生成质押地址。 委托质押权(ADA 币)以及从奖励账户中提取质押奖励时需要签名质押密钥。 用户对签名密钥保密(最好保存在冷存储中,即 Trezor 或 Ledger 硬件钱包上)。 区块链地址是公开的。

为了使用 ADA 币进行区块生产,需要注册权益地址并将其委托给矿池。 这是通过创建证书来实现的,证书随后通过交易提交到网络。 所有证书都存储在区块链中,即对所有参与者公开可用。

证书在被签名质押密钥的所有者覆盖或过期之前一直有效。 如果证书过期,可以更新证书。 这仅涉及必须由矿池运营商更新的一种类型的证书。 普通质押者使用的证书永远有效,直到被覆盖(取消注册)。

以下是可以在卡尔达诺区块链中创建和存储的所有证书的列表。

股权地址登记证明
权益地址注销证明
代表团证书
权益池登记证书
股权池退休证书
操作密钥证书
质押者(即矿池运营商)仅使用与质押地址注册和委托相关的证书。 矿池运营商必须通过证书注册矿池,并定期更新其铸造区块的能力(也通过证书)。

质押者证书
要将 ADA 币委托给矿池,必须使用两个证书:质押地址注册证书和委托证书。 可以通过权益地址注销证书来注销权益地址。

在下图中,您可以看到用户如何为多个支付地址创建质押地址证书(它们都与同一个质押地址关联)。 注册时需要拥有签名质押密钥。 对于质押者和矿池运营商来说,这个过程是相似的。

注册和注销证书必须包含权益地址和凭证(验证密钥)。 注册权益地址时,会创建一个奖励帐户。 当质押地址注销时,奖励账户也会被删除。 与取消注册不同,见证人不需要注册权益地址。

一旦注册了权益地址,它们就可以被委托给一个池子。

用户(图中是 Alice)可以通过创建委托证书并将其提交到卡尔达诺区块链,将给定权益地址的权益转移到权益池。 委托证书包含与支付地址关联的权益地址和权益池验证密钥 (ID),该密钥是 ADA 币将被委托到的权益池的标识符。

在图中,您可以看到矿池运营商(Bob)拥有代表矿池所有权的签名密钥。 Alice 在钱包中按名字找到了矿池 ID。 也就是说,根据Alice选择的名字,钱包将相应的ID插入到证书中。

仅当质押者想要在区块链上注册新的质押地址时,才需要质押地址注册证书,这是一次性操作。 当质押者想要将其权益委托或重新委托给他们选择的权益池时,始终需要委托证书。

让我们补充一点,用户不必手动创建证书,钱包可以帮助他们完成此操作。 他们只需选择钱包提供的池之一并签署交易。 交易包含一个证书,包含在区块中后,该证书将成为区块链的一部分。

泳池操作员证书
矿池运营商必须创建矿池注册所需的多个密钥对。

权益池密钥对(冷密钥)
密钥演化签名 (KES) 密钥对(热密钥)
验证随机函数 (VRF) 密钥对(热键)
权益地址密钥对(冷密钥)
权益池密钥对用于池识别(验证密钥)、为池注册(和退役)签署证书以及委托(转移)操作密钥证书中 KES 密钥的权利。 我们稍后会详细讨论它。

签名 KES 密钥用于对节点铸造的区块进行签名。 验证KES密钥用于其他节点验证区块。

节点使用签名 VRF 密钥来查明它是否已成为给定槽中的槽领导者。 在所有池节点上,每个插槽都会进行私人抽奖,其中一个或多个节点有权铸造一个区块。 其他节点使用验证 VRF 密钥来验证插入到新生成的块中的 VRF 证明。 任何节点都可以验证新区块的提议者确实赢得了giv中的VRF抽奖恩槽。

矿池运营商还拥有其质押地址的质押密钥,该地址用作注册矿池的奖励地址。

最重要的一对密钥是权益池密钥,因为它标识权益池和权益池注册(退役)的证书,并且操作密钥证书必须通过签名密钥进行签名。

如果节点在热存储中存储的签名密钥遭到泄露,签名池密钥可用于创建新证书,使之前的证书失效。 如果矿池运营商是权益池密钥的唯一所有者,则他可以完全控制权益池。 这就是为什么签名池密钥必须存储在冷存储中的原因。

您可以在下图中看到池注册。 矿池运营商 (Bob) 创建了 4 对密钥:权益池密钥、KES 密钥、VRF 密钥和权益地址密钥。 验证权益池密钥用于识别权益池,也可作为创建权益池注册证书的输入之一。 此外,验证 VRF 密钥、验证权益地址密钥(奖励地址)、运营商的其他权益地址列表、定义运营商奖励的参数(固定费用和保证金)以及所有中继节点的 IP 或 DNS 地址 被插入到证书中。

或者,可以将有关池的附加元数据的 URL 和 URL 内容的哈希值插入到证书中。 此数据显示在钱包中,供寻找委托 ADA 池的用户使用。 如果没有提供 URL 和内容哈希,则权益池将不会在钱包中列出(它可以是私人池)。

证书必须由签名权益池密钥签名。 这是创建证书中最重要的一步,因为除了密钥所有者之外没有人可以做到这一点。

请注意,节点上的热存储中有 KES 和 VRF 密钥。 节点需要密钥才能生成区块(VRF 抽签和区块签名)。

由矿池运营商控制的权益地址列表可以插入到证书中。 如果这些地址被委托到通过委托证书注册的同一个池中,ADA将被视为运营商的质押(运营商的游戏中的皮肤)。 在证书中插入权益地址不足以委托 ADA 币。 矿池运营商必须创建委托证书并将其提交到网络,类似于权益持有者的做法。 奖励分配过程中,奖励不会支付到这些权益地址的账户,而是支付到矿池运营者的权益地址账户(奖励地址)。 图中,这个质押地址(奖励地址)对应的是质押地址密钥。 请注意,签名密钥也存储在冷存储中。 操作者使用该密钥从帐户中提取奖励。

请注意,KES 密钥未插入此证书中。

权益池退役证书仅包含验证权益池密钥(ID)和权益池应停止生产区块并因此退役的纪元号。

当矿池运营商向网络提交权益池注册证书时,权益池已注册,但尚未开始生产区块。 运营商必须再发送一份证书,即操作密钥证书。

为了实现最大程度的密钥安全性,操作者有必要遵循热键和冷键的排列。 这显着降低了与节点上的密钥(热存储中的 KES 和 VRF 密钥)暴露相关的风险。

运营商始终将签名权益池密钥保存在冷存储中(远离互联网),并定期使用它来签署新的操作密钥证书。 签名权益池密钥用于将签名权转移到 KES 密钥(也称为操作密钥),该密钥存储在节点上的热存储中,用于签署新块。 如果热 KES 密钥被泄露,操作员可以立即创建一个新的操作密钥证书(具有更高的计数器编号),从而使前一个证书失效。

签名 KES 密钥会定期过期,特别是在 90 天后。 矿池运营商必须始终创建新的操作密钥证书,使用签名权益池密钥对其进行签名,然后将其提交到网络。

旧的签名 KES 密钥将用于生成新的 KES 密钥。 旧的 KES 密钥随后将被删除。 这保护了区块链历史的不变性。 KES密钥只能用于在给定时间段内对区块进行签名。 插入注册权益池证书中的验证 KES 密钥保持不变(创建新的签名 KES 密钥时无需更改)。

操作密钥证书包含有效期为 90 天(KES 期限)的插槽、验证 KES 密钥、验证权益池密钥 (ID) 和计数器编号。 计数器编号是表示操作密钥证书被更新了多少次的值。每次创建新的操作密钥证书时。 这会立即使旧证书(计数器编号较低)失效。

在下图中,您可以看到矿池运营商如何创建操作密钥证书,该证书允许节点通过更新的签名 KES 密钥在 90 天内铸造新块。 请注意,操作密钥证书必须由签名权益池密钥签名。

一旦网络到达操作密钥证书中指定的槽,池就可以被选举为槽领导者并铸造一个新块。 该块将使用有效的 KES 密钥进行签名。 网络中的所有其他节点都可以通过验证 KES 密钥轻松验证签名,该密钥包含在权益池注册证书中。

结论
所有参与者都可以从链上数据中找到ADA在支付地址、权益地址、矿池委托、矿池上分布的所有信息。 借助区块头中包含的证书和加密证明,每个人都可以验证区块并验证它们是否是由实际成为插槽的节点铸造和正确签名的(使用在给定 KES 周期内有效的 KES 密钥签名) 给定插槽中的领导者。

卡尔达诺的安全性和去中心化基于签名密钥和证书的所有权,这些密钥和证书通过区块链向所有人公开。 任何拥有 ADA 币的人基本上都可以分散卡尔达诺,因为他们可以直接控制谁将生产区块。 ADA 持有者可以使用证书注册矿池并将 ADA 币委托给他们,而无需获得第三方许可。

这篇搬移到教育条目下了

1 Like

好的感谢,教育更合适