WebAuthn和Passkey,日常加密用户的密钥管理

中级1/11/2024, 3:47:20 PM
本文探讨了错综复杂的 Passkey、WebAuthn、AA 和 MPC,以及潜在的最佳解决方案。

长话短说

私钥是我们在以太坊上签署交易的核心,但管理它一直是一场噩梦,即便是“种子短语”的可读形式。然而我们的目标从来不是将区块链变成一个复杂的游戏。

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

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

安全区域 (Secure Enclave) :安全区域是计算设备内基于硬件的安全区域,旨在保护敏感数据。 Secure Enclave 的版本可在 iOS、Android 和 Windows 设备中找到。它可以通过实施 WebAuthn 充当安全身份验证器,但与 SE 绑定的私钥通常会带来跨设备挑战。

Passkey:WebAuthn 在操作系统级别的实现,由各种设备和系统提供商定制。例如,Apple 的 Passkey 使用存储在 iCloud Keychain 中的密钥进行跨设备同步。然而,这种方法通常被锁定到特定的平台或系统。

如上所述,webAuthn 的实现符合我们针对日常区块链用户的目标,即实现高水平的反网络钓鱼安全性和用户友好体验。将它们合并到区块链中的想法如下:

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

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

签名层:以太坊原生支持k1曲线,但WebAuthn的签名验证会产生更高的成本,因为它使用r1曲线来生成密钥。因此,一些 Layer 2 解决方案(例如 zkSync)规划了本机 EIP-7212 r1 曲线预编译。此外,还有第三方服务、Solidity 验证器、零知识 (ZK) 验证器和分布式密钥管理系统,以更经济高效的方式促进 r1 曲线签名。

免责声明:

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

加密用户体验很糟糕?密钥管理太糟糕了!

在区块链领域,区块链资产的真正控制权不在用户或钱包提供商手中,而在于私钥。该密钥是在以太坊上执行交易的整个过程中最不可或缺的部分。为了更好地理解这一点,我们以 EOA 为例:

密钥生成:从 secp256k1 椭圆曲线中选择的随机数作为私钥。然后将该密钥乘以曲线上的预定义点以生成公钥。以太坊地址源自哈希公钥的最后 20 个字节。通常引入“种子短语”用于人类可读的备份,从而能够确定性地导出私钥和公钥。

签名交易:使用私钥对包含随机数(序列号)、金额、gas费用和收件人地址等详细信息的交易进行签名。此过程涉及 ECDSA(一种使用椭圆曲线加密技术并采用 secp256k1 作为曲线的数字签名算法),生成由值 (r, s, v) 组成的签名。然后签名和原始交易在网络上广播。

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

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

许多人可能认为帐户抽象(AA)是解决与不良用户体验相关的所有问题的解决方案,但我并不完全这么说。 AA是将有效性规则改为可编程的,而智能合约账户(SCA)的可编程性使之成为可能。 AA 功能强大,可以并行发送多个交易(抽象随机数)、ERC20 中的 Gas 赞助和支付 Gas(抽象 Gas),并且与本文主题更相关,可以打破固定签名验证(抽象 ECDSA 签名)。 SCA 可以分配任意签名者和签名机制,例如多重签名(multisigs)或范围密钥(会话密钥),而不是 EOA。然而,尽管 AA 具有灵活性和可升级性,但交易签名对密钥的基本依赖仍然没有改变。

即使转换为 12 个单词的助记词,管理私钥仍然具有挑战性,存在丢失或网络钓鱼攻击的风险。用户必须在去中心化解决方案的复杂层或中心化服务的热情拥抱之间进行导航,这两者都不是理想的。

为什么加密体验很糟糕?很大一部分原因是因为密钥管理很糟糕。它总是需要在经验、安全性和去中心化方面进行权衡。本文探讨了管理密钥的潜在最佳解决方案。

密钥管理层

永远不会存在一刀切的解决方案,保存密钥的最佳方式是根据特定的用户场景量身定制,并受到用户类型(机构或个人)、资金量、交易频率和交互类型等因素的影响。

为了提前澄清,我避免使用流行的“自托管、半托管和完全托管”方法进行编目。在我看来,真正的自我托管意味着独立签署交易,而不依赖另一方,即使解决方案不是传统意义上的托管(例如存储在去中心化节点的 TEE 中),这也是成立的。仅根据托管类型将解决方案分类为“好”或“坏”过于简单化,并且没有考虑到它们不同的适用性。为了对关键管理方法进行更细致的评估,我建议通过三个不同的层面对其进行分析:

责任

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

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

多重签名:需要多个完整的私钥来生成交易签名。这种方法需要对不同签名者进行链上通信,从而产生更高的交易费用,并且会影响隐私,因为签名者的数量在链上可见。

SSS:私钥在单个位置生成,经销商将该密钥的各个部分分发给不同的各方。各方必须重建完整的私钥才能签署交易。然而,这种临时重建可能会带来漏洞。

