ホワイトペーパー:v01:3_システムアーキテクチャ:start

文書の過去の版を表示しています。


3 システムアーキテクチャ (SYSTEM ARCHITECTURE)

このセクションでは、速度、スケーラビリティ、および高度なAI統合のために最適化された、効率的で高性能なブロックチェーンネットワークの構築を目的とした、Qubicのシステムアーキテクチャについて詳細に説明します。ベアメタル展開やノード間通信メカニズムを含む、Qubicのネットワークインフラのコアコンポーネントを詳述し、それぞれがどのようにQubic独自の機能に貢献しているかを明らかにします。すべての設計決定の背後にある理由が、測定可能な改善点とともに強調されており、Qubicのアプローチに対する強力な技術的基盤を提示します。これらのインフラに関する決定は、Qubicのクォーラムベースのコンセンサスおよび有用なプルーフ・オブ・ワーク(UPoW)メカニズム(それぞれセクション3.2および3.1.1を参照)を支え、安全で分散化されたネットワークをサポートします。

3.1 ネットワークインフラ (Network Infrastructure)

Qubicのインフラは、ブロックチェーン取引とAIトレーニングの両方の計算要件に対処するように設計されています。以下のセクションでは、ハードウェアの直接運用と最適化された通信が、ネットワークの効率性とセキュリティにどのように貢献するかを探ります。

3.1.1 ベアメタル展開 (Bare-Metal Deployment)

背景と特定された課題
伝統的なブロックチェーンネットワークは通常、ノードインフラを管理するためにソフトウェア層であるオペレーティングシステム(OS)に依存しています。これにより、特に高負荷な取引状況下でレイテンシ(遅延)を引き起こし、ハードウェア効率を低下させるアーキテクチャが生じます。ハードウェアとアプリケーションの間に存在する追加の層は、パフォーマンスのボトルネックになったり、セキュリティ管理の複雑さを増大させたりする可能性があります(Cachin & Vukolić, 2017)。

なぜベアメタル展開なのか?

Qubicは、仮想マシンや伝統的なOSに依存せず、コアソフトウェアをベアメタルハードウェア上で直接実行することで、パフォーマンスとセキュリティを向上させます。

このアーキテクチャ上の決定は、OSレベルの抽象化を排除し、ブロックチェーン運用、通信プロトコル、スマートコントラクト実行、および取引処理に必要な高いパフォーマンスを実現するためにハードウェア機能を直接使用するものです。

ベアメタル展開の利点:

  • 信頼性:
    • 基本機能にUEFIシェルを使用することで、簡素化され制御された環境を提供し、複雑なOSに関連する潜在的な攻撃ベクトルを削減します。
    • サードパーティのソフトウェアプラットフォームへの依存を排除することで、Qubicは信頼性を向上させ、予期しないアップデートや互換性の問題による混乱のリスクを軽減します。
  • 有効性:
    • 伝統的なOSがないことで計算上のオーバーヘッドとレイテンシが削減され、Qubicがハードウェア機能を効率的に活用できるようになります。
    • UEFIシェルは、取引のリアルタイム処理を含む高いスループットを必要とするアプリケーションにおいて極めて重要な、高速な起動と簡素化されたハードウェアレベルのアクセスを促進します。
  • セキュリティ:
    • ソフトウェアスタックを最小限に抑えることで、Qubicは潜在的な攻撃対象領域を大幅に縮小し、OSレベルのエクスプロイトに対して強力な保護を提供します。
    • ベアメタル展開のアプローチは、インターネット経由で一般的に標的となる脆弱性を排除することで、リモート攻撃のリスクをさらに軽減します。
    • 代わりに、ベアメタルシステムを侵害するにはハードウェアへの物理的なアクセスが必要となり、リモートのアタッカーにとっては大幅に困難な課題となります。
    • これは、複雑さを軽減し不要なシステム層を削除することが脆弱性を最小限に抑える鍵であるという、Shostack(2014)の原則に一致しています。
    • さらに、ベアメタルノードのセットアップと維持に必要な努力は自然な参入障壁を生み出し、システムを深く理解した献身的な参加者のみがネットワークの一部となることを確実にします。
    • これは、より安全で回復力のあるエコシステムに寄与します。

裏付けとなる研究と引用
分散システムと高性能コンピューティングの研究によれば、ベアメタル展開はシステムの応答性を向上させ、特にリアルタイム環境における重要なアプリケーションのレイテンシを削減することが示されています(Rosenblum & Garfinkel, 2011)。ブロックチェーンプラットフォームで見られるような重い取引負荷を扱う分散ネットワークのシナリオにおいて、ベアメタルアーキテクチャはスループットの向上とレイテンシの削減という実質的なメリットを提供します(Cachin & Vukolić, 2017)。

