区块链 > 区块链技术 > Passkey钱包详细介绍

Passkey是什么?Passkey钱包及其未来设想

2024-09-06 08:09:14 佚名
简介未来 Web3 钱包的格局很可能像是微信支付和支付宝的关系,用户通过支付宝使用金融服务,通过微信使用日常的小额支付,对应 Web3 钱包大家会使用硬件钱包或者助记词钱包进行 DeFi 业务和资产存储,使用 Passkey 钱包进行日常 dapp 交互和小额支付

Passkey是什么?Passkey钱包及其未来设想!几个月前,我注册了0xppl.com。那是Meme币狂热之后的几天,我不希望我那些不负任何财务责任的选择在社交网络上传播。我想创造一款新钱包——一款既安全又易用的钱包。由于不想再存储另一对私钥,我就去寻找替代方案,然后在Metamask Snap目录上发现了Capsule。

过去,我曾写过关于移动优先对于增长的重要性的文章。截至2024年,多个著名的DeFi产品都推出了移动应用。去年我们讨论了波动性是如何成为一种服务的。上周末,Pump.fun团队的累计收益达到了1亿美元。

我想看清楚下一个大的契机是什么,貌似passkey钱包可能就是一个。

Passkey是一种在设备中存储私钥以验证自身身份的机制。亚马逊和谷歌等公司就使用passkey来帮助用户实现无密码登录,passkey的应用也扩展到了Web3。

今天脚本之家小编给大家分享的是我将简单解释一下passkey是如何工作的,并提出一个由passkey实现的可能性未来。下面一起详细了解下吧!

Passkey 技术简介

介绍 Passkey 之前需要先介绍 WebAuthn。它是由苹果、谷歌、微软、Meta 等共同支持的FIDO 联盟提出的无密码登录技术。它通过设备端生成的非对称密钥对来进行用户鉴权,取代用户密码的鉴权方案。它的原理和我们传统上使用的 U盾或者硬件钱包类似,用户使用设备内保存的私钥做数字签名来向服务器认证自己的身份,WebAuthn 的私钥在专用的安全芯片中生成和管理,对应于苹果设备的 Secure Enclave,安卓设备的 Secure Element 以及 PC 设备的 TPM。他们都是独立于 CPU 和操作系统的独立芯片,具有非常高的安全等级。例如 Apple Pay 的信用卡信息就是存储在这个区域。安全芯片中的私钥是无法通过外界 API 读取的,它只能被系统的锁屏模块(通常是生物识别)唤起进行数字签名操作。

Passkey 则是 WebAuthn 基础上的密钥加密同步方案。用户可以使用 iCloud 或 Google Account 自动加密同步自己的设备私钥,以达到多个设备同时自动登录一个网站的体验。目前主流的设备包括 iOS、Android、MacOS 均完整支持 Passkey,Windows10/11 则仅支持WebAuthn.

Passkey/WebAuthn(考虑到二者技术上仅存在可同步性的差异,后面统-称为 Passkey)技术是大公司力推的下一代账号鉴权技术,它具有非常明显的优势:无密码、防丢失、防冒用、简单易用等。但它也存在天然的缺陷,即不同品牌设备之间无法互信,i0S 的 Passkey 是不可能和 Android 设备同步的,因此跨品牌终端登录账号始终是个较大的问题,

Passkey 结合 Web3 的优势

Passkey 技术本身是为 Web2 网络服务设计的,并没有考虑到 Web3/Crypto 的应用场景但由于它的非对称密钥架构,一旦和 Web3 结合就会发挥出极大的优势。

Passkey 钱包可以用来构建无密码、无助记词的非托管钱包Passkey 钱包不需要透露任何用户隐私信息,包括 Email、手机号甚至用户名Passkey 钱包把普通用户的钱包安全性提升到硬件级别,同时用户体验更好区块链可以作为信任中介,允许不同品牌设备生成的 Passkey 互认,可以做到比 Web2 使用Passkey 时用户体验更好安全、便利、非托管,这看似不可能同时达到的三个优势在 Passkey 钱包上可以做到,它会是 Web3 mass-adoption 叙事的一个重要推动者。

ERC4337 与 MPC 钱包浅析

同样主打 mass-adoption 叙事,市场上已经存在了两个主流的解决方案,分别是 ERC4337 账户抽象钱包和 MPC 安全多方计算钱包。我们先简单回顾一下他们的原理和特点。

ERC4337 钱包

