ゼロ知識を超えて:プログラム可能な暗号の次は何ですか?

中級1/1/2024, 2:46:31 AM
本稿では、ZKの歴史に加え、MPC、FHE、IOなどのプログラム可能な暗号化技術を中心に紹介します。

プログラム可能な暗号化

暗号化は何千年も前から存在していますが、プログラム可能な暗号化は最新のテクノロジーです。 「汎用暗号...[or] an expressive language for claims」と書かれていますが、これは、ZK証明のような暗号プリミティブを、開発者がその上にほぼすべての関数をプログラムできるように、柔軟で適応性を持たせることができるという考え方です。 誰かがウェブサイト上のボタンをクリックすることから、暗号操作のセキュリティを保証する数学的証明まで、途切れることのない論理の連鎖が存在する可能性があること。

https://youtu.be/qAfprVCBhdQ?t=1024

従来の暗号化は固定された機能セットに依存しており、熟練した暗号技術者が新しいメカニズムごとに専用のシステムを構築する必要がありましたが、プログラム可能な暗号化により、開発者は既に理解している言語に近い言語で暗号化のプロパティと機能を展開できます。 これにより、暗号化の専門家ではない開発者にも、より使い慣れたインターフェイスが提供されます。

ZK証明は1989年に初めて考案されましたが、2012年にzk-SNARKと呼ばれるZK証明の一種が発見されるまで、ほとんど理論的なものでした。 この新しいプリミティブにより、ZK証明はほぼすべての関数または任意の計算を証明または認証できるようになりました。

zkSNARKSが可能になって以来、zCash、zkRollups、zkEVM、およびzの文字で始まる他の多くのアプリケーションの構築にリソースと人材が注がれてきました。 イーサリアムのような分散型システムやブロックチェーン全般は、人々が暗号学に興味を持ち、かつては実用的ではなかった研究分野を、実際のエンドユーザーアプリケーションを備えたアクティブなエコシステムに変えるのに最適な動機であることが判明しました。

マルチパーティ計算(MPC)、完全準同型暗号化(FHE)、および区別不能難読化(iO)がZKと同じ道をたどり、時間の経過とともにより実用的で最適化され、汎用的になるという保証はありません。 しかし、この初期段階では、それは確かに可能です。

プログラム可能な暗号を、特定の特性と保証を可能にする特定の仮定に基づいて構築されたデジタルコンピュータの一種と考えると、私たちはまだハードウェアの段階にあります。 私たちは、この新しいコンピュータのための論理ゲートや回路を構築するための最良の方法を、今も積極的に模索しています。

比較的直感的な比較

プログラム可能な暗号の一般的な状況をよりよく理解するために、まず、MPC、FHE、および IO が ZK に対して、また互いにどのような位置にあるかを非常に大まかに近似することから始めましょう。 このセクションと、その後のすべてのセクションでは、ニュアンス、精度、形式をトレードオフして、シンプルさとアクセシビリティを優先します。

暗号化について推論する最も簡単な方法は、どの情報が隠されているか、または秘密にされているかということです。 そして、システムが証明または明らかにするもの。

また、これらの各システムは、架空の共通の友人の代役と考えることもできます。 ウィキペディアでは、この友人を「トニー」と呼んでいます。 トニーは無謬で、清廉潔白で、完全に信頼できます。 トニーの仕事は秘密を守ることです。 以下の表では、「プライベート要素」は Tony が保持できる秘密、「ユースケース」は Tony がそれなりにうまく実行できるタスク、「実用性」は Tony がこれらのタスクをどれだけ巧みに実行できるかと考えてください。

上記の表は、プログラム可能な暗号化のさまざまな領域の大まかなアイデアを提供することを目的としています。 それでは、もう少し深く掘り下げて、MPC、FHE、およびiOが何をしているのかを、各分野に関する興味深い情報とともに確認しましょう。

マルチパーティ計算 (MPC)

