執筆者: Kyle Liu、Bing Ventures 投資マネージャー
重要なポイント
- ゼロ知識証明は、取引の有効性と完全性を維持しながら、金額、住所、入出力などの取引の詳細を隠すことができるため、ビットコインのプライバシーを向上させることができ、第三者による追跡を防ぐことができます。ユーザーの取引活動を分析します。
- ゼロ知識証明はトランザクション データ サイズと検証時間を削減するため、ビットコインのスケーラビリティを向上させることができます。たとえば、ZK-STARK またはその改良版を使用すると、複数のトランザクションをまとめてパッケージ化し、ゼロ知識証明を使用して検証できるため、スペースと時間を節約できます。
- ゼロ知識証明はより多くの機能とアプリケーションをサポートできるため、ビットコインの革新性を高めることができます。たとえば、ZK-SNARK を使用すると、より多くのロジックと計算を実装でき、情報を公開したりオーバーヘッドを増加させたりすることなく、より複雑で柔軟な契約を実行できます。
- 最終的に、ゼロ知識証明は、ビットコインの核となる価値観に沿って、よりトラストレスで分散化されたものになります。テクノロジーの発展と改善が続くにつれて、ビットコインと ZKP の可能性は引き続き探求されていくでしょう。
ブロックチェーンインフラストラクチャやdAppsにゼロ知識証明テクノロジーを採用するチームが増えています。ただし、ほとんどのプロジェクトはイーサリアムに基づいて開発されています。しかし、ビットコインとゼロ知識証明には実際には自然な遺伝子の組み合わせがあり、この分野は現在十分な注目を集めていません。ゼロ知識証明技術とビットコインの組み合わせは、ビットコインネットワークにどのような力をもたらすでしょうか?この Bing Ventures の調査記事では、技術原理とアプリケーションの見通しの観点からこのトピックを検討します。
ゼロ知識証明 (ZKP) は、一方の当事者 (証明者と呼ばれる) が、証明に関する情報を検証者に提供することなく、別の当事者 (検証者と呼ばれる) に事実を証明できるようにする数学的手法です。このアプローチは、証明者が証明そのものに関する情報を明らかにすることなく検証者に証明を提供できるため、プライバシーを保護するのに非常に効果的です。
ビットコインはゼロ知識証明と自然に組み合わせることができます。ビットコインは、ブロックチェーンを使用して取引を記録する分散型仮想通貨であり、すべての取引情報は公開されています。しかし、これはビットコインの取引情報が誰でも閲覧できることを意味するため、プライバシー漏洩のリスクがあります。ゼロ知識証明はこの問題を解決できます。
ゼロ知識証明を利用することで、ビットコイン利用者は取引情報を暗号化し、情報漏洩することなくその正当性を証明することができ、より高いレベルのプライバシー保護を実現します。ゼロ知識証明はビットコインのスケーラビリティを向上させることもできます。現在、ビットコインのトランザクション速度はブロックチェーンのサイズとネットワークの混雑によって制限されているため、大規模な商用アプリケーションでの使用は制限されています。ただし、ゼロ知識証明を使用することで、ビットコイン ユーザーは大量のトランザクション情報をバッチ処理し、証明のサイズを非常に小さいサイズに圧縮できるため、ビットコインのスケーラビリティと効率が向上します。
背景と根拠
ZK-SNARK と ZK-STARK
ZK-SNARK と ZK-STARK はどちらもゼロ知識証明の亜種であり、共通しているのは、機密情報を明らかにすることなく、特定のデータまたは操作の正当性を証明することです。ただし、実装、パフォーマンス、適用範囲が異なります。
ZK-SNARK と ZK-STARK
ZK-SNARK と ZK-STARK はどちらもゼロ知識証明の亜種であり、共通しているのは、機密情報を明らかにすることなく、特定のデータまたは操作の正当性を証明することです。ただし、実装、パフォーマンス、適用範囲が異なります。
ZK-SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) は、楕円曲線暗号に基づくゼロ知識証明テクノロジーです。複雑な計算問題を、非常に小さく対話を必要としない単純な証明に変換できます。これは、ZK-SNARK が計算情報を明らかにすることなく計算の正確さを検証できることを意味します。 ZK-SNARKの応用分野には主に暗号通貨とプライバシー保護が含まれます。
ZK-STARKs (Zero-Knowledge Scalable Transparent Argument of Knowledge) は、ZK-SNARKs よりも柔軟で安全な新しいタイプのゼロ知識証明テクノロジーです。 ZK-STARK の実装は、楕円曲線暗号に依存せず、ハッシュ関数と多項式補間技術を使用します。これにより、ZK-STARK は予測不可能な数学パズルに依存せず、ハッシュ関数の不可逆性に依存するため、信頼性が高まります。また、ZK-STARKsはZK-SNARKsに比べて証明サイズは大きいですが、証明の検証性が優れているため、分散コンピューティングやIoTセキュリティなど、より幅広い分野への応用が可能です。
ビットコインでのゼロ知識証明の使用の難しさ
Zcash を例に挙げると、Zcash はゼロ知識証明技術で ZK-SNARK を使用しています。この技術を使用すると、取引金額、参加者の ID などを含む取引詳細を非表示にして、より優れたプライバシー保護を実現できます。 ZK-SNARKSを使用したZcashの技術原理はおおよそ次のとおりです。
- Zcash には、透過アドレス (t アドレス) と非表示アドレス (z アドレス) の 2 種類のアドレスがあります。透過的アドレスは、ブロックチェーン上の取引金額と参加者を公開するという点でビットコイン アドレスに似ています。隠しアドレスはゼロ知識証明を使用して、取引金額と参加者のプライバシーを保護します。
- ユーザーがある隠しアドレスから別の隠しアドレスに資金を送金する場合、十分な資金があり、すでに使用した資金をまったく使用していないことを示す ZK-SNARKS 証明を生成する必要があります。このプロセスには、公開パラメータの生成、ハッシュの計算、算術回路の構築など、いくつかの複雑な数学的および暗号化操作が含まれます。
- ZK-SNARKS 証明の生成には多くのコンピューティング リソースと時間が必要ですが、ZK-SNARKS 証明の検証は非常に高速かつ簡単です。バリデーターは、トランザクションがブロックチェーンのルールに準拠しているかどうかを確認するだけでよく、トランザクションの金額や参加者に関する情報を知る必要はありません。
- ZK-SNARKS を使用することで、Zcash は完全に匿名で検証可能なトランザクションを実現し、ブロックチェーンのセキュリティと分散化を維持しながら、ユーザーのプライバシーと使いやすさを向上させることができます。
ただし、Zcash で使用されるゼロ知識証明テクノロジーにもいくつかの制限があります。まず第一に、Zcash は UTXO に基づいています。これは、トランザクション情報が完全に隠蔽されるのではなく、ブロックされるだけであることを意味します。したがって、攻撃者はトランザクション情報のパターンやトラフィックを分析することで、有用な情報を推測することができます。これは、Zcash がプライバシー保護の観点から完全に信頼できるわけではないという事実にもつながります。
第二に、Zcash はビットコインをベースとした独立したネットワークであるため、他のアプリケーションと統合することがより困難になります。これはまた、より広範囲での応用の可能性を制限し、その開発をさらに妨げます。 Zcash はプライベート トランザクションを実装していますが、実際の使用量はそれほど多くありません。理由の 1 つは、プライベート トランザクションのコストがパブリック トランザクションよりもはるかに高く、その適用範囲が制限されていることです。
第二に、Zcash はビットコインをベースとした独立したネットワークであるため、他のアプリケーションと統合することがより困難になります。これはまた、より広範囲での応用の可能性を制限し、その開発をさらに妨げます。 Zcash はプライベート トランザクションを実装していますが、実際の使用量はそれほど多くありません。理由の 1 つは、プライベート トランザクションのコストがパブリック トランザクションよりもはるかに高く、その適用範囲が制限されていることです。
ZK-STARKの技術的利点
ビットコインで ZK-SNARKs テクノロジーを使用すると、確かにトランザクションの匿名性とプライバシー保護を実現できますが、このテクノロジーには、信頼できる設定と機器、大量のコンピューティング リソースとストレージ リソースが必要であるなど、いくつかの欠点があります。これらの問題を解決するために、ZK-STARKs テクノロジーなどの新しいゼロ知識証明テクノロジーも登場しました。
簡単に言えば、ZK-STARK プロセスには次の手順が含まれます。
- 証明者は、秘密情報を変数として使用して、証明したい計算を多項方程式系に変換します。
- 証明者は、この方程式系に対して一連の変換と単純化を実行して、より単純な方程式系を取得します。
- 証明者は、この単純化された方程式系をサンプリングしてエンコードして、低次元ベクトルを取得します。
- 証明者はこのベクトルをハッシュして署名し、証明として短い文字列を取得します。
- 検証者はこの文字列を受信すると、秘密情報や元の計算を知らなくても、いくつかの公開パラメーターとアルゴリズムを通じてそれが正しいかどうかをチェックできます。
ZK-SNARKs テクノロジーと比較して、ZK-STARKs テクノロジーには次の利点があります。
- ZK-STARKs テクノロジーは信頼できる設定を必要としません。つまり、特定のジェネレーターを信頼する必要がないため、テクノロジーのセキュリティが向上します。
- ZK-STARK テクノロジーは、必要なコンピューティング リソースとストレージ リソースが少ないため、軽量デバイスや幅広いアプリケーション シナリオに適応できます。これは、その証明生成プロセスが、ZK-SNARK の複雑な暗号化および復号化操作のプロセスよりも効率的であるためです。さらに、ZK-STARKs テクノロジは、並列コンピューティングと分散コンピューティングの力をより効果的に利用することもできるため、場合によってはコンピューティング タスクをより効率的に処理できます。
- ZK-STARK テクノロジーは、ハッシュ関数、多項式演算など、より多くのアルゴリズムや演算をサポートすることもでき、これにより、テクノロジーの拡張やアップグレードの可能性も高まります。
ビットコインとZK-STARKの組み合わせ
EC-STARKsテクノロジー
STARKs テクノロジーは、データのプライバシーを維持しながらデータを受け渡して第三者と通信できる新しい暗号証明テクノロジーです。このテクノロジーにより、検証データの計算と保存をオフチェーンに移動できるため、スケーラビリティが向上します。 ZK-SNARKs テクノロジーと比較して、STARKs テクノロジーはより高度であり、量子コンピューターからの攻撃に耐えることができます。
STARKs テクノロジーは、データのプライバシーを維持しながらデータを受け渡して第三者と通信できる新しい暗号証明テクノロジーです。このテクノロジーにより、検証データの計算と保存をオフチェーンに移動できるため、スケーラビリティが向上します。 ZK-SNARKs テクノロジーと比較して、STARKs テクノロジーはより高度であり、量子コンピューターからの攻撃に耐えることができます。
EC-STARKs テクノロジーは次世代の STARKs テクノロジーであり、ハッシュ関数を楕円曲線に置き換えることにより、ビットコインのスケーラビリティとセキュリティを向上させるように設計されています。このテクノロジーにより、イーサリアム上にすでに存在するスケーラビリティ ソリューションをビットコインと互換性のあるものにすることができます。 EC-STARKs テクノロジーを使用すると、ビットコイン プロトコルをオフチェーンで実行でき、証明は STARKs に保存されます。
つまり、ビットコインは STARK でエミュレートでき、同じ楕円曲線キーを使用してビットコインベースのトークン用の非常に複雑なプロトコルを構築できます。 EC-STARKs テクノロジーを使用すると、証拠を STARKs に保持しながら、ビットコインのオフチェーン プロトコルで実行できます。このアプローチにより、ビットコインのスケーラビリティが向上するだけでなく、非常に複雑なプロトコルをより高いプライバシーを持ってビットコイン上に構築できるようになります。
このテクノロジーは、ビットコインのスケーラビリティとプライバシーをまったく新しいレベルに引き上げ、ビットコインをより優れたプラットフォームにします。このようにして、開発者はビットコイン上でより複雑なアプリケーションを作成できるようになり、暗号通貨市場におけるビットコインの地位がより安定します。
ビットコインにおけるZK-STARKの適用の見通し
ZK-STARK の適用はビットコインの保守的な設計哲学にも沿っており、信頼できるセットを必要とせず、代わりにハッシュ関数、マークル ツリー、多項式などのテクノロジーを使用して、ビットコインの透明性とセキュリティを向上させます。 EC-STARKS のビットコインに対する利点の 1 つは、取引の詳細を公開する必要がないため、ビットコインのプライバシーが向上することです。もう 1 つの利点は、ビットコインは大量のデータを小さなプルーフに圧縮するため、ストレージの必要性が軽減されることです。ビットコイン上の EC-STARKS の課題の 1 つは、複雑な数学的演算を実行する必要があるため、より多くのコンピューティング リソースが必要になることです。もう 1 つの課題は、ビットコインの既存のプロトコルやインフラストラクチャと互換性を持たせる必要があるため、より多くの調整と標準化が必要なことです。
技術的な実装の観点から、ZK-STARK のアプリケーションはライト ノード、フル ノード、および検証方法に分類できます。ライトノードはスタークを使用してブロックヘッダーのステータスを証明し、高速同期を実現できます。フルノードは、UTXO ステータスを通じて有効性証明を実現し、utreexo テクノロジーを使用して UTXO ステータスを新しい形式で表現できるため、UTXO ステータス全体を表示する必要がなくなります。検証方法に関しては、受信ブロックの検証を開始するには、utreexo ルート + 最終状態を与えるだけで済みます。
さらに、ZK-STARK の応用には多くの潜在的な方向性があります。たとえば、Taro プロトコルと組み合わせることで、ビットコインはより汎用性の高い資産となり、ビットコインのアプリケーション シナリオがさらに拡張されます。ZK-STARK と TARO を組み合わせることで、TARO プロトコルのスケーラビリティが向上し、より多くのトランザクションとサポートを処理できるようになります。大規模なアプリケーションは、TARO プロトコルのマルチチェーン展開への扉を開きます。さらに、ビットコインのプライバシーは常に問題であり、ZK-STARKs テクノロジーの適用によりビットコインのプライバシーを大幅に改善できます。 ZK-STARKs テクノロジーを使用すると、トランザクション履歴全体を 1 つのトランザクションに圧縮し、ユーザーのトランザクション情報を効果的に隠すことができます。
今後注目すべきこと
今後注目すべきこと
さらに、ZK-STARK は、ビットコイン トランザクションのシリアル化、二重 SHA 計算、secp256k1 操作などを含む、ビットコイン トランザクションの検証に使用できます。これらの操作はビットコイントランザクション検証の中核であり、ZK-STARK を使用することで、ビットコイントランザクションの検証プロセスの安全性と信頼性を高めることができます。 ZK-STARK は、ビットコインの高速化された Cairo 組み込み機能を検証するために使用することもできます。 Cairo は効率的なゼロ知識証明システムであり、ビットコインの高速化された Cairo 組み込み機能と組み合わせることで、効率的なビットコイン トランザクションの検証とセキュリティが可能になります。
ZK-STARK は、Taro プリミティブやアセット TLV シリアル化、MS-SMT の実装や検証などの実装にも使用できます。これらの操作により、ビットコイン取引のプライバシーとセキュリティが効果的に保護され、ビットコイン取引の信頼性と信頼性がさらに向上します。 Lightning Network は、ビットコイン取引の第 2 層ソリューションとして、ZK-STARK テクノロジーを組み合わせることで、より効率的かつ安全なビットコイン取引を実現できます。 ZK-STARKs テクノロジーを使用すると、トランザクションのプライバシーを犠牲にすることなく、ライトニング ネットワーク上のビットコイン トランザクションを迅速に検証できます。
ブロックチェーンインフラストラクチャとdAppsにゼロ知識証明テクノロジーを採用するチームがますます増えています。これらの新しいスキームの中には、ブロックチェーン分野でのゼロ知識証明の導入を加速し、より良い方法でプライバシーとスケーラビリティを支援する可能性があるものがあります。しかし、ほとんどのプロジェクトはイーサリアムに基づいて開発されているのに対し、ビットコインはゼロ知識証明の分野で十分な注目を集めていません。さらに悪いことに、工学の実践はある意味で学力の達成に追いついていません。この分野ではさらなる実装と探求が必要であると同時に、この分野により多くの注意と支援が与えられるべきです。
全てのコメント