ERC4337 是 EVM 合约钱包的一个应用层标准。合约钱包本身的优势包括私钥丢失可重置、手续费可代付、权限管理灵活、批量交易等。但它的劣势也很明显,包括初始化成本高、单次交易手续费高、dapp 兼容性差等。这些都是合约钱包的理论优缺点,在实际使用过程中它暴露的其他缺点也不少。

这些理论和实际问题导致 ERC4337 钱包的实际采用率并不及人们的预期。

MPC 钱包

MPC 钱包就是将私钥分割成若干份并交由多方保管,当需要签名时,再将私钥拼接起来形成一个完整的私钥再签名;或者各分片分别签名后将签名合并计算成完整签名。MPC 钱包的优势包括:

但 MPC 同时有个比较大的缺点,就是它必须引入中心化的分片托管和签名服务。他们需要大量的成本来维护分片服务器的信息安全和数据备份,并保证能够及时响应用户的签名请求。这也导致 MPC 钱包的商业模式都是 toB 的 SaaS,同时用户很难迁移。这也导致应用方往往不愿意把用户绑定在某个 MPC 服务商那边。

跨越鸿沟

想象一下,如果移动设备从未存在过会怎样,人们只能通过昂贵的大型个人电脑来访问互联网。这就是上世纪90年代末的现实。通常,这些计算机连接着实体电话线,有人使用互联网时,电话线就会断开。

因此,如果你想从Napster下载最新专辑,并且你只有一个互联网连接的话,你家很可能在这个时候接收不到任何来电。

移动设备打开了网络连接的大门。从2000年到2020年,有30亿人使用移动设备上网。2010年代,有10亿用户加入Facebook,他们引起了足够的关注,促进了数字优先经济的发展——在这种经济中,线上商品销售或约会完全通过社交网络进行。

如果互联网没有变得易于访问、经济上负担得起,以及随时随地易于使用,这些平台可能会遭遇与内容电视网络相同的命运:集权、审查,并且内容通常很无聊。移动设备促进了互联网经济。

如今,安全的钱包访问需要你有一个实物设备(比如一个ledger钱包),签署交易,并且要放在一个安全的位置。因此,人们只使用它们来存储高价值资产。Passkey钱包更像是移动设备之于互联网。它们不需要很高的前期成本,并且允许用户随时随地使用,例如Capsule。Passkey技术大大降低了钱包的使用门槛。

推动Passkey采用的主要驱动力是Fast Identity Online(FIDO:线上快速身份验证服务)——已有250多家知名公司使用该标准。知名的密码管理器如Bitwarden和LastPass都在使用FIDO服务。所以,从某种意义上说,这是一种成熟的技术,现在正通过像Capsule这样的主体移植到加密生态系统中。

但它们到底是什么,它们是如何工作的呢?就像加密钱包一样,passkey基于一个公钥私钥模型。公钥是网站用来识别你身份的标识符,公钥是公开的。私钥则在你的设备中生成。

当你通过Apple Pay进行支付或使用面部识别登录设备时,生物识别数据不会离开你的机器。由一个芯片(通常称为Secure Enclave)来验证信息(比如指纹),对其进行处理,并将结果提供给第三方软件。我可以偷走你的iPhone,但这并不意味着我就能访问你的生物识别数据了,因为这些数据永远不会离开Secure Enclave。

每个应用程序都有一个唯一的密钥对,所以你的Google密钥对可能不会在Amazon上再次使用。可以把它们看作是设备自动生成的用于登录各个站点的唯一密码。这些密钥通常存储在云中。谷歌和苹果都相应的密钥云存储机制,因此任何使用其操作系统的设备都可以同步登录密钥。

对加密世界而言,这意味着什么?钱包使用私钥来签署交易。还记得我说过你的secure enclave存储你的私钥吗?实际上,你可以使用面部识别或指纹扫描作为签名交易的身份验证机制。加密老用户可能并不会觉得这很酷。但如果你是一款游戏或web3社交产品的开发者,并且你只有不到10秒的时间去吸引用户,那么使用iCloud的passkey便是你目前最快的解决方案。

Capsule允许我创建一个可以随时访问的钱包,并通过我的移动设备进行指纹扫描或面部识别,方便地验证交易。他们提供软件开发工具包(SDK),使任何开发人员都可以为用户创建新钱包。你使用Gmail登录一款Capsule产品,就可以立即看到一款随时待命的钱包。

