Homomorphic暗号に関する追加の入門資料は、Homomorphic Encryption Wikipediaページで見ることができます。
basics of homomorphic encryption
Fully homomorphic encryption または単に homomorphic encryption は、Rivest、Adleman、Dertouzos によって 1978 年にすでに考案され、2009 年に Craig Gentry が初めて構築した暗号化手法の一群を指します。 同相暗号は、一般的な暗号化方式とは異なり、秘密鍵にアクセスすることなく、暗号化されたデータに対して直接計算を行うことができる。 このような計算の結果は暗号化された形で残り、後の時点で秘密鍵の所有者が明らかにすることができます。
applications
安価なクラウドコンピューティングとクラウドストレージは、企業や個人のデータの使用および管理方法を根本的に変えています。 AES などの従来の暗号化方式は非常に高速で、データを暗号化して便利に保存することができます。 しかし、暗号化されたデータに対して簡単な分析を行うにも、クラウドサーバーが秘密鍵にアクセスする必要があり、セキュリティ上の懸念があるほか、データの所有者がローカルにデータをダウンロード、復号、操作する必要があり、コストやロジスティック上の問題があります。 ホモモルフィック暗号を使えば、クラウドが暗号化されたデータを直接操作し、暗号化された結果のみをデータの所有者に返すことができるため、このシナリオを大幅に簡素化することができます。 より複雑なアプリケーションシナリオでは、サードパーティが操作できるプライベートデータを持つ複数のパーティが関与し、その結果を1人以上の参加者に返して復号化することが可能です。
毎年のiDASHコンテストでは、限界を押し広げ、ゲノムプライバシー分野における新しいユースケースに同形式の暗号化を拡張するよう研究コミュニティに求めています。
セキュリティ
最も実用的なホモモルフィック暗号化方式のセキュリティは、高次元格子に関する難しい数学的問題であるRLWE(Ring-Learning With Errors)問題に基づくものである。 すなわち、これらの暗号化方式の安全性の前提は、もしその方式が効率的に破ることができれば、RLWE問題を効率的に解くことができるというものである。 RLWE問題の硬さを確認する長い査読付き研究のラインは、これらのスキームが実際に少なくとも標準的な暗号化スキームと同じくらい安全であるという確信を与えてくれます。
上述のように、RLWE問題は、現在量子コンピュータに対して安全と考えられている有名な硬格子問題に密接に関連しています。 同様に、RLWEとそれに続くほとんどの同型暗号化方式は、量子コンピュータに対して安全であると考えられており、実際、RSAや多くの楕円曲線暗号のような因数分解や離散対数ベースのシステムよりも安全です。 実際、NIST が組織したポスト量子暗号標準化プロジェクトでは、現代のホモモルフィック暗号が使用しているものと同様のハード ラティス問題に基づくいくつかの提出物がありました。
標準化
今こそホモモルフィック暗号の標準化にふさわしいと我々が考えるのには、いくつかの理由があります。 ホモモルフィック暗号化はすでにメインストリームで使用する準備が整っていますが、現在の標準化の欠如により、使い始めることが困難になっています。
availability
現在、いくつかのオープンソースの同相暗号化方式の実装が存在します。 以下は不完全なリストです。 もしあなたの実装が追加されるのを見たいなら、 [email protected] に連絡してください。
- Microsoft SEAL: BFV と CKKS スキームをサポートする Microsoft による広く使われているオープンソースライブラリです。
- PALISADE: DARPA が資金提供する防衛関連企業のコンソーシアムによる広く使われているオープンソースライブラリで、BGV、BFV、CKKS、TFHE、FHEW などの複数の同型暗号化スキームをマルチパーティでサポート。
- HELib: DARPA が資金提供するオープンソースライブラリ。 CKKSとBGV方式とブートストラップをサポートするIBMの初期の広く使われているライブラリ。
- FHEW / TFHE: TFHE方式をサポートする。 TFHEはFHEWから設計されたが、現在では活発に開発されていない。
- HeaAn: このライブラリは CKKS スキームを実装し、固定小数点近似演算をネイティブにサポートしています。
- Λ ○ λ (L O L と発音します): FHE をサポートするリングベース格子暗号の Haskell ライブラリです。
- NFLlib: 低レベルのプロセッサプリミティブを用いた高性能な同型暗号を探求するヨーロッパのHEATプロジェクトから生まれたライブラリです。
- HEAT: FV-NFLlibとHeLIBを橋渡しするAPIを中心としたライブラリです。
- HEAT: FV-NFLlib 用HWアクセラレータ実装です。
- cuHE: GPGPU を使って同型暗号を加速するライブラリです。
- Lattigo: Go で書かれた格子ベースの暗号ライブラリです。
- Concrete: TFHE スキームのカスタムバリエーションをサポートします。