Lição 2

数字签名框架

本章主要介绍多重签名和多方计算(MPC)的技术实现方法,介绍一些多重签名和多方计算技术支持的热门钱包项目,包括账户抽象钱包项目;分析它们的优劣势,以及最近创新的方向。

前言:

企业和个人越来越多地将比特币作为储备资产存储在多重签名钱包中,因为仅依靠一个人保管私钥可能会在资金安全上造成难以挽回的重大错误。然而,多重签名钱包也并非适用于所有用例的通用解决方案,仍然需要新技术来应对。本文重点关注快速迭代的钱包生态技术、著名的钱包生态项目、以及它们的优缺点和适用场景对比。

多重签名:

  • 示例: Gnosis Safe、Ownbit、Armory、BitGo、Electrum、Trezor Model T (硬件钱包)、Ledger Nano X (硬件钱包)、WH Cypher、Casa Keymaster

  • 特征:与市场上其他多重签名钱包相比,本文提到的大多数多重签名钱包具有以下特点:

  • 推出时间较早(最初是比特币钱包),并随着用户基础的增长不断推出其他加密货币功能。
  • 与 Ledger、Tezos 等硬件钱包集成
  • 基本上由该行业的知名企业开发

  • 优点和缺点:多重签名钱包增强了安全性和共享控制,但存在多链兼容性问题、效率问题和缺乏匿名性等问题。

更具体地说:

多重签名的本质是,一个地址的加密货币交易需要多个私钥生成的签名通过定义的合约进行授权。
因此,多重签名钱包比单个私钥机制具有更高的安全性。值得注意的是,对于商业客户和 DAO,多个钱包为用户提供共享控制,可以防止内部欺诈。加密货币钱包逐渐开始满足企业的需求。


图3:简化的多重签名过程

近期的创新:

然而,基于不同情况,多重签名的应用仅限于 DAO(市场接受度并不理想)。因此,创新和优化用户体验迫在眉睫。

为了解决效率问题,Gnosis Safe 随后访问智能合约(trace_transaction 和 trace_blocks),以收集所有多重签名信息,并允许您收集链下签名和检索多重签名待处理交易。这允许一些多重签名交易在链下签名,从而节省用户的 gas 费用和时间。

为了减少匿名性问题,开发人员建议将多重签名与零知识(ZK)相结合,以实现私钥去中心化,同时创建隐写术。名为 ZK Dompet 的钱包致力于成为这方面的先驱。

在考虑更好的多链兼容性和更易于进行结构调整时,多方计算(MPC)钱包和阈值签名可能能够胜任。

阈值签名(MPC 钱包):

  • 示例:ZenGo、Lit Wallet、Fireblocks Wallet、OpenBlock、Qredo、Wirex、Paybis、Dfns、Marable wallet、Portal

  • 特点:为企业客户提供 MPC 签名功能,同时提供多样化的资产管理解决方案,并支持精细化访问控制。这些钱包还提供了各种实用的交易 SDK。ZenGo 甚至采用了三因素身份验证,结合了生物识别技术,避免了私钥设计。

  • 优点和缺点:MPC 钱包解决了多链兼容性、降低了 gas 费并确保了匿名性,但面临着无法撤销密钥等挑战,并且通常面向机构客户(MPC 签名算法是特定的且不可升级,每个 MPC 账户需要不同的签名算法,并且所有算法都是离线生成的)。

详细说明:

通过私钥切片技术,私钥被切割成多个副本并存储在多个独立的节点上,没有任何一个人或机器可以完全控制私钥(这个过程称为分布式密钥生成 DKG)。在执行交易等操作时,这些节点通过安全的 MPC 协议一起生成签名,而无需重新构建完整的私钥。

举个简单的例子,如果 A 和 B 使用阈值签名方案(TSS)共同管理一个账户,他们无需记住助记词便可控制这个账户。如果 A 想要使用账户,他需要向 B 发送请求。B 同意后,A 和 B 将通过一套既定的规则,使用各自掌控的碎片在本地计算一些中间变量(暗示数值关系)。信息交换后,A 将能够在本地生成一个合法的完整签名,并在验证签名后从账户中转出资金。


