一文で理解するVisaが提案したアカウント抽象:イーサリアムを自動支払いシステムにどう変えるか?

Visaは、プログラム可能な通貨と支払いの実現を推進するために、スマートコントラクトの革新的なソリューションを積極的に模索しています。

原文作者:Visa,Andrew Beams、Catherine Gu

原文编译:PANews,Jordan

ブロックチェーンの採用率が高まるにつれて、優れたユーザー体験と実際のユースケースをサポートする製品への需要も高まっています。Visaは、特に若い顧客に対して便利な自動引き落としと定期自動支払い機能を提供していますが、イーサリアムのようなブロックチェーンでは、この機能を実現するのは依然として難しいようです。イーサリアムは、取引量が最も多いブロックチェーンネットワークであり、特定のタイプのオンチェーンデジタルウォレットにとって、ユーザーアカウントから自動的に定期的に支払いを引き出すことは依然として「大きなプロジェクト」です。

これに対して、Visaはアカウント抽象(Account Abstraction)という概念を提案し、スマートコントラクトを使用して自動化されたプログラム可能な支払いを実現する方法を探求し、自主管理ウォレットの資金を自動的に引き出すためのスマートコントラクトを作成する方法を示しました。

ユースケースシナリオ

シナリオを考えてみましょう:今日が2月25日で、アリスがアルプス山脈に休暇に行くと仮定します。彼女は3月10日に戻りますが、毎月5日までに住宅ローン、有線テレビ料金、水道光熱費を支払わなければなりません。問題は、彼女が休暇前に支払うための十分なお金を持っていないことですが、3月1日に給料を受け取ると十分なお金が入ることです。さて、アリスは支払いを滞納せずに休暇を楽しむにはどうすればよいのでしょうか?

一文読懂Visa提出的「账户抽象」:如何把以太坊改造成自动支付系统?

そうです、答えは------自動引き落としです。実際、アリスが銀行口座を持っていれば、自動引き落としは非常に簡単なプロセスで、引き落とし口座をVisaカードに関連付けるだけで済みます。しかし、ブロックチェーン上でこの操作を実行するのはそれほど簡単ではありません。しかし、新しい技術として、上記のシナリオのブロックチェーンスマートコントラクトソリューションを探求する価値があります。

本題に入る前に、まずイーサリアムアカウントの概念を理解しましょう。現在、イーサリアムネットワークには2種類のアカウントがあります:

  1. 外部所有アカウント(Externally Owned Accounts)、通常「ユーザーアカウント」と呼ばれます。

  2. コントラクトアカウント(Contract Accounts)、通常「スマートコントラクト」と呼ばれます。

プライベートキーで制御されるユーザーアカウントは取引を送信できますが、スマートコントラクトは関連するコードが必要です。しかし、スマートコントラクトは「自分で取引を開始する」ことはできません。なぜなら、取引は常にユーザーアカウントから発信され、ユーザーによって署名されなければならないからです。これらの取引には、イーサリアムブロックチェーン上のユーザーアカウント間の単純なトークン移転や、スマートコントラクトを介して多くの異なる操作を実行するための一連のトリガーが含まれます。

では、イーサリアムブロックチェーン上で自動支払いを実現するにはどうすればよいのでしょうか?

アリスの状況を振り返ってみましょう。

アリスがイーサリアムブロックチェーン上にユーザーアカウントを持ち、給料をそのアカウントに預けて住宅ローン、有線テレビ料金、水道光熱費を支払うと仮定します。今日、彼女は請求書を支払うために、トークンを「外部所有アカウント」から受取人のユーザーアカウントに移動する取引を開始する必要があります。

詳しく言うと、アリスの「外部所有アカウント」には、彼女だけが知っている秘密鍵/プライベートキーがあり、彼女だけがこのプライベートキーを使用して楕円曲線デジタル署名アルゴリズム(ECDSA)署名を生成できます。これは、有効な取引を作成するために重要です。しかし、アリスが休暇に出かけている場合、誰がこの署名を生成し、費用支払い取引を作成するのでしょうか?

現在の解決策の1つは、アリスがホスティングウォレットを使用することです。つまり、第三者がアリスのプライベートキーを管理するということです。言い換えれば、アリスは第三者を信頼して彼女の資金を保護し、取引を行ったり指定されたアカウントに資金を送信したりすることができます。この方法の利点は、アリスが資金のホスティングプロバイダーを通じて自動支払いのために必要な署名を生成できることですが、欠点は、彼女がこの第三者を完全に信頼しなければならないことです。

では、アリスがリスクを心配してホスティングウォレットを使用したくない場合、自己管理のウォレットを使用して自動支払いを設定するにはどうすればよいのでしょうか?次に、別の概念------アカウント抽象(Account Abstraction)を導入しましょう。

アカウント抽象とは?

アカウント抽象は、ユーザーアカウントをスマートコントラクトのように機能させ、ユーザーアカウントとスマートコントラクトを新しいイーサリアムアカウントタイプとして統合することを試みる提案です。将来的には、アカウント抽象により、自動支払いのためのシンプルなソリューションを設計でき、オンチェーンでの取引検証プロセスにおいてより大きな柔軟性を持つことができます。例えば:

  1. マルチシグネチャ検証を通じて複数の所有者アカウントを有効にすることができます。

  2. 後量子署名を使用して取引を検証することができます。

  3. 誰でも完全に署名をキャンセルして取引を行うことができるいわゆる公共アカウントを許可します。