MPC-TSS(阈值签名方案):作为 MPC 的一种实现,一种加密方法,使多方能够执行计算,同时共同保持其输入的私密性。每一方都独立创建一个秘密密钥共享,并且无需各方实际会面即可签署交易。它引入了较低的费用,因为它是链下的,并且没有 SSS 那样的单点故障风险。

贮存

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

集中式云服务,例如 AWS、iCloud 和其他服务器。它们对于频繁交易来说很方便,但更容易受到审查。

IPFS 和 Filecoin 等去中心化存储。

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

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

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

安全区域(Secure Enclave):现代设备上的 Secure Enclave 与主处理器隔离,以提供额外的安全层,即使在应用程序处理器内核受到损害时也能确保敏感用户数据的安全。

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

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

使用权

如何验证用户身份以访问存储的密钥

身份验证涉及访问存储的密钥。这是为了验证尝试访问的个人是否确实获得了这样做的授权。回顾历史,我们可以这样分类:

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

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

你是谁:涉及用户独特的身体特征,例如指纹、面部识别(如 Apple 的 Face ID 或 Windows Hello)、语音识别或虹膜/视网膜扫描。

在此基础上,2FA 和 MFA 是结合两个或多个因素的方法,例如短信组合推送通知,为用户帐户添加更多安全层。

现有玩家分析

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

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

Privy允许用户使用电子邮件等多种社交登录方式,使用SSS分割三个共享:

设备共享:浏览器-iFrame、移动安全飞地。

授权共享:由 privy 存储,链接到 privy id)。

恢复共享:用户密码或由 Privy 加密存储在硬件安全模块 (HSM) 中。

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

设备共享:浏览器-iFrame

服务器密钥共享:Particle的服务器

新解决方案

密钥层:WebAuthn、Secure Enclave 和 Passkey

上述现有解决方案对于向用户介绍 web3 至关重要。然而,它们经常面临挑战:密码可能会被遗忘或成为网络钓鱼攻击的目标,甚至 2FA 虽然更安全,但由于其多个步骤可能会很麻烦。此外,并不是每个人都愿意委托第三方进行密钥管理,用户仍然依赖于他们的系统可用性和活跃性,而某些服务则确保他们无法访问密钥。

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

WebAuthn (网络认证)

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

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

webAuthn 的优点:

增强的安全性:消除对密码的依赖,减少网络钓鱼、暴力破解和重放攻击的脆弱性。

改进的用户体验:提供更简单、更快捷的登录过程,通常只需点击或生物识别验证即可。

隐私保护:身份验证期间不会传输共享秘密,各个网站不会收到任何个人身份信息。

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

设备绑定的 WebAuthn,例如。安全区域

在现代情况下,我们可以使用硬件处理器作为身份验证器,例如用于 Apple 设备的 Secure Enclave、用于 Android 的 Trustzone 以及用于 Google Pixel 的 Strongbox。

密钥生成:使用公钥加密技术,根据 WebAuthn 标准生成密钥对,通常使用 P-256 r1 曲线。公钥被发送到服务,而私钥永远不会离开 Secure Enclave。用户从不处理明文密钥,使得私钥很难被泄露。

密钥存储:私钥安全地存储在设备的 Secure Enclave 中,这是一个与主处理器隔离的强化子系统。它可以保护敏感数据,确保即使主系统受到损害,原始密钥材料仍然无法访问。破坏 Secure Enclave 的门槛非常高,因此 Apple Pay 和 FaceID 数据等最敏感的数据类型都存储在那里。以下是 SE 工作原理的深入解释。

身份验证:用户使用面部识别或指纹进行访问,Secure Enclave 使用私钥对来自服务的质询进行签名,服务使用公钥进行验证。

基于设备的 webAuthn 优点:

硬件级安全性:使用 Secure Enclave(基于硬件的隔离密钥管理器)提供额外的安全层。

防御网络钓鱼:不要在可能受感染的设备或网站上输入任何信息。

便捷的体验:提供更加人性化的体验。用户不再需要记住不同站点的复杂密码。

基于设备的 webAuthn 缺点:

设备限制:设备丢失或损坏,私钥无法导出或找回,无法跨设备操作。

基于云的 WebAuthn、密码

为了解决跨设备功能的挑战,科技巨头推出了基于云的 webAuthn 实现,Passkey 因苹果而广为人知。

我们以Apple的Passkey为例:

密钥生成:用户的 macOS、iOS 或 iPadOS 设备作为身份验证器,在用户创建帐户时生成公私密钥对。然后将公钥发送到服务器,私钥存储在设备的 iCloud 钥匙串上。 iCloud 钥匙串数据使用硬件绑定密钥对进行加密,并存储在硬件安全模块 (HSM) 中。 Apple 无法访问该密钥。

跨设备同步:此过程与访问 iCloud 相同。对 iCloud 帐户进行身份验证,接收短信代码,然后输入其中一台设备的密码。

