ioPay上的账户抽象 - DePIN钱包

Account Abstraction on ioPay - the DePIN Wallet

ioPay(由IoTeX团队构建) 很高兴地宣布推出账户抽象!使ioPay成为市场上最大的、经过实战检验的多链AA钱包。本博客将为您讲解AA为何重要、IoTeX在AA领域的工作、ioPay的实现以及如何在ioPay上设置您的AA钱包。

为什么AA重要

账户抽象是一个用于描述区块链网络架构根本转变的术语。传统上,区块链账户是与控制资金的私钥相关联的简单地址。然而,账户抽象引入了一种更复杂的模型,使账户不仅是资金的容器,还能够执行复杂的代码。实质上,账户抽象将管理资金和执行代码的角色分开,使得智能合约更加动态和强大。这一转变使开发人员能够创造创新应用,通过提供更高的合同执行和互动灵活性。对于ioPay而言,AA大大简化了账户创建和账户恢复的过程。更不用提AA为多个以前无法实现的ioPay功能打开了大门。账户抽象的好处:

  1. 增强的灵活性:账户抽象使开发人员在设计智能合约时拥有更高的灵活性。通过这种方法,开发人员可以将资金的控制与合同执行的逻辑分开,从而允许更动态和模块化的应用。
  2. 降低的燃气成本:燃气费一直是区块链生态系统中的一个重要问题,妨碍了去中心化应用的可扩展性和采纳。账户抽象有潜力通过优化智能合约的执行来降低燃气成本。通过允许合约在不需要多次交易的情况下执行,从而节省计算资源,实现了这种优化。
  3. 改善的可升级性:传统的智能合约一旦部署通常是不可变的,这使得修复漏洞或添加新功能变得困难。账户抽象引入了“合约可升级性”的概念,使开发者能够在不干扰其功能的情况下更新和改善合约。这个特性对于维护和不断发展去中心化应用至关重要。
  4. 创新的使用案例:账户抽象为开发人员打开了新的可能性,铺平了创新使用案例的道路。这包括去中心化金融(DeFi)、非同质化代币(NFT)等应用。资金与代码执行的分离使得创建更复杂和丰富功能的应用成为可能,这在以前是具有挑战性的。
  5. 提高的安全性:账户抽象引入的关注点分离可以增强智能合约的安全性。通过将资金管理与代码执行隔离,潜在的漏洞和攻击面减少,使恶意行为者更难利用这些漏洞。

loTeX模块化基础设施作为DePIN创新促进者

IoTeX是一个模块化的Web3基础设施平台,将智能设备和现实世界数据连接到区块链。IoTeX的中间件解决方案W3bstream提供现实世界数据的计算和验证,将其上链,同时提供构建者所需的模块化和可定制性,以促进大规模采用。作为DePIN(去中心化物理基础设施网络)基础设施的领先供应商,IoTeX为用户提供设备和链内/链外活动的新奖励,将个人设备转变为共享经济,并将“万物数据”进行代币化。拥有60多名研究科学家和工程师的全球团队的支持,IoTeX结合了其与EVM兼容的L1区块链、链外计算中间件和开放硬件,以连接数十亿的智能设备、机器、传感器和跨物理及数字世界的去中心化应用。当然,任何DePIN项目的关键部分是移动钱包。因此,IoTeX团队花费了大量时间致力于ioPay,作为首选的DePIN钱包(包括将DePINscan集成到钱包中)。

loTeX模块化基础设施作为DePIN创新促进者

IoTeX 一直处于许多高科技工作的前沿,尝试推动区块链和链外计算的可能性。账户抽象(AA)技术是 IoTeX 处于前沿的另一个领域。2023年9月,它获得了以太坊基金会的资助。具体而言,该资助是为了 ERC-4337 和 IoTeX 在使用零知识账户抽象钱包方面的工作。

赋能创新:ERC-4337


利用 zk-SNARK 证明技术,IoTeX 构建了一个可以通过密码授权的账户抽象钱包。zk-SNARK(零知识简洁非交互式知识证明)是一种加密证明系统,使一方能够向另一方证明一个声明是真实的,而无需透露任何超出声明本身有效性的额外信息。zk-SNARK 已在多种区块链应用中使用,例如在关注隐私的加密货币 Zcash 中,用于在不揭示发送者、接收者或涉及金额的身份或交易细节的情况下验证和记录交易。zk-SNARK 这一术语有时非正式地用来指任何零知识证明系统,但严格来说,zk-SNARK 指的是一种特定类型的零知识证明系统,它具有简洁的证明大小,并且不需要证明者和验证者之间的交互。