定量的な指標とパフォーマンスの向上
最適化されたスマートコントラクト実行環境(セクション3.2参照)を備えたQubicのベアメタルインフラのテストでは、大幅なパフォーマンスの改善が示されました。スマートコントラクトのベンチマーク結果によると、取引のレイテンシが減少し、スループットの向上により1秒間に最大5,500万件のQUBICコイン送金が可能になっています(Qubic Team, 2024)。

3.1.2 ノード間通信 (Node Communication)

背景と特定された課題
あらゆる分散型ネットワークにおいて、ノード間の通信は、コンセンサスの維持、データの整合性、およびタイムリーな取引処理のために極めて重要です。従来のブロックチェーンは、非効率な通信プロトコルによるボトルネックを経験することが多く、それが取引時間の鈍化やスケーラビリティの低下を招いています(Decker & Wattenhofer, 2013)。ネットワークのレイテンシ(遅延)や帯域幅の制限はコンセンサスメカニズムを妨げ、ネットワーク全体のパフォーマンスに影響を及ぼす可能性があります。

最適化されたノード間通信
Qubicは、低レイテンシと高スループットのために最適化された、独自の伝送制御プロトコル(TCP)ベースの通信プロトコルを実装することで、これらの課題に対処しています。このプロトコルはネットワーク全体での迅速なメッセージ伝送を保証し、取引やコンセンサス関連データの効率的な伝播を促進します。

クォーラムベースのコンセンサスモデル(セクション3.2.1参照)は、大多数のComputorが迅速に合意に達することを可能にし、取引の確定(ファイナリティ)における遅延を最小限に抑え、ノードの故障に対するネットワークの回復力を向上させます。Qubicは、ネットワークのより優れたスケーラビリティと信頼性を達成するために、通信プロトコルとコンセンサスメカニズムの両方を最適化するように設計されています。

通信プロトコルに関する知見
効果的な通信プロトコルは、分散ネットワークにおける取引速度の向上とシステム信頼性の実現に不可欠です。Nguyenら(2016)やDecker & Wattenhofer(2013)によって行われた主要な研究では、高性能コンピューティング環境においてレイテンシを最小化しスループットを向上させるための、カスタマイズされたTCP実装の重要性が指摘されています。

定量的な指標とパフォーマンスの向上
Qubicの通信プロトコルにより、ノードは1秒未満(サブセカンド)の間隔でコンセンサスを達成することが可能です。この改善により、Qubicは、即時の取引確定を必要とするリアルタイムのアプリケーションやサービスにとって極めて重要な、高頻度取引を処理できるようになります。

ピア共有 (Peer Sharing)
ネットワーク内の物理ノードであるピアは、ピア共有の文脈においてIPv4アドレスによって識別されます。これらはソースコード内では「パブリックピア(public peers)」と呼ばれます。各ノードは、既知のパブリックピアの初期セット(理想的には少なくとも4つ)を必要とします。自身のIPアドレスも、通常のピアとして `knownPublicPeers` に含める必要があります。

ピアは「検証済み(verified)」かどうかの状態を持ちます。検証済みのピアは他のピアと共有されます。`knownPublicPeers` 内のIPは、デフォルトで検証済みのステータスを取得します。

ピアは、Qubicノードのハンドシェイクとして扱われる `ExchangePublicPeers` メッセージを通じて共有されます。このメッセージは、新しい接続が確立された後(ノードがランダムに選択されたパブリックピアに接続した後)に送信されます。共有のためのIPは、検証済みピアのリストからランダムに選択されます(ただし、`ExchangePublicPeers` メッセージ内に重複したIPが含まれる場合があります)。リストに検証済みピアが存在しない場合は、`ExchangePublicPeers` とともにIPとして “0.0.0.0” を送信しなければなりません。

検証済みピアへの外向きの接続が拒否された場合、そのピアは検証済みステータスを失います。未検証のピアへの外向きの接続が拒否された場合、そのピアはピアリストから削除されます。未検証のピアへの外向きの接続が承認され、`ExchangePublicPeers` メッセージが受信された場合、そのピアは検証済みステータスを取得します。通信中のいかなる時点でもプロトコル違反が検出された場合(相手側がQubicノードではない何かを実行していると推測できる場合)、そのIPは検証済みであっても削除されます。IPがピアリストから削除されるのは、削除後もリストに少なくとも10個のエントリが残っており、かつそのIPが初期の `knownPublicPeers` に含まれていない場合に限られます。

3.2 スマートコントラクトの実行 (Smart Contract Execution)

高度なAIアプリケーションと統合可能な高性能ブロックチェーンネットワークを実現するため、Qubicはスマートコントラクトの実行に最適化された環境を採用しています。このセクションでは、実行環境と、コントラクト間の隔離を維持しながらネットワークの完全性を保護するために必要なセキュリティ対策について説明します。