本質的に、アカウント抽象は、プログラム可能な有効性を許可し、任意のブロックチェーン取引を検証および確認することを可能にします。イーサリアムプロトコルに基づく取引は、有効性条件のハードコーディングに完全に依存する必要はなく、「カスタマイズ」された方法でいくつかの条件をアカウントスマートコントラクトに書き込むことができます。

さらに重要なのは、署名検証を含まない有効性ルールを設定できるため、アカウント抽象は自動支払いをサポートします。次に、どのように実現するかを見てみましょう。

委任可能アカウント------アカウント抽象を使用してイーサリアム上で自動支払い機能を実現する

Visaのイーサリアム自動支払いソリューションは、アカウント抽象の概念を利用して新しいタイプのアカウントコントラクト------委任可能アカウントを作成することです。その主なアイデアは、取引のプログラム可能な有効性ルールを拡張して、事前承認された許可リストを含めることです。簡単に言えば、アカウント抽象は、ユーザーアカウントが開始する自動支払い操作を事前承認された自動支払いスマートコントラクトに委任することができます。

まず、商人は自動支払いスマートコントラクトをデプロイする必要があります。委任可能アカウントを持つユーザーが商人のウェブサイトにアクセスすると、彼らは自動支払いを承認するリクエストを目にします------Visaが受け入れる請求書に似ています。この時、ユーザーは自動支払いコントラクトがユーザーの名義で操作を実行することを確認できます。ユーザーは、毎月1回のみ請求する、請求額が設定された最大金額を超えないようにするなど、必要に応じてパラメータを設定できます。最も重要なのは、これはスマートコントラクトであるため、ユーザーは自動支払いコントラクトが他の方法で実行されることはないと確信できます。

ユーザーが自動支払いを承認することに同意すると、ウォレットは自動支払いコントラクトのアドレスをユーザーの委任可能アカウントの許可されたコントラクトリストに追加します。

一文读懂Visa提出的「账户抽象」:如何把以太坊改造成自动支付系统?

次に、商人は自動支払いコントラクトのcharge(請求)関数を呼び出して支払いをトリガーします。自動支払いコントラクトは、ユーザーのアカウントからプッシュ支払い取引を開始します。この取引は、事前に許可リストに追加されているため、有効な取引となります。

一文读懂Visa提出的「账户抽象」:如何把以太坊改造成自动支付系统?

定期支払いに加えて、このソリューションは現実世界の他のさまざまなアプリケーションにも対応でき、Visaの委任アカウントソリューションは将来的には第三者アカウントの回復などのサービスにも拡張できる可能性があります。

StarkNetでのアカウント抽象の実装

一文读懂Visa提出的「账户抽象」:如何把以太坊改造成自动支付系统?

イーサリアムがまだアカウント抽象をサポートしていないため、VisaはすでにStarkNet上で委任可能アカウントソリューションを実装しています。StarkNetは、イーサリアムブロックチェーンの上に構築されたLayer 2ブロックチェーンで、取引スループットを向上させ、基盤となるブロックチェーンの決済層の能力を改善するための他の機能を提供します。これは、暗号スタートアップのStarkWareによって開発されました。StarkNetのアカウントモデルは、Visaが現在言及しているアカウント抽象であり、抽象アカウントは取引が指定されたアドレスから来ているかどうかを確認します。

具体的なアカウント(concrete accounts)では、誰かがユーザーアカウントにトークンを送信すると、トークンコントラクトと相互作用し、トークンの現在の所有者として記録されているかどうかを確認します。抽象アカウント(abstract accounts)では、誰かがあなたのアカウントにトークンを送信すると、トークンコントラクトと相互作用し、転送を行うためのアイデンティティ(コントラクト)がトークンの現在の所有者として記録されているかどうかを確認します。抽象アカウントにとって重要なのは、取引を実行しているのが誰(アドレス)であり、どのように(署名)取引を実行するかではありません。

StarkNetのアカウントモデルを活用することで、Visaは委任可能アカウントソリューションを実装し、自主管理ウォレットに自動支払い機能を有効にすることができました。

結論

世界最大の決済ネットワークの1つであるVisaは、プログラム可能な通貨と支払いの実現を推進するために、スマートコントラクトの革新的なソリューションを積極的に探求しています。

自動支払いは、既存のブロックチェーンインフラストラクチャに欠けているコア機能の1つですが、アカウント抽象の概念を利用することで、自主管理ウォレットに自動定期支払い機能を提供し、自動支払い以外の他の現実世界のアプリケーションをブロックチェーンに導入し、従来の支払いチャネルと新興の支払いチャネルにより良いユーザー体験を提供することができます。

ChainCatcherは、広大な読者の皆様に対し、ブロックチェーンを理性的に見るよう呼びかけ、リスク意識を向上させ、各種仮想トークンの発行や投機に注意することを提唱します。当サイト内の全てのコンテンツは市場情報や関係者の見解であり、何らかの投資助言として扱われるものではありません。万が一不適切な内容が含まれていた場合は「通報」することができます。私たちは迅速に対処いたします。
チェーンキャッチャー イノベーターとともにWeb3の世界を構築する