基于云的 webAuthn 优点:

跨设备:万能钥匙的设计目的是方便并可从所有定期使用的设备访问。但目前仅限于苹果设备,对于 Android 来说,由于版本多样、硬件差异较大,因此更具挑战性。

网络钓鱼防御:同上。

便捷体验:同上。

基于云的密钥缺点:

依赖云服务:与基于设备的 webAuthn 相比,基于云的密钥将安全级别从 Secure Enclave 的硬件转移到 iCloud 钥匙串,有些人可能会认为它是对云服务的托管。需要考虑的一些关键方面包括: 用户用于 iCloud 的 AppleID 帐户遭到泄露;虽然 iCloud 钥匙串采用端到端加密来保护数据,但操作错误或漏洞会带来风险。

平台限制:例如,在 Android 设备上使用基于 iCloud 的密钥非常具有挑战性。此外,与传统方法不同,苹果和谷歌不发送特定于设备的断言。这意味着目前无法验证生成密钥的设备类型,这引发了有关密钥及其相关元数据的可靠性的问题。

账户层:SCA 和 EOA

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

当我们尝试将 web2 webAuthn 实现到 web3 时,存在一个显着的差距:Web2 仅需要证明所有权,而 web3 还需要同时授权交易。使用 Passkey,开发人员无法控制签名消息,该消息通常是通用的,例如“登录”。这可能会导致潜在的前端操纵、用户盲目地签署消息——一个看似次要但至关重要的问题。

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

设想一个钱包根据上下文调整其安全要求:当用户使用熟悉的本地 IP 地址时,它允许单签名者身份验证,但需要多个签名者来处理来自未知 IP 地址或高于特定值的交易。凭借模块化和可编程性,我们的想象力是此类创新的唯一限制。许多SCA服务提供商积极构建这个空间,包括Safe、Zerodev、Biconomy、Etherspots、Rhinestone等。同时也对Stackup、Plimico、Alchemy等基础设施的支持使其成为可能。

请查看我之前的研究,该研究提供了有关 SCA 的更全面的背景信息。

EOA可以通过MPC服务实现社交恢复和跨设备/平台兼容性。尽管 EOA 具有固定的签名者,但 MPC 提供商可以将密钥拆分为多个共享,以增强安全性和灵活性。此方法缺乏 SCA 的可编程和可升级功能,例如时间锁恢复和轻松密钥停用。然而,它仍然通过与链无关的方式提供卓越的跨链功能,并且目前比 SCA 更具成本效益。著名的 MPC 提供商包括 Privy、Particle Network、web3Auth、OKX 钱包、Binance 钱包等。

签名层:R1 支持

让我们退后一步来理解上下文:在以太坊上,私钥是从 k1 曲线中选择的随机数,签名过程也利用了这条曲线。

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

感谢 Dogan,要了解更深入的知识,请查看他的研究。

协议解决方案:

解决方案:EIP7212,Clave团队提出的针对secp256r1 Curve Support的预编译。

评估:该提案创建一个预编译合约,通过给定的消息哈希参数、签名的 r 和 s 分量以及公钥的 x、y 坐标,在“secp256r1”椭圆曲线上执行签名验证。因此,任何 EVM 链(主要是以太坊汇总)都能够轻松集成此预编译合约。到目前为止,协议预编译可能是最高效的解决方案。

实现:zkSync

第三方服务

解决方案:一站式 (Turnkey)

评估:一站式 TEE 确保私钥只能由用户通过其 PassKey 访问,而 Turnkey 本身永远无法访问,但这仍然需要服务的活跃性。

实施:Goldfinch

Solidity 验证器解决方案:

解决方案:FCL的Solidity Verifier、FCL的带有预计算的Solidity Verifier、Daimo的P256Verifier

实施:Clave、Obvious 钱包

零知识(ZK)验证器:

解决方案:Risc0 Bonsai、Axiom 的 halo2-ecc

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

实现:Bonfire Wallet(Risc0)、Know Nothing Labs(Axiom)

这些解决方案中的每一个都提供了不同的方法来在以太坊生态系统中实现更便宜且可行的 r1 签名验证,这是 Dogan 的评估。

实施案例研究

*请注意,截至 2023 年 12 月,大多数解决方案仍处于早期阶段,可能随时更改或改进。这些例子仅供学习之用;请务必参阅其官方网站以获取准确信息。

Clave 钱包:(Secure Enclave webAuthn) + (SCA)

基本:

演示:https://getclave.io/

账户:SCA

链:ZkSync

交易流程:

密钥创建:用户提供指纹或面部识别等生物识别身份验证,密钥对在 Secure Enclave 内部生成,不会泄露或留在外部。

密钥签名:应用程序获取所需的交易消息并将签名请求转发到 Secure Enclave,用户提供生物身份验证以批准签名,Secure Enclave 使用密钥对消息进行签名,并将其广播到区块链节点。