3.2.1 実行環境 (Execution Environment)

背景と特定された課題
伝統的なブロックチェーン上のスマートコントラクトは、特に複雑で大量の取引を処理する際に、実行速度、柔軟性、および効率性の面で制限に直面することがよくあります。Ethereum(イーサリアム)のようなプラットフォームで見られるように、仮想マシン(VM)の制約やガス代(取引手数料)はスケーラビリティを制限し、ユーザビリティを妨げる可能性があります。仮想マシンベースの実行環境に伴うオーバーヘッドは、レイテンシ(遅延)の増大とスループットの低下を招く原因となります。

最適化された実行環境
Qubicは、ネイティブコードに直接コンパイルされるC++機能のサブセットを用いて、マシンコードレベルでの実行環境を設計することによってこれらの制限を克服しています。仮想マシンや中間抽象化レイヤーを排除することで、Qubicはより高い実行速度、計算オーバーヘッドの削減、および効率の向上を実現しています

この環境は、非常に高い計算需要を持つAIおよび分散型アプリケーションのエコシステムをサポートするQubicにとって極めて重要です。ネイティブコードによるスマートコントラクトの直接実行によって可能になる、より複雑な計算とリアルタイム処理は、将来的にAI機能を統合するための必須要件です

3.2.2 セキュリティ対策 (Security Measures)

背景と特定された課題
スマートコントラクトの複雑さが増すにつれて、分散型ネットワーク上での実行に伴うセキュリティリスクも高まります。悪意のあるコントラクトの悪用、コントラクト間の脆弱性、隔離の欠如といった問題は、ネットワークの不安定化を招き、ユーザーに不利益を与える可能性があります(Atzei et al., 2017)。実行環境は、ネットワークへの信頼を提供するために、セキュリティと完全性を保証しなければなりません

セキュリティ対策
これらのリスクに対処するため、Qubicは各コントラクトの安全で独立した運用を保証することを目的とした、厳格なコントラクトの検証と隔離戦略を採用しています。隔離手法は、不正な相互作用を防止し、コントラクト間の依存関係を減少させることで、一つのコントラクトが他に悪影響を及ぼすリスクを軽減します。

コントラクトを隔離するため、他のコントラクトの関数やデータ、およびコアの内部へのアクセスは、慎重に設計されたプログラミングインターフェース(QPI)を通じてのみ可能となります。さらに、QPIはコントラクト開発において利用可能な唯一の外部依存関係であり、ライブラリの使用は禁止されています。また、コントラクトでは、ポインタ、低レベル配列(境界チェックが欠如しているもの)、プリプロセッサディレクティブなど、セキュリティリスクをもたらすことが知られているC++の機能を使用することはできません。コントラクトが未初期化のメモリにアクセスすることも決してありません。

各コントラクトは、以下のステップで検証される必要があります:

  1. 1. コントラクトは特別なソフトウェアツールで検証され、禁止されたC++機能を使用していないかなど、前述の形式的要件に準拠していることが確認されます。
  2. 2. コントラクトの機能は、QubicコアのGoogleTestフレームワーク内に実装された自動テストによって広範にテストされなければなりません。
  3. 3. コントラクトとテストコードは、少なくとも1人のQubicコア開発者によってレビューされ、高い品質基準を満たしていることが確認される必要があります。
  4. 4. Qubicコアに完全に統合された後、コントラクトの機能は複数のノードを持つテストネットワークでテストされ、実際の運用で正常に動作することが示されなければなりません。

この検証プロセスを経た後、コントラクトはQubicコアコードの公式リリースに統合されることができます。

定量的な指標と予測される利益
強固な隔離と検証措置の導入により、潜在的なセキュリティリスクを劇的に低減できると期待されています。コントラクト隔離における業界標準の技術によれば、こうした措置によりセキュリティ侵害を最大95%削減できる可能性があります(Atzei et al., 2017)。高度なセキュリティ技術により、Qubicはユーザーに安全な資産を提供し、ネットワーク運用の完全性を保証することで、安全で高頻度なコントラクト実行を可能にするという目標をサポートします。

ネットワークインフラとスマートコントラクト実行におけるQubicのアーキテクチャは、速度、セキュリティ、およびスケーラビリティを実現します。Qubicは、ベアメタル展開、最適化されたノード間通信、および安全な実行モデルを使用することで、従来のブロックチェーンの問題を解決するように設計されており、分散型インフラにおける新しい基準を確立します

3.3 エコシステム (Ecosystem)

イノベーションの促進と広範な採用というQubicのビジョンは、強力なエコシステムを整えることによって可能になります。Qubicは、そのインフラストラクチャが現実世界のユースケースと持続的な成長を確実にサポートするようにします

3.3.1 製品開発 (Product Development)

