作者:@Rui|SevenX Ventures 投资人

编译:TinTinLand

原文:https://mirror.xyz/sevenxventures.eth/3sYkMimEKqzQbme8-KszvSrKGj4uPxBLyJM9ncXxgcU


本文主要内容:

  • 加密用户体验糟糕?密钥管理糟糕!
  • 密钥管理的层次:责任、存储和访问
  • 现有玩家分析:MetaMask、Trust Wallet、Privy 和 Particle
  • 新的解决方案:
    • 密钥层:WebAuthn、Secure Enclave 和 Passkey
    • 账户层:智能合约账户(SCA)、外部拥有的账户(EOA)
    • 签名层:协议 r1 预编译、第三方服务、Solidity 和 ZK 验证器
  • 应用案例研究:(密钥)+(账户)
    • Clave 钱包:(Secure Enclave WebAuthn)+(SCA)
    • Soul 钱包:(Passkey)+(4337 SCA)
    • OKX 钱包:(MPC-TSS + Passkey)+(4337 SCA)
    • Web3Auth:(MPC-TSS + Passkey)+(EOA/SCA)
    • Lit 协议:(MPC-TSS + 分布式节点 + Passkey)+(EOA/SCA)
*请注意以上案例可能很快会发生变化和改进。
  • 结论




概述

私钥是使我们能够在以太坊上签署交易的核心,但是管理它甚至在「种子短语」(seed phrases)这种可读形式下一直都是一场噩梦。然而,我们的目标从来不是将区块链变成一个复杂的游戏。

对授权用户进行身份验证对于安全交易至关重要。随着互联网安全和用户体验的发展,我们已经从密码验证转向了生物特征识别,如面部识别和指纹识别。WebAuthn 是这一进展中的一个关键发展。本文重点讨论了三个对象:

  1. WebAuthn:一种 Web 身份验证标准,使用基于公钥的凭据,通常由外部验证器创建。它消除了密码的需求,实现了安全的用户身份验证。

  2. Secure Enclave:计算设备内部的基于硬件的 Secure Enclave 域,旨在保护敏感数据。Secure Enclave 的版本可以在 iOS、Android 和 Windows 设备中找到。它可以作为一个安全验证器实现 WebAuthn,但是与 SE 关联的私钥往往存在跨设备挑战。

  3. Passkey:操作系统级别的 WebAuthn 实现,由各种设备和系统提供商定制。例如,苹果的 Passkey 使用 iCloud 钥匙串中存储的密钥进行跨设备同步。然而,这种方法通常限定于特定的平台或系统。