图4:简化的 TSS 签名流程

机制上:

  • TSS 并不关心底层区块链以及最顶层的智能合约,只修改中间数字签名的签名算法,以增强多链兼容性。
  • 签名是在链下生成的,参与者的信息不可见,保证了用户的匿名性。

最近的创新:

针对上述安全和撤销问题,ZenGo 进行了优化:

  • 安全问题 - 由权威托管人和受托人共同支持这项工作。当受托人发现 ZenGo 停止运作时,它将从受托人那里获取主密钥,然后将其发布到指定的 Github 帐户。每次用户启动客户端时,它都会检查该特定的 Github 帐户是否处于恢复模式,然后下载主密钥,利用主密钥和用户自己的部分密钥来恢复私钥。
  • 密钥撤销问题 - 原始私钥无法通过密钥刷新和物理删除来计算正确的签名,因此私钥被变相撤销。详细信息请参考 @Safeheron
    (文章仅提供了 ZenGo 如何处理安全和密钥撤销问题的概述,缺乏对所涉及的技术流程的详细解释。理解具体机制可能需要更深入地查阅 ZenGo 的文档或联系 ZenGo 以获得进一步澄清)。

作为一种新型的 MPC 钱包,OpenBlock 结合了多重签名来实现更安全的钱包公共管理功能,支持社交恢复。

然而,MPC 钱包:

  1. 与大多数传统钱包不兼容(没有助记词,没有存储在单个设备上的完整私钥)。
  2. 没有标准化,也没有机构级安全设备(如 iPhone SEP 和 HSM)的本地支持。

因此,MPC 本质上面向基金、家族办公室、交易所和托管人等机构客户。然而,随着市场需求的增加,如对资产管理、批量交易和其他功能(gas 补贴)的更高要求,MPC 钱包无法单独完成。EIP-4337 和抽象账户(AA)钱包的出现重新点燃了他们的希望。

开创性的 MPC 钱包 Portal 就是这一思路的创新者。Portal 与 ZeroDev 的结合即是 MPC+AA 结合的理想实践。

账户抽象钱包(仅限 EVM)

  • 示例:Metamask、Trust wallet、Ambire Wallet、Argent、Avocado、Blocto、Braavos、Holdstation、Safe、Obvious、Kernel、Unipass、Beam

优点:

  • 通过可编程智能合约进一步提高账户安全
  • 通过提供帐户抽象、自定义签名验证和社交恢复支持的本地集成,优化用户体验
  • 通过签名抽象、角色和策略以及 gas 抽象提供钱包灵活性。
  • 支持不依赖于跨链桥的多方访问

缺点:

  • 更多的链上操作意味着更高的 gas 费用
  • 有限的兼容性
  • 用于在 EVM 上标准化签名的 EIP-1271 仍未被广泛采用


图5:账户抽象钱包工作流程

如果您已经对账户抽象钱包有所了解,就不难理解“账户抽象钱包解决方案不是寻求使用单一技术,而是混合并匹配多种技术”这一说法。比如通过结合 MPC 和账户抽象(Portal 和 ZeroDev),您可以获得轻松安全的链下密钥管理,以及灵活的链上交易验证。此外,Slope 还结合了多重签名和账户抽象功能,综合了二者的优势。

在下一章中,我们将探讨这种混合技术的内部工作原理,更深入研究其含义和影响。

小结:

账户抽象智能账户为 Web3 应用和钱包开辟了许多新的机会,并且由于上面提到的特殊可组合性,它融合了多重签名和 MPC 钱包功能的所有优势。有了智能账户,用户不仅可以更轻松地管理他们的钱包,还可以灵活地优化操作方式。正如 Vitalik 所说,“账户抽象一直是以太坊开发者社区的梦想”,也许智能账户有望成为 Web3 交互的未来。

Exclusão de responsabilidade
* O investimento em criptomoedas envolve riscos significativos. Prossiga com cuidado. O curso não pretende ser um conselho de investimento.
* O curso é criado pelo autor que se juntou ao Gate Learn. Qualquer opinião partilhada pelo autor não representa o Gate Learn.
Catálogo
Lição 2

