この記事は 勝手に秘密計算アドベントカレンダー の12日目の記事です.
下記の論文の解説をメインに行なっていきます.
記事全体として,全4部作を予定しています.
第1回:RLWE による定数サイズの暗号文を持つ Leveled Multikey FHE①
第2回:RLWE による定数サイズの暗号文を持つ Leveled Multikey FHE②
第3回:RLWE による定数サイズの暗号文を持つ Leveled Multikey FHE③
今回(第4回)は
- 提案方式
- 誤差評価
の2本立てで書いていきます.
突貫で書いてしまった部分もあるので,大いに誤りを含む可能性があります.誤字・脱字レベルでも構いませんので,ご指摘ください.
また,予告なしに内容の加筆や構成の変更を行うことがありますが,読みやすくするためのものですので,ご容赦ください
提案方式
ここは今までのまとめ,ということになります.特別解説しないといけないこともありません.
誤差評価
最後に各場面での誤差評価を行います,実際に実装しようと思ったら,各パラメタを次の条件を満たすように設計すればOKということになります.
特に最後の定理の $\displaystyle N^{L + 1} \gamma_R^{2 L - 2} B^L E^{L - 1} (d + 32 \gamma_R^3 B E) < \frac{q}{2^{4 L - 1}}$ を満たしてくれれば,relinearzation を考慮した上で暗号文を $L$ 回掛け算しても復号できます(各パラメタの意味は,ステートメントを参照してください).
暗号文での誤差
すでに一度やっていますが,振り返る意味で(っていうか議論の都合上)もう一度やってみます.
暗号文の足し算での誤差
ほとんど前の議論と同じです.
$L$ を正整数として,暗号文を $2^L$ 回足したときに,また暗号文空間内で定義される誤差を考察します.
$L = 0$ の場合を許容すると,暗号文を0回足す場合,というのは,前節の「暗号文での誤差」に相当します.実際,$2^{0 + 2} = 4$ ですので,前節での条件を満たしています.
暗号文の掛け算での誤差(relinearization を考慮しない場合)
原論文と比較して,全く仮定が足りず議論として破綻している上に,原論文でもかなり読みづらい大問題パート
原論文と比較してかなりリメイクしてすっきりした議論にしています(ここに3週間ぐらいかかった())
まずはLPR方式から
続いてLMFV方式ですが,秘密鍵の部分が変更されるだけなので,そんなに難しくはないです.
そして,relinearization に関する誤差について評価します.
暗号文の掛け算での誤差(relinearization を考慮する場合)
最後に relinearization での誤差も考慮した場合の誤差を考察します.基本的に,relinearization を考慮しなかったときの誤差に,relinearization に関する誤差を足し上げればOKです.
なんですが,原論文だと,近似を使っていて,上からの評価と下からの評価が混在していてすごく嫌だったので,必要条件という形で上からの評価に絞っています.
さて,今回で
の解説記事の連載が終了しました.最後この記事だけで1ヶ月ぐらいかかってしまいましたが,正直なところそれだけ読みづらい論文だと思います.
引用されている論文の仮定を明示しなかったり(そもそも引用先の論文も読みづらい・・・),そこそこ誤植もあるので,少し大変だったように思えます.
ですが,これで multikey による準同型暗号も大筋はだいぶ分かりました.確かにこれをTFHEに応用するというのは自然な発想かなと思います.
今後もこのような論文解説の記事を少しずつ書いていこうと考えています!
今回の内容はここまでです.ここまでご覧になってくださった方々ありがとうございます!