附加功能:智能合约账户可实现许多强大的功能。首先,赞助Gas fee。由于paymaster的存在,dApp 或广告商等其他方可以支付用户的 Gas 费,使交易过程更加顺畅,并且他们还可以允许用户使用 ERC20 而不是以太币或原生代币来支付 Gas 费。并且使用会话密钥,用户可以在一段时间内进行无符号交易。

恢复机制:

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

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

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

灵魂钱包:(Passkey)+(4337 SCA)

基本:

演示:https://alpha.soulwallet.io/wallet

账户:ERC4337 SCA

链:以太坊、Optimism、Arbitrum 以及即将推出的所有 EVM Layer2

交易流程:

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

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

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

恢复机制:

密钥:使用任何定义的密钥通过任意设备登录钱包。

监护人恢复:指定的监护人可以根据阈值轮换钱包,并且可以稍后解决时间锁定以防止恶意行为。

OKX钱包:(MPC-TSS + Passkey) + (4337 SCA)

基本:

演示: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钱包(获取服务器共享)并获取云服务共享,将这2个共享组合起来恢复钱包,OKX钱包将生成新的秘密份额。

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

基本:

演示:https://w3a.link/passkeysDemo

链:所有 EVM 和 Solana

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

账户:任何账户,如 EOA、4337 SCA 或一般 SCA

交易流程:

密钥创建:通过创建钱包,生成了三个密钥共享。 Share1 是社交登录共享,用户可以输入电子邮件,分散的节点网络存储每个用户的密钥; Share2 是存储在用户设备本地存储上的设备共享; Share3由本地计算机生成并由用户首选的云服务备份。

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

恢复机制:

阈值恢复 当用户注销、设备不可用或设备上的密钥之一被泄露时,您可以使用社交登录方法登录 webAuthn 帐户并获取密钥云共享,结合这两个共享来恢复钱包。

Lit 协议(MPC-TSS + 去中心化节点 + Passkey)+ (EOA/SCA)

基本信息:

演示:https://lit-pkp-auth-demo.vercel.app/

链:大部分EVM、Cosmos、Solana。

帐号:MPC-TSS,30个网络中的20个,SCA和EOA都可以采用。

交易流程:

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

密钥签名:收到请求后,Lit 节点根据指定的身份验证方法独立验证或拒绝请求,并使用 MPC-TSS 技术,1。收集超过阈值(30 个中的 20 个)的密钥份额以生成签名,并由客户端组合来满足请求。

恢复机制:

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

结论:

在对 Layer2、Layer3 和数据可用性解决方案的热情推动下,我们热衷于提高区块链的性能。此外,追求真正的安全性,将零知识证明隐私与透明性相结合。所有努力都瞄准一个目标:为经常与区块链交互并在生活中采用加密货币的真实用户做好准备。

我们很容易陷入技术完美主义的梦想,但是我们必须问自己: 我们追求的是什么样的体验?我们设想的世界是, 加密技术关乎直觉而不是令人望而生畏的技术术语。用户可以毫不犹豫地进入这个看似复杂的加密世界。

想象一下用户 Rui:她发现了一个很棒的 dApp,可以使用面部识别或指纹轻松注册,并可以选择设置备份或监护人。当她使用 dApp 时,她可以顺利执行交易,可能需要少量 ERC20 费用,甚至根本不需要。随后,她自定义了钱包设置——可能激活自动交易的时间锁、添加另一台设备作为备份签名者,或者修改她的监护人列表。

我们的建设者让这一切成为现实。集成 WebAuthn 和 Passkey,我们增强了私钥管理,使其既安全又用户友好。最重要的是,SCA 作为一个实体打开了个性化安全和功能的领域。至于Gas fee?由于 Paymaster 提供商可以为互换创建“金库”,甚至允许广告商为用户支付费用,因此用户的负担减轻了。这一演变的核心,特别是对于以太坊主网及其等效的 Layer2 而言,是 ERC4337。它引入了一种替代内存池,将 SCA 交易与 EOA 区分开来,无需对协议进行重大修改。另一方面,一些第 2 层网络甚至本身就采用 SCA,将它们无缝地整合到自己的系统中。

需要付出巨大的努力才能让一切变得容易。存在许多挑战,例如降低 SCA 的部署、验证和执行费用;标准化接口以提高账户互操作性;跨链同步账户状态;还有很多。感谢所有建设者,我们一天天地接近解决这个难题。像我们 SevenX 这样的加密货币企业已经准备好帮助伟大的公司实现他们的愿景。

声明:

  1. 本文转载自[SevenX Ventures],著作权归属原作者[@Rui],如对转载有异议,请联系Gate Learn团队,团队会根据相关流程尽速处理。
  2. 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
  3. 文章其他语言版本由Gate Learn团队翻译, 在未提及Gate.io的情况下不得复制、传播或抄袭经翻译文章。

WebAuthn和Passkey,日常加密用户的密钥管理

