シナリオ: ユーザーAがNFTマーケットプレイスDAppを使って、ユーザーBにNFTを販売する。
1. 実行 (Execution):
DAppの動作: ユーザーAはDApp上でNFTを販売するオファーを作成し、ユーザーBはそれを購入するアクションを実行します。
実行モジュールの役割: このDAppは、特定の実行層(例:Optimism、Arbitrum)上で動作します。この実行層は、スマートコントラクトを実行し、NFTの所有権をユーザーAからユーザーBに移転するという状態変化を処理します。この処理の結果(成功または失敗)が出力されます。
具体例: ユーザーBのウォレットから必要なトークンが差し引かれ、ユーザーAのウォレットに送金されると同時に、NFTの所有権がスマートコントラクトによってユーザーBに移転されます。この一連の処理が実行モジュールで行われます。
2. 決済 (Settlement):
DAppの動作: 実行層での処理が成功すると、その結果(状態変化)は決済層(例:Celestia, Ethereum)に送信されます。
決済モジュールの役割: 決済層は、実行層からの状態変化を受け取り、不正な変更がないことを検証し、トランザクションを確定させます。これにより、NFTの所有権の変更が確定され、覆ることができなくなります。
具体例: 決済層は、実行層から受け取ったNFTの所有権移転の情報を検証し、それをブロックチェーンに追加します。これにより、ユーザーBへのNFTの所有権移転が確定し、改ざんできなくなります。
3. 合意形成 (Consensus):
DAppの動作: 合意形成はDAppユーザーには直接見えませんが、裏側で重要な役割を果たしています。
合意形成モジュールの役割: 決済層が使用する合意形成メカニズム(例:Proof-of-Stake)によって、どのトランザクションをどの順番で処理し、ブロックチェーンに追加するかが決定されます。バリデータは、この合意形成プロセスに参加し、トランザクションの正当性を検証します。
具体例: 複数のバリデータが、ユーザーAからユーザーBへのNFTの所有権移転トランザクションを検証し、合意に達します。これにより、トランザクションが正式にブロックチェーンに追加され、改ざん不可能な記録となります。
4. データ可用性 (Data Availability):
DAppの動作: DAppは、必要に応じてデータ可用性層からデータを取得できます。
データ可用性モジュールの役割: データ可用性層(例:Celestia, Polygon Avail)は、すべてのトランザクションデータを保存し、誰でもアクセスできるように公開します。これにより、誰でもトランザクションの正当性を検証し、ブロックチェーンの状態を再構築することができます。
具体例: ユーザーCが、ユーザーAからユーザーBへのNFTの所有権移転について検証したい場合、データ可用性層から必要なデータ(トランザクションの詳細、前の所有者など)を取得できます。これにより、ユーザーCは、NFTの所有権移転が正しく行われたことを確認できます。
このように、モジュラーブロックチェーンでは、各モジュールが特定の役割を担い、連携することで、DAppの安全で効率的な動作を可能にしています。各モジュールは独立して開発・改良できるため、ブロックチェーン全体の進化を促進するメリットがあります。
◆モジュラー式のブロックチェーンとロールアップ
開発チームはこの解説でモジュラー式のブロックチェーンと”モノリシック式”のブロックチェーンを比較して説明しています。モノリシック式のブロックチェーンは、実行・決済・データ可用性の役割を単独のレイヤーで担っています。対して、モジュラー式のMantle Networkは実行・決済・データ可用性の役割をそれぞれ別のレイヤーに分割しています。これらの役割を分担することで、モノリシック式と比較して単独のレイヤーへの負担が分散され、より高速で低価格な処理を実現することが可能になります。そしてMantle Networkはこの中のデータ可用性レイヤーにロールアップを組み込むことで、高いセキュリティを備えた堅牢なデータ可用性レイヤーを実現しました。開発チームはこの点でMantle Networkを”革新的なアプローチ”と評しています。
はい、多くのL2モジュラー式ブロックチェーンでは、決済レイヤーとしてイーサリアムメインネットを使用し、そこにファイナリティを記録します。これがL2のセキュリティを担保する主要なメカニズムとなっています。
L2は基本的に、トランザクション処理の大部分を実行レイヤーで行い、その結果(状態変化)のみをイーサリアムメインネットに定期的に送信・記録することでスケーラビリティを向上させています。このとき、イーサリアムへの記録こそがファイナリティの獲得を意味します。
具体的には、Optimistic RollupやZK RollupといったL2ソリューションは、それぞれ異なる方法でトランザクションデータを圧縮・検証しますが、最終的にはその結果をイーサリアムに提出します。イーサリアムのスマートコントラクトがこの結果を検証・確定することで、L2でのトランザクションも同様に確定し、改ざん不可能になります。
このように、L2はイーサリアムのセキュリティとファイナリティを継承しつつ、スケーラビリティ問題を解決していると言えます。ただし、L2の種類や実装によって、ファイナリティの達成方法や速度が異なる場合があるので、注意が必要です。
はい、決済レイヤーはファイナリティを提供する役割を担います。ファイナリティとは、トランザクションが不可逆的に確定することを指します。決済レイヤーは、実行レイヤーで処理されたトランザクションの結果を受け取り、それを検証・確定することで、トランザクションが改ざんされる可能性を排除し、ファイナリティを実現します。
少し言い方を変えると、実行レイヤーは「トランザクションを実行する場所」、決済レイヤーは「トランザクションを確定させる場所」というイメージです。実行レイヤーで処理されたトランザクションは、決済レイヤーで最終的に承認されるまでは、完全に確定したとは見なされません。
そのため、決済レイヤーはモジュラーブロックチェーンにおいて、セキュリティと信頼性を確保する上で非常に重要な役割を担っていると言えます。
実行(Execution):トランザクションの状態変更の処理
実行は、トランザクション処理に関連するモジュール。ユーザーが提出したトランザクションを処理し、その結果を出します。
決済(Settlement):取引が変更不可能になるプロセス
決済はトランザクションの宛先を保護し、承認または決済された取引を最終的なものとします。
合意形成(Consensus):安全性と整合性を保つファイナリティのプロセス
合意形成においては、トランザクションの順序を決定し、ルールに基づいて処理するバリデータを選択します。
データ可用性(Data Availability):有効性の検証に必要なデータの保存と公開
データ可用性では、トランザクションデータのストレージを扱い、トランザクション履歴を再作成し、現在の状態を確認するために必要なすべてのデータを提供することで、ブロックチェーンの透明性を実現し、トランザクションを正当化します。
イーサリアムのレイヤー2といえば”Optimism”や”Arbitrum”が代表例として挙げられますが、Mantle Network開発チームはこれら従来のイーサリアムのレイヤー2ブロックチェーンよりも、セキュリティとスケーラビリティに関して革新的なアプローチをしたブロックチェーンを開発していると述べています。革新的としている理由は、イーサリアムのレイヤー2としてのブロックチェーンをモジュラー式の仕組みで構築していることに加え、その仕組みにロールアップを組み込んでいることにあります。
Читать полностью…