プログラマーが理解できる方法でゼロ知識証明を導入する

プログラマーが理解できる方法でゼロ知識証明を導入する

もともと「ゼロ知識証明を平易な言葉で説明する」という記事を書きたかったのですが、ブロックチェーンの原理を平易な言葉で説明できていないため、書けないことがわかりました。ゼロ知識証明はブロックチェーンの原理よりも抽象的です。インターネット上の情報の 90% 以上はこのアルゴリズムの導出に関するものですが、プログラマーの 90% 以上はハッシュ アルゴリズムの原理には関心がなく、ハッシュ アルゴリズムの使用方法だけを気にしています。 (10 年以上の経験を持つプログラマーとして、ハッシュの原理を理解していませんが、恥ずかしいとは思いません。使い方を知っておく必要があるだけです。)

まず、非常に基本的な関数構造を次に示します。

この関数がハッシュ アルゴリズムである場合、任意のファイルを入力すると、対応するハッシュ値を取得できます。私たち全員が特定のハッシュ値を知っていて、それがどのファイルであるかを知りたいという状況があるとします。ファイルはあなたの手の中にあり、あなたは興奮しながらファイルが見つかったと言います。全員が「わかりました。ファイルを取り出して、ハッシュを計算して一致するかどうかを確認します」と言います。この時点で、これは機密文書であり、そのまま渡すことはできないため、心配になります。何をすべきでしょうか?

ここでゼロ知識証明が登場します。アルゴリズムの構造は次のとおりです。

オレンジ色の部分は zk-proof であり、証明と検証の 2 つの部分に分かれています。証明部分は回路とも呼ばれ、回路記述言語 (Rust\C++\Circom) でプログラムし、最終的に回路ロジック (.wsam\.r1cs) にコンパイルする必要があります。この例では、回路を使用してハッシュ アルゴリズムを記述し、元の関数を置き換えます。この回路の特徴は、入力を公開する必要がなく、出力がハッシュ値と証明になることです。この証明は次のことを証明します:

未知の入力があり、回路によって計算されて出力が生成されます。

未知の入力があり、回路によって計算されて出力が生成されます。

未知の入力があり、回路によって計算されて出力が生成されます。

大切なことは3回言うべきです!そして私はそれを描きます:

この証明は、このプロセスの認証スタンプに相当します。それは決定的なもので、異論はありません。入力内容が分からないので、入力内容が何であるかを尋ねないでください。それがゼロ知識と呼ばれる理由です。何が分かっていますか?回路ロジック(この部分はオープンソースである必要があります)、出力値、および証明ドキュメント。

この例では、回路ロジックはハッシュ関数と同等です。計算したハッシュ値が公開ハッシュ値と同じであれば、入力したファイルは誰もが探している機密ファイルであり、このファイルを提供する必要はなく、証明のみを提供する必要があることを意味します。

検証するときは、ハッシュ値と証明を検証関数に入れて true を返します。これにより、次のことが証明されます。

特定のファイルを使用し、回路ハッシュ アルゴリズムを通じてこのハッシュ値を生成します。

他にどのファイルがあるでしょうか?正しいファイルである必要があります。そうでなければ、このハッシュはどのように生成されるのでしょうか。

コインを混ぜる

Zk 耐性はプライバシーのシナリオでは明らかに役立ちます。コインミキシングの原理は、ユーザーがコインを金庫に預け、金庫のパスワードのハッシュ値が金庫に投稿されるというものです。このパスワードを提供できる人は誰でも金庫内のすべてのコインを手に入れることができます。原理は上記のファイル検索と同じです。ユーザーはパスワードを提供する必要はなく、証明のみを提供すればよい。契約の検証に合格すると、通貨を引き出すことができます。

もう一つ問題があります。ある金庫を開けることができたら、それはあなたがそこにお金を入れた人だということを意味します。誰がどの金庫にいくらお金を入れたかはチェーン上で確認できるので、どの金庫を開けたかはわかりません。契約では、金庫を保管するためにツリー構造が使用され、層の数は固定されており、通常は 16 層です。開けたい金庫からツリーのルートまで、真ん中の 15 個のノードが決定され、これによってどの金庫を開けるかが決まるので、この 15 個のノード (パス) も回路のプライベート入力になります。