中级1/11/2024, 3:47:20 PM
本文探讨了错综复杂的 Passkey、WebAuthn、AA 和 MPC,以及潜在的最佳解决方案。

长话短说

私钥是我们在以太坊上签署交易的核心,但管理它一直是一场噩梦,即便是“种子短语”的可读形式。然而我们的目标从来不是将区块链变成一个复杂的游戏。

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

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

安全区域 (Secure Enclave) :安全区域是计算设备内基于硬件的安全区域,旨在保护敏感数据。 Secure Enclave 的版本可在 iOS、Android 和 Windows 设备中找到。它可以通过实施 WebAuthn 充当安全身份验证器,但与 SE 绑定的私钥通常会带来跨设备挑战。

Passkey:WebAuthn 在操作系统级别的实现,由各种设备和系统提供商定制。例如,Apple 的 Passkey 使用存储在 iCloud Keychain 中的密钥进行跨设备同步。然而,这种方法通常被锁定到特定的平台或系统。

如上所述,webAuthn 的实现符合我们针对日常区块链用户的目标,即实现高水平的反网络钓鱼安全性和用户友好体验。将它们合并到区块链中的想法如下:

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

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

签名层:以太坊原生支持k1曲线,但WebAuthn的签名验证会产生更高的成本,因为它使用r1曲线来生成密钥。因此,一些 Layer 2 解决方案(例如 zkSync)规划了本机 EIP-7212 r1 曲线预编译。此外,还有第三方服务、Solidity 验证器、零知识 (ZK) 验证器和分布式密钥管理系统,以更经济高效的方式促进 r1 曲线签名。

免责声明:

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

加密用户体验很糟糕?密钥管理太糟糕了!

在区块链领域,区块链资产的真正控制权不在用户或钱包提供商手中,而在于私钥。该密钥是在以太坊上执行交易的整个过程中最不可或缺的部分。为了更好地理解这一点,我们以 EOA 为例:

密钥生成:从 secp256k1 椭圆曲线中选择的随机数作为私钥。然后将该密钥乘以曲线上的预定义点以生成公钥。以太坊地址源自哈希公钥的最后 20 个字节。通常引入“种子短语”用于人类可读的备份,从而能够确定性地导出私钥和公钥。

签名交易:使用私钥对包含随机数(序列号)、金额、gas费用和收件人地址等详细信息的交易进行签名。此过程涉及 ECDSA(一种使用椭圆曲线加密技术并采用 secp256k1 作为曲线的数字签名算法),生成由值 (r, s, v) 组成的签名。然后签名和原始交易在网络上广播。

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

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

许多人可能认为帐户抽象(AA)是解决与不良用户体验相关的所有问题的解决方案,但我并不完全这么说。 AA是将有效性规则改为可编程的,而智能合约账户(SCA)的可编程性使之成为可能。 AA 功能强大,可以并行发送多个交易(抽象随机数)、ERC20 中的 Gas 赞助和支付 Gas(抽象 Gas),并且与本文主题更相关,可以打破固定签名验证(抽象 ECDSA 签名)。 SCA 可以分配任意签名者和签名机制,例如多重签名(multisigs)或范围密钥(会话密钥),而不是 EOA。然而,尽管 AA 具有灵活性和可升级性,但交易签名对密钥的基本依赖仍然没有改变。

即使转换为 12 个单词的助记词,管理私钥仍然具有挑战性,存在丢失或网络钓鱼攻击的风险。用户必须在去中心化解决方案的复杂层或中心化服务的热情拥抱之间进行导航,这两者都不是理想的。

为什么加密体验很糟糕?很大一部分原因是因为密钥管理很糟糕。它总是需要在经验、安全性和去中心化方面进行权衡。本文探讨了管理密钥的潜在最佳解决方案。

密钥管理层

永远不会存在一刀切的解决方案,保存密钥的最佳方式是根据特定的用户场景量身定制,并受到用户类型(机构或个人)、资金量、交易频率和交互类型等因素的影响。

为了提前澄清,我避免使用流行的“自托管、半托管和完全托管”方法进行编目。在我看来,真正的自我托管意味着独立签署交易,而不依赖另一方,即使解决方案不是传统意义上的托管(例如存储在去中心化节点的 TEE 中),这也是成立的。仅根据托管类型将解决方案分类为“好”或“坏”过于简单化,并且没有考虑到它们不同的适用性。为了对关键管理方法进行更细致的评估,我建议通过三个不同的层面对其进行分析:

责任

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

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

多重签名:需要多个完整的私钥来生成交易签名。这种方法需要对不同签名者进行链上通信,从而产生更高的交易费用,并且会影响隐私,因为签名者的数量在链上可见。

SSS:私钥在单个位置生成,经销商将该密钥的各个部分分发给不同的各方。各方必须重建完整的私钥才能签署交易。然而,这种临时重建可能会带来漏洞。