マルチパーティ計算(MPC)を使用すると、多くの関係者が、他の参加者にデータを公開することなく、合意された関数を共同で計算できます。 MPCでは、全員のデータに同じ計算が適用されますが、各当事者の入力は秘密にされます。 中間値も秘密のままです。 最後に出力のみが表示されます。

ZKとは対照的に、MPCは協力的です。 これにより、異なる関係者が同じ計算で協力し、それぞれが独自のデータを提供して、全員が望む相互の結果を得ることができます。

ZKとMPCをAIシステムのコンテキストで比較すると、より多くのコンテキストを得ることができます。 ZKは、実在の人物または人の電話からのデータを認証または検証するのに適しています。 MPCは、さまざまな個人、グループ、または組織が機密データをAIシステムと共有できても、データが他の人に公開されないことを信頼できるため、AIシステムのトレーニングに適しています。

億万長者の問題

MPCは、1982年にアンドリュー・ヤオによって、2人の億万長者がお互いにどれだけのお金を持っているかを言わずにどちらが金持ちかを知りたいという「億万長者の問題」と呼ばれる思考実験を解決するために考えられました。 解決策は、文字化けした回路を使用することでしたが、暗号の概念を頻繁に説明しているVitalik Buterin氏によると、これはMPCを理解するための最も基本的な方法の1つでもあります。

