# zkTLS技術解析とそのWeb3における応用の見通し最近、私は新しいプロジェクトの方向性を探求しています。製品設計を行っている際に、これまで触れたことのない技術スタックであるzkTLSに出会いました。そのため、私は深く研究し、学んだことを整理して文書にまとめ、皆さんと共有したいと思います。zkTLSは、ゼロ知識証明(ZKP)とトランスポート層セキュリティプロトコル(TLS)を組み合わせた新しい技術です。Web3分野では、主にオンチェーン仮想マシン環境で使用され、第三者を信頼することなく提供されたオフチェーンHTTPSデータの真実性を検証することができます。ここでの真実性には、3つの側面が含まれます:データソースが確かに特定のHTTPSリソースから来ていること、返されたデータが改ざんされていないこと、データの有効性が保証されていることです。この暗号学的実現メカニズムにより、オンチェーンスマートコントラクトは、オフチェーンWeb2 HTTPSリソースへの信頼できるアクセスを得ることができ、データの孤立を打破しました。## TLSプロトコルの概要zkTLS技術の価値を深く理解するためには、TLSプロトコルの簡単な概要を説明する必要があります。TLSプロトコルは、ネットワーク通信において暗号化、認証、データ完全性を提供し、クライアント(ブラウザなど)とサーバー(ウェブサイトなど)間のデータの安全な伝送を保証します。HTTPSプロトコルは実際にはHTTPプロトコルの基盤の上にTLSプロトコルを利用して情報伝送のプライバシーと完全性を保証し、サーバー側の真実性を検証可能にしました。それに対して、HTTPプロトコルは平文伝送のネットワークプロトコルであり、サーバー側の真実性を検証することができないため、以下のセキュリティ問題が発生する可能性があります:1. 情報は第三者に傍受され、プライバシーが漏洩する可能性があります。2. サーバー側の真正性を検証できません。リクエストは悪意のあるノードによって奪われ、悪意のある情報が返される可能性があります。3. 返された情報の完全性を検証できません。これはネットワークの問題によりデータが失われる可能性があります。TLSプロトコルは、これらの問題を解決するために設計されています。主に次の方法で実現されます:1.暗号化通信:対称暗号化(AES、ChaCha20など)を使用してデータを保護し、盗聴を防ぎます。2. 身分認証:第三者が指定された機関に発行したデジタル証明書(例:X.509証明書)を通じてサーバーの身分を確認し、中間者攻撃を防ぐ。3. データの完全性:HMAC(ハッシュメッセージ認証コード)またはAEAD(認証暗号化)を使用してデータが改ざんされていないことを保証します。## HTTPSデータインタラクションプロセスTLSプロトコルに基づくHTTPSプロトコルは、データのやり取りの過程で2つの段階に分かれます:ハンドシェイク段階とデータ転送段階。具体的なプロセスは以下の通りです:1. クライアントがClientHelloを送信します:サポートされているTLSバージョン、暗号化アルゴリズム、ランダム数などの情報を含みます。2. サーバーがServerHelloを送信:選択された暗号化アルゴリズム、サーバーのランダム数、サーバー証明書などの情報を含みます。3. クライアントがサーバーを検証する:サーバー証明書を検証し、共有キーを計算し、Finishedメッセージを送信します。4. 暗号通信を開始する:合意されたセッションキーを使用して暗号通信を行います。## Web3におけるデータアクセスの問題TLSプロトコルはWeb2ネットワークで広く使用されていますが、Web3アプリケーションの開発には困難を引き起こしています。オンチェーンのスマートコントラクトが特定のオフチェーンデータにアクセスしたい場合、データの可用性の問題により、オンチェーンの仮想マシンは外部データの呼び出し機能を開放しません。これは、すべてのデータの追跡可能性を確保し、コンセンサスメカニズムの安全性を保証するためです。この問題を解決するために、一連のオラクルプロジェクトが登場しました。例えば、ChainlinkやPythなどです。これらのプロジェクトは、オンチェーンデータとオフチェーンデータの中継ブリッジとして機能し、データの孤立を打破します。しかし、オラクルに基づくデータ取得ソリューションには、2つの主要な問題があります。1. コストが高すぎる:PoSコンセンサスメカニズムを維持するには大量のステーキング資金が必要であり、データの相互作用に冗長性が存在するため、使用コストが非常に高くなります。2. 効率が低い:PoSメカニズムのコンセンサスには一定の時間が必要であり、チェーン上のデータの遅延を引き起こし、高頻度アクセスのシナリオに不利である。## zkTLSのソリューションzkTLS技術はゼロ知識証明アルゴリズムを導入することにより、オンチェーンのスマートコントラクトが特定のノードが提供するデータが特定のHTTPSリソースからのものであり、改ざんされていないことを直接検証できるようにし、従来のオラクルによるコンセンサスアルゴリズムに起因する高い使用コストを回避します。具体的には、zkTLSは以下の方法で実現されます:1. オフチェーン中継ノードがHTTPSリソースから取得したデータ、関連CA証明書の検証情報、タイムスタンプ証明、およびデータの完全性証明を計算し、Proofを生成します。2. チェーン上で必要な検証情報と検証アルゴリズムを維持する。3. スマートコントラクトが重要な情報を公開することなく、データの真実性、タイムリーさ、およびデータソースの信頼性を検証できるようにする。この技術ソリューションの最大の利点は、Web2 HTTPSリソースの可用性コストを削減することで、多くの新しい需要を喚起したことです。例えば、ロングテール資産のオンチェーン価格取得コストを削減すること、Web2の権威あるウェブサイトを利用してオンチェーンKYCを行うこと、DIDやWeb3ゲームの技術アーキテクチャ設計を最適化することなどです。## zkTLSがWeb3業界に与える影響zkTLS技術の発展は、既存のWeb3企業、特に主流のオラクルプロジェクトに一定の影響を与えています。このような課題に対応するために、ChainlinkやPythなどの業界の巨頭は、関連研究を積極的に追跡し、技術の進化の過程で主導権を維持しようとしています。また、これにより、時間単位の課金から使用量に基づく課金への移行や、Compute as a serviceなどの新しいビジネスモデルが生まれました。しかし、ほとんどのZKプロジェクトと同様に、zkTLSが直面している主な課題は、計算コストをどのように削減し、商業的価値を持たせるかです。要するに、製品設計を行う際には、zkTLSの発展動向に注目し、適切にこの技術スタックを統合することで、ビジネスの革新や技術アーキテクチャにおいて新たな突破口をもたらす可能性があります。
zkTLS:Web3における新しいデータブリッジ技術の解析
zkTLS技術解析とそのWeb3における応用の見通し
最近、私は新しいプロジェクトの方向性を探求しています。製品設計を行っている際に、これまで触れたことのない技術スタックであるzkTLSに出会いました。そのため、私は深く研究し、学んだことを整理して文書にまとめ、皆さんと共有したいと思います。
zkTLSは、ゼロ知識証明(ZKP)とトランスポート層セキュリティプロトコル(TLS)を組み合わせた新しい技術です。Web3分野では、主にオンチェーン仮想マシン環境で使用され、第三者を信頼することなく提供されたオフチェーンHTTPSデータの真実性を検証することができます。ここでの真実性には、3つの側面が含まれます:データソースが確かに特定のHTTPSリソースから来ていること、返されたデータが改ざんされていないこと、データの有効性が保証されていることです。この暗号学的実現メカニズムにより、オンチェーンスマートコントラクトは、オフチェーンWeb2 HTTPSリソースへの信頼できるアクセスを得ることができ、データの孤立を打破しました。
TLSプロトコルの概要
zkTLS技術の価値を深く理解するためには、TLSプロトコルの簡単な概要を説明する必要があります。TLSプロトコルは、ネットワーク通信において暗号化、認証、データ完全性を提供し、クライアント(ブラウザなど)とサーバー(ウェブサイトなど)間のデータの安全な伝送を保証します。
HTTPSプロトコルは実際にはHTTPプロトコルの基盤の上にTLSプロトコルを利用して情報伝送のプライバシーと完全性を保証し、サーバー側の真実性を検証可能にしました。それに対して、HTTPプロトコルは平文伝送のネットワークプロトコルであり、サーバー側の真実性を検証することができないため、以下のセキュリティ問題が発生する可能性があります:
TLSプロトコルは、これらの問題を解決するために設計されています。主に次の方法で実現されます:
1.暗号化通信:対称暗号化(AES、ChaCha20など)を使用してデータを保護し、盗聴を防ぎます。 2. 身分認証:第三者が指定された機関に発行したデジタル証明書(例:X.509証明書)を通じてサーバーの身分を確認し、中間者攻撃を防ぐ。 3. データの完全性:HMAC(ハッシュメッセージ認証コード)またはAEAD(認証暗号化)を使用してデータが改ざんされていないことを保証します。
HTTPSデータインタラクションプロセス
TLSプロトコルに基づくHTTPSプロトコルは、データのやり取りの過程で2つの段階に分かれます:ハンドシェイク段階とデータ転送段階。具体的なプロセスは以下の通りです:
クライアントがClientHelloを送信します:サポートされているTLSバージョン、暗号化アルゴリズム、ランダム数などの情報を含みます。
サーバーがServerHelloを送信:選択された暗号化アルゴリズム、サーバーのランダム数、サーバー証明書などの情報を含みます。
クライアントがサーバーを検証する:サーバー証明書を検証し、共有キーを計算し、Finishedメッセージを送信します。
暗号通信を開始する:合意されたセッションキーを使用して暗号通信を行います。
Web3におけるデータアクセスの問題
TLSプロトコルはWeb2ネットワークで広く使用されていますが、Web3アプリケーションの開発には困難を引き起こしています。オンチェーンのスマートコントラクトが特定のオフチェーンデータにアクセスしたい場合、データの可用性の問題により、オンチェーンの仮想マシンは外部データの呼び出し機能を開放しません。これは、すべてのデータの追跡可能性を確保し、コンセンサスメカニズムの安全性を保証するためです。
この問題を解決するために、一連のオラクルプロジェクトが登場しました。例えば、ChainlinkやPythなどです。これらのプロジェクトは、オンチェーンデータとオフチェーンデータの中継ブリッジとして機能し、データの孤立を打破します。しかし、オラクルに基づくデータ取得ソリューションには、2つの主要な問題があります。
zkTLSのソリューション
zkTLS技術はゼロ知識証明アルゴリズムを導入することにより、オンチェーンのスマートコントラクトが特定のノードが提供するデータが特定のHTTPSリソースからのものであり、改ざんされていないことを直接検証できるようにし、従来のオラクルによるコンセンサスアルゴリズムに起因する高い使用コストを回避します。
具体的には、zkTLSは以下の方法で実現されます:
この技術ソリューションの最大の利点は、Web2 HTTPSリソースの可用性コストを削減することで、多くの新しい需要を喚起したことです。例えば、ロングテール資産のオンチェーン価格取得コストを削減すること、Web2の権威あるウェブサイトを利用してオンチェーンKYCを行うこと、DIDやWeb3ゲームの技術アーキテクチャ設計を最適化することなどです。
zkTLSがWeb3業界に与える影響
zkTLS技術の発展は、既存のWeb3企業、特に主流のオラクルプロジェクトに一定の影響を与えています。このような課題に対応するために、ChainlinkやPythなどの業界の巨頭は、関連研究を積極的に追跡し、技術の進化の過程で主導権を維持しようとしています。また、これにより、時間単位の課金から使用量に基づく課金への移行や、Compute as a serviceなどの新しいビジネスモデルが生まれました。
しかし、ほとんどのZKプロジェクトと同様に、zkTLSが直面している主な課題は、計算コストをどのように削減し、商業的価値を持たせるかです。
要するに、製品設計を行う際には、zkTLSの発展動向に注目し、適切にこの技術スタックを統合することで、ビジネスの革新や技術アーキテクチャにおいて新たな突破口をもたらす可能性があります。