Capsule等钱包提供商整合了像Stripe这样的入金方案。因此,用户只需在启动钱包后使用Apple Pay就可以持有ETH(支付gas)。这样一来,以前需要几个小时才能完成的过程被缩短至几分钟。不用再为铸造NFT而与不透明的离岸交易所扯上关系。但是如果用户丢失了他们的密钥怎么办?

这就是多方计算(MPC)的用武之地。这听起来有点像账户抽象,但概念有所不同。

MPC是一种加密密钥的生成管理机制。顾名思义,参与创建和存储私钥的有多方,而其中任何一方都不知道其全部内容。实际上,没有一个人可以访问密钥,但是如果一个人丢失了密钥的一部分,另外两个人可以帮助恢复访问。

例如,在支持Capsule的钱包中,密钥是由用户和Capsule的输入生成的,而其他各方都不知道这些输入的具体内容。此设置对于密钥丢失和用户失去访问权限时的权限恢复非常有用。然而,如果其中任何两方合作,他们就可以签署交易。当用户失去访问权限时,此设置对于恢复密钥特别有用。

我已经解释了它是如何工作的,现在我们可以讨论它能实现什么以及为什么它让我这么感兴趣。Capsule提供的SDK允许用户创建一个可以跨多个产品使用的钱包。例如,当你在Metamask上为Uniswap和Aave使用相同的钱包时,两个应用程序都可以与相同的地址进行交互来查询和执行交易。

在批准一项贷款之前,Aave可以查验你的钱包余额,你可以使用Uniswap的流动性提供商(LP)代币作为另一个平台上的贷款抵押品。跨平台资产的互操作性是Web3的核心原则。一直以来,实现这种互操作性需要用户拥有自己的带有助记词的钱包。在不同设备间移植互操作性是非常让人痛苦的。

通过允许用户使用更传统的身份验证形式签署交易或管理钱包,Capsule抽离了这些痛苦。

你可以使用谷歌账户登录,在多个产品中使用同一个钱包。有人可能会说,使用MetaMask的任何人都可以使用这个功能,但大多数用户都不熟悉助记词或保护助记词的安全。然而,他们熟悉使用谷歌、Twitter或苹果的登录系统。用户只需点击一个按钮就可以创建一个钱包,这可能就是用户留存和流失之间的区别。

这里需要注意的另一个因素是,电子邮件链接或嵌入式钱包本身并不新鲜。这一市场领域有很多个服务提供商。

有意思的是,你如何在不同的产品中使用相同的验证表单——比如,一个X handle或一个Gmail登录。互操作性是独一无二的。

在过去,如果你使用电子邮件(比如joel@decentralised.co)在一个去中心化交易所启动一个钱包,然后试图在另一个产品(比如借贷产品)上做同样的事情,你会有两个不同的钱包。所以,任何类型的可组合性(或跨应用程序交互)都无从谈起。Capsule帮助在web2原生身份验证系统之间移植资产和身份,其SDK让任何开发人员都可以仅凭几行代码将其集成到产品中。

Capsule给钱包领域带来的另一项改进就是可编程交易,支持某些条件下的自动交易。

例如,假设你想让一个持有USDC的钱包在每次ETH价格跌至2000美元以下时从Uniswap购买价值100美元的ETH。在过去,你必须将全部100美元存入一个中心化交易所(如币安),或者手动跟踪该资产的价格走势。

有了可编程交易,这个过程就容易多了。像Velo Data这样的产品可以传递变量(在本例中为ETH的价格)来验证交易。用户做选择,当满足ETH低于2000美元的条件时,Capsule就可以签署交易。

拥有跨各方执行交易所需的签名可以实现可编程性。你可以为通过Uniswap交易资产设置先决条件,而无需用户参与—这就类似于在登录应用程序时用于交易的if-then语句。

例如,链上保险产品可以从提供天气数据的oracle查询数据,并从多个用户资助的资金池中进行支付。一个使用谷歌查询数据的预测市场也可以为体育赛事付费。更好的是,你可以将Apple Watch与预设钱包连接起来,这样如果用户错过了当天的锻炼,就会自动把钱转给朋友。

在所有这些情况下,Capsule为开发者提供的独特优势是它永远不会让用户为助记词而烦恼。用户可以打开钱包,购买10美元的ETH,使用他们的Gmail账户登录押注体育赛事市场,并通过Stripe使用SDK购买ETH。

这里的设计空间仅受限于产品可查询的数据类型和Capsule基于数据解释和签署交易的能力。但是,这种模型对于更主观的数据或交易需求可能不太有效。