MPC-TSS(阈值签名方案):作为 MPC 的一种实现,一种加密方法,使多方能够执行计算,同时共同保持其输入的私密性。每一方都独立创建一个秘密密钥共享,并且无需各方实际会面即可签署交易。它引入了较低的费用,因为它是链下的,并且没有 SSS 那样的单点故障风险。

贮存

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

集中式云服务,例如 AWS、iCloud 和其他服务器。它们对于频繁交易来说很方便,但更容易受到审查。

IPFS 和 Filecoin 等去中心化存储。

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

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

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

安全区域(Secure Enclave):现代设备上的 Secure Enclave 与主处理器隔离,以提供额外的安全层,即使在应用程序处理器内核受到损害时也能确保敏感用户数据的安全。

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

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

使用权

如何验证用户身份以访问存储的密钥

身份验证涉及访问存储的密钥。这是为了验证尝试访问的个人是否确实获得了这样做的授权。回顾历史,我们可以这样分类:

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

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

你是谁:涉及用户独特的身体特征,例如指纹、面部识别(如 Apple 的 Face ID 或 Windows Hello)、语音识别或虹膜/视网膜扫描。

在此基础上,2FA 和 MFA 是结合两个或多个因素的方法,例如短信组合推送通知,为用户帐户添加更多安全层。

现有玩家分析

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

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

Privy允许用户使用电子邮件等多种社交登录方式,使用SSS分割三个共享:

设备共享:浏览器-iFrame、移动安全飞地。

授权共享:由 privy 存储,链接到 privy id)。

恢复共享:用户密码或由 Privy 加密存储在硬件安全模块 (HSM) 中。

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

设备共享:浏览器-iFrame

服务器密钥共享:Particle的服务器

新解决方案

密钥层:WebAuthn、Secure Enclave 和 Passkey

上述现有解决方案对于向用户介绍 web3 至关重要。然而,它们经常面临挑战:密码可能会被遗忘或成为网络钓鱼攻击的目标,甚至 2FA 虽然更安全,但由于其多个步骤可能会很麻烦。此外,并不是每个人都愿意委托第三方进行密钥管理,用户仍然依赖于他们的系统可用性和活跃性,而某些服务则确保他们无法访问密钥。

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

WebAuthn (网络认证)

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

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

webAuthn 的优点:

增强的安全性:消除对密码的依赖,减少网络钓鱼、暴力破解和重放攻击的脆弱性。

改进的用户体验:提供更简单、更快捷的登录过程,通常只需点击或生物识别验证即可。

隐私保护:身份验证期间不会传输共享秘密,各个网站不会收到任何个人身份信息。

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

设备绑定的 WebAuthn,例如。安全区域

在现代情况下,我们可以使用硬件处理器作为身份验证器,例如用于 Apple 设备的 Secure Enclave、用于 Android 的 Trustzone 以及用于 Google Pixel 的 Strongbox。

密钥生成:使用公钥加密技术,根据 WebAuthn 标准生成密钥对,通常使用 P-256 r1 曲线。公钥被发送到服务,而私钥永远不会离开 Secure Enclave。用户从不处理明文密钥,使得私钥很难被泄露。

密钥存储:私钥安全地存储在设备的 Secure Enclave 中,这是一个与主处理器隔离的强化子系统。它可以保护敏感数据,确保即使主系统受到损害,原始密钥材料仍然无法访问。破坏 Secure Enclave 的门槛非常高,因此 Apple Pay 和 FaceID 数据等最敏感的数据类型都存储在那里。以下是 SE 工作原理的深入解释。

身份验证:用户使用面部识别或指纹进行访问,Secure Enclave 使用私钥对来自服务的质询进行签名,服务使用公钥进行验证。

基于设备的 webAuthn 优点:

硬件级安全性:使用 Secure Enclave(基于硬件的隔离密钥管理器)提供额外的安全层。

防御网络钓鱼:不要在可能受感染的设备或网站上输入任何信息。

便捷的体验:提供更加人性化的体验。用户不再需要记住不同站点的复杂密码。

基于设备的 webAuthn 缺点:

设备限制:设备丢失或损坏,私钥无法导出或找回,无法跨设备操作。

基于云的 WebAuthn、密码

为了解决跨设备功能的挑战,科技巨头推出了基于云的 webAuthn 实现,Passkey 因苹果而广为人知。

我们以Apple的Passkey为例:

密钥生成:用户的 macOS、iOS 或 iPadOS 设备作为身份验证器,在用户创建帐户时生成公私密钥对。然后将公钥发送到服务器,私钥存储在设备的 iCloud 钥匙串上。 iCloud 钥匙串数据使用硬件绑定密钥对进行加密,并存储在硬件安全模块 (HSM) 中。 Apple 无法访问该密钥。

跨设备同步:此过程与访问 iCloud 相同。对 iCloud 帐户进行身份验证,接收短信代码,然后输入其中一台设备的密码。