数字签名框架

本章主要介绍多重签名和多方计算(MPC)的技术实现方法,介绍一些多重签名和多方计算技术支持的热门钱包项目,包括账户抽象钱包项目;分析它们的优劣势,以及最近创新的方向。

前言:

企业和个人越来越多地将比特币作为储备资产存储在多重签名钱包中,因为仅依靠一个人保管私钥可能会在资金安全上造成难以挽回的重大错误。然而,多重签名钱包也并非适用于所有用例的通用解决方案,仍然需要新技术来应对。本文重点关注快速迭代的钱包生态技术、著名的钱包生态项目、以及它们的优缺点和适用场景对比。

多重签名:

  • 示例: Gnosis Safe、Ownbit、Armory、BitGo、Electrum、Trezor Model T (硬件钱包)、Ledger Nano X (硬件钱包)、WH Cypher、Casa Keymaster

  • 特征:与市场上其他多重签名钱包相比,本文提到的大多数多重签名钱包具有以下特点:

  • 推出时间较早(最初是比特币钱包),并随着用户基础的增长不断推出其他加密货币功能。
  • 与 Ledger、Tezos 等硬件钱包集成
  • 基本上由该行业的知名企业开发

  • 优点和缺点:多重签名钱包增强了安全性和共享控制,但存在多链兼容性问题、效率问题和缺乏匿名性等问题。

更具体地说:

多重签名的本质是,一个地址的加密货币交易需要多个私钥生成的签名通过定义的合约进行授权。
因此,多重签名钱包比单个私钥机制具有更高的安全性。值得注意的是,对于商业客户和 DAO,多个钱包为用户提供共享控制,可以防止内部欺诈。加密货币钱包逐渐开始满足企业的需求。


图3:简化的多重签名过程

近期的创新:

然而,基于不同情况,多重签名的应用仅限于 DAO(市场接受度并不理想)。因此,创新和优化用户体验迫在眉睫。

为了解决效率问题,Gnosis Safe 随后访问智能合约(trace_transaction 和 trace_blocks),以收集所有多重签名信息,并允许您收集链下签名和检索多重签名待处理交易。这允许一些多重签名交易在链下签名,从而节省用户的 gas 费用和时间。

为了减少匿名性问题,开发人员建议将多重签名与零知识(ZK)相结合,以实现私钥去中心化,同时创建隐写术。名为 ZK Dompet 的钱包致力于成为这方面的先驱。

在考虑更好的多链兼容性和更易于进行结构调整时,多方计算(MPC)钱包和阈值签名可能能够胜任。

阈值签名(MPC 钱包):

  • 示例:ZenGo、Lit Wallet、Fireblocks Wallet、OpenBlock、Qredo、Wirex、Paybis、Dfns、Marable wallet、Portal

  • 特点:为企业客户提供 MPC 签名功能,同时提供多样化的资产管理解决方案,并支持精细化访问控制。这些钱包还提供了各种实用的交易 SDK。ZenGo 甚至采用了三因素身份验证,结合了生物识别技术,避免了私钥设计。

  • 优点和缺点:MPC 钱包解决了多链兼容性、降低了 gas 费并确保了匿名性,但面临着无法撤销密钥等挑战,并且通常面向机构客户(MPC 签名算法是特定的且不可升级,每个 MPC 账户需要不同的签名算法,并且所有算法都是离线生成的)。

详细说明:

通过私钥切片技术,私钥被切割成多个副本并存储在多个独立的节点上,没有任何一个人或机器可以完全控制私钥(这个过程称为分布式密钥生成 DKG)。在执行交易等操作时,这些节点通过安全的 MPC 协议一起生成签名,而无需重新构建完整的私钥。

举个简单的例子,如果 A 和 B 使用阈值签名方案(TSS)共同管理一个账户,他们无需记住助记词便可控制这个账户。如果 A 想要使用账户,他需要向 B 发送请求。B 同意后,A 和 B 将通过一套既定的规则,使用各自掌控的碎片在本地计算一些中间变量(暗示数值关系)。信息交换后,A 将能够在本地生成一个合法的完整签名,并在验证签名后从账户中转出资金。


