LoginSignup
0
0

More than 1 year has passed since last update.

BFV, CKKS, TFHE って何が違うんですか?②

Last updated at Posted at 2022-06-22

って聞かれたときに答えられなかったので,これを機に整理してみます.

この記事は 勝手に秘密計算アドベントカレンダー の8日目の記事です.

下記の論文の解説をメインに行なっていきます.

P.-E. Clet, O. Stan, and M. Zuber: "BFV, CKKS, TFHE: Which One is the Best for a Secure Neural Network Evaluation in the Cloud?", In: International Conference on Applied Cryptography and Network Security. Springer, Cham, 2021. p. 279-300.

記事全体として,全3部作を予定しています.

第1回:BFV, CKKS, TFHE って何が違うんですか?①

今回(第2回)は

  • 論文の背景やアブスト
  • 関連研究
  • 前提知識

の3本立てで書いていきます(実は新しく解説することがほとんどない).

突貫で書いてしまった部分もあるので,大いに誤りを含む可能性があります.誤字・脱字レベルでも構いませんので,ご指摘ください.
また,予告なしに内容の加筆や構成の変更を行うことがありますが,読みやすくするためのものですので,ご容赦ください

論文の背景やアブスト

  • どういう背景や課題・モチベーションがあって,
  • どのようなアイディアのもとで,
  • どのような結果が得られたのか

を整理します.

背景・課題
格子暗号ベースの準同型暗号で有名な方式として,BFV, CKKS, TFHE の3つがある.
これらの方式が,neural network のどのような場面で有用なのかを検証する.

アイディア
SEAL と TFHE(公式のやつ)を使って,インスタンスは固定した場合の実行速度とメモリなどを比較した

結果
TFHEが良さげ(的に読めたんですが,読み進めて違いそうなら修正します)
*それぞれがどの場面で優れているかもまとまっている(ように見える)ので,それもわかったら追記します

それらを元に各章を整理すると,次のようになります:

1章:イントロ
2章:関連研究
3章:前提知識(準同型暗号メイン)
4章:準同型暗号の neural network への応用(実装方針とか使うライブラリとか)
5章:結果
6章:まとめ

つまり,2・3・4章が「準備段階」で,5章が一番言いたいことになります.

関連研究

新しくここであまり解説することがありません(説明放棄).

この辺の話は,秘密計算エンジニアを始めて1年が経った。 がよくまとまっているので,そちらを参照してください.

2.4 では BFV-TFHE というキメラ方式について触れられていますが,こちらは 秘密計算エンジニアを始めて2年半が経った。 を参照してください.

前提知識

準同型暗号には Leveled(演算回数が制限されている)と Fully(演算回数に制限がない)などのタイプがあり,格子暗号ベースの準同型暗号には BFV, CKKS, TFHE などの方式があります.
これらそれぞれの方式の中身は前回見ました・・・ということで3.4まで終わり.

3.5 Batching
BFV, CKKS には Batching と呼ばれる手法を使います.
これは,1つの暗号文に複数の暗号化された平文を乗せることで,SIMD演算を可能とする手法のことです.
*参照:Cheon, J., Kim, A., Kim, M., Song, Y.: "Homomorphic encryption for arithmetic of approximate numbers", In: International Conference on the Theory and Application of Cryptology and Information Security. pp. 409–437 (11 2017).

SIMD 演算ができるようになると,neural network を高速に動かせるようになります.


今回の内容はここまでです.ここまでご覧になってくださった方々ありがとうございます!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0