主页 > imtoken官网下载 > 探索Web3钱包安全问题:以太坊社会需要什么样的恢复系统?

探索Web3钱包安全问题:以太坊社会需要什么样的恢复系统?

imtoken官网下载 2023-04-28 06:24:16

这篇文章将讨论什么是社交恢复钱包、社交恢复系统的替代用例以及用户反馈。

原标题:《DAORayaki|以太坊社区需要什么样的社会恢复系统?》

作者:Vitalik, isthisanart

编译:信阳

让普通用户可以使用加密货币和区块链应用程序的最大挑战之一是安全性:我们如何防止用户丢失或资金被盗? 硬币丢失和被盗是一个严重的问题,通常会使无辜的区块链用户损失数千美元,在某些情况下甚至损失他们的大部分净资产。

多年来,已经提出了许多解决方案:纸钱包、硬件钱包和我最喜欢的多重签名钱包。 事实上,它们已经显着改善了安全性。 然而,这些解决方案都有各种缺陷——有时提供的防止硬币盗窃和丢失的额外保护远远少于实际需要,有时使用起来很麻烦导致很少采用,有时两者都有。 2021年初,v神提出了一个替代方案,并在今年5月的《Decentralized Society: Finding the Soul of Web3》一文中再次强调:一种更新的智能合约钱包,称为“社交恢复钱包”(social recovery wallet)。 与之前的选项相比,这些钱包有可能提供高级别的安全性和更好的可用性。 当以太坊生态大规模迁移到rollup layer-2解决方案后,可以有效解决目前社交恢复钱包面临的两大问题:(1)依赖中心化中继器,(2)交易手续费高。 DAORayaki 社区梳理了一系列关于社会恢复系统的提案,并将其整理成这篇文章。 这篇文章将讨论什么是社交恢复钱包、社交恢复系统的替代用例以及用户反馈。

1.社交恢复钱包

社会恢复系统的工作原理如下:

签名密钥具有添加或删除监护人的能力,但只能在一段时间后(通常为 1-3 天)。

以太坊硬件钱包_以太坊钱包_以太坊钱包名称填什么?

探索 Web3 钱包安全问题:以太坊社会需要什么样的恢复系统?

在所有正常情况下,用户可以像普通钱包一样简单地使用他们的社交恢复钱包,使用他们的签名密钥签署消息,并且每次签名的交易都可以通过一次确认快速完成,就像在“传统”钱包中一样(如 Metamask ).

如果用户丢失了他们的签名密钥,那么社交恢复就会开始。用户只需联系他们的监护人并让他们签署一项特殊交易,将钱包合约中注册的签名公钥更改为新签名。 这很简单:他们只需访问一个网页,比如 security.loopring。 查看并签署恢复请求。 就像为每个监护人交易 Uniswap 一样简单。

对于您选择谁作为您的监护人,有许多可能的选择。 三个最常见的选项是:

添加监护人很容易:您只需输入他们的 ENS 名称或 ETH 地址即可添加监护人,尽管大多数社交恢复钱包会要求监护人在恢复网页上签署交易以同意添加。 在任何设计得当的社交恢复钱包中,都不需要下载和使用同一个钱包; 他们可以简单地使用他们现有的以太坊钱包,无论它是什么类型的钱包。 考虑到添加监护人的高度便利性,如果你足够幸运,你的社交圈已经由以太坊用户组成,我个人倾向于增加监护人数量(最好是 7 人以上)以增加安全性。 如果你已经有了钱包,监护人就不会持续努力:你所做的任何恢复操作都将通过你现有的钱包完成。 如果你不认识很多其他活跃的以太坊用户,你相信少数技术上有能力的监护人是最好的。

为了降低监护人攻击和勾结的风险,您的监护人不必公开:事实上,他们不需要知道彼此的身份。 这可以通过两种方式实现。 首先,不是将监护人的地址直接存储在链上,而是将地址列表的哈希存储在链上,钱包所有者只需在恢复时发布完整列表即可。 其次,可以要求每个监护人确定性地生成一个新的单一用途地址,他们将仅用于该特定恢复; 他们不需要使用该地址来实际发送任何交易,除非确实需要恢复。 为了补充这些技术保护,建议选择来自不同社会圈子的多元化监护人(最好包括机构监护人); 这些建议放在一起将使监护人难以同时受到攻击或串通一气。

如果您死亡或永久丧失工作能力,监护人可以公开表明自己的身份,以便他们可以找到对方并收回您的资金。

社交恢复钱包不是背叛,而是“密码价值”的体现。

以太坊钱包_以太坊硬件钱包_以太坊钱包名称填什么?

对使用任何形式的多重签名、社会恢复或其他方式的提议的普遍反应是,这种解决方案可以追溯到“信任人”的想法,也就是对区块链和加密货币行业价值的背叛. 虽然我理解为什么人们乍一看会这么想,但我会说这种批评源于对加密的根本误解。