Hashwalletなどの業界パートナーとのコラボレーションは、Qubicネットワークのユーザビリティとセキュリティを強化するためのツールの開発に焦点を当てています。例えば、ハードウェアウォレットの統合は、支払いシステムとの互換性を促進しながら、QUBICコインの安全な管理を提供することを目的としています。これらのパートナーシップは、ネットワークの機能と採用を前進させる不可欠なツールの開発をサポートします。

開発チームとコミュニティの取り組み
Qubicは、ブロックチェーン製品の作成と開発者コミュニティの育成において豊富な経験を持つVottunなどの組織と連携しています。このコラボレーションは、Qubicプラットフォーム上の幅広いアプリケーションをサポートするための、開発者に優しいエコシステムの構築を強調しています

Vottun Bridgeは、ブロックチェーンの相互運用性という極めて重要な課題に対処し、EthereumやArbitrumとのシームレスな統合を可能にすることで、クロスチェーンの資産転送や流動性の共有を可能にします。Nguyenら(2019)が強調するように、ブロックチェーンの相互運用性は、採用を促進し、隔離されたネットワークのスケーラビリティ制限に対処するための基本的な要素です。

エコシステム拡大の枠組み (Ecosystem Expansion Framework)
成長とイノベーションをサポートするため、Qubicはエコシステムの拡大を2つの主要なイニシアチブを中心に構成しています:

  • 助成金プログラム (Grants Program):
    • このプログラムは、多様なプログラミング言語向けの追加コードライブラリなどのツールを開発者が作成できるようにすることに焦点を当てています。
    • また、コア技術を超えた貢献に対する賞金(バウンティ)にも資金を提供します。Xuら(2020)の研究は、開発者の貢献を促し、持続可能なブロックチェーンエコシステムを構築する上での助成金プログラムの有効性を強調しています。
  • インキュベーションプログラム (Incubation Program):
    • 長期的な可能性を秘めたプロジェクトをサポートするために設計されたこのプログラムは、Qubicの機能に合致するイニシアチブに対してメンターシップと初期資金を提供します。
    • 例としては、ブリッジ、AIアプリケーション、Qubicのアーキテクチャ上に構築された分散型インフラプロジェクトなどが含まれます。

これらのパートナーシップとイニシアチブは、多様なブロックチェーンおよびAIアプリケーションをサポートするための強固な技術的基盤を構築するというQubicの焦点を示しています

3.4 ユースケース (Use Cases)

このセクションでは、Qubicのアーキテクチャによって実現される具体的なアプリケーションと潜在的なユースケースの概要を説明し、その設計が特定の業界のニーズや課題にどのように対処するかを例示します。

3.4.1 現在のユースケース (Current Use Cases)

分散型計算能力 (Decentralised Computing Power)
Qubicは、有用なプルーフ・オブ・ワーク(UPoW)モデルを通じて、世界の計算リソースを分散型ネットワークに統合します。これにより、人工知能のトレーニングなど、需要の高い運用を実行でき、世界中で十分に活用されていないリソースを最適化することが可能です。クォーラムベースのコンセンスメカニズムにより、計算タスクの効率的な実行と検証が実現されます。

スマートコントラクト (Smart Contracts)
Qubicが提供する高性能スマートコントラクトは、リアルタイムの分散型アプリケーション(dApp)のための信頼できるプラットフォームを提供します。これらのコントラクトは、DeFi(分散型金融)、サプライチェーン管理、およびゲーミングを含む複数のセクターをサポートし、安全でスケーラブルな運用の実行を支えます。

マイクロペイメント (Micropayments)
QUBICコインは手数料無料のマイクロペイメントを可能にし、コンテンツの収益化やIoT(モノのインターネット)通信などの分野での高頻度取引を実現します。この機能は、シームレスでコストゼロの取引を必要とするアプリケーションにとって極めて重要です。

AIのトレーニングと検証 (AI Training and Validation)
有用なプルーフ・オブ・ワーク(UPoW)モデルを通じて、Qubicは計算リソースを人工ニューラルネットワーク(ANN)のトレーニングへと振り向けます。この分散型アプローチはAIの進歩をサポートし、機械学習や人工知能のイノベーションに貢献します。

分散型取引所 (Decentralised Exchange)
Qubicの分散型取引所であるQXは、仲介者なしでデジタル資産の安全かつ透明な取引をサポートします。1秒未満のファイナリティ(確定性)を活用し、QXは実行、取引サービス、およびストレージのための構造化された手数料を提供しており、高頻度取引(HFT)に適しており、ネットワークの有用性を強化します。Vottun Bridgeの開発により、Qubic、Ethereum、Arbitrum間のクロスチェーン取引が可能になり、QXの相互運用性が向上します。

ホワイトペーパー/v01/3_システムアーキテクチャ/start.1766563090.txt.gz · 最終更新: by d.azuma