图4:简化的 TSS 签名流程

机制上:

  • TSS 并不关心底层区块链以及最顶层的智能合约,只修改中间数字签名的签名算法,以增强多链兼容性。
  • 签名是在链下生成的,参与者的信息不可见,保证了用户的匿名性。

最近的创新:

针对上述安全和撤销问题,ZenGo 进行了优化:

  • 安全问题 - 由权威托管人和受托人共同支持这项工作。当受托人发现 ZenGo 停止运作时,它将从受托人那里获取主密钥,然后将其发布到指定的 Github 帐户。每次用户启动客户端时,它都会检查该特定的 Github 帐户是否处于恢复模式,然后下载主密钥,利用主密钥和用户自己的部分密钥来恢复私钥。
  • 密钥撤销问题 - 原始私钥无法通过密钥刷新和物理删除来计算正确的签名,因此私钥被变相撤销。详细信息请参考 @Safeheron
    (文章仅提供了 ZenGo 如何处理安全和密钥撤销问题的概述,缺乏对所涉及的技术流程的详细解释。理解具体机制可能需要更深入地查阅 ZenGo 的文档或联系 ZenGo 以获得进一步澄清)。

作为一种新型的 MPC 钱包,OpenBlock 结合了多重签名来实现更安全的钱包公共管理功能,支持社交恢复。

然而,MPC 钱包:

  1. 与大多数传统钱包不兼容(没有助记词,没有存储在单个设备上的完整私钥)。
  2. 没有标准化,也没有机构级安全设备(如 iPhone SEP 和 HSM)的本地支持。

因此,MPC 本质上面向基金、家族办公室、交易所和托管人等机构客户。然而,随着市场需求的增加,如对资产管理、批量交易和其他功能(gas 补贴)的更高要求,MPC 钱包无法单独完成。EIP-4337 和抽象账户(AA)钱包的出现重新点燃了他们的希望。

开创性的 MPC 钱包 Portal 就是这一思路的创新者。Portal 与 ZeroDev 的结合即是 MPC+AA 结合的理想实践。

账户抽象钱包(仅限 EVM)

  • 示例:Metamask、Trust wallet、Ambire Wallet、Argent、Avocado、Blocto、Braavos、Holdstation、Safe、Obvious、Kernel、Unipass、Beam

优点:

  • 通过可编程智能合约进一步提高账户安全
  • 通过提供帐户抽象、自定义签名验证和社交恢复支持的本地集成,优化用户体验
  • 通过签名抽象、角色和策略以及 gas 抽象提供钱包灵活性。
  • 支持不依赖于跨链桥的多方访问

缺点:

  • 更多的链上操作意味着更高的 gas 费用
  • 有限的兼容性
  • 用于在 EVM 上标准化签名的 EIP-1271 仍未被广泛采用


图5:账户抽象钱包工作流程

如果您已经对账户抽象钱包有所了解,就不难理解“账户抽象钱包解决方案不是寻求使用单一技术,而是混合并匹配多种技术”这一说法。比如通过结合 MPC 和账户抽象(Portal 和 ZeroDev),您可以获得轻松安全的链下密钥管理,以及灵活的链上交易验证。此外,Slope 还结合了多重签名和账户抽象功能,综合了二者的优势。

在下一章中,我们将探讨这种混合技术的内部工作原理,更深入研究其含义和影响。

小结:

账户抽象智能账户为 Web3 应用和钱包开辟了许多新的机会,并且由于上面提到的特殊可组合性,它融合了多重签名和 MPC 钱包功能的所有优势。有了智能账户,用户不仅可以更轻松地管理他们的钱包,还可以灵活地优化操作方式。正如 Vitalik 所说,“账户抽象一直是以太坊开发者社区的梦想”,也许智能账户有望成为 Web3 交互的未来。

Exclusão de responsabilidade
* O investimento em criptomoedas envolve riscos significativos. Prossiga com cuidado. O curso não pretende ser um conselho de investimento.
* O curso é criado pelo autor que se juntou ao Gate Learn. Qualquer opinião partilhada pelo autor não representa o Gate Learn.