[文字化け回路について学ぶ前に、演算回路が一般的に何であるかを知る必要があります。 回路の概念に馴染みのない方のために、ここに簡単な説明があります。

MPCは、億万長者#1(アリス・ザ・ガーブラー)が最初に回路を作成し、純資産を入力し、それを文字化けまたは暗号化された形式に変換してから、億万長者#2(ボブ・ザ・エバリュエーター)に渡す必要がある、多段階のインタラクティブなプロセスです。 ボブがサーキットを手に入れたとき、彼の仕事は彼自身の純資産を追加し、サーキットを評価または実行してそれが正しいことを確認することです。 最後に、ボブは最終出力を復号化し、たとえば、アリスの方が金持ちであることを知るが、実際にはアリスの方がずっと金持ちであることを知ることはなく、仮定をすべきではなかった。

ミリオネアの問題と解決策としての文字化け回路は、MPCの初期の開発に不可欠でした。 しかし、その用途は限られていました。 「社会主義億万長者問題」と呼ばれる、より複雑で微妙な問題では、2人の億万長者が同等に金持ちかどうかをチェックし、どちらがより多くのお金を持っているかを明らかにするものではありませんでした。 この微妙な違いにより、MPCの機能が大幅に拡張されましたが、この記事の範囲を超えて、より複雑な暗号化ソリューションと手法が必要でした。

完全準同型暗号(FHE)

完全準同型暗号化 (FHE) により、暗号化されたデータの計算が可能になります。 暗号化されたデータに対して、暗号化されていないかのように機能を実行できます。 関数の出力は、秘密鍵を持つパーティによってのみ復号化されます。 暗号化を秘密を隠すブラックボックスと考えると、FHEはデータとそのデータに対する計算がそのブラックボックス内にとどまることを保証します。

MPCの億万長者問題のような有名な思考実験はありませんが、FHEは「データを処理する前に復号化する必要がある」という根本的なセキュリティ上の弱点を解決しています。

https://www.zama.ai/post/the-revolution-of-fhe

AIのコンテキストでは、FHEはユーザー(秘密鍵保持者)とAIシステム間のすべてのデータを暗号化します。 ユーザーは通常どおりシステムと対話しますが、ユーザーは、AIが与えられたデータについて何も「学習」していないと確信できます。 インタラクション全体が暗号化されます。 AIは、あなたが何を入力したり尋ねたりしたか、どの写真を送ったか、誰が送信したかを学習することはありませんが、あたかも情報を知っているかのように応答することができます。

これがうまくいけば、FHEは最も強力なプライバシー保護技術の1つになります。 そして、誰が知っていますか? 10年後には、FHE-EVMが登場するかもしれません。

騒音管理

MPCやZKと比較すると、FHEは現時点では、より理論的であるか、実用的ではありません。 この技術が実現可能と考えられたのは、2009年にCraig Gentryがノイズの対処法を考案したときでした。

FHE操作は、セキュリティを強化するために暗号化プロセス中に「ノイズ」が追加されるため、計算量が非常に多くなります。 FHEのノイズは、平文(暗号化されていないデータ)が暗号文(暗号化されたデータ)に変換される前に、平文(暗号化されていないデータ)に追加される小さなランダム値です。 操作のたびにノイズが増加します。 加算演算と減算演算ではノイズの増大はごくわずかですが、乗算は計算コストが高くなるため、ノイズの増大が大きくなります。 そのため、プログラムの複雑さが増すにつれて、ノイズ(ノイズを収容するために必要なスペースとノイズを処理するために必要な計算リソース)が蓄積されます。

ジェントリーのブレークスルーは、ブートストラップと呼ばれる技術で、ノイズを減らし、FHEシステムで暗号化されたデータに対してより多くの計算を可能にすることができました。 ブートストラップは、暗号文を取得して準同型で復号化するため、暗号化されたデータのノイズレベルを下げて、それが何であるかを実際に明らかにすることはありません。 その結果、事前に定義されたノイズがはるかに少ない暗号文が得られるため、暗号文をさらに計算することができます。 一般に、ブートストラップにより、計算の複雑さが増すにつれてノイズが増加する余地を増やす必要性を回避できます。 スペースをいくつかの操作に制限し、繰り返しブートストラップして、元のデータを損なうことなく任意の大きな計算を計算することができます。

FHEスキームに応じて、ブートストラップには数分または数ミリ秒かかる場合があります。 ブートストラップが遅い場合は、一度に複数の暗号文に適用することで計算コストを分散できます。 ブートストラップの方が速い場合、通常、効率を維持するために一度に小さなプレーンテキスト(通常は8ビット)のみを処理するというトレードオフが伴います。

識別不能な難読化 (iO)

FHEが計算のすべての要素をブラックボックスに変えると、iOは計算自体をブラックボックスに変えます。

識別不能難読化(iO)は、理論的可能性の領域内で最も強力な暗号システムと見なされています。 ある記事では、iOは「他のほとんどすべての暗号プロトコルを構築できるマスターツール」と説明されており、暗号の専門家は「王冠の宝石」および「それらすべてを支配する1つの暗号プリミティブ」と呼んでいます。

ZK証明を子供に説明することで知られる教授であり、十分に根拠のある仮定に基づいてiOを構築する方法を考案した研究者の1人であるAmit Sahai氏によると、iOは以前の暗号システムとは根本的に異なるパラダイムで機能します。 IOは、敵対者がすでにあなたの心を読むことができると想定しています(コンピューターの比喩)。 あなたの秘密はすでに知られているので、隠すことはできません。 唯一できることは、敵対者がすでに見ているものを難読化することです。

https://youtu.be/v2RR_c5hn1E

iO のポイントは、2 つの関数または計算を等しく不明瞭にすることです。 2 つの計算を互いに区別できない形式に変換すると、プログラムの動作を隠すことができます。 2つのプログラムの違いがわからない場合、2つのプログラムのどちらが実行されているのかがわからず、どちらも同じ機能を実行するという以外の情報を推測することはできません。 どちらのプログラムも同じ入力を受け取り、同じ出力を生成しますが、iOはそれを作るので、誰もその方法を理解できません。

iOを使用すると、暗号化を構成するほぼすべての関数を含む、あらゆる種類の関数の構造を隠すことができます。 言い換えれば、ほとんどすべてのものを不明瞭にすることで、他のプリミティブをプログラムできる最も汎用的なプログラム可能な暗号化に到達します。

技術的には、iOよりも大きなブラックボックスがあります。 これは文字通り、ブラックボックスの難読化と呼ばれます。 しかし、それはまだ不可能です。

十分に根拠のある仮定

2013年にGarg、Gentry、Halevi、Raykova、Sahai、Watersによって多重線形写像が提案されるまで、誰もiOの構築方法を知らなかった。 コンピュータプログラムは、パズルのピースのように分解し、多重線形マップを使用して隠すことができます。 不明瞭な部分は、内部の仕組みを明らかにすることなく、元のプログラムと同じ機能を実現するために再構成することができます。

多重線形マップは、楕円曲線暗号 (ECC) で使用される双一次マップまたはペアの一般化です。 双線形写像はBLS署名のような既存の暗号方式の基礎となるものですが、iOには複雑でなく、表現力も十分ではありません。 また、多重線形写像は iO を扱うことができますが、この新しく開発された代数的構造は簡単に攻撃でき、安全ではなかったため、多重線形写像に頼ることは一般的に暗号学者にとって満足のいくものではありませんでした。 フィールドは再び立ち往生しました。

そして2020年、Jain氏、Lin氏、Sahai氏は、珍しく新しいものの、暗号学者が推論できるほど単純であり、多重線形写像のような新しく開発された仮定に頼るのではなく、このバージョンのiOは、Learning with Errors(LWE)など、何十年にもわたって研究されてきた、より標準的で根拠のある仮定に基づいて構築できるソリューションを提案しました。 この最新のブレークスルーにより、iOは再び実現可能になりました。 聖杯はまだ手の届くところにあった。

手つかずの荒野

各暗号化システムは、さまざまな数学的仮定と暗号化技術で構成されています。 1つのブレークスルーでシステム内のすべての問題を解決できるわけではありません。 その代わり、発見は予測不可能な小さな一歩と大きな飛躍の連続をたどり、既存の仮定や手法を変え、それがさらなるブレークスルーや発見につながります。 そして、うまくいった発見のたびに、さらに多くの発見がうまくいきませんでした。

iOに関するプレゼンテーションで、Sahai氏はこの分野を「手つかずの荒野」と表現し、何が理解されていないのか、解決すべき正しい問題は何かさえも明確ではありませんでした。

PSEのようなチームは、主にプログラム可能な暗号の実用的または応用的な側面に取り組んでおり、実戦でテストされ、比較的最適化され、安全で効果的であると考えられている十分に根拠のある仮定を持つZKやMPCなどのプリミティブに焦点を当てています。 最適化の余地はたくさん残っていますが、ZKは今や実用性の領域にしっかりと収まっています。 しかし、ZKが未開の荒野に閉じ込められていた時期もありました。

プライバシー保護、セキュリティ保証、クレーム検証、暗号化対応ツールの数を世界が最大限に活用するには、10年後に何が実用的になるかは誰にも予測できないため、少なくとも、来るべきことの地平線に目を細めておく必要があります。

Sahai氏のプレゼンテーションには、2003年にNature誌に掲載されたSteven Weinberg氏の論文「Four Golden Lessons」からの引用が含まれており、現在非現実的である課題に取り組むもう一つの理由が強調されている。

「1960年代後半にマサチューセッツ工科大学で教鞭をとっていたとき、ある学生が、私が取り組んでいる素粒子物理学の原理はよく知られていたが、後者はめちゃくちゃに見えたので、一般相対性理論の分野に行きたいと言いました。 彼は正反対のことをする完璧な理由を与えたのだと私は思いました...私からのアドバイスは、混乱を覚悟すること、それがアクションの正体です」

プログラマブル暗号は、2023年11月16日と17日にトルコのイスタンブールで開催される2日間のイベント「Programmable Cryptography Conference」の共催者であるPSEや0xPARCなど、さまざまなチームによって探求されています。

挨拶に来てください!

または、DiscordでPSEをオンラインで見つけてください。

免責事項:

  1. この記事は [Privacy and Scaling Explorations] からの転載です。 すべての著作権は原著作者[kichong]に帰属します。 この転載に異議がある場合は、 Gate Learn チームに連絡していただければ、迅速に対応いたします。
  2. 免責事項:この記事で表明された見解や意見は、著者のものであり、投資アドバイスを構成するものではありません。
  3. 記事の他言語への翻訳は、Gate Learnチームによって行われます。 特に明記されていない限り、翻訳された記事を複製、配布、盗用することは禁止されています。

ゼロ知識を超えて:プログラム可能な暗号の次は何ですか?

中級1/1/2024, 2:46:31 AM
本稿では、ZKの歴史に加え、MPC、FHE、IOなどのプログラム可能な暗号化技術を中心に紹介します。

プログラム可能な暗号化

暗号化は何千年も前から存在していますが、プログラム可能な暗号化は最新のテクノロジーです。 「汎用暗号...[or] an expressive language for claims」と書かれていますが、これは、ZK証明のような暗号プリミティブを、開発者がその上にほぼすべての関数をプログラムできるように、柔軟で適応性を持たせることができるという考え方です。 誰かがウェブサイト上のボタンをクリックすることから、暗号操作のセキュリティを保証する数学的証明まで、途切れることのない論理の連鎖が存在する可能性があること。

https://youtu.be/qAfprVCBhdQ?t=1024

従来の暗号化は固定された機能セットに依存しており、熟練した暗号技術者が新しいメカニズムごとに専用のシステムを構築する必要がありましたが、プログラム可能な暗号化により、開発者は既に理解している言語に近い言語で暗号化のプロパティと機能を展開できます。 これにより、暗号化の専門家ではない開発者にも、より使い慣れたインターフェイスが提供されます。

ZK証明は1989年に初めて考案されましたが、2012年にzk-SNARKと呼ばれるZK証明の一種が発見されるまで、ほとんど理論的なものでした。 この新しいプリミティブにより、ZK証明はほぼすべての関数または任意の計算を証明または認証できるようになりました。

zkSNARKSが可能になって以来、zCash、zkRollups、zkEVM、およびzの文字で始まる他の多くのアプリケーションの構築にリソースと人材が注がれてきました。 イーサリアムのような分散型システムやブロックチェーン全般は、人々が暗号学に興味を持ち、かつては実用的ではなかった研究分野を、実際のエンドユーザーアプリケーションを備えたアクティブなエコシステムに変えるのに最適な動機であることが判明しました。

マルチパーティ計算(MPC)、完全準同型暗号化(FHE)、および区別不能難読化(iO)がZKと同じ道をたどり、時間の経過とともにより実用的で最適化され、汎用的になるという保証はありません。 しかし、この初期段階では、それは確かに可能です。

プログラム可能な暗号を、特定の特性と保証を可能にする特定の仮定に基づいて構築されたデジタルコンピュータの一種と考えると、私たちはまだハードウェアの段階にあります。 私たちは、この新しいコンピュータのための論理ゲートや回路を構築するための最良の方法を、今も積極的に模索しています。

比較的直感的な比較

プログラム可能な暗号の一般的な状況をよりよく理解するために、まず、MPC、FHE、および IO が ZK に対して、また互いにどのような位置にあるかを非常に大まかに近似することから始めましょう。 このセクションと、その後のすべてのセクションでは、ニュアンス、精度、形式をトレードオフして、シンプルさとアクセシビリティを優先します。

暗号化について推論する最も簡単な方法は、どの情報が隠されているか、または秘密にされているかということです。 そして、システムが証明または明らかにするもの。

また、これらの各システムは、架空の共通の友人の代役と考えることもできます。 ウィキペディアでは、この友人を「トニー」と呼んでいます。 トニーは無謬で、清廉潔白で、完全に信頼できます。 トニーの仕事は秘密を守ることです。 以下の表では、「プライベート要素」は Tony が保持できる秘密、「ユースケース」は Tony がそれなりにうまく実行できるタスク、「実用性」は Tony がこれらのタスクをどれだけ巧みに実行できるかと考えてください。

上記の表は、プログラム可能な暗号化のさまざまな領域の大まかなアイデアを提供することを目的としています。 それでは、もう少し深く掘り下げて、MPC、FHE、およびiOが何をしているのかを、各分野に関する興味深い情報とともに確認しましょう。

マルチパーティ計算 (MPC)

マルチパーティ計算(MPC)を使用すると、多くの関係者が、他の参加者にデータを公開することなく、合意された関数を共同で計算できます。 MPCでは、全員のデータに同じ計算が適用されますが、各当事者の入力は秘密にされます。 中間値も秘密のままです。 最後に出力のみが表示されます。

ZKとは対照的に、MPCは協力的です。 これにより、異なる関係者が同じ計算で協力し、それぞれが独自のデータを提供して、全員が望む相互の結果を得ることができます。

ZKとMPCをAIシステムのコンテキストで比較すると、より多くのコンテキストを得ることができます。 ZKは、実在の人物または人の電話からのデータを認証または検証するのに適しています。 MPCは、さまざまな個人、グループ、または組織が機密データをAIシステムと共有できても、データが他の人に公開されないことを信頼できるため、AIシステムのトレーニングに適しています。

億万長者の問題

MPCは、1982年にアンドリュー・ヤオによって、2人の億万長者がお互いにどれだけのお金を持っているかを言わずにどちらが金持ちかを知りたいという「億万長者の問題」と呼ばれる思考実験を解決するために考えられました。 解決策は、文字化けした回路を使用することでしたが、暗号の概念を頻繁に説明しているVitalik Buterin氏によると、これはMPCを理解するための最も基本的な方法の1つでもあります。

[文字化け回路について学ぶ前に、演算回路が一般的に何であるかを知る必要があります。 回路の概念に馴染みのない方のために、ここに簡単な説明があります。

MPCは、億万長者#1(アリス・ザ・ガーブラー)が最初に回路を作成し、純資産を入力し、それを文字化けまたは暗号化された形式に変換してから、億万長者#2(ボブ・ザ・エバリュエーター)に渡す必要がある、多段階のインタラクティブなプロセスです。 ボブがサーキットを手に入れたとき、彼の仕事は彼自身の純資産を追加し、サーキットを評価または実行してそれが正しいことを確認することです。 最後に、ボブは最終出力を復号化し、たとえば、アリスの方が金持ちであることを知るが、実際にはアリスの方がずっと金持ちであることを知ることはなく、仮定をすべきではなかった。

ミリオネアの問題と解決策としての文字化け回路は、MPCの初期の開発に不可欠でした。 しかし、その用途は限られていました。 「社会主義億万長者問題」と呼ばれる、より複雑で微妙な問題では、2人の億万長者が同等に金持ちかどうかをチェックし、どちらがより多くのお金を持っているかを明らかにするものではありませんでした。 この微妙な違いにより、MPCの機能が大幅に拡張されましたが、この記事の範囲を超えて、より複雑な暗号化ソリューションと手法が必要でした。

完全準同型暗号(FHE)

完全準同型暗号化 (FHE) により、暗号化されたデータの計算が可能になります。 暗号化されたデータに対して、暗号化されていないかのように機能を実行できます。 関数の出力は、秘密鍵を持つパーティによってのみ復号化されます。 暗号化を秘密を隠すブラックボックスと考えると、FHEはデータとそのデータに対する計算がそのブラックボックス内にとどまることを保証します。

MPCの億万長者問題のような有名な思考実験はありませんが、FHEは「データを処理する前に復号化する必要がある」という根本的なセキュリティ上の弱点を解決しています。

https://www.zama.ai/post/the-revolution-of-fhe

AIのコンテキストでは、FHEはユーザー(秘密鍵保持者)とAIシステム間のすべてのデータを暗号化します。 ユーザーは通常どおりシステムと対話しますが、ユーザーは、AIが与えられたデータについて何も「学習」していないと確信できます。 インタラクション全体が暗号化されます。 AIは、あなたが何を入力したり尋ねたりしたか、どの写真を送ったか、誰が送信したかを学習することはありませんが、あたかも情報を知っているかのように応答することができます。

これがうまくいけば、FHEは最も強力なプライバシー保護技術の1つになります。 そして、誰が知っていますか? 10年後には、FHE-EVMが登場するかもしれません。

騒音管理

MPCやZKと比較すると、FHEは現時点では、より理論的であるか、実用的ではありません。 この技術が実現可能と考えられたのは、2009年にCraig Gentryがノイズの対処法を考案したときでした。

FHE操作は、セキュリティを強化するために暗号化プロセス中に「ノイズ」が追加されるため、計算量が非常に多くなります。 FHEのノイズは、平文(暗号化されていないデータ)が暗号文(暗号化されたデータ)に変換される前に、平文(暗号化されていないデータ)に追加される小さなランダム値です。 操作のたびにノイズが増加します。 加算演算と減算演算ではノイズの増大はごくわずかですが、乗算は計算コストが高くなるため、ノイズの増大が大きくなります。 そのため、プログラムの複雑さが増すにつれて、ノイズ(ノイズを収容するために必要なスペースとノイズを処理するために必要な計算リソース)が蓄積されます。

ジェントリーのブレークスルーは、ブートストラップと呼ばれる技術で、ノイズを減らし、FHEシステムで暗号化されたデータに対してより多くの計算を可能にすることができました。 ブートストラップは、暗号文を取得して準同型で復号化するため、暗号化されたデータのノイズレベルを下げて、それが何であるかを実際に明らかにすることはありません。 その結果、事前に定義されたノイズがはるかに少ない暗号文が得られるため、暗号文をさらに計算することができます。 一般に、ブートストラップにより、計算の複雑さが増すにつれてノイズが増加する余地を増やす必要性を回避できます。 スペースをいくつかの操作に制限し、繰り返しブートストラップして、元のデータを損なうことなく任意の大きな計算を計算することができます。

FHEスキームに応じて、ブートストラップには数分または数ミリ秒かかる場合があります。 ブートストラップが遅い場合は、一度に複数の暗号文に適用することで計算コストを分散できます。 ブートストラップの方が速い場合、通常、効率を維持するために一度に小さなプレーンテキスト(通常は8ビット)のみを処理するというトレードオフが伴います。

識別不能な難読化 (iO)

FHEが計算のすべての要素をブラックボックスに変えると、iOは計算自体をブラックボックスに変えます。

識別不能難読化(iO)は、理論的可能性の領域内で最も強力な暗号システムと見なされています。 ある記事では、iOは「他のほとんどすべての暗号プロトコルを構築できるマスターツール」と説明されており、暗号の専門家は「王冠の宝石」および「それらすべてを支配する1つの暗号プリミティブ」と呼んでいます。

ZK証明を子供に説明することで知られる教授であり、十分に根拠のある仮定に基づいてiOを構築する方法を考案した研究者の1人であるAmit Sahai氏によると、iOは以前の暗号システムとは根本的に異なるパラダイムで機能します。 IOは、敵対者がすでにあなたの心を読むことができると想定しています(コンピューターの比喩)。 あなたの秘密はすでに知られているので、隠すことはできません。 唯一できることは、敵対者がすでに見ているものを難読化することです。

https://youtu.be/v2RR_c5hn1E

iO のポイントは、2 つの関数または計算を等しく不明瞭にすることです。 2 つの計算を互いに区別できない形式に変換すると、プログラムの動作を隠すことができます。 2つのプログラムの違いがわからない場合、2つのプログラムのどちらが実行されているのかがわからず、どちらも同じ機能を実行するという以外の情報を推測することはできません。 どちらのプログラムも同じ入力を受け取り、同じ出力を生成しますが、iOはそれを作るので、誰もその方法を理解できません。

iOを使用すると、暗号化を構成するほぼすべての関数を含む、あらゆる種類の関数の構造を隠すことができます。 言い換えれば、ほとんどすべてのものを不明瞭にすることで、他のプリミティブをプログラムできる最も汎用的なプログラム可能な暗号化に到達します。

技術的には、iOよりも大きなブラックボックスがあります。 これは文字通り、ブラックボックスの難読化と呼ばれます。 しかし、それはまだ不可能です。

十分に根拠のある仮定

2013年にGarg、Gentry、Halevi、Raykova、Sahai、Watersによって多重線形写像が提案されるまで、誰もiOの構築方法を知らなかった。 コンピュータプログラムは、パズルのピースのように分解し、多重線形マップを使用して隠すことができます。 不明瞭な部分は、内部の仕組みを明らかにすることなく、元のプログラムと同じ機能を実現するために再構成することができます。

多重線形マップは、楕円曲線暗号 (ECC) で使用される双一次マップまたはペアの一般化です。 双線形写像はBLS署名のような既存の暗号方式の基礎となるものですが、iOには複雑でなく、表現力も十分ではありません。 また、多重線形写像は iO を扱うことができますが、この新しく開発された代数的構造は簡単に攻撃でき、安全ではなかったため、多重線形写像に頼ることは一般的に暗号学者にとって満足のいくものではありませんでした。 フィールドは再び立ち往生しました。

そして2020年、Jain氏、Lin氏、Sahai氏は、珍しく新しいものの、暗号学者が推論できるほど単純であり、多重線形写像のような新しく開発された仮定に頼るのではなく、このバージョンのiOは、Learning with Errors(LWE)など、何十年にもわたって研究されてきた、より標準的で根拠のある仮定に基づいて構築できるソリューションを提案しました。 この最新のブレークスルーにより、iOは再び実現可能になりました。 聖杯はまだ手の届くところにあった。

手つかずの荒野

各暗号化システムは、さまざまな数学的仮定と暗号化技術で構成されています。 1つのブレークスルーでシステム内のすべての問題を解決できるわけではありません。 その代わり、発見は予測不可能な小さな一歩と大きな飛躍の連続をたどり、既存の仮定や手法を変え、それがさらなるブレークスルーや発見につながります。 そして、うまくいった発見のたびに、さらに多くの発見がうまくいきませんでした。

iOに関するプレゼンテーションで、Sahai氏はこの分野を「手つかずの荒野」と表現し、何が理解されていないのか、解決すべき正しい問題は何かさえも明確ではありませんでした。

PSEのようなチームは、主にプログラム可能な暗号の実用的または応用的な側面に取り組んでおり、実戦でテストされ、比較的最適化され、安全で効果的であると考えられている十分に根拠のある仮定を持つZKやMPCなどのプリミティブに焦点を当てています。 最適化の余地はたくさん残っていますが、ZKは今や実用性の領域にしっかりと収まっています。 しかし、ZKが未開の荒野に閉じ込められていた時期もありました。

プライバシー保護、セキュリティ保証、クレーム検証、暗号化対応ツールの数を世界が最大限に活用するには、10年後に何が実用的になるかは誰にも予測できないため、少なくとも、来るべきことの地平線に目を細めておく必要があります。

Sahai氏のプレゼンテーションには、2003年にNature誌に掲載されたSteven Weinberg氏の論文「Four Golden Lessons」からの引用が含まれており、現在非現実的である課題に取り組むもう一つの理由が強調されている。

「1960年代後半にマサチューセッツ工科大学で教鞭をとっていたとき、ある学生が、私が取り組んでいる素粒子物理学の原理はよく知られていたが、後者はめちゃくちゃに見えたので、一般相対性理論の分野に行きたいと言いました。 彼は正反対のことをする完璧な理由を与えたのだと私は思いました...私からのアドバイスは、混乱を覚悟すること、それがアクションの正体です」

プログラマブル暗号は、2023年11月16日と17日にトルコのイスタンブールで開催される2日間のイベント「Programmable Cryptography Conference」の共催者であるPSEや0xPARCなど、さまざまなチームによって探求されています。

挨拶に来てください!

または、DiscordでPSEをオンラインで見つけてください。

免責事項:

  1. この記事は [Privacy and Scaling Explorations] からの転載です。 すべての著作権は原著作者[kichong]に帰属します。 この転載に異議がある場合は、 Gate Learn チームに連絡していただければ、迅速に対応いたします。
  2. 免責事項:この記事で表明された見解や意見は、著者のものであり、投資アドバイスを構成するものではありません。
  3. 記事の他言語への翻訳は、Gate Learnチームによって行われます。 特に明記されていない限り、翻訳された記事を複製、配布、盗用することは禁止されています。
Mulai Sekarang
Daftar dan dapatkan Voucher
$100
!