契約が最終的に検証されると、金庫の場所と金庫のパスワードがすべて正しいことが証明されますが、パスワードが何であるか、どの金庫であるかは誰にもわかりません。ユーザーも知らないかもしれませんが、ユーザーは証拠を安全に保管する必要があります。この証明書を持っている人なら誰でもお金を引き出すことができます。

スケーリング

プライバシーシナリオへの応用に加えて、zk-proof は過去 2 年間でブロックチェーンの容量を拡張できることもわかっています。ブロック内の各 tx には、(転送) 操作が偽造されていないことを証明するユーザーの署名が付いています。ブロックのサイズは制限(固定)されているため、ブロックに詰め込めるトランザクションが多いほど、TPS は高くなります。

署名が切り取られ、トランザクションがスリム化されると、より多くのトランザクションを詰め込むことができます。問題は、署名が削除された場合、操作がユーザーによって署名されたことをどのように証明できるかということです。ゼロ知識証明を使用して、ユーザーの署名の検証ロジックが回路に書き込まれます。入力はブロックデータ(署名を含む)、出力はブロックデータ(署名を除く)となり、証明が添付されます。 1 つの証明で、すべてのトランザクションがユーザーによって署名されていることを証明でき、減量の目的が達成されます。
出典: https://bress.xyz/zh/post/nKtuByYTvPri75xHQoA7f8vNyJ6NQPvCL_YH8KVp31Q

<<:  「北朝鮮のハッカー」がブロックチェーンエンジニアにインタビューするとはどういうことでしょうか?

>>:  走りながら稼ぐ:Web3.0 に突入?

推薦する

クレイグ・ライトが、自分がサトシ・ナカモトであることを皆に納得させるためには、何をする必要があるでしょうか?

数時間前、BBC、GQ、エコノミストがサトシ・ナカモトが再び発見されたと報じる記事を掲載した。このサ...

市場は急落し、週次調整範囲に入った

著者 |ハシピ分析チーム...

なぜ効率的に採掘できず、計算能力が盗まれるだけなのでしょうか?

マイニングをしたことのある人なら誰でも、ローカルに表示されるマイニングの計算能力が、マイニング プー...

ビットコインが5万ドルを突破!グラフィックカードは数千元値上がりしましたが、まだ購入しにくいです...

ビットコインを含む暗号通貨は急速に回復しており、暗号通貨コミュニティの感情が再燃し、グラフィックカー...

ビットコイン・チャイナが株式100%を売却:主要株主4人が現金化

ITテクノロジーは2月11日、ビットコインチャイナの株主ヤン・リンケ氏がBTCCの株式100%を香港...

UFC はビットコインを受け入れるまであと一歩?

UFC解説者であり、ジョー・ローガン・エクスペリエンスの司会者でもあるジョー・ローガン氏はツイッタ...

「借金」は返済されたと言われており、ビットメインは海南で販売促進会議を開催する予定(ビットメインシリーズ25)

ウー・ブロックチェーンは、ビットメインが年末と来年の関連事業の販売促進のため、11月初めに海南省三亜...

インド、業界が猶予期間に入ったため暗号通貨規制法案を延期

人口14億人のインドは、最も急速に成長している暗号通貨市場になりつつあり、2,000万人以上の暗号通...

Bybit は DeFi 王国の構築や資産の移転のために毎年 10 億ドルを DAO に注入していますか?

ウー・サイード著者 |コリン・ウーこの号の編集者 |コリン・ウー6月6日、世界最大のプロフェッショナ...

2022 BCH カンファレンスの概要: 過去 1 年間に BCH にどのような変化がありましたか?

原作者: パンテラ編集:百澤研究所BCH は P2P 経済に向かっています。キャッシュトークンと次の...

ビットコインがApple Payの最大のライバルに

過去 1 年間、Apple Pay はモバイル決済の最も革新的な形態の 1 つと見なされてきました。...

クレイジーなコラボレーションの裏側:YFI 創設者の DeFi ユニバース

Yearn.Financeは、Yearn Vaults v2のリリースを発表して以来、資本効率の向上...

BTC 急落を引き起こしたドイツ政府の売却の背後には、FUD が主な原因か?

最近の暗号通貨市場は下落を続けており、BTCは53,500ドルを下回り、アルトコインのパフォーマンス...

Duoji Cloud 無料 20G Fusion CDN クラウド ストレージ ビデオ クラウド サービス

今日のデジタル時代において、クラウド コンピューティング サービスは企業や個人にとって欠かせないイン...