注:原文作者是以太坊联合创始人VitalikButerin,在这篇文章中,他描述了一种新型的M-of-N密钥分享方案,并提出了脑钱包和社交恢复设计的两种应用案例。
假设你希望生成一个秘密s,而s可通过将N个密钥分享中的M个放在一起来恢复,其中所有N个密钥分享是预先知道的。那么这种方案有两个用例:
一种脑钱包,其中N个密钥分享是N个安全问题的答案,并且你希望仅通过M个安全问题的答案就可以恢复资金;
摩根大通将结束与Gemini的合作关系:金色财经报道,据一位知情人士透露,摩根大通将结束与加密货币交易所Gemini的合作关系,Gemini 是 Cameron 和 Tyler Winklevoss 拥有的加密货币交易所。早在 2020 年初,摩根大通就将 Gemini 和在美国上市的交易所 Coinbase 作为客户。此外,总部位于旧金山的交易所发言人证实,Coinbase 与摩根大通的银行业务关系保持完好。[2023/3/9 12:50:26]
一种社交恢复设计,其中你希望使用阈值解密而不是智能合约钱包,因为你正在尝试恢复访问私人数据,而不是加密货币,并且你希望你的恢复合作伙伴能够使用他们已经拥有的密钥;
摩根大通就一项加密货币相关诉讼与原告达成和解:摩根大通就此前一项信用卡购买加密货币的相关诉讼与原告达成和解,目前和解细节并未公布。此前Brady Tucker,Ryan Hilton和Stanton Smith三位原告对摩根大通提起集体诉讼,称摩根大通违反其持卡人服务条款,收取用户使用大通信用卡购买加密货币的现金预付费。(Cointelegraph)[2020/3/12]
普通的M-of-N密钥分享方案不适用于这些用例中的任何一个,因为它只允许预先选择M个密钥分享,剩余的个密钥分享必须使用一种确定性算法从原始的M个中产生,并且看起来像随机数据。
前摩根大通区块链领导Baldet:区块链隐私是关键:据coindesk消息,周五,前摩根大通区块链负责人Amber Baldet阐述了她对于互联网创造价值的想法。Baldet认为隐私问题最关键,而区块链的密码学应该开源,并且要经过严格的审查,并强调区块链混合技术的重要性。[2018/5/13]
所以这就是我们要去改进的,我们制定了一个N-of-(2N-M)阈值方案,从原N个密钥分享生成个附加密钥分享。然后我们在区块链上发布所有N-M个附加密钥分享。如果需要,在社会恢复案例中,人们可以简单地给每个参与者一份所有附加密钥分享的副本。这会导致附加密钥分享变成有效的公共信息:它们丢失的风险可以忽略不计,但任何攻击者都会拥有它们。而结果是,在未发布的N个密钥分享中,只要有M个密钥分享与N-M个附加密钥分享结合并揭示数据,我们就有了一个M-of-N方案,这正是我们想要的。
2021年7月18日更新:社交恢复用例的替代机制
在社交恢复用例中,我们希望设置过程尽可能简单,因为用户是懒惰倾向的,如果设置困难,他们将不可避免地选择不安全的小型恢复伙伴集。这意味着以去中心化方式生成密钥分享所需的分布式密钥生成(DKG)可能是一个坏主意,因为它需要2轮通信。
相反,我们可以利用账户持有人自己拥有他们的私钥这一事实。他们可以简单地向每个恢复伙伴询问他们的公钥,然后在链上发布一笔包含nonce的交易,并为每个i加密(share_i,pk_i)。
如果我们避免重复使用nonce随机数,从而不重用密钥,我们可以使用基础的Diffie-Hellman加密算法进行加密,这意味着仅具有32*(n+1)个字节calldata数据的单笔交易,就足以保存恢复信息。
对此方案,ethresear.ch论坛成员kelvin评论称:
这很有趣!我猜在社交恢复设计中,N个参与者会给他们的私钥附加一些公共盐,然后将其哈希生成N个预先知道的密钥分享?否则他们将不愿意泄露自己的密钥分享,以让N?M个附加密钥分享被计算,并且他们还必须透露M个密钥才能恢复秘密。此外,你认为人们会用这种方式来分发哪些类型的私人数据呢?
而Vitalik则回复称:
1、实际上,他们会使用hash(ecdsa_sign(key,salt))作为哈希函数来生成子密钥,因为ecdsa_sign方法在web3API中公开并且具有标准化的确定性输出。但这是一个实现细节,效果是一样的。2、我只是在考虑‘以太坊电子邮件’以及像Status这样的去中心化消息传递应用的加密密钥。另一个用例当然是其他区块链的私钥。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。