织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

三分钟了解以太坊 2.0 密钥结构与运行机制

时间:2020-07-02 11:39来源:未知 作者:admin 点击:
以太坊 1.0 只有一个私钥,而在以太坊 2.0 中则需要两个不同的密钥—— 验证者私钥和 提款私钥 。 推荐阅读:《链闻精选好文|由浅入深全面了解以太坊 2.0》 原文标题:《解读以太坊

  以太坊 1.0 只有一个私钥,而在以太坊 2.0 中则需要两个不同的密钥—— 验证者私钥和 提款私钥 。

  推荐阅读:《链闻精选好文|由浅入深全面了解以太坊 2.0》

  原文标题:《解读以太坊 2.0 密钥》

  来源:beaconcha.in

  以太坊 1.0 和 2.0 的密钥是基于相同的思路并使用椭圆曲线密码学创造出来的。但是,以太坊 2.0 的功能性有所增强,在创造密钥时需要不同的参数,并使用BLS(Boneh-Lynn-Shacham) 签名方案。

  以太坊 2.0 密钥概述

  以太坊 2.0 密钥有哪些?

  在以太坊 1.0,用户访问他们的资金只需要一个私钥,而在以太坊 2.0 中则需要两个不同的密钥——验证者私钥提款私钥

  验证者密钥

  如下图所示,验证者密钥由两个元素组成:

  验证者

  验证者

  由于验证者私钥需要随时对 ETH2 进行链上签名,比如区块提议和证明。因此这些密钥必须保存在热钱包里。

  这种灵活性使得验证者签名密钥可以快速地在设备间进行迁移。但是,如果密钥丢失了或被盗了,盗窃者可以通过以下两种方式作恶

  通过以下的做法使验证者被罚没:

  作为区块提议者时,对同一个时隙 (slot) 的两个不同信标区块进行签名投票

  作为区块证明人时,对另外一个区块进行环绕证明投票

  作为区块证明人时,对同一个目标检查点进行两次不同的证明投票

  强行主动退出,阻止验证者质押,并给提款密钥所有者提供 ETH 余额的访问权限。

  验证者公钥包含在存款数据里,作用是使得 ETH2 能够识别验证者身份。

  提款密钥

  如果在阶段 1 和阶段 2 能够实现 ETH 转移的话,那么转移验证者的余额则需要用到提款密钥。如同验证者密钥,提款密钥也由两部分组成:

  提款

  提款

  丢失了这个密钥意味着无法访问验证者余额。但是,验证者仍然可以对证明投票和区块进行签名,因为这些操作只需要验证者的私钥,只是如果密钥丢失了的话验证者这样做基本没法取得奖励。

  要提款的话,验证者状态必须是「已退出」。

  单个 ETH1 钱包中有多个验证者存款的情况

  每个验证者都有他们自己唯一的存款数据,而信标链通过存款数据来识别验证者。一个验证者有四个密钥。

  :我要如何重新将存款存进验证者余额里?(例如有效余额已被清空)

  :发送另一笔大于等于 1 ETH 的交易到存款合约,以验证者的特定存款数据作为交易输入。在第一笔存款交易后,这个唯一的存款数据会储存在区块链上,并可以在多个浏览器上查询到。

  :存款合约要花费大概 360,000 gas,但鉴于退款操作需要一定成本,建议将交易费定在 400,000 到 500,000 gas 之间。

  ETH2.0 验证者的助记词

  在过去的几年里,我们已习惯于 12 到 24 个单词的助记词系统。我们为什么要倒退回本地保存密钥呢?这方式显然更复杂、更不安全。

  在 BLS 密码库的审计完成之前,目前已知的硬件钱包将不支持 ETH2.0 密钥的生成。EIP-2333 和 EIP-2334 提供了解决方案,但仍有待实现。基于这些认知,我们可以预见在阶段 0 启动的时候,助记词系统是不可用的。

  它是怎么运作的?

  助记词和路径都是为大家所熟知的功能了,用户在访问他们的硬件钱包时也经常会碰到。

  「旧的 ETH1.0」的路径结构和示例:

  m/44'/60'/0'/0 m / purpose' / coin_type' / account' / change / address_index

  同样的逻辑也适用于 ETH2.0 密钥,只是有一些不同的参数。会有一个「父密钥」(助记词)使得用户可以将尽可能多的验证者连结到一个提款密钥里。如此一来,用户可以通过助记词导出所有的密钥

(责任编辑:admin1)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容