如上所述,WebAuthn 的实施与我们针对日常区块链用户的目标一致,即实现高级防钓鱼安全性和友好的体验。以下是将它们合并到区块链中的想法:

  • 密钥层:用户使用无缝的生物识别方法,如面部识别或指纹进行身份验证。在幕后,是基于硬件的安全处理器,如 Secure Enclave 或云服务(如 iCloud 和 Google Cloud)处理密钥管理。我稍后将深入探讨跨设备和跨平台问题。

  • 账户层:智能合约账户(SCA)具有分配任意签名者(例如 SE 和 Passkey)和阈值机制的能力。此外,它的模块化设计增强了灵活性和可升级性。例如,SCA 可以根据诸如交易金额、时间或 IP 地址等因素动态调整其签名要求。另一方面,传统的外部拥有的账户(EOA, External-Owned Account)可以通过 MPC 服务进行增强,它们的组合与 SCA 相比具有更好的互操作性和成本效益,尽管在密钥轮换方面缺乏 SCA 提供的高级功能。

  • 签名层:以太坊本地支持 k1 曲线,但 WebAuthn 的签名验证造成了更高的成本,因为它使用 r1 曲线进行密钥生成。因此,一些 Layer2 解决方案,如 zkSync,计划进行本地 EIP-7212 r1 曲线预编译(https://eips.ethereum.org/EIPS/eip-7212)。此外,还有第三方服务、Solidity 验证器、零知识(ZK)验证器和分布式密钥管理系统,以更具成本效益的方式实现 r1 曲线签名。

*免责声明:

技术进步并不能保证市场成功;并非所有设备和平台都采用了 Passkey;使用 SCA 可能比 EOA 更昂贵;所提出的解决方案会随着技术进步而不断发展。



加密用户体验糟糕?

密钥管理糟糕!

在区块链领域,实际控制区块链资产的不是用户或钱包提供商,而是私钥。这个密钥对于在以太坊上执行交易的整个过程至关重要。为了更好地理解这一点,让我们以 EOA 为例:

  • 密钥生成:从 secp256k1 椭圆曲线中选择的一个随机数作为私钥。然后,将此密钥乘以曲线上的一个预定义点以生成公钥。以太坊地址来源于公钥的最后 20 个字节的哈希值。通常为了人类可读的备份会引入「种子短语」(seed phrase),从而实现了私钥和公钥的确定性推导。

  • 签署交易:包含 nonce(一个顺序号)、金额、gas fee 和接收地址等细节的交易,是使用私钥签名的。此过程涉及 ECDSA,这是一种采用椭圆曲线密码学和以 secp256k1 为曲线的数字签名算法,生成由值(r、s、v)组成的签名。然后将签名和原始交易广播到网络上。

  • 验证交易:一旦交易到达以太坊节点,它就会在节点的内存池中经历一个验证过程。节点使用签名和哈希交易来推导发送方的公钥,并通过将推导的地址与发送方的地址进行匹配来确认交易的真实性。

如上所述,私钥是链上的一个重要实体。最初,以太坊账户,称为外部拥有的账户(EOA),仅依赖于一个私钥,这带来了重大风险,因为一旦丢失密钥,就意味着无法访问该账户。

许多人可能认为账户抽象(AA)是解决与糟糕的用户体验相关的所有问题的方法,但我要说不完全是。AA 是关于改变有效性规则以进行编程化的,而智能合约账户(SCAs)的可编程性使这成为可能。AA 非常强大,能够并行发送多个交易(抽象 nonce)、为 gas 提供赞助并以 ERC20 支付 gas fee(抽象 gas),并且与本文主题更相关的是,打破固定签名验证(抽象 ECDSA 签名)。SCAs 可以分配任意的签名者和签名机制,如多重签名(multisigs)或作用域密钥(session keys)。但是,尽管 AA 的灵活性和可升级性取得了进展,但对于交易签名的基本依赖于密钥的问题仍然存在。

即使将私钥转换为 12 个字的种子短语,管理私钥仍然具有挑战性,存在丢失或钓鱼攻击的风险。用户必须在分散化解决方案的复杂层次和集中式服务的舒适体验之间游走,这两者都不是理想的选择。

为什么加密领域的用户体验糟糕?其中很大一部分是因为密钥管理糟糕。它总是需要在体验、安全性和去中心化之间做出取舍。本文探讨了管理密钥的潜在最佳解决方案。



密钥管理层

永远不会有一种适合所有情况的解决方案,保护密钥的最佳方式是根据特定的用户场景进行定制,受用户类型(机构或个人)、资本金额、交易频率和交互类型等因素的影响。

提前澄清,我避免使用流行的「自托管、半托管和全托管」方法进行分类。在我看来,真正的自托管意味着独立签署交易,而无需依赖其他方,即使解决方案在传统意义上并非托管(例如存储在分散节点的 TEE 中)。仅基于托管类型将解决方案归类为「好」或「坏」是过于简单化,无法考虑它们的不同适用性。为了更细致地评估密钥管理方法,我建议通过三个不同的层面来分析它们:

责任

是否将管理密钥的责任分配给不同的方。

鉴于个人在管理密钥方面经常面临挑战,分配保护密钥责任的做法成为一种自然的风险缓解策略。此类别包括使用多个密钥进行协作签名的方法,如在多重签名(Multi-sig)系统中所见,以及通过秘密共享方案(Secret Sharing Scheme, SSS)方计算(Multi-Party Computation, MPC)将私钥分割成片段。

  • 多重签名:需要多个完整的私钥来生成交易签名。此方法需要在链上对不同签署者进行通信,导致较高的交易费用,并影响隐私,因为签署者的数量在链上可见。

  • SSS:在单个位置生成私钥,并由经销商将此密钥的部分分发给不同的方。所有方必须重构完整的私钥才能签署交易。然而,这种临时重构可能引入漏洞。

  • MPC-TSS(阈值签名方案):作为 MPC 的实现,这是一种加密方法,使多个方能够在保持其输入私密的情况下共同执行计算。每个方独立创建一个秘密密钥份额,并且可以在这些方永远不需要亲自见面的情况下进行交易签名。由于它是在链下进行的,所以费用较低,而且没有SSS存在的单点故障风险。

存储

存储密钥或份额,受安全性、可访问性、成本和去中心化因素的影响。

  • 像 AWS、iCloud 和其他服务器这样的集中化云服务。它们对于频繁交易很方便,但更容易遭受审查。

  • 像 IPFS 和 Filecoin 这样的去中心化存储

  • 本地计算机/移动设备:密钥存储在浏览器的安全存储中。

  • 纸质钱包:私钥或二维码的物理打印。

  • 可信执行环境(TEE):TEE 提供主处理器内部的安全区域,用于执行或存储敏感数据,与主操作系统隔离。

  • 安全区域:现代设备上的安全区域与主处理器隔离,提供额外的安全层,即使应用处理器内核受到威胁,也能保护敏感用户数据。

  • 硬件钱包:像 Ledger 和 Trezor 这样的物理设备,专门设计用于安全存储私钥。

  • 硬件安全模块(HSM):HSM 是专门设计用于安全密钥管理和加密操作的专用硬件设备。它们通常在企业环境中使用,并提供高级安全功能。

访问

验证用户身份以访问存储的密钥的方式。

访问存储的密钥涉及身份验证。这涉及验证试图访问的个人是否确实被授权进行访问。回顾历史,我们可以将历史分类如下:

  • 你知道的:密码、PIN 码、安全问题的答案或特定模式。

  • 你拥有的:包括智能卡、硬件令牌(基于时间的一次性密码)或数字因素,如社交账户验证和发送到手机的短信验证码。

  • 你所是的:涉及用户独特的生物特征,如指纹、面部识别(例如苹果的 Face ID 或 Windows Hello)、语音识别或虹膜/视网膜扫描。

在此基础上,2FA 和 MFA 是将两个或更多因素结合在一起的方法,例如将 SMS 与推送通知相结合,以为用户账户增加更多安全层。

现有玩家分析

MetaMask 允许用户使用密码访问存储在用户本地浏览器存储中的密钥。

Trust Wallet 允许用户使用密码或 FaceID 访问存储在用户本地浏览器存储中的密钥,用户还可以选择云服务备份私钥。

Privy 允许用户使用多种社交登录方法,如电子邮件,使用 SSS 将三个份额分开:

  • 设备份额:浏览器-iFrame、手机-Secure Enclave。

  • Auth 份额:由 Privy 存储,链接到 Privy ID。

  • Recovery 份额:用户密码或由 Privy 加密存储在硬件安全模块(HSM)中。

Particle 允许用户使用社交登录,使用具有两个份额的 MPC-TSS:

  • 设备份额:浏览器-iFrame

  • 服务器密钥份额:Particle 的服务器


新解决方案

密钥层:

WebAuthn、Secure Enclave 和 Passkey

现有的解决方案在向用户介绍 Web3 方面发挥了关键作用。然而,它们常常面临挑战:密码可能会被遗忘或成为网络钓鱼攻击的目标,即使 2FA 更安全,但其多个步骤可能会很繁琐。此外,并非每个人都愿意将密钥管理委托给第三方,用户仍然依赖其系统的可用性和活跃性,而某些服务确保它们无法访问密钥。

这让我们思考是否存在更有效的解决方案 —— 一种能够提供最接近无信任、高安全性和无缝用户体验的方案。这个探索引领我们来到最佳的 Web2 方法。作为我在文章开头描述的,有几个项目项目与此主题紧密相关,WebAuthn 是认证标准本身,而 Secure Enclave 和 Passkey 是与此标准相关的实现或组件。

1. WebAuthn

WebAuthn 标准化了用户对基于 Web 的应用进行身份验证的界面。它允许用户使用外部认证器登录互联网账户,而不是使用密码。认证器可以是漫游认证器(Yubikey、Titan key)或平台认证器(苹果设备上的内置钥匙串)等。

FIDO(快速身份在线验证)联盟最初开发了 WebAuthn 背后的技术。它于 2019 年 3 月被 W3C 正式宣布为 Web 标准,随着其标准化,主要浏览器如 Google Chrome、Mozilla Firefox、Microsoft Edge 和 Apple Safari 都采用了 WebAuthn,显著增加了其覆盖范围和可用性。现在,许多先进设备都支持 WebAuthn。

WebAuthn 的好处:

  • 增强安全性:消除对密码的依赖,降低了钓鱼、暴力破解和重放攻击的风险。

  • 提高用户体验:提供更简单、更快速的登录流程,通常只需轻触或生物识别验证。

  • 隐私保护:在认证过程中不传输任何共享密钥,各个网站也不会收到任何个人身份信息。

  • 可扩展性和标准化:作为 Web 标准,WebAuthn 确保了在不同浏览器和平台之间的一致性和互操作性。

2. 设备绑定的 WebAuthn,例如 Secure Enclave

在现代情况下,我们可以使用硬件处理器作为认证器,比如苹果设备的 Secure Enclave、Android 的 Trustzone 和 Google Pixel 的 Strongbox。

  1. 密钥生成:使用公钥密码学,按照 WebAuthn 标准生成一对密钥,通常使用 P-256 r1 曲线。公钥发送到服务端,而私钥绝对不会离开 Secure Enclave。用户永远不会处理明文密钥,这使私钥很难被破坏。

  2. 密钥存储:私钥安全存储在设备的 Secure Enclave 中,这是一个与主处理器隔离的强化子系统。它保护着敏感数据,即使主系统受到威胁,原始密钥材料也无法访问。攻破 Secure Enclave 的门槛极高,因此最敏感的数据类型(例如 Apple Pay 和 FaceID 数据)都存储在那里。这里有关于 SE 运行方式的深入解释。

  3. 认证:用户使用他们的面部识别或指纹进行访问,Secure Enclave 使用私钥对来自服务的挑战进行签名,服务使用公钥进行验证。

基于设备的 WebAuthn 优势:

  • 硬件级安全:使用 Secure Enclave,一个孤立的基于硬件的密钥管理器,提供额外的安全层。

  • 防钓鱼:不涉及在潜在受损的设备或网站上输入任何信息。

  • 便捷体验:提供更用户友好的体验。用户不再需要记住不同站点的复杂密码。

基于设备的 WebAuthn 的缺点:

  • 设备限制:如果设备丢失或损坏,私钥无法导出或检索,跨设备操作是不可能的。

3. 基于云的 WebAuthn,Passkey

针对跨设备功能的挑战,科技巨头们推出了基于云的 WebAuthn 实现,由于 Apple 的 Passkey 而广泛熟知。

以苹果的 Passkey 为例:

  1. 密钥生成:用户的 macOS、iOS 或 iPadOS 设备作为认证器,在用户创建账户时生成一个公私钥对。然后将公钥发送到服务器,私钥存储在设备的 iCloud 钥匙串中。iCloud 钥匙串数据使用硬件绑定的密钥对进行加密,并存储在硬件安全模块(HSM)中。这个密钥对对 Apple 是不可访问的。

  2. 跨设备同步:这个过程与访问 iCloud 相同。验证 iCloud 账户,接收短信验证码,然后输入其中一个设备的密码。

基于云的 WebAuthn 的优势:

  • 跨设备:Passke 旨在从日常使用的所有设备上方便地访问。但目前仅限于苹果设备,对于 Android 来说更具挑战性,因为其版本和硬件变化多样化。

  • 防钓鱼:与上述相同。

  • 便捷体验:与上述相同。

基于云的 Passkey 的缺点:

  • 依赖云服务:与基于设备的 WebAuthn 相比,基于云的 Passkey 将安全级别从 Secure Enclave 的硬件移至 iCloud 钥匙串,有人可以认为这是将其托管到云服务中。需要考虑的一些关键方面包括:用户使用 iCloud 的 AppleID 账户被攻破;尽管 iCloud 钥匙串采用端到端加密来保护数据,但操作错误或漏洞可能存在风险。

  • 限制在平台上:例如,在 Android 设备上使用基于 iCloud 的 Passkey 非常困难。此外,与传统方法不同,Apple 和 Google 不会发送设备特定的断言。这意味着目前无法验证生成密钥的设备类型,这对密钥及其关联的元数据的可靠性提出了疑问。

账户层:SCA 和 EOA

到目前为止,我们可以看到在保持硬件级安全的同时解决跨设备和跨平台兼容性是具有挑战性的。同样重要的是社交恢复选项,例如添加多个监护人以增强安全性。在这种情况下,区块链可以为我们提供一种方法。

当我们尝试将 web2 的 webAuthn 应用到 web3 时,一个显著的差距是:web2 只需要证明所有权,而 web3 还需要同时授权交易。对于 Passkey,开发者缺乏对签名消息的控制,这些消息通常是通用的,如「登录」。这可能导致潜在的前端操纵,用户盲目地签署消息 —— 这似乎是一个小但关键的问题。

智能合约账户(SCA),本质上就是智能合约,作为链上实体,能够分配任意签名者。这种灵活性允许对各种设备和平台进行编程 —— 比如设置安卓手机、Macbook 和 iPhone —— 作为签名者。更进一步,模块化的智能合约账户允许升级,更换新的签名者,将签名阈值从两个签名者更改为更复杂的配置。

设想一种钱包,根据情境调整其安全要求:当用户位于熟悉的本地 IP 地址时,它允许单一签名者验证,但对来自未知 IP 地址或超过某个价值的交易则要求多个签名者。在模块化和可编程性的支持下,我们对这种创新的想象力是唯一的限制。许多 SCA 服务提供商积极地在这个领域进行构建,包括 Safe、Zerodev、Biconomy、Etherspots、Rhinestone 等。此外,像 Stackup、Plimico、Alchemy 等基础设施也使这成为可能。

*请查看我的先前研究(https://mirror.xyz/sevenxventures.eth/Uz8JtwdbTvHMjiqj3n0t-qRA7RpSIyQWPLgFntdKoFg)以获取有关 SCA 的更全面的背景。

EOA(Externally Owned Account,外部拥有账户)可以通过 MPC(Multi-Party Computation,多方计算)服务实现社会恢复和跨设备/平台兼容性。尽管 EOA 具有固定签名者,MPC 提供商可以将密钥拆分为份额以增强安全性和灵活性。这种方法缺乏 SCA(Social Contract Account,社交合约账户)的可编程和可升级特性,例如时间锁恢复和轻松密钥停用。但是,它仍然通过与链无关来提供卓越的跨链能力,并且当前比 SCA 更具成本效益。值得注意的 MPC 提供商包括 Privy、Particle Network、web3Auth、OKX 钱包、币安钱包等。

签名层:R1 支持

让我们退一步了解背景:在以太坊上,私钥是从 k1 曲线中选择的随机数,并且签名过程也利用了这个曲线。

然而,根据 WebAuthn 标准生成的密钥对使用 r1 曲线。因此,在以太坊上验证 r1 签名大约比 k1 签名昂贵三倍。以下是解决这个问题的一些方法:

感谢 Dogan 提供的支持,更深入的了解请查看他的研究。

协议解决方案

  • 解决方案:由 Clave 团队提出支持 secp256r1 曲线的 EIP7212(https://eips.ethereum.org/EIPS/eip-7212),预编译。

  • 评估:该提案创建了一个预编译合约,通过给定的消息哈希、签名的 r 和 s 组件以及公钥的 x、y 坐标执行「secp256r1」椭圆曲线的签名验证。因此,任何 EVM 链 - 主要是以太坊 Rollups - 都可以轻松集成这个预编译合约。到目前为止,协议预编译可能是最节省 gas 的解决方案。

  • 实施:zkSync(https://zksync.io/

第三方服务

  • 解决方案:Turnkey(https://www.turnkey.com/

  • 评估:土耳其 TEE 确保私钥仅通过用户的 PassKey 访问,永远不会对 Turnkey 本身可用,但是这仍然需要服务的活跃性。

  • 实施:Goldfinch(https://goldfinch.finance/

Solidity 验证器解决方案:

  • 解决方案:FCL 的 Solidity 验证器、FCL 的预计算 Solidity 验证器、Daimo 的 P256 验证器

  • 实施:Clave(https://www.getclave.io/)、Obvious Wallet(https://www.obvious.technology/

零知识(ZK)验证器:

  • 解决方案:Risc0 Bonsai(https://dev.risczero.com/api/bonsai/)、Axiom 的 halo2-ecc(https://github.com/axiom-crypto/halo2-lib

  • 评估:这种方法利用零知识证明来验证以太坊虚拟机(EVM)外的计算,从而降低了链上计算成本。

  • 实施:Bonfire Wallet(https://learn.bonfire.xyz/bonfire-wallet)(Risc0)、Know Nothing Labs(https://www.knownothinglabs.xyz/)(Axiom)

这些解决方案中的每一个都提供了一种不同的方法,以赋予以太坊生态系统中更便宜、更可行的 r1 签名验证能力,并由 Dogan 进行评估。



实施案例研究

*请注意,截至 2023 年 12 月,这些解决方案大多处于早期阶段,可能随时更改或改进。这些示例仅供学习目的;请始终参考它们的官方网站获取准确信息。

Clave 钱包:

(Secure Enclave webAuthn)+(SCA)

基础信息:

  • Demo:https://getclave.io/

  • 账户:SCA

  • 链:ZkSync

交易流程:

  • 密钥创建:用户提供生物特征认证,如指纹或面部识别,在安全隔离内生成密钥对,永远不会泄露或离开外部。

  • 密钥签名:应用程序接受所需的交易消息并向安全隔离发送签名请求,用户提供生物认证以批准签名,安全隔离使用密钥对消息进行签名,并广播到区块链节点。

  • 附加功能:智能合约账户启用了许多强大的功能。首先,是 gas 赞助。由于支付主,其他方(如 DApp 或广告商)可以为用户的 gas fee 付款,使交易过程更加顺畅,他们还可以允许用户使用 ERC20 支付 gas fee,而不是以太币或原生代币。并使用会话密钥,用户可以在一段时间内进行无签名交易。

恢复机制:

恢复过程是由 Clave 在 zkSync 上的智能合约执行的,用户可以在 48 小时的时间锁定期间取消恢复,以防止未经授权和恶意活动。

  • 云备份:当用户选择云备份时,将创建一个 EOA,EOA 的私钥存储在 iCloud 或 Google Drive 中,用户可以使用这个云存储的私钥从不同设备访问他们的账户,并且用户可以随时删除或覆盖此备份部分。

  • 社会恢复:用户可以指定其家人或朋友的 clave 地址作为备份,如果 N 个监护人中 M 个人确认恢复,则在 48 小时的锁定期后执行恢复,如果未取消的话。

Soul 钱包:

(Passkey)+(4337 SCA)

基础信息:

  • Demo:https://alpha.soulwallet.io/wallet

  • 账户:ERC4337 SCA

  • 链:以太坊、Optimism、Arbitrum,以及很快所有的 EVM Layer2

交易流程:

  • 密钥创建:用户提供生物特征认证,如指纹或面部识别,操作系统生成通行密钥并使用云服务进行备份。您可以跨设备和跨平台添加多个通行密钥。

  • 添加守护者(可选):用户可以指定不同的 EVM EOA 地址作为守护者,并设置账户恢复的阈值。

  • 账户生成:使用反事实部署,用户在第一笔交易之前无需支付任何费用。

恢复机制:

  • 通行密钥:使用任何定义的通行密钥在任意设备上登录钱包。

  • 守护者恢复:分配的守护者可以根据阈值旋转钱包,并稍后可能会使用时间锁定来防止恶意行为。

OKX 钱包:

(MPC-TSS + Passkey)+(4337 SCA)

基础信息:

  • Demo:https://www.okx.com/help/what-is-an-aa-smart-contract-wallet

  • 链:30+ 条链

  • 密钥:MPC-TSS,2/3

  • 账户:4337 SCA

交易流程:

  • 密钥创建:通过创建钱包,OKX 将单个私钥转换为三个独立的份额。份额 1 存储在 OKX 服务器上,份额 2 存储在用户设备的本地存储上,份额 3 由设备生成,经过加密并可以备份到设备首选的云服务,如 Google Cloud、iCloud 和华为云。

  • 密钥签名:OKX 使用 MPC-TSS 技术,用户在签署交易时可以使用三个私钥份额中的两个获得完整的签名,在此过程中,密钥份额不会相互接触。

恢复机制:

  • 2/3 机制:当用户注销、设备不可用或设备上的其中一个密钥受到损害时,您可以使用新设备登录 OKX 钱包(获取服务器份额)并获取云服务份额,将这两个份额结合起来恢复钱包,OKX 钱包将生成新的秘密份额。

Web3Auth:

(MPC-TSS + Passkey)+(EOA/SCA)

基础信息:

  • Demo:https://w3a.link/passkeysDemo

  • 链:所有的 EVM 和 Solana

  • 密钥:MPC-TSS,通常为 2/3

  • 账户:任何账户,如E OA、4337 SCA 或通用 SCA

交易流程:

  • 密钥创建:通过创建钱包,生成三个密钥份额。份额 1 是社交登录份额,用户可以输入其电子邮件,节点分布式网络会为每个用户存储密钥;份额 2 是设备份额,存储在用户设备的本地存储上;份额 3 由本地计算机生成,并由用户首选的云服务进行备份。

  • 密钥签名:Web3Auth 的 MPC-TSS 架构确保用户的密钥始终可用,即使使用了阈值签名,密钥也不会重构或存储在单个位置。

恢复机制:

  • 阈值恢复:当用户注销、设备不可用或设备上的其中一个密钥受到损害时,您可以使用社交登录方法登录 WebAuthn 账户并获取 Passkey 云份额,将这两个份额结合起来恢复钱包。

Lit Protocol:

(MPC-TSS + 分布式节点 + Passkey)+(EOA/SCA)

基本信息:

  • Demo:https://lit-pkp-auth-demo.vercel.app/

  • 链:大多数 EVM、Cosmos、Solana。

  • 账户:MPC-TSS,30 个节点中的 20 个,可被 SCA 和 EOA 采用。

交易流程:

  • 密钥创建:当用户想要创建钱包时,首先选择一个认证方法(支持 Passkey、oAuth 社交登录),然后发送请求给中继器创建密钥对,并将认证逻辑存储到智能合约中。每个密钥对都是由 Lit 节点通过称为分布式密钥生成(DKG)的过程集体生成的。作为分布式网络运行,30 个 Lit 节点在 TEE 内运行,每个节点持有密钥的一部分,但私钥从未完整存在。

  • 密钥签名:收到请求后,Lit 节点独立验证或拒绝根据分配的认证方法,使用 MPC-TSS 技术,1. Key 收集超过阈值(30 个中的 20 个)的密钥份额以生成签名,并由客户端结合完成请求。

恢复机制:

  • 2/3 机制:使用存储在智能合约中的认证方法访问账户,Lit 节点验证请求,如果超过 2/3 的节点确认,则继续进行。




结论

在对 Layer2、Layer3 和数据可用性解决方案的热情推动下,我们热衷于改善区块链的性能。同时,追求真正的安全性,将零知识证明隐私与透明性相结合。所有的努力都以一个目标为导向:为那些经常与区块链进行交互并将加密货币融入生活的真实用户做好准备。

陷入理想的技术梦境是很容易的,但我们必须问自己:我们追求的是怎样的体验?我们设想一个世界,其中加密货币更多地关乎直觉,而不是令人生畏的技术术语;一个用户可以毫不犹豫地跳入兔子洞,没有烦恼和麻烦。

想象一个名叫 Rui 的用户:她发现了一个很棒的 DApp,可以通过面部识别或指纹轻松注册,并有设置备份或守护者的选项。当她使用这个 DApp 时,她可以顺利执行交易,可能只需支付少量的 ERC20 费用,甚至可能没有任何费用。之后,她可以自定义她的钱包设置 - 也许是为自动交易激活时间锁定,将另一个设备添加为备份签名者,或者修改她的守护者列表。

我们的 builders 正在让这一切成为可能。通过集成 WebAuthn 和 Passkey,我们增强了私钥管理,使其既安全又用户友好。在密钥之上,作为实体的 SCA(Social Contract Account)打开了个性化安全和功能的领域。至于 gas 费用?由于支付主提供者可以为用户创建一个「保险库」来进行交换,甚至可以让广告商为用户支付费用,因此它们变得不再那么沉重。在这个演进的核心,特别是对于以太坊主网及其等价的 Layer2,有 ERC4337 的介入。它引入了一种替代内存池,将 SCA 交易与 EOA(Externally Owned Account)区分开来,而不需要进行重大的协议改革。另一方面,一些 Layer2 网络甚至正在原生地接受 SCA,将其无缝地纳入其系统中。

让一切变得简单需要巨大的努力。存在许多挑战,例如降低 SCA 的部署、验证和执行费用;标准化界面以增加账户的互操作性;跨链同步账户状态等等。感谢所有 buidlers,我们每天都在逐渐接近解决难题。像我们 SevenX 这样的加密货币企业已经准备好帮助伟大的公司实现他们的愿景。

如果这一切都让您感兴趣,这里有我其他的文章提供了更全面的背景信息:

  • 04/ 账户:模块化智能合约账户架构和挑战(https://mirror.xyz/sevenxventures.eth/Uz8JtwdbTvHMjiqj3n0t-qRA7RpSIyQWPLgFntdKoFg

  • 03/ 密钥(本文):面向日常加密货币用户的 WebAuthn 和 Passkey 密钥管理

  • 02/ 基础设施:由 ERC4337 带来的以太坊账户演进(https://mirror.xyz/sevenxventures.eth/LM9qZcx9M1ALIPNz15_mqgGSHxPD3ctKMDOXsjxSpzI


往期精彩

主网上线一年来,公链新星 Aptos 如何培育亚太和华语开发生态?

探索“超级服务器” TON:SDK 应用与开发入门

读懂比特币铭文风波:漏洞利用还是价值创新?


关于我们

ABOUT US



TinTinLand 是赋能下一代开发者的技术社区,通过聚集、培育、输送开发者到各开放网络,共同定义并构建未来。


Discord: https://discord.gg/kmPnTDSFu8

Twitter: https://twitter.com/OurTinTinLand

Bilibili: https://space.bilibili.com/1152852334

Medium: https://medium.com/@tintin.land2021

YouTube: https://www.youtube.com/channel/UCfHiMcFt-4btbC75FsReQh