ioPay(IoTeXチームによって開発)は、アカウント抽象化の開始を発表できることを大変嬉しく思います!これにより、ioPayは市場で最大かつ実績のあるマルチチェーンAAウォレットとなりました。このブログでは、なぜAAが重要なのか、IoTeXのAA分野での取り組み、ioPayでの実装方法、そしてioPayでのAAウォレットの設定方法をご紹介します。
なぜAAが重要なのか
アカウント抽象化とは、ブロックチェーンネットワークのアーキテクチャにおける根本的な変化を指す用語です。従来、ブロックチェーンのアカウントは資金を管理する秘密鍵に関連付けられた単純なアドレスでした。しかし、アカウント抽象化は、アカウントが資金のコンテナであるだけでなく、複雑なコードを実行できる高度なモデルを導入します。本質的に、アカウント抽象化は資金管理とコード実行の役割を分離し、より動的で強力なスマートコントラクトを可能にします。この変化により、開発者は契約の実行と相互作用においてより柔軟性の高い革新的なアプリケーションを作成できます。ioPayの場合、AAはアカウント作成とアカウント回復の簡素化を大幅に向上させます。さらに、AAはこれまで不可能だったいくつかのioPay機能の扉を開きます。アカウント抽象化の利点:
- 柔軟性の向上:アカウント抽象化により、スマートコントラクト設計時の柔軟性が向上します。資金の管理と契約実行のロジックを分離することで、より動的でモジュール化されたアプリケーションが可能になります。
- ガスコストの削減:ガス料金はブロックチェーンエコシステムにおける大きな課題であり、分散型アプリケーションのスケーラビリティと普及を妨げてきました。アカウント抽象化は、スマートコントラクトの実行を最適化することでガスコストを削減する可能性があります。これにより、複数のトランザクションを必要とせずに契約を実行でき、計算資源を節約します。
- アップグレード性の向上:従来のスマートコントラクトは一度デプロイされると不変であり、バグ修正や新機能追加が困難でした。アカウント抽象化は「契約のアップグレード性」という概念を導入し、開発者が機能を妨げることなく契約を更新・改善できるようにします。これは分散型アプリケーションの維持と進化に不可欠です。
- 革新的なユースケース:アカウント抽象化は開発者に新たな可能性を開き、分散型金融(DeFi)、非代替性トークン(NFT)などの革新的なユースケースを促進します。資金管理とコード実行の分離により、これまで実装が困難だった複雑で機能豊富なアプリケーションの作成が可能になります。
- セキュリティの向上:アカウント抽象化による責務の分離は、スマートコントラクトのセキュリティを強化します。資金管理とコード実行を分離することで、潜在的な脆弱性や攻撃面が減少し、悪意ある攻撃者による悪用が困難になります。
loTeXモジュラーインフラとしてのDePINイノベーション推進者
IoTeXは、スマートデバイスと現実世界のデータをブロックチェーンに接続するモジュラーWeb3インフラプラットフォームです。IoTeXのミドルウェアソリューションW3bstreamは、現実世界のデータの計算と検証を提供し、オンチェーンに取り込みつつ、ビルダーが大量採用を促進するために必要なモジュール性とカスタマイズ性を提供します。DePIN(分散型物理インフラネットワーク)インフラのリーディングプロバイダーとして、IoTeXはデバイスやオン/オフチェーン活動からの新たな報酬をユーザーに提供し、個人デバイスを共同経済に変え、「すべてのデータ」をトークン化します。60人以上の研究科学者とエンジニアのグローバルチームに支えられたIoTeXは、EVM互換のL1ブロックチェーン、オフチェーン計算ミドルウェア、オープンハードウェアを組み合わせ、物理世界とデジタル世界をつなぐ数十億のスマートデバイス、機械、センサー、dAppを接続しています。もちろん、DePINプロジェクトに不可欠なのはモバイルウォレットです。その結果、IoTeXチームはDePINウォレットとして選ばれるioPayの開発に多大な時間を費やし、DePINscanのウォレットへの統合も行いました。

IoTeXは多くの最先端技術の取り組みでブロックチェーンとオフチェーン計算の可能性を追求してきました。AA技術もその最前線の一つです。2023年9月にはEthereum Foundationから助成金を獲得しました。具体的には、ERC-4337とZero-knowledge Account Abstraction WalletsのIoTeXの取り組みに対する助成金です。

