単純な例でラティス暗号を学ぶ
【 単純な例でラティス暗号を学ぶ 】
このセッションでは、前回に続いて、具体的なサンプルでラティス暗号 Learning with Errors (LWE) を学んでいきます。
今回のサンプルは、次の点で、前回のサンプルと異なっています。
1. 整数Zではなく 整数の剰余類Z_qを使っています。言葉を聞くと難しそうですが、そうではありません。無限の要素を持つ整数に代えて、整数を整数qで割った余り {0, 1, 2, ... , q-1 } だけを使います。
例えば、剰余類 Z_97 を使うということは、0から96までの整数しか使わないと言うことです。剰余類 Z_qを使った今回のサンプルでは、サンプルに出てくる数字は、ずっとコンパクトになります。
2. 公開キーのリストBが、秘密キーs と小さな数字e_i についてB_i = A_i ・ s + e_i の形の要素から構成されているのは前回と同じです。ただ、Bに加えて、A_i からなるリストAも公開キーに加えています。二つのリスト(A,B)のペアが公開キーになります。
3. 公開キーの一部をサンプリングしてその和をエンコードに使うのは前回と同じです。ただ、エンコードの仕方は、少し異なります。
4. エンコードの仕方が変わりましたので、デコードの仕方も、前回とは異なっています。
今回のサンプルは、データの構造は単純ですが、行っている処理は、本物のLWEとほとんど同じものです。
-------------------
動画「単純な例で学ぶ LWE (2)」を公開しました。ご利用ください。https://youtu.be/DlO6JVwt27k?list=PLQIrJ0f9gMcPtw-6OwIOO2rFKu_A-7OfF
この動画のpdf は、こちらからアクセスできます。https://drive.google.com/file/d/19xEzMve4vodOukBcZd-Jbxpbs1EBeVOq/view?usp=sharing
「ラティス暗号入門」のまとめページはこちらです。https://www.marulabo.net/docs/cipher3/
blog 「単純な例でラティス暗号を学ぶ 」のURLはこちらです。https://maruyama097.blogspot.com/2022/09/blog-post_10.html
コメント
コメントを投稿