Aleo はプライバシー保護に重点を置いたブロックチェーン プロジェクトであり、ゼロ知識証明技術 (ZKP) を通じてより高いプライバシーとスケーラビリティを実現します。 Aleo の中心的なアイデアは、ユーザーが個人データを明らかにすることなく認証およびデータ処理できるようにすることです。
この記事では、主にAleoのプロジェクト概要と最新の進捗状況を紹介し、市場が非常に関心を寄せているパズルアルゴリズムのアップデートについて詳しく解説します。
最新のアルゴリズムの概要
Aleo ネットワークは、1 時間ごとに ZK 回路をランダムに生成します。マイナーは、この 1 時間の間に回路の入力として異なる nonce を試し、証人 (つまり、回路内のすべての変数。この計算プロセスは合成とも呼ばれます) を計算する必要があります。証人のマークル ルートを見つけます。 最後に、マイニングの難易度の要件を満たしているかどうかを判断します。回路のランダム性により、このマイニング アルゴリズムは GPU に適したものではなく、計算の高速化が非常に困難です。
資金調達の背景
Aleoは、a16z主導で2021年に2,800万ドルのシリーズAラウンドを完了し、2024年にはKora Management、SoftBank Vision Fund 2、Tiger Global、Sea Capital、Slow Ventures、Samsungなどの投資家とともに2億ドルのシリーズBラウンドを完了した。次に、とりわけ。今回の資金調達により、Aleoの評価額は14億5000万ドルとなった。
プロジェクト概要
プライバシー
Aleo の中核となるのはゼロ知識証明 (ZKP) テクノロジーであり、プライバシーを維持しながらトランザクションとスマート コントラクトの実行を可能にします。送信者や取引金額などのユーザーの取引詳細は、デフォルトでは非表示になります。この設計はユーザーのプライバシーを保護するだけでなく、必要に応じて選択的な開示も可能にするため、DeFi アプリケーションの開発に非常に適しています。その主なコンポーネントは次のとおりです。
Leo コンパイル言語: Rust 言語から適応され、特にゼロ知識アプリケーション (ZKApps) の開発に使用され、開発者の暗号化知識の要件が軽減されます。
snarkVM と snarkOS: snarkVM を使用すると、計算をオフチェーンで実行でき、計算結果のみがオンチェーンで検証されるため、効率が向上します。 snarkOS はデータと計算のセキュリティを確保し、権限のない関数の実行を許可します。
zkCloud: 安全でプライベートなオフチェーン コンピューティング環境を提供し、ユーザー、組織、DAO 間のプログラミング インタラクションをサポートします。
また、Aleo は、開発者がアプリケーションを迅速に作成して公開できるようにするための統合開発環境 (IDE) とソフトウェア開発キット (SDK) も提供します。さらに、開発者はサードパーティに依存せずにアプリケーションを Aleo のプログラム レジストリにデプロイできるため、プラットフォームのリスクが軽減されます。 。
スケーラビリティ
Aleoはオフチェーン処理方式を採用しており、トランザクションはまずユーザーのデバイス上で計算されて証明され、検証結果のみがブロックチェーンにアップロードされます。このアプローチにより、トランザクション処理速度とシステムの拡張性が大幅に向上し、イーサリアムのようなネットワークの混雑と高額な手数料が回避されます。
コンセンサスメカニズム
Aleo は、検証者の即時ファイナリティと証明者の計算能力を組み合わせたハイブリッド アーキテクチャ コンセンサス メカニズムである AleoBFT を導入します。 AleoBFT は、ネットワークの分散化を強化するだけでなく、パフォーマンスとセキュリティも強化します。
高速なブロックのファイナリティ: AleoBFT は、各ブロックが生成直後に確認されることを保証し、ノードの安定性とユーザー エクスペリエンスを向上させます。
分散化の保証: ブロックの生成をコインベースの生成から分離することで、検証者がブロックの生成を担当し、証明者が証明計算を実行して少数のエンティティがネットワークを独占するのを防ぎます。
インセンティブメカニズム: 検証者と認証者はブロック報酬を共有します。認証者はトークンを誓約することで検証者になることが奨励され、それによってネットワークの分散化とコンピューティング能力が向上します。
Aleo を使用すると、開発者はガス制約のないアプリケーションを作成できるため、機械学習などの長時間実行されるアプリケーションに特に適しています。
現在の進行
Aleo は 7 月 1 日にインセンティブ付きテストネットを開始します。ここでは重要な最新情報をいくつか紹介します。
ARC-100 投票可決: ARC-100 (「Aleo 開発者とオペレーターのためのコンプライアンスのベストプラクティス」提案。コンプライアンスの側面、Aleo ネットワーク上の資金のロックや支払い遅延などのセキュリティ対策をカバー) への投票は終了し、可決されました。チームは最終調整を行っている。
バリデーター・インセンティブ・プログラム: このプログラムは 7 月 1 日に開始され、新しいパズルのメカニズムを検証するように設計されています。このプログラムは7月15日まで実施され、期間中に報酬として100万Aleoポイントが配布される。ノードによって生成されたポイントのパーセンテージによって報酬のシェアが決まり、各バリデーターが報酬を受け取るには少なくとも 100 トークンを獲得する必要があります。具体的な詳細はまだ決まっていない。
初期供給量と循環供給量: 初期供給量は 15 億トークン、初期循環供給量は約 10% (未確定)。トークンは主に Coinbase タスク (7,500 万) から派生し、最初の 6 か月にわたって配布され、ステーキング、バリデーターの実行、およびノードの検証に対する報酬が含まれます。
テストネット ベータ リセット: これは最後のネットワーク リセットです。完了しても新しい機能は追加されず、ネットワークはメインネットと同様になります。リセットすると、ARC-41 と新しいパズル機能が追加されます。
コードの凍結: コードの凍結は 1 週間前に完了しました。
検証ノードの拡張計画: 検証ノードの初期数は 15 ですが、年内に 50 に増やし、最終的には 500 に達することを目標としています。委任者になるには 10,000 トークン、バリデーターになるには 1000 万トークンが必要ですが、これらの量は時間の経過とともに徐々に減少します。
アルゴリズム更新の解釈
Aleo は最近、最新のテストネット ニュースを発表しましたが、パズル アルゴリズムの最新バージョンも更新しました。新しいアルゴリズムは、zk 証明結果の生成に焦点を当てなくなり、MSM と NTT (どちらも zk で頻繁に使用される計算) を削除しました。プルーフ生成)モジュールでは、以前のテストネット参加者はマイニング収益を増やすためにアルゴリズムの効率を最適化し、プルーフを生成する前に中間データ証人の生成に焦点を当てました。公式 パズルの仕様とコードを参照した上で、最新のアルゴリズムを簡単に紹介します。
コンセンサスプロセス
コンセンサスプロトコルレベルでは、プロセス内の証明者と検証者はそれぞれ、計算結果のソリューションとブロックの生成、集約、およびパッケージ化ソリューションの生成を担当します。プロセスは次のとおりです。
Prover はパズルを計算し、解決策を構築し、ネットワークにブロードキャストします。
Validator はトランザクションとソリューションを次の新しいブロックに集約し、ソリューションの数がコンセンサス制限 (MAX_SOLUTIONS) を超えないようにします。
ソリューションの合法性は、その epoch_hash がバリデータによって維持されるlatest_epoch_hashに準拠しており、その計算されたproof_targetがネットワーク内のバリデータによって維持されるlatest_proof_targetに準拠していることを検証する必要があります。同時に、ブロックに含まれるソリューションの数も検証する必要があります。コンセンサス制限を下回っています。
効果的なソリューションはコンセンサス報酬を受け取ることができます
合成パズル
最新バージョンのアルゴリズムの核心は、合成パズルと呼ばれます。その核心は、入力とエポック プログラムの R 1 CS 証明回路を構築することによって、対応する R 1 CS 割り当てを生成することです。そして、マークルツリーの葉ノードとして、すべての葉ノードを計算した後、マークルルートが生成され、解のproof_targetに変換されます。合成パズルを構築するための詳細なプロセスと仕様は次のとおりです。
1. 各パズル計算は nonce と呼ばれ、マイニング報酬を受け取るアドレス、epoch_hash、および乱数カウンターから構築されます。新しい解を計算する必要があるたびに、カウンターを更新することで新しい nonce を取得できます。
2. 各エポックでは、ネットワーク内のすべての証明者が計算する必要があるエポックプログラムは同じです。これは、現在のエポックハッシュによって生成された乱数によって命令セットからサンプリングされます。 サンプリング ロジックは次のとおりです。
命令セットは固定されており、各命令には 1 つ以上の計算演算が含まれます。各命令には、事前に設定された重みと演算数があります。
サンプリング時には、現在の epoch_hash に基づいて乱数が生成され、その乱数に従って重み付けされた命令セットから命令が取得され、累積演算数が 97 に達するとサンプリングが停止されます。
すべての命令を EpochProgram に結合します
3. nonce を乱数シードとして使用して、EpochProgram の入力を生成します。
4. R1 CSとEpochProgramに対応する入力を集約し、証人(R1 CS割り当て)計算を実行
5. すべての証人が計算された後、これらの証人は、対応するマークル ツリーのリーフ ノード シーケンスに変換されます。マークル ツリーは、深さ 8 の 8 要素の K 配列マークル ツリーです。
6. マークル ルートを計算し、それをソリューションのproof_targetに変換し、それが現在のエポックのlatest_proof_targetを満たすかどうかを判断します。計算を満たしていれば、計算は成功です。ビルドに必要な報酬アドレス、epoch_hash、およびカウンターが送信されます。上記の入力をソリューションとしてブロードキャストします。
7. 同じエポック内で、EpochProgram の入力を反復カウンターによって更新して、複数の解計算を実行できます。
マイニングの変更と影響
この更新後、パズルは証明の生成から証人の生成に変更されました。各エポックのすべての解の計算ロジックは同じですが、異なるエポックの計算ロジックはまったく異なります。
以前のテスト ネットワークから、多くの最適化手法はマイニング効率を向上させるために、GPU を使用して MSM と NTT の計算を最適化することに重点を置いていることがわかります。エポック変更に従うプログラムの実行により、その中の命令はシリアル実行に依存するため、並列化を達成することは大きな課題となります。