AA 细节

如果你想测试 IoTeX 的 MVP,该项目获得了零知识账户抽象的资助,你可以通过以下链接进行测试:https://zk-wallet-demo.iotex.io.这个 Linktree 展示了 IoTeX 截至目前的所有 AA 工作。通过利用 IoTeX 在账户抽象领域积累的专业知识,ioPay 的实现成为下一步的理想选择。

ioPay 账户抽象的实现

ioPay 一直非常关注安全和用户体验。这两者都通过账户抽象的实现得到了增强。ioPay 目前提供 Gmail AA 登录支持。在不久的将来,ioPay 计划实施其他 AA 身份验证方式。在将这一功能集成到 ioPay 中时,团队利用 P256 来验证钱包交易,并使用基于电子邮件的 DKIM 协议来恢复用户账户。DKIM(域名密钥识别邮件)是一种电子邮件身份验证方法,通过数字签名让电子邮件接收者知道消息是由域名所有者发送和授权的。一旦接收者确定电子邮件是用有效的 DKIM 签名签署的,就可以确认电子邮件的内容没有被修改。因此,我们可以在链上合约上验证 DKIM 签名用户并恢复用户的 ioPay 账户。P256 使用 secp256r1 椭圆曲线,这是一种被广泛接受的加密标准,适用于 EVM,以创建安全的身份验证和交易/智能合约签名。大多数现代设备和应用都依赖于 "secp256r1" 椭圆曲线。例如:

  1. 苹果的安全隔域:苹果硬件中有一个单独的 "受信执行环境",可以签署任意消息,并只能通过生物识别身份验证访问。
  2. Webauthn:Web 身份验证(WebAuthn)是由万维网联盟(W3C)发布的网络标准。WebAuthn 旨在通过公钥加密标准化用于对基于 Web 的应用程序和服务进行用户身份验证的接口。它几乎被所有现代网络浏览器使用。
  3. Android 密钥库:Android 密钥库是一个管理私钥和签名方法的 API。使用密钥库作为应用程序的签名方法时,私钥不会被处理。此外,它可以在微芯片中的“受信执行环境”中完成。
  4. 密码钥匙:密码钥匙利用 FIDO 联盟和 W3C 标准。它用加密密钥对替代密码,也可以用于椭圆曲线密码学。由于 IoTeX 网络已经支持执行在“secp256r1”椭圆曲线上的签名验证的预编译合约,因此基于苹果的安全隔域和 Android 密钥库构建 ioPay AA 钱包的验证逻辑是合理的,并且具有固定的燃料费用。通过利用设备的安全隔域/密钥库和生物识别身份验证,我们可以实现非常安全的 AA 钱包。为了鼓励使用这些新 AA 钱包,在有限的时间内,IoTeX 每天为使用 ioPay AA 钱包的用户提供 2 个 IOTX 来支付燃料费用。如果 ioPay 用户拥有 MachineFi NFT,他们可以每天获得 10 个 IOTX,作为我们 MachineFi NFT 持有者的一种额外实用性。

如何在ioPay中设置AA钱包

步骤1) 下载ioPay 并点击创建AA钱包。

点击创建AA钱包。

步骤2) 输入一个gmail地址

输入一个gmail地址

步骤3) 您会收到一封包含唯一验证代码的电子邮件

步骤4) 恭喜您获奖+用户获得2个IOTX,以帮助激励用户使用这一新功能。(对从未使用过Iotex的新用户非常好,以便他们获得原生代币)

恭喜您获奖+用户获得2个IOTX,以帮助激励用户使用这一新功能。(对从未使用过Iotex的新用户非常好,以便他们获得原生代币)

步骤5) 用户返回主页,可以进行任何交易或使用任何利用AA钱包的dApp。

用户返回主页,可以进行任何交易或使用任何利用AA钱包的dApp。

步骤6) 用户每天收到2个$IOTX/用户(对于普通AA用户),如果他们还拥有MachineFi NFT,则每天收到10个$IOTX/用户。

用户每天收到2个$IOTX/用户(对于普通AA用户),如果他们还拥有MachineFi NFT,则每天收到10个$IOTX/用户。