基于云的 webAuthn 优点:

跨设备:万能钥匙的设计目的是方便并可从所有定期使用的设备访问。但目前仅限于苹果设备,对于 Android 来说,由于版本多样、硬件差异较大,因此更具挑战性。

网络钓鱼防御:同上。

便捷体验:同上。

基于云的密钥缺点:

依赖云服务:与基于设备的 webAuthn 相比,基于云的密钥将安全级别从 Secure Enclave 的硬件转移到 iCloud 钥匙串,有些人可能会认为它是对云服务的托管。需要考虑的一些关键方面包括: 用户用于 iCloud 的 AppleID 帐户遭到泄露;虽然 iCloud 钥匙串采用端到端加密来保护数据,但操作错误或漏洞会带来风险。

平台限制:例如,在 Android 设备上使用基于 iCloud 的密钥非常具有挑战性。此外,与传统方法不同,苹果和谷歌不发送特定于设备的断言。这意味着目前无法验证生成密钥的设备类型,这引发了有关密钥及其相关元数据的可靠性的问题。

账户层:SCA 和 EOA

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

当我们尝试将 web2 webAuthn 实现到 web3 时,存在一个显着的差距:Web2 仅需要证明所有权,而 web3 还需要同时授权交易。使用 Passkey,开发人员无法控制签名消息,该消息通常是通用的,例如“登录”。这可能会导致潜在的前端操纵、用户盲目地签署消息——一个看似次要但至关重要的问题。

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

设想一个钱包根据上下文调整其安全要求:当用户使用熟悉的本地 IP 地址时,它允许单签名者身份验证,但需要多个签名者来处理来自未知 IP 地址或高于特定值的交易。凭借模块化和可编程性,我们的想象力是此类创新的唯一限制。许多SCA服务提供商积极构建这个空间,包括Safe、Zerodev、Biconomy、Etherspots、Rhinestone等。同时也对Stackup、Plimico、Alchemy等基础设施的支持使其成为可能。

请查看我之前的研究,该研究提供了有关 SCA 的更全面的背景信息。

EOA可以通过MPC服务实现社交恢复和跨设备/平台兼容性。尽管 EOA 具有固定的签名者,但 MPC 提供商可以将密钥拆分为多个共享,以增强安全性和灵活性。此方法缺乏 SCA 的可编程和可升级功能,例如时间锁恢复和轻松密钥停用。然而,它仍然通过与链无关的方式提供卓越的跨链功能,并且目前比 SCA 更具成本效益。著名的 MPC 提供商包括 Privy、Particle Network、web3Auth、OKX 钱包、Binance 钱包等。

签名层:R1 支持

让我们退后一步来理解上下文:在以太坊上,私钥是从 k1 曲线中选择的随机数,签名过程也利用了这条曲线。

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

感谢 Dogan,要了解更深入的知识,请查看他的研究。

协议解决方案:

解决方案:EIP7212,Clave团队提出的针对secp256r1 Curve Support的预编译。

评估:该提案创建一个预编译合约,通过给定的消息哈希参数、签名的 r 和 s 分量以及公钥的 x、y 坐标,在“secp256r1”椭圆曲线上执行签名验证。因此,任何 EVM 链(主要是以太坊汇总)都能够轻松集成此预编译合约。到目前为止,协议预编译可能是最高效的解决方案。

实现:zkSync

第三方服务

解决方案:一站式 (Turnkey)

评估:一站式 TEE 确保私钥只能由用户通过其 PassKey 访问,而 Turnkey 本身永远无法访问,但这仍然需要服务的活跃性。

实施:Goldfinch

Solidity 验证器解决方案:

解决方案:FCL的Solidity Verifier、FCL的带有预计算的Solidity Verifier、Daimo的P256Verifier

实施:Clave、Obvious 钱包

零知识(ZK)验证器:

解决方案:Risc0 Bonsai、Axiom 的 halo2-ecc

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

实现:Bonfire Wallet(Risc0)、Know Nothing Labs(Axiom)

这些解决方案中的每一个都提供了不同的方法来在以太坊生态系统中实现更便宜且可行的 r1 签名验证,这是 Dogan 的评估。

实施案例研究

*请注意,截至 2023 年 12 月,大多数解决方案仍处于早期阶段,可能随时更改或改进。这些例子仅供学习之用;请务必参阅其官方网站以获取准确信息。

Clave 钱包:(Secure Enclave webAuthn) + (SCA)

基本:

演示:https://getclave.io/

账户:SCA

链:ZkSync

交易流程:

密钥创建:用户提供指纹或面部识别等生物识别身份验证,密钥对在 Secure Enclave 内部生成,不会泄露或留在外部。

密钥签名:应用程序获取所需的交易消息并将签名请求转发到 Secure Enclave,用户提供生物身份验证以批准签名,Secure Enclave 使用密钥对消息进行签名,并将其广播到区块链节点。