不止于交易

这有什么重要的?我可以举个例子来解释。最近,Capsule与r/datadao合作,让用户能够将数据从Reddit移植到DAO。简单来说,该产品允许用户将他们的数据从Reddit导出到DataDAO(由Commonwealth运行),用来训练大语言模型(LLM)。这样的一个系统需要简单的登录模型,该模型可以处理电子邮件地址,并与像Commonwealth这样的web3原生产品交互。

R/datadao的DAO由一个名为Commonwealth的工具管理。因此,当用户设置钱包(使用Reddit)然后登录到Commonwealth时,他们可以使用他们从Reddit获得的积分(或代币)对Commonwealth管理的DAO进行投票。Capsule允许用户使用X handle、Discord或谷歌账户生成的钱包注册DataDAO,并使用他们的积分对Common构建的系统进行投票。完成这些步骤只需要几秒钟。

一个更贴切的例子是,优步司机可以按照他们在优步账户上的里程比例来管理DAO。对这些用例的支持一部分来自于ZkTLS提供的工具。

Capsule面向Web3新用户拓展市场的另一种方式是通过预生成钱包。也就是说Web2产品可以让用户在登录产品时启动钱包,并且钱包里已有资产。

例如,如果我想让迪拜一家跑步俱乐部最活跃的成员加入一个产品,我可以预先生成与他们的Twitter账户相关联的钱包,加载NFT为他们提供鞋子等商品的折扣,然后私信他们让他们加入社区。

现在,我并不完全确定有多少人符合以下条件:

然而,我的观点是,这样的工具可以用来引导Web2社区使用Web3原语。如果用户没有回复我的私信怎么办?我可以使用预编程交易,在特定时间点后将NFT发送回申领钱包。就好比折扣有一定期限一样。

这为全新的应用程序开辟了设计空间。最容易获得的一个机会可能是内容本身。目前,我们在Substack上写作,因为它允许我们通过电子邮件与读者联系。如果我们需要铸造一个NFT,我们最好的选择是Paragraph、Mirror或Farcaster Frame。假设Capsule SDK允许创建一个Web3原生出版物,可以让用户生成文章并发送到自己的电子邮件地址。

事实上,我们甚至可以使用OP(Optimism)代币预加载连接我们最活跃的读者的钱包,这样他们就不必通过桥接资产来铸造NFT了。这个流程看起来就像下面这样。

上图左侧,我使用Metamask之类的东西解释了今天在Mirror上铸币的步骤;右侧,我解释了使用Capsule SDK会是什么样子。

这意味着一个产品可以使用传统的分销渠道(如电子邮件)重新激活用户,同时在Web3支付轨道(如稳定币)上与他们互动。

就像Capsule提供的工具一样,工具似乎是连接当前市场和未来十年可能存在的市场之间的桥梁。在我看来,它们是介于Web2产品的易用性和便利性与Web3原生构建原则的安全性、托管和定制性之间的完美的中间地带。

Passkey 钱包产品分析

Passkey 钱包的三个方向

我们分析了目前市场上存在的 Passkey 钱包,发现他们主要分为三个技术方向。

下面我们就逐一对它们做介绍和分析。

Clave & Banana SDK

第一类钱包采用 AA + Passkey 签名架构,在 EVM 兼容链上构造一个抽象账户,直接使用智能合约验证 Passkey 签名。这里介绍两个代表性的项目。

Clave 最早是一个在 EthGlobal Hackathon 2023 上获奖的项目,参赛的时候项目名叫 opClave。它使用 EVM 合约计算 Passkey 需要的 secp256r1 签名(不是通常的 secp256k1),由于算法复杂度和 EVM 能力的限制,验证一次 Passkey 签名需要消耗 60万~90万 gas。这对于真实场景,至少 mass-adoption 场景是不可接受的。因此 Clave 计划采取单独起一条 Layer3 链,并在上面加入预编译 secp256r1 签名验证合约的方式降低 gas 消耗。但这种方式又严重破坏了钱包的多链特性,因此很难普及。

Banana SDK 则把自己定位为一个 toB 的 SDK 而不是 toC 的钱包。通过 Banana SDK,dapp 方可以把低门槛钱包嵌入到任意地方,方便用户导入。但它的底层方案和遇到的问题和 Clave 相同,高昂的 gas fee 是这类产品走向实用的最大障碍。

