Robust and Secure Code Watermarking for Large Language Models via ML/Crypto Codesign
本論文は、CodeT5を用いたエンドツーエンドの学習とゼロ知識証明を活用することで、LLMが生成したコードに堅牢で機能的かつプライバシーを保護するウォーターマークを埋め込み、低エントロピーと安全な検証の課題を効果的に解決する、新しいML/暗号設計共設計フレームワークであるRoSeMaryを導入するものである。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
コンピュータが単に私たちとチャットするだけでなく、私たちのデジタルライフの設計図を実際に書き上げる世界を想像してみてください。これは、プロンプトを読み取るだけでソフトウェアの関数を生成し、バグを修正し、プログラム全体を構築できる超スマートなAIアシスタント、コード用大規模言語モデル(LLM)の領域です。しかし、ここに落とし穴があります。これらのAIがコードを書くとき、誰が本当にそれを所有しているのかを判断するのが非常に難しい場合が多いのです。それは人間のエンジニアが書いたのか、それともAIが書いたのか?もしAIが書いたのだとしたら、どの会社のAIなのか?これは大きな問題です。なぜなら、コードは秘密のレシピや特許取得済みの発明のように、価値のある知的財産だからです。
これを解決するために、科学者たちはAIコードに「ウォーターマーク(電子透かし)」を入れようと試みてきました。これは、デジタル上の目に見えないインクや、紙幣に隠された透かしのようなものだと考えてください。コードの動作を変えることなく、「ほら、このコードは私のAIによって作られました」と証明したいのです。しかし、厄介な問題があります。コードは非常に厳格であるということです。物語の中で言葉を類義語に入れ替えることができるのとは違い、コードは実行するために厳格なルールに従わなければなりません。秘密のメッセージを隠すために変更を加えすぎると、プログラムが壊れてしまいます。さらに、裁判所で所有権を証明するには、通常、秘密の鍵(ウォーターマーク)を裁判官に見せる必要があります。しかし、もし鍵を見せてしまうと、悪党がそれを盗み、後で自分たちの偽のウォーターマークを捏造できてしまいます。これは、ルール自体が、何かを失うことなく勝利することをほぼ不可能にしている、「かくれんぼ」のフラストレーションの溜まるゲームです。
ここで、RoSeMaryと呼ばれる新しいフレームワークが登場します。これは、鍵を一度も見せることなく、鍵のかかった箱の中に秘密のメッセージを隠すことができる、巧妙な手品師のように振る舞います。研究者チーム(カリフォルニア大学サンディエゴ校およびサンディエゴ州立大学のチーム)は、機械学習(AIの部分)と暗号学(秘密の数学の部分)を組み合わせたシステムを設計しました。彼らは、AIが生成したコードの中に、取り除くのが困難な隠れた署名を埋め込む方法を見出しました。しかも、コードを完璧に動作させたまま、そして最も重要なことに、実際の秘密の署名を見せることなく、裁判官が所有権を検証できるようにしました。
RoSeMaryがどのようにこの手品を成功させているのか、その仕組みを説明します。まず、それはCodeT5と呼ばれる事前学習済みのAIモデルを使用します。これは、何百万ものレシピを味わってきたマスターシェフのようなものです。単にランダムにコードを変更するのではなく、このシェフはコードの「風味」を理解しています。このシェフは、元のコードと秘密のメッセージ(ウォーターマーク)を受け取り、変数の名前を x から item に変更したり、while ループを for ループに変更したりといった、コードをわずかに微調整する最善の方法を決定します。これにより、秘密のメッセージがこれらの小さな変化の中に隠されます。シェフは料理のルール(プログラミング)を知っているため、秘密の材料が加えられても、コードの味(動作)は全く同じままなのです。
しかし、本当の魔法は、コードの真正性をチェックする時に起こります。通常、あなたは秘密のレシピを裁判官に渡さなければなりません。RoSeMaryは、**ゼロ知識証明(ZKP)**と呼ばれる暗号技術ツールを使用します。これは、友人に金庫のダイヤルを知っていることを証明したいけれど、番号自体は教えたくない、という状況を想像してください。あなたは目の前で金庫を開け、中の宝物を見せ、そして再び閉めることができます。友人は、あなたがダイヤルを知っていることは分かりますが、番号自体を見ることはありません。RoSeMaryも同様のことを行います。AIの所有者は、隠された署名があるかどうかをチェックする複雑な数学回路を実行します。そして、「はい、この署名は有効です」という、実際の署名が何であるかを明かさない小さなデジタルの「証明」を生成します。
チームは、Python、Java、C++などの言語を用いた数千のコード例でこのシステムをテストしました。その結果、RoSeMaryは極めて優秀な仕事を行うことが分かりました。コードが正常に動作するケースにおいて、97.64%の割合でウォーターマークを隠すことに成功し(つまり、コードは完璧に機能しました)、検出精度は0.97(1.0が完璧)というスコアを記録しました。悪意のある者が変数の名前を変更したり、他のAIを使ってコードを書き換えたりしてウォーターマークを破壊しようとしても、RoSeMaryは**98%**の確率で隠されたメッセージを見つけ出しました。
おそらく最も印象的な部分は、その速度とプライバシーです。このシステムは、約7.15秒で所有権の証明を生成でき、裁判官はその証明をわずか118.6ミリ秒(まばたきよりも短い時間)で検証できます。決定的なのは、このプロセス全体を通じて、裁判官は実際の秘密のウォーターマークを見ることがないということです。これにより、所有者は、鍵を盗まれて偽の所有権を捏造される心配をすることなく、同じウォーターマークを何度も繰り返し使用することができます。
要約すると、RoSeMaryは、研究者たちを長年悩ませてきた三方向の綱引きを解決します。コードを機能させ続け(忠実性)、ウォーターマークを見つけやすくし(検出可能性)、かつ壊れにくく(堅牢性)しながら、秘密の鍵を詮索の目から守り抜きます。これは、AI革命における知的財産を保護するための重要な一歩であり、AIが傑作を書き上げたとき、そのアーティストが受けるべき正当なクレジットと保護を保証するものなのです。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。