附加功能:智能合约账户可实现许多强大的功能。首先,赞助Gas fee。由于paymaster的存在,dApp 或广告商等其他方可以支付用户的 Gas 费,使交易过程更加顺畅,并且他们还可以允许用户使用 ERC20 而不是以太币或原生代币来支付 Gas 费。并且使用会话密钥,用户可以在一段时间内进行无符号交易。

恢复机制:

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

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

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

灵魂钱包:(Passkey)+(4337 SCA)

基本:

演示:https://alpha.soulwallet.io/wallet

账户:ERC4337 SCA

链:以太坊、Optimism、Arbitrum 以及即将推出的所有 EVM Layer2

交易流程:

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

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

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

恢复机制:

密钥:使用任何定义的密钥通过任意设备登录钱包。

监护人恢复:指定的监护人可以根据阈值轮换钱包,并且可以稍后解决时间锁定以防止恶意行为。

OKX钱包:(MPC-TSS + Passkey) + (4337 SCA)

基本:

演示: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钱包(获取服务器共享)并获取云服务共享,将这2个共享组合起来恢复钱包,OKX钱包将生成新的秘密份额。

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

基本:

演示:https://w3a.link/passkeysDemo

链:所有 EVM 和 Solana

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

账户:任何账户,如 EOA、4337 SCA 或一般 SCA

交易流程:

密钥创建:通过创建钱包,生成了三个密钥共享。 Share1 是社交登录共享,用户可以输入电子邮件,分散的节点网络存储每个用户的密钥; Share2 是存储在用户设备本地存储上的设备共享; Share3由本地计算机生成并由用户首选的云服务备份。

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

恢复机制:

阈值恢复 当用户注销、设备不可用或设备上的密钥之一被泄露时,您可以使用社交登录方法登录 webAuthn 帐户并获取密钥云共享,结合这两个共享来恢复钱包。

Lit 协议(MPC-TSS + 去中心化节点 + Passkey)+ (EOA/SCA)

基本信息:

演示:https://lit-pkp-auth-demo.vercel.app/

链:大部分EVM、Cosmos、Solana。

帐号:MPC-TSS,30个网络中的20个,SCA和EOA都可以采用。

交易流程:

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

密钥签名:收到请求后,Lit 节点根据指定的身份验证方法独立验证或拒绝请求,并使用 MPC-TSS 技术,1。收集超过阈值(30 个中的 20 个)的密钥份额以生成签名,并由客户端组合来满足请求。

恢复机制:

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

结论:

在对 Layer2、Layer3 和数据可用性解决方案的热情推动下,我们热衷于提高区块链的性能。此外,追求真正的安全性,将零知识证明隐私与透明性相结合。所有努力都瞄准一个目标:为经常与区块链交互并在生活中采用加密货币的真实用户做好准备。

我们很容易陷入技术完美主义的梦想,但是我们必须问自己: 我们追求的是什么样的体验?我们设想的世界是, 加密技术关乎直觉而不是令人望而生畏的技术术语。用户可以毫不犹豫地进入这个看似复杂的加密世界。

想象一下用户 Rui:她发现了一个很棒的 dApp,可以使用面部识别或指纹轻松注册,并可以选择设置备份或监护人。当她使用 dApp 时,她可以顺利执行交易,可能需要少量 ERC20 费用,甚至根本不需要。随后,她自定义了钱包设置——可能激活自动交易的时间锁、添加另一台设备作为备份签名者,或者修改她的监护人列表。

我们的建设者让这一切成为现实。集成 WebAuthn 和 Passkey,我们增强了私钥管理,使其既安全又用户友好。最重要的是,SCA 作为一个实体打开了个性化安全和功能的领域。至于Gas fee?由于 Paymaster 提供商可以为互换创建“金库”,甚至允许广告商为用户支付费用,因此用户的负担减轻了。这一演变的核心,特别是对于以太坊主网及其等效的 Layer2 而言,是 ERC4337。它引入了一种替代内存池,将 SCA 交易与 EOA 区分开来,无需对协议进行重大修改。另一方面,一些第 2 层网络甚至本身就采用 SCA,将它们无缝地整合到自己的系统中。

需要付出巨大的努力才能让一切变得容易。存在许多挑战,例如降低 SCA 的部署、验证和执行费用;标准化接口以提高账户互操作性;跨链同步账户状态;还有很多。感谢所有建设者,我们一天天地接近解决这个难题。像我们 SevenX 这样的加密货币企业已经准备好帮助伟大的公司实现他们的愿景。

声明:

  1. 本文转载自[SevenX Ventures],著作权归属原作者[@Rui],如对转载有异议,请联系Gate Learn团队,团队会根据相关流程尽速处理。
  2. 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
  3. 文章其他语言版本由Gate Learn团队翻译, 在未提及Gate.io的情况下不得复制、传播或抄袭经翻译文章。
即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!
It seems that you are attempting to access our services from a Restricted Location where Gate is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Thailand, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.