为了解决 Passkey 签名在以太坊上验证的成本问题,开发者们提出了 EIP-7212 等以太坊提案,希望 EVM 内置预编译的 secp256r1 签名验签算法,从而大幅降低验签成本。但该 EIP 涉及底层密码学和共识层修改,即使能够获得通过,并合到主网时间也会以年来计算。Clave 目前和 zksync 合作,将 EIP-7212 代入 zksync,并主要部署在上面。

此外,类似采用 AA + Passkey 链上验签的项目还有一些其他的方案,包括使用零知识证明减少链上计算的方案,例如 knownothinglabs 用 halo2 、bonfire wallet 用 risc0 bonsai。不过大部分产品都仅存在于产品原型阶段,暂时没有可以进一步分析的产品。

Turnkey

考虑到智能合约验证 Passkey 签名的成本问题,Turnkey 等开发者把 Passkey 的验证放到了链外,改由中心化服务验证用户的 Passkey 签名,验签成功后控制加密机生成签名。这种方案本质上就是 Web2 使用 Passkey 的方式,将用户名密码替换成了公私钥对,但最终鉴权决策还是中心化服务器给出。

Turnkey 自己的定位是 toB 的 WaaS 服务,其优势是开发工具非常完整,开发者体验很好,同时生态支持做得也很好。目前已经有多家合作方在开发产品,例如 dynamic.xyz 基于 Turnkey 提供了 toC 的钱包服务,用户体验良好。

但 Turnkey 的问题也很突出,就是它本质上管理了用户的钱包私钥(尽管它的文档反复强调自己是非托管,理由似乎是私钥在服务器的 TEE 环境,而管理员并不能直接访问 TEE),并且商业模式是 toB 的 SaaS 服务,一旦服务下线,用户就面临无法签名的问题。

JoyID

JoyID 钱包从技术上走的是一个独特的路线,称为 Signature Transform。JoyID 钱包本身支持包括以太坊、比特币、Solana 等多链,并且在这些链上表现为标准的 EOA 钱包,同时它通过在 Nervos CKB 上的 AA 账户对自己的密钥和授权设备做去中心化管理。这是一种非常特殊的架构,它同时具备 AA 账户的灵活性和 EOA 账户的低成本和高兼容性。

JoyID 管理的 AA 账户主要负责多设备之间的 Passkey 互相授权,并且保存 2-of-2 密钥计算的加密后的分片,另一个分片则由设备在签名时通过 Passkey 实时计算出,通过这种方式来实现 secp256r1 → secp256k1 之间的去中心化签名转换。这种方案在交易签名时不需要服务器介入,完全是在用户设备侧基于安全芯片的签名,确保了安全性、去中心化和非托管。

实际产品体验上,JoyID 的整个流程非常丝滑流畅,用户不需要输入任何信息,直接两次系统认证即可完成钱包创建。全程只需要几秒钟时间,中间也不需要支付任何费用。目前看是所有 Passkey 钱包中最完善,也是最成熟的方案。

Web3 钱包的未来

总结一下 Passkey 钱包的优势:免安装、硬件级安全、生物识别认证、无须助记词、可随时恢复、无须密码、无须提供隐私信息、不依赖 Web2 大公司、EOA 兼容性高(部分钱包支持)等。对比传统的 MetaMask 插件钱包、助记词钱包,其用户体验甚至安全性的提升都是巨大的。甚至其用户体验已经超越了一个 Web2 账户的注册使用体验,后者不但需要用户提供邮箱、手机号,还需要通过验证码验证。

新的用户体验将带来新的用户,进而也将催生新的应用场景。音乐 NFT、创作者经济、Open Loyalty、DAO 等 Web3 应用过去受限于主流钱包用户的投机属性,往往无法专注自己的有价值业务。海量非投机用户进入后,这些应用场景可以发挥自己的真正优势,为客户提供长期价值。

未来 Web3 钱包的格局很可能像是微信支付和支付宝的关系。用户通过支付宝使用金融服务,通过微信使用日常的小额支付。对应 Web3 钱包大家会使用硬件钱包或者助记词钱包进行 DeFi 业务和资产存储,使用 Passkey 钱包进行日常 dapp 交互和小额支付。期待 Passkey 钱包普及并带来真正的大规模用户。

以上就是脚本之家小编给大家分享的Passkey是什么?Passkey钱包及其未来设想的详细解读了,希望大家喜欢!

本站提醒:投资有风险,入市须谨慎,本内容不作为投资理财建议。

相关文章