ゼロ知識証明を使用してブロックチェーン インフラストラクチャやdAppsを拡張および改善することに取り組んでいるプロジェクトは数多くありますが、そのほとんどはイーサリアム上に構築されています。それに比べて、ゼロ知識証明をビットコインネットワークに適用する可能性は、あまり研究されていません。
しかし、理論的には、ゼロ知識証明には、プライバシー、スケーラビリティ、セキュリティ、イノベーションの余地の点でビットコイン ネットワークを改善する大きな可能性があります。
たとえば、分散型仮想通貨であるビットコインは、ブロックチェーンを使用してすべての取引情報を保存します。つまり、誰もがそのような情報にアクセスでき、ネットワークにはプライバシーのリスクが残ります。ゼロ知識証明 (「ZKP」) は、プライバシー保護に効果的に使用できるテクノロジーです。これは、一方の当事者 (証明者) が、そのステートメントに関する追加情報を明らかにすることなく、特定のステートメントが真実であることを別の当事者 (検証者) に証明できる数学的方法です。 ZKP を使用すると、トランザクション データを暗号化できるため、ユーザーはビットコイン ブロックチェーン上でよりプライバシーを保ったままトランザクションを行うことができます。
さらに、ビットコインネットワークは、ブロックサイズが限られているためトランザクション速度が遅く、ネットワークの混雑の問題があるため、商用利用には適さないと考えられています。 ZKP は、バッチ処理用にトランザクションを分割し、検証用のプルーフのサイズを最小限に抑えることで、ネットワークを拡張してこの問題を解決できます。
この分野の状況と発見される可能性を掘り下げてみましょう。
ZkSNARK と zkSTARK は、ゼロ知識証明テクノロジーの 2 つの顕著な振動です。どちらの方法でも、一方の当事者が機密情報を漏らすことなく、特定の声明の正当性を他方の当事者に証明することができます。ただし、動作、パフォーマンス、および考えられる使用シナリオが異なります。
ZkSNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) は、解くのが難しい複雑な数式を含む楕円曲線暗号 (ECC) に基づいています。証明者や検証者と対話することなく、非常に小さなサイズの証明を生成できます。 ZkSNARK は主に暗号通貨とプライバシー保護で使用されます。
ZkSTARK (Zero-Knowledge Scalable Transparent Argument of Knowledge) は、新しいタイプのゼロ知識証明テクノロジーです。これらは、不可逆暗号化ハッシュ関数と多項式補間を含む、より単純な数学的フレームワークを使用しており、より大規模に効率的に実装することができます。
また、zkSNARK とは異なり、zkSTARK は潜在的に脆弱な信頼できるセットアップ フェーズを必要としないため、より安全になります。 zkSTARK は量子耐性があるとも考えられます。
ZkSTARK の証明サイズは zkSNARK よりも大きくなりますが、zkSTARK の証明は外部パラメータにアクセスすることなく誰でも検証できます。また、並列処理と分散コンピューティングのサポートが向上し、複雑なコンピューティング タスクを効率的に処理できるようになります。これは、zkSNARK がモノのインターネットなどの幅広い分野で使用できることを意味します。
ZkSTARK を使用すると、開発者はより複雑なアルゴリズムを使用し、複雑な数学的演算を実行できるため、技術アップグレードの可能性が高まります。
zkSNARK は zkSTARK よりも先に開発されたため、採用に関して有利なスタートを切りました。
Zcashを例に考えてみましょう。 Zcash は、ビットコイン プロトコルのコード フォークです。これは、ビットコインコアチームの既存の作業に基づいて構築されており、zk-SNARK を使用して送信者、受信者、および金額をエンコードするシールドされたトランザクションを可能にします。
Zcash は次のように動作します。まず、Zcash アドレスにはシールドとトランスペアレントの 2 種類があります。透明なアドレスは「t」で始まり、ビットコイン アドレスと同様に動作し、ブロックチェーン上のアドレスと残高を公開します。 「z」で始まるシールドされたアドレスには、ゼロ知識証明によって提供されるプライバシー強化が含まれます。
次に、ユーザーがシールドされたアドレス間で暗号通貨を送信すると、送信者が未使用の十分な量の暗号通貨を保有していることを証明するための zkSNARK 証明が生成されます。このプロセスには、公開パラメーターの生成、ハッシュの計算、算術回路の構築など、複雑な数学的操作と暗号操作が含まれます。
zkSNARK 証明の生成には多くの時間と計算能力がかかりますが、zkSNARK 証明の検証は非常に高速かつ簡単です。バリデーターは、トランザクションの金額、送信者、受信者を知らなくても、トランザクションがブロックチェーンのコンセンサスルールに従って処理されているかどうかをチェックするだけで済みます。
このように、zkSNARK の使用により、Zcash はトランザクションの匿名性と検証可能性を実現できます。
ただし、Zcash によるこのテクノロジーの使用にはいくつかの制限があります。まず、ビットコインと同様に、Zcash は未使用のトランザクション出力 (UTXO) を使用して、どのトランザクションが使用可能であるかを判断します。これは、取引データが流出したものの、一般公開されていないことを意味します。攻撃者は、シールドされたアドレス間のトランザクションのパターンとトラフィックを分析することにより、ユーザーのプライバシーを侵害する可能性のある情報を入手する可能性があります。
第 2 に、Zcash は独自のブロックチェーンを維持しているため、Zcash が他のアプリケーションと統合したり相互作用したりすることが困難になります。これにより、Zcash の適用が制限され、さらなる開発が妨げられました。 Zcash はプライバシーを保護したトランザクションの実現に成功しているにもかかわらず、使用率は低いです。また、プライバシー保護トランザクションにはパブリックトランザクションよりもはるかに高いコストがかかります。これが、Zcash の使用率が低い理由の 1 つであり、Zcash のもう 1 つの制限でもあります。
zkSTARK の特性は、zkSTARK がビットコインにとってより適した ZKP テクノロジーである可能性があることを意味します。最先端の実験の 1 つは、楕円曲線 STARK または EC-STARK と呼ばれます。 EC-STARKs は、STARKs を使用して楕円曲線デジタル署名アルゴリズム (ECDSA) 署名の検証をオフチェーンに移行することで、ビットコインのスケーラビリティとセキュリティを向上させることを目的としています。ハッシュ関数を楕円曲線に置き換えることにより、EC-STARKS はイーサリアム用の既存のスケーラビリティ ソリューションをビットコインと互換性のあるものにすることができます。
ビットコインのオフチェーン プロトコルを実行し、証拠を STARK に保存できます。これは、ビットコインを STARK 内でエミュレートできることを意味し、同じ楕円曲線キーを備えたビットコイン ベースのトークン上に高度に洗練されたプロトコルを構築できるようになります。
簡単に言うと、このテクノロジーはビットコインのスケーラビリティを高めるだけでなく、ビットコインのブロックチェーン自体を開発者が dApp を作成できるプラットフォームに変身させ、イーサリアムのライバルになる可能性があります。また、データを大幅に小さなプルーフに変換できるため、プライバシーが強化され、ストレージの必要性も軽減されます。ただし、既存のビットコイン インフラストラクチャとの互換性やコンピューティング リソースの需要などの課題もあります。
zkSTARK は、ブロック ヘッダーの有効性を証明するためにも使用でき、ライト クライアントがチェーンの最新の状態を瞬時に確認できるようになります。と組み合わせて
ZkSTARK は、トランザクションのシリアル化、Double-SHA256 ハッシュの計算、secp256k1 操作、および検証プロセスのその他のコア操作を含むトランザクション検証プロセスにも適用できます。これらにより、プロセスにおける高度なセキュリティと運用の信頼性が保証されます。さらに、ZKSTARK は、ビットコイン アクセラレーション用の Cairo ビルトインを検証するためにも使用できます。 StarkNet の高効率ゼロ知識証明システムである Cairo の組み込み機能を活用することで、トランザクション検証プロセスの効率を大幅に向上させることができます。
上記以外にも、zkSTARK には他の潜在的な用途があります。たとえば、Taro と組み合わせることで、Taro のスケーラビリティが向上し、より多くのトランザクションを処理し、大規模なアプリケーションをサポートできるようになり、Taro のマルチチェーン展開への道が開かれ、ビットコインのユースケースが拡大する可能性があります。
また、zkSTARK を使用してトランザクション履歴を 1 つのトランザクションに圧縮し、トランザクション データを効果的に保護することで、ビットコイン ブロックチェーン上で機密トランザクションを実現できます。さらに、zkSTARK を使用して、Taro のプリミティブを実現し、TVL によるアセットのシリアル化を実現し、Merkle-Sum Sparse Merkle ツリー (MS-SMT) を実現および検証することができます。これらの操作により、プライバシーとセキュリティが効果的に強化される可能性があります。また、Lightening Network などのレイヤー 2 ソリューションは、zkSTARK を利用して、プライバシーを犠牲にすることなくビットコイン トランザクションをより効率的に検証できます。
ビットコインネットワークのインフラストラクチャやdAppsにゼロ知識証明技術を導入する実験を始めているプロジェクトが増えている。ソリューションの中には、ビットコイン ブロックチェーンのブロック スペースを活用し、ブロックチェーンのプライバシーとスケーラビリティを向上させる際に、このテクノロジーの使用を促進することが期待されているものもあります。
しかし全体として、活動のほとんどはイーサリアム上で行われています。ビットコインとゼロ知識証明技術の交差点に対する注意が明らかに欠けています。さらに、現在の工学的実践は学術研究の成果に大きく遅れています。
この分野ではさらなる探索と実験が必要であると私たちは考えていますが、これは私たちが注目し、支援する価値のある有望な方向性です。