对我来说,加密货币的目标从来都不是消除对所有信任的需求。 相反,加密的目的是让人们能够访问加密和经济的基石,让人们在信任谁方面有更多选择,并让人们建立一种更受约束的信任形式:赋予某人做某事的权力代表您而不给予他们有权为所欲为。 从这个角度来看,多重签名和社会恢复是这一原则的完美体现:每个参与者对接受或拒绝交易的能力都有一定影响,但没有人可以单方面转移资金。 这种更复杂的逻辑允许一种比由一个人或一个密钥单方面控制资金更安全的机制。

应谨慎使用而不是完全丢弃人类输入的基本思想非常强大,因为它与人脑的优势和劣势非常吻合。 人脑不太适合记忆密码和追踪纸钱包,但它是追踪与他人关系的专用芯片。 这种效果对非技术用户来说更强:他们可能会在钱包和密码方面苦苦挣扎,但他们同样擅长社交任务,比如“选择 7 个不会组队对抗我的人”。 如果我们可以从人类输入中提取至少一些信息到机制中,而不将这些输入转化为攻击和利用的载体,那么我们应该弄清楚如何做到这一点。 社会恢复非常强大:要让一个有 7 名监护人的钱包遭到破坏,这 7 名监护人中的 4 名需要以某种方式相互发现并同意窃取资金,而这些人都不会给所有人带来小费。 当然,这比攻击一个纯粹由一个人保护的钱包更具挑战性。

2.社交恢复钱包的替代用例

在2021年1月的文章中,V神通过Argent和Loopring两个例子简单介绍了社交恢复钱包(即智能合约钱包)的原理和特点。 并于 2021 年 7 月在 ethresear.ch [1] 上展示“社会恢复用例的替代机制”。我们的论文重点关注:这种替代机制。

Dark Crystal Web3 一词源自 Vitalik Buterin 在 2021 年原始帖子 [2] 之后提出的一项提案,该提案建议恢复合作伙伴无需安装软件或持有任何其他数据的系统,只要他们拥有个人以太坊钱包即可。

Magma Collective 目前正致力于将其开发成 MVP(最小可行产品)。 这是一个社会恢复协议以太坊硬件钱包,我们为其确定了三个主要的重要功能。

由于应用程序处理秘密,可能具有很高的价值,因此验证我们项目中的安全假设和信任要求至关重要。

以太坊钱包_以太坊钱包名称填什么?_以太坊硬件钱包

该系统由两部分组成:

其运行的基本过程可以参考这里。

3、以太坊社会需要什么样的社会恢复系统?

建立在以太坊之上的社会恢复系统,强调可用性。

作为 MVP 开发初始阶段的一部分,Dark Crystal Web3 对 Web3 和以太坊社区的核心工具和协议进行了用户研究,采访了来自 WalletConnect、3Box、Metamask、Gnosis Safe、Rainbow 和 Tally 的代表,并在 Twitter 和 Discord An发放匿名问卷。 这个目标不仅要考虑 Dark Crystal Web3 项目的可用性,还要考虑社会恢复,这是目前设想的一个重要协议,以及对仪器的潜在需求。

冷库的作用

冷库的作用

优先考虑可用性,这是一个重要的共识,我们最重要的发现是冷存储用例很少见。 冷存储是指以一种永远不会连接到互联网的方式保存密钥——这可能是一个纸钱包,或者是一个只连接到离线计算机的硬盘。 它被广泛认为是最安全的密钥存储方式。 然而,使用冷存储密钥进行交易存在重大的可用性障碍:通常必须在离线计算机上下载并设置钱包程序,该程序对交易进行打包和签名,然后将交易转移到另一台设备并向公众公开。 播送。 由于我们的应用程序涉及隐私,我们想知道用户接受此过程的可能性有多大?

以太坊钱包名称填什么?_以太坊硬件钱包_以太坊钱包

也许有点惊讶,我们发现这种安全做法并不常见。 或者更准确地说,冷存储密钥与用户将使用我们的应用程序备份的密钥之间的重叠子集非常小。 在我们所有的同步对话中,我们了解到虽然支持冷存储路径很重要,但用户不会使用它。 从那些确实拥有冷存储密钥的受访者那里,我们了解到他们只会使用像我们这样的系统来获取价值较低的热钱包密钥。

受访者更倾向于冷藏 - 33% 的人表示他们会一直将钥匙存放在冷藏库中。 随着研究的深入,我们还收到反馈称,最注重安全的用户倾向于拥有自己的备份系统,而不是信任我们的系统。 考虑到那些最需要社会恢复的人往往不懂技术:“任何可以使用命令行的人都不需要社会恢复”。

用户的技术水平如何?

其实我们可以要求用户具备什么样的技术素养是另一个讨论的领域——我们的潜在用户熟悉或需要什么工具、钱包等?

