原文:Account Abstraction: Improving Security and User Experience for Mainstream Crypto Adoption
翻译及校对:「StarkNet 中文」社区
区块链中的技术创新在过去的几年时间内蓬勃发展,STARK、SNARK、EIP-1559、以太坊合并都是重要的技术成就。然而用户体验和界面设计却没有得到相应提升。人们仍然会被助记词所限制,在没有中心化媒介的情况下参与 DeFi,对大多数人来说仍然不敢想象。为了让数以亿计的用户加入到 Web3 中,改进用户引导体验至关重要。
自从 FTX 事件(以及 Gemini、Celsius 和 Mt.Gox)后,确保用户资产的自托管非常关键。但直到近期,对大部分用户而言自托管钱包仍然复杂到难以使用。每个月都有大量用户丢失/遗忘 Web2 密码;用户该如何永久安全地保存助记词和私钥呢?
简而言之,这是场关于安全的噩梦。在区块链中无数次上演这样的场景:一个错误的操作,无论是恶意攻击者还是用户疏忽,都有可能导致数百万美元的损失。
作为新加密用户们的首个接触点,以太坊钱包必须易于使用、安全可靠,且可定制化满足用户要求。这就要求开发者将 Web2 金融产品简易性和Web3 的功能完美融合。
这正是帐户抽象所实现的。
帐户抽象通过消除用户对私钥的依赖,可以提升自托管钱包产品的安全性,并让钱包更具可编程性。采用此方式改善用户体验,最终让非托管钱包能够扩展到数百万的主流加密用户群体中。
为了充分理解帐户抽象的重要性,我们需要重新了解以太坊帐户的工作原理。
以太坊帐户有两种类型:
以太坊外部帐户 (Externally Owned Account)
合约帐户 (Contract Account)
下文将进一步介绍每种帐户类型。
例如 MetaMask 和 Coinbase 钱包,以太坊外部帐户是以太坊用户典型的帐户类型代表。每一个 EOA 都是由一个私钥和一个公钥组成,也称为「密钥对」。
所有的交易都由私钥批准和签名。当交易完成签名后,EVM 会使用 EOA 帐户地址验证签名是否有效。EVM 中的硬编码逻辑能够证明,帐户(代币持有人)和私钥(签名人)是完整体。
因此,丢失私钥意味着将永久失去资产,甚至失去对帐户的控制权。
合约账户等同于帐户抽象,是部署在以太坊区块链上的智能合约。这些合约无需私钥,而是由编写代码逻辑控制。与 EOA 不同,合约账户不能发起交易,因为交易需要通过 EOA 指令触发,且无需每次签名。
帐户抽象把涉及硬编码的授权逻辑从 EOA 中脱离出来,让每个帐户转变为可编程的智能合约,且可以根据个人需求进行定制。
Argent 联创兼首席科学官 Julien Niset 在近期的 Stark @ Home 活动中解释道,采用这种灵活的授权逻辑能够让开发者可以自由地使用帐户功能,例如:
硬件签名器:使用 iPhone 的 Secure Enclave/Android 手机的 Titan HSM 将智能手机变成硬件钱包。用户可以通过此功能,使用指纹、Apple 面部识别等生物特征数据来验证交易。自托管钱包 Braavos 已经推出相应功能。
支付功能:允许用户使用任何代币支付 gas 费用,甚至通过第三设计方的机制来支付交易。
社交恢复:在私钥丢失或被盗的情况下,允许用户将新密钥授权给钱包所有者。可以选择受信任的联系人、硬件钱包或者第三方服务作为恢复守护者。目的是为了简化加密帐户的恢复,就像通过电子邮件恢复银行账户密码。
多重认证:类似于常见的 Web2 2FA,用户可以为他们的加密货币钱包设置两种(或多种)身份验证方法,需要用户通过电子邮件或短信等第二种选项确认批准时,才会签署交易。用户还可以设置每日转账限额或帐户黑名单,钱包将会自动阻拦与这些帐户地址的交互。
抗量子攻击和最低 gas 签名:以太坊目前的签名方案 ECDSA,计算量大(即 gas 费用更高),并且能被量子计算机破解。通过签名抽象,不同的帐户合约使用更高效和量子安全的签名方案。StarkNet 采用的就是自身专属的 STARK 友好型曲线。
这些功能不仅为用户提供更高的安全性和灵活性,更重要的是带来了绝佳的用户体验。
Vitalik Buterin 将帐户抽象列为以太坊开发者社区的「长期梦想」,从 2020 年起,围绕帐户抽象的创新,主要是 EIP-2938 和 EIP-3074。但两者都需要在安全性和实现程度之间进行取舍。目前最具潜力的发展是 EIP-4337,提出了无需更改以太坊协议的帐户抽象版本。
不同于比特币和以太坊正在修改协议以便支持帐户抽象,StarkNet 从一开始就实现了帐户抽象。如果再结合 STARK 证明的可扩展性和能力,钱包将拥有无限的创新潜力。这就是下一代的自我保管钱包(如 Argent和 Braavos)选择构建在 StarkNet 上的原因。
StarkNet 解决方案类似 EIP-4337,需承认完全的帐户抽象会影响用户体验,且可能会导致排序器受到攻击。相反,它目的是通过链上和链下基础设施相融合,从而实现签名抽象和支付抽象。
虽然还有很多工作待完成,但帐户抽象获得了大量关注,吸引了除加密货币原住民小圈子之外的用户。2022 年 12 月,Visa 提出了使用帐户抽象在 StarkNet 上设置自动定期付款的想法。使用可委托帐户,用户可以授权向预先批准的智能合约发起支付。智能合约编程,在设定的时间内扣除指定支付金额。虽然 Visa 还没有公布计划,但足以说明一切,且可能预示着 Netflix 和 Spotify 等大型技术平台可能会投身向加密货币世界。
只有时间能证明未来将如何发展。但能够肯定的是,采用帐户抽象能够使加密钱包更简洁和安全,成为实现区块链自托管钱包扩展数百万倍加密用户的催化剂。StarkNet 也会在此征途中不断建设。