zk-SNARK証明技術を活用し、IoTeXはパスワードで認証可能なアカウント抽象化ウォレットを構築しました。zk-SNARK(Zero-Knowledge Succinct Non-Interactive Argument of Knowledge)は、ある主張が真であることを、追加情報を明かさずに証明する暗号証明システムです。zk-SNARKはプライバシー重視の暗号通貨Zcashなどで使用され、送信者・受信者・取引額の情報を明かさずにトランザクションの検証と記録を可能にします。zk-SNARKは一般的にゼロ知識証明システム全般を指すこともありますが、厳密には簡潔な証明サイズで検証者との対話を必要としない特定のゼロ知識証明システムを指します。

IoTeXのゼロ知識アカウント抽象化助成金を獲得したMVPを試したい場合は、以下のリンクから可能です:https://zk-wallet-demo.iotex.io。このLinktreeでは、IoTeXのAAに関する最新の取り組みをすべて紹介しています。IoTeXのアカウント抽象化分野での専門知識を活用し、ioPayでの実装は次のステップとして理にかなっています。
ioPayにおけるアカウント抽象化の実装
ioPayは常にセキュリティとユーザー体験に重点を置いてきました。これらはアカウント抽象化の実装によりさらに強化されました。現在、ioPayはGmail AAログインをサポートしています。近い将来、他のAA認証方法も実装予定です。この機能をioPayに組み込むにあたり、チームはP256を利用してウォレットトランザクションを認証し、メールベースのDKIMプロトコルでユーザーアカウントを回復しています。DKIM(DomainKeys Identified Mail)は、メールの送信者がドメインの所有者であることをデジタル署名で受信者に知らせるメール認証方法です。受信者が有効なDKIM署名を確認すると、メール内容が改ざんされていないことが証明されます。これにより、DKIM署名ユーザーをオンチェーン契約で検証し、ioPayアカウントを回復できます。P256はsecp256r1楕円曲線を使用し、EVM上で安全な認証とトランザクション/スマートコントラクト署名を作成するための広く受け入れられた暗号標準です。多くの現代デバイスとアプリケーションは“secp256r1”楕円曲線に依存しています。例:
- AppleのSecure Enclave:Appleハードウェアには、バイオメトリック認証でのみアクセス可能な「Trusted Execution Environment」があり、任意のメッセージに署名できます。
- Webauthn:Web Authentication(WebAuthn)はW3Cが発行したウェブ標準で、公開鍵暗号を用いたウェブアプリケーション認証のインターフェースを標準化します。ほぼすべての現代ブラウザで使用されています。
- Android Keystore:Android Keystoreは秘密鍵と署名方法を管理するAPIで、Keystoreを使うと秘密鍵は処理されず、マイクロチップ内の「Trusted Execution Environment」で署名が行われます。
- Passkeys:PasskeysはFIDO AllianceとW3C標準を利用し、パスワードを暗号鍵ペアに置き換え、楕円曲線暗号も使用可能です。
IoTeXネットワークはすでに“secp256r1”楕円曲線で署名検証を行う事前コンパイル済み契約をサポートしているため、ioPay AAウォレットの検証ロジックをAppleのSecure EnclaveとAndroid Keystoreに基づき、一定のガスコストで実装することは理にかなっています。デバイスのSecure Enclave/Keystoreとバイオメトリック認証を活用することで、高度に安全なAAウォレットを実現できます。これらの新しいAAウォレットの利用促進のため、期間限定でIoTeXはioPay AAウォレットを利用するユーザーに1日あたり2 IOTXをガス代として提供します。さらに、MachineFi NFTを所有するioPayユーザーは、ガス代として1日あたり10 IOTXを受け取ることができ、MachineFi NFT保有者への追加のユーティリティとなっています。
ioPayでのAAウォレット設定方法
ステップ1)ioPayをダウンロードし、「AAウォレットを作成」を押します。

ステップ2)Gmailアドレスを入力します。

ステップ3)ユニークな認証コードが記載されたメールを受け取ります。

ステップ4)おめでとうメッセージが表示され、新機能利用促進のため2 IOTXが付与されます。(IoTeXを初めて使う新規ユーザーにとってはネイティブトークンの獲得に最適です)

ステップ5)ユーザーはホームページに戻り、AAウォレットを利用して任意のトランザクションやdAppを利用できます。

ステップ6)通常のAAユーザーは1日あたり2 $IOTX、MachineFi NFT所有者は1日あたり10 $IOTXを受け取ります。