在架构上,Dark Crystal Web3 涉及一个基于浏览器的托管应用程序,以及一个带有可在本地提供的 Web 前端的 Rust 命令行组件。 我们的调查受访者和受访者都是技术人员以太坊硬件钱包,80% 的人表示他们很乐意在必要时使用命令行应用程序。 目前的架构计划是出于支持冷存储的愿望,但根据反馈,我们怀疑如果我们有一个完全托管的应用程序版本,只有一小部分明确动机的用户会以其他方式使用它。 这些反馈是如此强烈,以至于即使我们从冷库到主机托管,包括设计和执行,也并非不可能走另一条路。

尽管我们讨论了基于浏览器的 dapps 作为主要入口点,但我们从 6 名受访者中有 2 名收到了强烈反馈,由于网络钓鱼攻击的频率,可下载的应用程序是更有价值的选择。 值得信赖和首选的设计模式。 绝大多数情况下,Metamask、Walletconnect、移动钱包和区块浏览器等工具对受访者或受访者没有任何问题。 虽然我们试图让协议与秘密是否备份无关,但我们相信所有潜在的秘密所有者都加入了以太坊。 我们已经多次清楚地听到,非以太坊用户将不太可能选择我们的社交恢复协议。 也就是说,他们希望恢复伙伴能够涵盖技术新手,那些连钱包都没有的人。 我们需要考虑这个独特的要求。

什么样的“身份”已经在链上使用,以及对匿名的偏好

我们的核心问题之一是如何支持参与者的匿名性:需要多少匿名性,以及如何在保持匿名性的同时可靠地找到恢复数据? 有几种潜在的解决方案,都涉及使用某种可以从用户的主钱包中散列或派生的查找密钥来存储恢复数据。 但是,我们想知道用户使用模式是否会支持这种方法。 人们是保留一个永久性钱包,还是不断地在从同一种子分叉出来的不同钱包之间切换? 他们会产生新的种子吗? 所有面对面的采访都证实,我们的典型用户将拥有一个他们在任何情况下都不可能忘记的“主以太坊地址”。 然而,有趣的是,一半的受访者表示,用户有可能或确实忘记了这一点,或者从未忘记过。 “主以太坊地址”作为身份概念的频率是未来研究的潜在领域。

以太坊钱包名称填什么?_以太坊钱包_以太坊硬件钱包

总的来说,反馈非常支持匿名,但我们反复听到,一旦大量用户成为应用程序的一部分,在许多情况下,“大海捞针”级别的匿名就足够了。 但目前尚不清楚这将如何起步,或者究竟要达到什么门槛才能实现。 我们与几位受访者讨论了是否存在可用于将以太坊地址映射到公共加密密钥的公共协议,从而为这种匿名性提供启动包,但没有找到可以填补这一角色的现有项目。 我们还发现,恢复伙伴的匿名性比秘密所有者的匿名性更受欢迎,如下图所示。

探索 Web3 钱包安全问题:以太坊社会需要什么样的恢复系统?

三位受访者表示担心他们可能会忘记他们的恢复伙伴是谁,我们已经收到了能够多次切换恢复伙伴的功能请求。

链上存储和中心化存储

我们因在两种情况下将加密的秘密存储在链上而受到批评,一种是从成本的角度来看,另一种是出于对密码学的量子威胁的担忧。 没错,如果我们使用的任何密码被破解,我们协议存储的所有秘密都会受到影响。 在成本方面,受访者和被调查者一致认为200美元左右是应用程序交易成本的上限,越低的成本越可取。

我们听说,对于我们的用例,在主网上与在另一个类似以太坊的网络(如多边形或 gnosichain)上没有任何优势。 最后,有人建议考虑应用程序的中心化路径,用户可以选择不在链上存储,这当然会带来其他潜在问题(持续维护、潜在泄漏),但仍可能有意义地提高可靠性。 可访问性。 37% 的受访者表示他们更愿意使用链下存储。 此外,协议的长期维护在多个场合被认为是一个问题:在我们的团队可能解散或发生重大变化后,潜在用户如何相信恢复过程仍然有效? 并且,有没有办法让秘密拥有者不经历整个过程就可以验证秘密是可恢复的?

路线图最重要的考虑因素

到目前为止,我们通过考虑最简化的产品得出的秘密恢复的一个重要方面是需要能够在秘密所有者和恢复合作伙伴之间进行通信。 初始设置信息以及恢复数据需要在双方之间发送。 这很可能是系统最大的安全弱点。 100% 的受访者认为有可能通过不安全的带外传输泄露一些秘密片段集,我们的面对面采访强烈反映了这种情绪。 因为我们的许多受访者都是协议开发人员,所以我们向他们询问了加密钱包到钱包的消息传递,以及可能有助于沟通的现有路线图功能。 一组密切相关的功能涉及在恢复过程的各个阶段通知秘密所有者和恢复合作伙伴。 我们采访过的许多钱包开发商在他们的路线图上都有这个功能,但尚未确认发布日期。 在这个方向上的进一步工作看起来对生态系统非常重要,并且与这些解决方案之一的集成可能是 Dark Crystal Web3 未来工​​作的核心。

参考文献 [1] [2]