JP2024063125A - プライベート情報検索に応用される準同型暗号化方法 - Google Patents

プライベート情報検索に応用される準同型暗号化方法 Download PDF

Info

Publication number
JP2024063125A
JP2024063125A JP2024029851A JP2024029851A JP2024063125A JP 2024063125 A JP2024063125 A JP 2024063125A JP 2024029851 A JP2024029851 A JP 2024029851A JP 2024029851 A JP2024029851 A JP 2024029851A JP 2024063125 A JP2024063125 A JP 2024063125A
Authority
JP
Japan
Prior art keywords
matrix
plaintext
ciphertext
computer system
compressed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2024029851A
Other languages
English (en)
Inventor
ジェントリー、クレイグ、ブロードウェル
ハレヴィ、シャイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2024063125A publication Critical patent/JP2024063125A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Algebra (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Non-Silver Salt Photosensitive Materials And Non-Silver Salt Photography (AREA)

Abstract

【課題】プライベート情報検索に応用される準同型暗号化方法を提供する。【解決手段】暗号化された通信方法は、クライアントが、公開鍵(pk)をサーバに送信し、サーバが公開鍵を受信する。クライアントは、特に、ガジェット行列又はその変形の使用を含んでいる(F)HE暗号化方式70の鍵を使用して、データを暗号化する。クライアントが、暗号化データをサーバに送信し、サーバが暗号化データを受信する。サーバは、このデータを暗号文としてデータベース28に格納する。方法はさらに、クライアントが、暗号化された要求及びサーバに格納されている情報に関する照会を生成し、要求及び照会が、(F)HE方式によって暗号化される。照会は回路として実現され、クライアントが要求及び照会をサーバに送信し、サーバがそれらの要求及び照会を受信する。【選択図】図1

Description

本発明は、一般に、準同型暗号化(HE:homomorphic encryption)に関連しており、より詳細には、プライベート情報検索(PIR:private information retrieval)に応用される圧縮可能な準同型暗号化および完全準同型暗号化(FHE:fully homomorphic encryption)に関連している。
準同型暗号化は、暗号文(暗号化された平文)に対する計算を可能にする暗号化の形態であり、復号されたときに、動作が平文に対して実行されたかのような動作の結果に一致する、暗号化された結果を生成する。それらの動作は、通常、回路によって定義されていると見なされる。さまざまな種類のHEが存在するが、完全準同型暗号化(FHE)のみが、無制限の深さの任意の回路の評価を可能にする。
FHE(およびある程度、他の種類のHE)は、サービス・プロバイダが、結果または結果を導き出すために使用された格納された情報を復号することができずに、暗号化データに対して動作を実行し、ユーザからの照会に対して暗号化された結果を決定できるようにする。これには、特に、医療などの匿名性が重要である領域において、幅広い応用が存在する。
したがって、FHEの1つの応用は、プライベート情報検索(PIR)である。PIRは、ユーザが、どの項目が取り出されているかを明らかにすることなく、ユーザの個人情報の項目を、(例えば、健康管理情報を含む)データベースを保有しているサーバから取り出すことを可能にする。PIRを実現するための1つの(例えば、自明な)方法は、サーバがデータベースのコピー全体をユーザに送信することである。この方法は、最新の通信システムを使用し、妥当な大きさのデータベースのための膨大な量のデータを必要とする。
FHEは、ユーザの照会が暗号化されており、サービス・プロバイダが、結果の内容またはどの項目が取り出されたかを知ることがないため、PIRに役立つ。しかし、現在のFHE技術は、計算コストが高く、妥当な大きさのデータベースには非実用的である。
一実施形態例では、第1のコンピュータ・システムで、第2のコンピュータ・システムから、第1のコンピュータ・システム上のデータベース内のデータを使用して決定される特定の情報に対する要求を受信することを含む方法が開示され、第1のコンピュータ・システムが、暗号化データまたは暗号化された要求を復号するための復号鍵を持っておらず、少なくともデータの一部が暗号化されているか、または要求が暗号化されている。この方法は、第1のコンピュータ・システムによって、圧縮可能な準同型暗号化動作をデータベース内のデータに対して実行し、データベース内の特定の情報に対応する1つまたは複数の圧縮された暗号文を決定することを含み、圧縮可能な準同型暗号化動作は、第1の非圧縮準同型暗号方式(uncompressed homomorphic encryption scheme)および第2の圧縮準同型暗号方式(compressed homomorphic encryption scheme)を使用する。
圧縮可能な準同型暗号化動作を実行することは、第1の準同型暗号方式をデータに対して使用して、他の複数の暗号文を作成することと、第2の準同型暗号方式を他の複数の暗号文に対して使用して、他の複数の暗号文を、圧縮されたより少ない暗号文に圧縮することとを含み、第1および第2の準同型暗号方式は、両方とも同じ秘密鍵を使用する。この方法は、第1のコンピュータ・システムによって、第2のコンピュータ・システムに、要求に対する応答を送信することをさらに含み、この応答は、要求された特定の情報に対応する1つまたは複数の圧縮された暗号文を含む。
例示的な装置は、1つまたは複数のプロセッサと、コンピュータ・プログラム・コードを含む1つまたは複数のメモリとを含む。1つまたは複数のメモリおよびコンピュータ・プログラム・コードは、1つまたは複数のプロセッサと共に、装置に、第1のコンピュータ・システムで、第2のコンピュータ・システムから、第1のコンピュータ・システム上のデータベース内のデータを使用して決定される特定の情報に対する要求を受信することであって、第1のコンピュータ・システムが、暗号化データまたは暗号化された要求を復号するための復号鍵を持っておらず、少なくともデータの一部が暗号化されているか、または要求が暗号化されている、受信することと、第1のコンピュータ・システムによって、圧縮可能な準同型暗号化動作をデータベース内のデータに対して実行し、データベース内の特定の情報に対応する1つまたは複数の圧縮された暗号文を決定することであって、圧縮可能な準同型暗号化動作が、第1の非圧縮準同型暗号方式および第2の圧縮準同型暗号方式を使用し、圧縮可能な準同型暗号化動作を実行することが、第1の準同型暗号方式をデータに対して使用して、他の複数の暗号文を作成することと、第2の準同型暗号方式を他の複数の暗号文に対して使用して、他の複数の暗号文を、圧縮されたより少ない暗号文に圧縮することとを含み、第1および第2の準同型暗号方式が、両方とも同じ秘密鍵を使用する、決定することと、第1のコンピュータ・システムによって、第2のコンピュータ・システムに、要求に対する応答を送信することであって、この応答が、要求された特定の情報に対応する1つまたは複数の圧縮された暗号文を含む、送信することとを含む動作を実行させるように構成される。
さらに別の実施形態例は、プログラム命令が具現化されているコンピュータ可読ストレージ媒体を備えているコンピュータ・プログラム製品であり、これらのプログラム命令は、デバイスに、第1のコンピュータ・システムで、第2のコンピュータ・システムから、第1のコンピュータ・システム上のデータベース内のデータを使用して決定される特定の情報に対する要求を受信することであって、第1のコンピュータ・システムが、暗号化データまたは暗号化された要求を復号するための復号鍵を持っておらず、少なくともデータの一部が暗号化されているか、または要求が暗号化されている、受信することと、第1のコンピュータ・システムによって、圧縮可能な準同型暗号化動作をデータベース内のデータに対して実行し、データベース内の特定の情報に対応する1つまたは複数の圧縮された暗号文を決定することであって、圧縮可能な準同型暗号化動作が、第1の非圧縮準同型暗号方式および第2の圧縮準同型暗号方式を使用し、圧縮可能な準同型暗号化動作を実行することが、第1の準同型暗号方式をデータに対して使用して、他の複数の暗号文を作成することと、第2の準同型暗号方式を他の複数の暗号文に対して使用して、他の複数の暗号文を、圧縮されたより少ない暗号文に圧縮することとを含み、第1および第2の準同型暗号方式が、両方とも同じ秘密鍵を使用する、決定することと、第1のコンピュータ・システムによって、第2のコンピュータ・システムに、要求に対する応答を送信することであって、この応答が、要求された特定の情報に対応する1つまたは複数の圧縮された暗号文を含む、送信することとを含む動作を実行させるように、デバイスによって実行可能である。
別の実施形態例では、方法は、第1のコンピュータ・システムに送信するために、第2のコンピュータ・システムで実行される、平文を暗号化して暗号化データを作成することと、第1のシステムが、暗号化データを復号するための復号鍵を持っておらず、暗号化データを第2のコンピュータ・システムから第1のコンピュータ・システムに送信することとを含む。この方法は、第2のコンピュータ・システムによって、暗号化データを使用して決定される特定の情報に対する要求を送信することも含む。この方法は、第2のコンピュータ・システムで、第1のコンピュータ・システムから、要求に対する応答を受信することを含み、この応答は、要求された特定の情報に対応する1つまたは複数の圧縮された暗号文を含む。この方法は、第2のコンピュータ・システムによって、1つまたは複数の圧縮された暗号文を対応する平文に復号することをさらに含む。
例示的な装置は、1つまたは複数のプロセッサと、コンピュータ・プログラム・コードを含む1つまたは複数のメモリとを含む。1つまたは複数のメモリおよびコンピュータ・プログラム・コードは、1つまたは複数のプロセッサと共に、装置に、第1のコンピュータ・システムに送信するために、第2のコンピュータ・システムで実行される、平文を暗号化して暗号化データを作成することと、第1のシステムが、暗号化データを復号するための復号鍵を持っておらず、暗号化データを第2のコンピュータ・システムから第1のコンピュータ・システムに送信することと、第2のコンピュータ・システムによって、暗号化データを使用して決定される特定の情報に対する要求を送信することと、第2のコンピュータ・システムで、第1のコンピュータ・システムから、要求に対する応答を受信することであって、この応答が、要求された特定の情報に対応する1つまたは複数の圧縮された暗号文を含む、受信することと、第2のコンピュータ・システムによって、1つまたは複数の圧縮された暗号文を対応する平文に復号することとを含む動作を実行させるように構成される。
さらに追加の実施形態例では、コンピュータ・プログラム製品が、プログラム命令が具現化されているコンピュータ可読ストレージ媒体を備えており、これらのプログラム命令は、デバイスに、第1のコンピュータ・システムに送信するために、第2のコンピュータ・システムで実行される、平文を暗号化して暗号化データを作成することと、第1のシステムが、暗号化データを復号するための復号鍵を持っておらず、暗号化データを第2のコンピュータ・システムから第1のコンピュータ・システムに送信することと、第2のコンピュータ・システムによって、暗号化データを使用して決定される特定の情報に対する要求を送信することと、第2のコンピュータ・システムで、第1のコンピュータ・システムから、要求に対する応答を受信することであって、この応答が、要求された特定の情報に対応する1つまたは複数の圧縮された暗号文を含む、受信することと、第2のコンピュータ・システムによって、1つまたは複数の圧縮された暗号文を対応する平文に復号することとを含む動作を実行させるように、デバイスによって実行可能である。
追加の実施形態例は、第1のコンピュータ・システムで、第2のコンピュータ・システムから、第1のコンピュータ・システム上のデータベースから選択されたエントリに対する要求を受信することを含む方法である。この方法は、第1のコンピュータ・システムによって、圧縮可能な準同型暗号方式をデータベース内のデータに対して実行して、データベース内の選択されたエントリに対応する暗号化された回答を計算することを含み、圧縮可能な準同型暗号方式は、対応する平文の回答よりもあまり長くない暗号化された回答を生成し、その暗号化された回答の計算は、データベース内のバイトごとに数サイクルを必要とする。この方法は、第1のコンピュータ・システムによって、第2のコンピュータ・システムに、要求に対する応答を送信することも含み、この応答は、要求されている選択されたエントリに対応する暗号化された回答を含む。
例示的な装置は、1つまたは複数のプロセッサと、コンピュータ・プログラム・コードを含む1つまたは複数のメモリとを含む。1つまたは複数のメモリおよびコンピュータ・プログラム・コードは、1つまたは複数のプロセッサと共に、装置に、第1のコンピュータ・システムで、第2のコンピュータ・システムから、第1のコンピュータ・システム上のデータベースから選択されたエントリに対する要求を受信することと、第1のコンピュータ・システムによって、圧縮可能な準同型暗号方式をデータベース内のデータに対して実行して、データベース内の選択されたエントリに対応する暗号化された回答を計算することであって、圧縮可能な準同型暗号方式が、対応する平文の回答よりもあまり長くない暗号化された回答を生成し、その暗号化された回答の計算が、データベース内のバイトごとに数サイクルを必要とする、計算することと、第1のコンピュータ・システムによって、第2のコンピュータ・システムに、要求に対する応答を送信することであって、この応答が、要求されている選択されたエントリに対応する暗号化された回答を含む、送信することとを含む動作を実行させるように構成される。
追加の実施形態例は、プログラム命令が具現化されているコンピュータ可読ストレージ媒体を備えているコンピュータ・プログラム製品であり、これらのプログラム命令は、デバイスに、第1のコンピュータ・システムで、第2のコンピュータ・システムから、第1のコンピュータ・システム上のデータベースから選択されたエントリに対する要求を受信することと、第1のコンピュータ・システムによって、圧縮可能な準同型暗号方式をデータベース内のデータに対して実行して、データベース内の選択されたエントリに対応する暗号化された回答を計算することであって、圧縮可能な準同型暗号方式が、対応する平文の回答よりもあまり長くない暗号化された回答を生成し、その暗号化された回答の計算が、データベース内のバイトごとに数サイクルを必要とする、計算することと、第1のコンピュータ・システムによって、第2のコンピュータ・システムに、要求に対する応答を送信することであって、この応答が、要求されている選択されたエントリに対応する暗号化された回答を含む、送信することとを含む動作を実行させるように、デバイスによって実行可能である。
一実施形態例では、第2のコンピュータ・システムによって第1のコンピュータ・システムに送信され、第1のコンピュータ・システムによってデータベースに格納される、エントリのインデックスiを暗号化することを含む方法が開示され、インデックスiは、N個の基数の混合基数で表され、データベースはN個の基数も含む。この方法は、第2のコンピュータ・システムによって、暗号化されたインデックスを使用する第1のコンピュータ・システムからの項目の検索を要求することを含む。この方法は、第2のコンピュータ・システムによって、第1のコンピュータ・システムから、要求に対する応答を受信することを含み、この応答は、暗号化されたインデックスを使用して要求されたデータベース内のエントリに対応する、1つまたは複数の圧縮された暗号文を含んでいる暗号化された回答を含む。この方法は、第2のコンピュータ・システムによって、1つまたは複数の圧縮された暗号文を対応する平文に復号することも含む。
例示的な装置は、1つまたは複数のプロセッサと、コンピュータ・プログラム・コードを含む1つまたは複数のメモリとを含む。1つまたは複数のメモリおよびコンピュータ・プログラム・コードは、1つまたは複数のプロセッサと共に、装置に、第2のコンピュータ・システムによって第1のコンピュータ・システムに送信され、第1のコンピュータ・システムによってデータベースに格納される、エントリのインデックスiを暗号化することであって、インデックスiが、N個の基数の混合基数で表され、データベースがN個の基数も含む、暗号化することと、第2のコンピュータ・システムによって、暗号化されたインデックスを使用する第1のコンピュータ・システムからの項目の検索を要求することと、第2のコンピュータ・システムによって、第1のコンピュータ・システムから、要求に対する応答を受信することであって、この応答が、暗号化されたインデックスを使用して要求されたデータベース内のエントリに対応する、1つまたは複数の圧縮された暗号文を含んでいる暗号化された回答を含む、受信することと、第2のコンピュータ・システムによって、1つまたは複数の圧縮された暗号文を対応する平文に復号することとを含む動作を実行させるように構成される。
さらに別の実施形態例は、プログラム命令が具現化されているコンピュータ可読ストレージ媒体を備えているコンピュータ・プログラム製品であり、これらのプログラム命令は、デバイスに、第2のコンピュータ・システムによって第1のコンピュータ・システムに送信され、第1のコンピュータ・システムによってデータベースに格納される、エントリのインデックスiを暗号化することであって、インデックスiが、N個の基数の混合基数で表され、データベースがN個の基数も含む、暗号化することと、第2のコンピュータ・システムによって、暗号化されたインデックスを使用する第1のコンピュータ・システムからの項目の検索を要求することと、第2のコンピュータ・システムによって、第1のコンピュータ・システムから、要求に対する応答を受信することであって、この応答が、暗号化されたインデックスを使用して要求されたデータベース内のエントリに対応する、1つまたは複数の圧縮された暗号文を含んでいる暗号化された回答を含む、受信することと、第2のコンピュータ・システムによって、1つまたは複数の圧縮された暗号文を対応する平文に復号することとを含む動作を実行させるように、デバイスによって実行可能である。
例示的な実施形態例において圧縮可能な(F)HEを使用するユーザとサーバの間の暗号化された通信のための例示的な方法のフローチャートである。 図1の複数のデバイスにおいて使用されてよい、例示的なコンピュータ・システムのブロック図である。 1つの例示的な構造における行列の図である。 PIRに応用されて圧縮可能な(F)HEを使用する例示的な方法のフローチャートである。 PIRに応用されて圧縮可能な(F)HEを使用する例示的な方法の続きのフローチャートである。
本明細書または図面あるいはその両方において見られることがある略語が、次のように定義される。
AES 高度暗号化標準
AES-CTR AESカウンタ・モード
CRT 中国剰余定理
ctxt 暗号文
FFT 高速フーリエ変換
HE 準同型暗号化
FHE 完全準同型暗号化
(F)HE HEまたはFHE
GSW (Craig)Gentry、(Amit)Sahai、および(Brent)Waters
LWE エラーを伴う学習
MPC マルチパーティ計算
PKE 公開鍵暗号
PIR プライベート情報検索
RLWE 環LWE
(R)LWE LWEまたはRLWE
「例示的」という単語は、本明細書では「例、事例、または実例としての役割を果たす」ことを意味するために使用される。「例示的」として本明細書に記載された実施形態は、必ずしも他の実施形態よりも好ましいか、または有利であると解釈されるべきではない。この「発明を実施するための形態」において説明される実施形態のすべては、特許請求の範囲によって定義された本発明の範囲を制限するためではなく、当業者が本発明を実行または使用することができるようにするために提供された実施形態例である。
準同型暗号化(HE)は、多くの場合、通信および計算の両方において非実用的と見なされる。本明細書では、ほぼ最適な比率(任意のε>0に対して1-ε)を有する(例えば、環)LWEに基づく加法準同型暗号方式が提供される。さらに、多くのGentry-Sahai-Waters(GSW)暗号文(例えば、準同型評価から取得されていることがある暗号文)を(より少ない)高率の暗号文に圧縮する方法が説明される。
実施形態例において、例示的な高率のHE方式を使用して、計算オーバーヘッドが非常に低い、比率(4/9)の単一サーバのプライベート情報検索(PIR)方式が構築される。単一サーバのPIRは、本質的に、データベースのビットごとに少なくとも1つの動作を実行するためのサーバを必要とする。1つの例示的なPIR方式における計算は、この固有の下限よりそれほど悪くなく、おそらくデータベース全体のAES暗号化(つまり、データベースのバイトごとの約1.5回のmod-q乗算、qは長さ約50~60ビットの数)より少ない。漸近的に、この例示的なPIR方式の計算オーバーヘッドは
Figure 2024063125000002

であり、λはセキュリティ・パラメータであり、Nはデータベース・ファイルの数であり、十分に大きいと仮定される。
(完全)準同型暗号化((F)HE)の帯域幅効率はどの程度であろうか。帯域幅においてほとんど損失を伴わずにメッセージを暗号化するのは容易であるが、同じことが、通常、準同型暗号化には当てはまらない。現在のHE方式において評価された暗号文は、少なくとも有意な定数因子、および多くの場合はさらに多くの因子によって、それらのHE方式が暗号化する平文よりも大幅に大きくなる傾向がある。
FHEの帯域幅限界における基礎的な理論的興味を越えて、高い比率を有する準同型方式には、複数の応用がある。おそらく、帯域幅が最も重要であるプライベート情報検索(PIR)の場合が、最も明らかである。明らかに、HEを使用してPIRを実装することができるが、これまでの最良のPIRの実装([1、5]など)でさえ、主に現在のHE方式の大きい膨張係数のために、大きいデータベースをサポートできるようになることからは、まだかなり遠い。Badrinarayanan他[9]の研究において別の応用を見ることができ、Badrinarayananは、1/2よりも良い比率を有する圧縮可能な(加法)準同型暗号化を、高率の紛失通信に使用することができ、さらに、秘密計算との関連において、さまざまな目的に使用することができるということを示した。この研究の前の高率の準同型暗号化の唯一の事例は、Damgard-Jurikの暗号システム[31]だったが、この暗号システムは、(a)加法準同型のみであり、(b)かなり高コストであり、(c)量子コンピュータに対して安全でない。
本文書では、最初の圧縮可能な完全準同型暗号方式が考案されるように、この状況が改善され、この方式をどのように使用して効率的なPIRを得るかが示される。つまり、一実施形態例では、(F)HE方式が説明され、この(F)HE方式の評価された暗号文は、依然として復号可能でありながら、この方式が暗号化する平文とほぼ同じサイズになるまでパブリックに圧縮される。例示的な圧縮可能な方式は、(特に、GSW暗号システム[43]の下で)準同型評価の最終結果を受け取り、行列暗号化行列暗号文(matrix-encrypting matrix-ciphertexts)に詰め込むことができ、この暗号文の合計サイズに対する平文の合計サイズの比率は、任意のεに対して1-εになることができる(平文の合計が、1/εに比例して十分に大きいと仮定する)。圧縮された暗号文は、もはやGSW暗号文ではない。しかし、これらの暗号文は、すべて圧縮されたまま、加法準同型、および小さいスカラーの暗号化による左側での乗算を可能にするほど十分な構造をまだ有している(これらの動作が暗号文の「ノイズ」を若干増やすということに注意する)。GSWと同様に、例示的な方式のセキュリティは、エラーを伴う学習の仮定[71]または環の変形[62](および例えば、完全準同型暗号化の場合の循環セキュリティの仮定)に基づく。
圧縮可能な完全準同型暗号化が、エンドツーエンドの高率のFHEを容易に生み出すということに注意する。新たに暗号化された暗号文は、暗号化中に直ちに圧縮され、その後、処理の前にブートストラッピングを使用して「復元」され、最後に、復号の前に再び圧縮される。その結果、この方式は、どの時点でも暗号文を圧縮しており、それらの暗号文は、処理されている間だけ、一時的に展開される。例えばAES-CTRを使用して新しい暗号化が生成され、FHEに従って暗号化されたAESキーが送信される、ハイブリッド暗号化を使用することもできるということにも注意する。
PIRに関して、通信オーバーヘッドが少ない単一サーバのプライベート情報検索方式を生み出すと同時に、計算効率の良い、基本的な方式に対する多くの例示的な最適化が以下で説明される。漸近的に、計算オーバーヘッドはO(loglogλ+logloglogN)であり、λはセキュリティ・パラメータであり、Nはデータベース・ファイルの数であり、十分に大きいと仮定される。
この例示的なPIR方式が、理論的に効率が良いだけでなく、実際に高速でもあると推定される理由が、詳細に説明される。特に、比率4/9の単一サーバのPIR方式を得ることができ、この方式では、サーバの償却作業(amortized work)は、データベース内のすべてのバイトについて、1.5回の単精度モジュラー乗算(single-precision modular multiplication)のみである。比較のために、データベース全体を送信する自明なPIRの解決策は、(通信セキュリティのために)少なくともデータベース全体を暗号化する必要があり、したがって、データベースの16バイトごとのAESブロック暗号化のコストを招き、この作業は、本明細書における例示的な方式が実行する作業よりも確実に多い。したがって、Sion-Carbunar[77]とは反対に、PIRは、通信に関してだけでなく、計算に関しても、最終的に、自明な解決策よりも効率的である。
(R)LWEに基づく準同型暗号化を非実用的と考えることに慣れている人は、本明細書におけるPIR方式の少ない計算オーバーヘッドを信じ難いと感じるかもしれない。しかし、RLWEに基づくHE(特に、本明細書に記載された例示的な適応を伴うGSW方式)は、いくつかの理由で、PIR設定において間違いなく異彩を放つ。第一に、GSW暗号文内のノイズは、左から乗じられたメッセージが{0,1}である場合の程度で、付加的に増加するだけである(受信側のGSW暗号文が、対象のインデックスのビットを暗号化する)。さらに、明らかに、N個のファイルを含むデータベースに対してΩ(N)回の暗号文動作を実行する必要があるとしても、ノイズがlogNに比例してしか増加しないということを保証することができる(そのため、ビット・サイズはloglogNと共にしか増加しない)。小さいノイズの増加は、例示的なPIR方式が、基本的なRLWEに基づくPKE方式において使用されるRLWEモジュラスqよりあまり大きくない、小さいRLWEモジュラスqを使用できるようにする。第三に、単一サーバのPIR[58、79]のための古典的方法の再帰的/階層的性質を利用して、RLWEに基づく準同型評価のより高コストのステップ、すなわち多項式FFT(およびあまり重要でない、CRT持ち上げ(CRT lifting))を隠蔽することができる。PIRのための古典的な階層的方法では、支配的な計算ステップは、実施形態例では有効なデータベース・サイズがN=N×…×NからN/Nに投影される、最初のステップである。この最初のステップの効率を最大にするために、データベースの多項式が、評価表現にすでに含まれるように、前処理されてもよく、それによって、多項式FFTを回避し、mod-q乗算の小さい定数を使用して、データベースの各(log q)ビット・ブロックを暗号化された照会に「吸収」できるようにする。最初のステップでは、例えば、サーバが、FFTを含めて、クライアントのlogN個の暗号文からN個の暗号文を生成するが、N=Nである場合、それらの償却コストはわずかである。したがって、最初のステップの計算オーバーヘッドは、結局、整数モジュロqの乗算のオーバーヘッドのみになり、qは極めて小さくなることができる。乗算モジュロqは、qを素数の積にし、CRT表現を使用することによって、漸近的により高速に行われることができ、素因数を法とする乗算(multiplication modulo the prime divisors)は、テーブル検索を使用してさらに加速されることができる。PIRの最初のステップの後に、GSWに似た準同型評価が、多項式の係数と評価表現の間の変換を必要とするが、これは、
Figure 2024063125000003

が選択された場合、有効なデータベースがすでに非常に小さい(最大でN/N)ため、この例示的なPIR方式のオーバーヘッドに大きな影響を与えない。
暗号文の圧縮に関しては、暗号文の圧縮は、公開鍵設定において(およびときには、対称鍵との関連においても(例えば、[57]))明白な要請を常に有している。おそらく最も良く知られている暗号文圧縮技術はハイブリッド暗号化であり、ハイブリッド暗号化では、(長い)メッセージが対称暗号化方式に従って暗号化され、対称復号鍵のみが公開鍵方式に従って暗号化される。暗号文の圧縮の他の例は、楕円曲線の点のx座標のみを使用すること[11、34]、および因子nに基づくセキュリティでラビン暗号文(Rabin ciphertexts)を(2/3)lognビットに圧縮することである(メッセージが、2/3lognビット未満のエントロピーを含むということを仮定する)[44]。
Rivest、Adleman、およびDertouzos[73]は、公開鍵暗号の発明[32、72]のすぐ後に、準同型暗号化の概念を提案した。Gentry[45]は、最初のもっともらしくセキュアな(暗号化されたままのデータに対する任意の計算を可能にする)完全準同型暗号(FGE)方式を構築した。現在、非常に良い性能およびセキュリティを保証するFHE方式が存在している[80、78、42、16、27、15、18、39、38、40、61、21、12、63、14、37、43、3、4、50、48、68、74、26、17、49、33、36、23、6、81、82、28、54、46、24、19、10、22、65、20、56、29]。
FHEおよびその他の(R)LWEに基づく暗号システムの比率の改善に関する多くの研究も存在している。いくつかの重要な例は、次元縮小およびモジュラス減少[16、15]であり、これらは、暗号文を、より小さいモジュラスによって減らされた係数を含むより低い次元のベクトルに変換して、暗号文をより小さくし、復号の複雑さを低減することもできる(この方向でのその他の研究については、[75]を参照)。別の重要な方向は、各暗号文が、平文の要素の1つではなく配列を暗号化する、「暗号文圧縮」[70、78、15、14]である。実際には、比率だけでなく、FHE計算全体のオーバーヘッドが、ときにはセキュリティ・パラメータの多重対数関数のみに、削減される[39]。また、一部のFHE方式は、平文を行列にすることもできる[70、14、52、35]。
HEとの関連において、ハイブリッド暗号化に関する研究も存在し[45、41、66]、AESに従って暗号化されたデータが、HE方式に従ってAES鍵の暗号化を使用して準同型に復号されることができ、その後、データが、暗号化されたまま操作されることができる。しかし、(知られている限りでは)他の方向は不可能である。秘密鍵を使用せずに同じメッセージのHE暗号文をAES暗号文に変換する方法は存在しない。以前の一部の研究は、整数に基づくHEに関するvan Dijk他の研究[80]、属性に基づく暗号化に関するHohenberger他の研究[47]などの、「評価後」の暗号文圧縮技術を含んでいた。しかし、それらで達成された比率はまだ低く、実際には、本研究より前の方式は、比率1/2の壁を破ることができなかった(したがって、例えば、LWEに基づく方式は、Badrinarayanan他[9]の高率のOTの応用に使用できなかった)。
van Dijk他[80]の方式に関しては、その論文において特に説明されているように、その方式は、暗号文ごとに1ビットしか暗号化しない。そのため、暗号文がRSAモジュラスと同程度にしか大きくなく、例えば1024ビットである場合、暗号文は平文よりも1024倍長くなる。一般に、十分に良いセキュリティを得るには、暗号文が100ビットを超える必要があるため、暗号文ごとに1ビットのみを安全に暗号化する任意の方式は、1/100未満の比率を有することになる。
さらに詳細な説明は、次の通りである。van Dijk他の方式は、一度に1ビットより多くのビットを暗号化するように微調整されるが、非常に良い比率を得る方法については、まだ明確ではない。これを理解するには、van Dijkに関する背景が、さらに少し必要である。秘密鍵は、任意の大きい整数pであり、数xモジュロn(すなわち、{0,1,...,n-1}内の数)を暗号化する暗号文は、c=q*p+q*n+xの形態を有し、数qおよびnは、q*n+xの大きさがpよりはるかに小さくなるように選択される。復号はx=(c mod p)mod nであり、(c mod p)は値を範囲{0,...,p-1}に減らし、mod nはその結果を{0,...,n-1}に減らす。暗号文cは、通常、pよりさらに多いビット数であり、pは、通常、平文よりさらに多いビット数であり、{0,...,n-1}内の数である。
暗号文圧縮技術は、乗法群モジュロNが位数M(<N)を有するように、g mod Nを計算し、Mはpによって割り切れる。基本的に、gを受け取って、(c mod p)の値を維持し、pに関する他の情報を捨てる。そのため、初期のcがpよりさらに多いビット数であるという問題が、ある程度軽減される。
しかし、pは、まだnよりさらに多いビット数である必要があり(平文空間)、上記の数Nは、pより大幅に多いビット数である必要がある(ただし、Nは元のcと同じビット数である必要はない)。pがnよりさらに多いビット数である必要がある理由は、準同型演算がノイズの大きさを増やすという、通常の準同型暗号化の問題であり、ここでノイズの大きさは、(c mod p)の大きさになる。1回の乗算がこの大きさにおけるビット数を2倍にしても、この大きさはまだpより小さく、正しい復号を可能にする。これは、nがpより何倍も少ないビット数であるということを意味する。数Nは、pのビット数の少なくとも4倍のビット数である必要があり、そうでない場合、Nを因数分解し、システムを壊す可能性がある。数モジュロNである圧縮された暗号文全体は、mod-nの平文空間よりさらに多いビット数を含む。したがって、van Dijk方式は、いずれにせよ、本明細書に記載された可能性のある比率に近い比率を提供しない。
1/2より良い比率で知られている準同型特性を有する従来の唯一の暗号システムは、DamgardおよびJurik[31]による。DamgardおよびJurikは、加法準同型を有する比率(1-o(1))の暗号化を可能にするPaillierの暗号システム[69]の拡張について説明した。具体的には、RSAモジュラスNおよび任意の指数s≧1の場合に、mod-Nの平文が、mod-Ns+1の暗号文内で暗号化され得る。
プライベート情報検索(PIR)に関しては、PIRは、Chor他[25]の研究において導入された。この設定では、クライアントは、通信全体がNにおいて劣線形の状態で、対象のインデックスi∈[N]をサーバから隠蔽したまま、N番目のビット(またはファイル)をデータベースから取得することができる(この劣線形の通信要件は、サーバがデータベース全体をクライアントに送信するという自明なプロトコルを除外する)。Chor他は、複数のサーバを含む構造を提供し、後にKushilevitzおよびOstrovsky[58]は、計算の仮定の下で単一のサーバを使用してもPIRが可能であるということを示した。KushilevitzおよびOstrovskyは、N=N×…Nビットのデータベースの場合の再帰的PIR構造について説明した。その最初のステップでは、PIR方式をデータベースのN/N個のN要素のスライスに並列に適用し、次に、PIRをN/N個のPIR応答の「新しいデータベース」に適用する、などとなる。Stern[79]は、他の加法準同型暗号方式を使用して、この構造を改良した。Kiayias他[55]([60]も参照)は、Damgard-Jurik[31]に基づいて、比率(1-o(1))を有する最初の単一サーバのPIR方式を提供した。[55、1、60]において述べられているように、数千個の動画の中からギガビットの動画ファイルをストリーミングすることを考えると、個々のファイルが非常に大規模であることがあるため、比率を最大化することは、PIRの最新の応用によって極めて重要である。しかし、Damgard-Jurikは、計算コストが非常に高いため、大規模なPIRに実際に使用することができない[77、67]。最低限、Damgard-Jurikを使用するPIRは、データベースの1ビットごとにmod-N乗算を計算するためのサーバを必要とし、Nは2048以上のビット数である。ネストされた復号も、かなり高コストである。論文[55、60]は、比率が最適なPIR方式の計算コストを低くするために、Damgard-Jurikを置き換える基礎になる暗号化方式を明示的に提唱している。例示的なGSWの行列に基づくバージョンは、PIRのためのDamgard-Jurikの方法におけるように、平文が、次のレベルで再帰的に暗号文になる、ネストを可能にするということに注意するべきである。そのため、本明細書における例示的な方式は、それらの方式の効率を改善するための置き換えとして使用され得る。しかし、ネストを回避し、GSWの自然な準同型を使用することが、さらにいっそう効率的であるということが分かった。
単一サーバのPIRプロトコルでは、サーバの計算が少なくともNにならなければならず、そうでない場合、サーバは、サーバが応答を構築している間に触れなかったビットが、照会に無関係だったということを知る(それによって、プライバシーを破る)。PIRのこの「問題」は、複数サーバのプロトコルの場合でも非常に根本的であるため、Boyle他[13]は、「PIRの困難さ(PIR hardness)」が、マルチパーティ計算(MPC)問題を、(そのようなプロトコルが、劣線形計算を伴うPIRを意味するため)劣線形計算を伴うプロトコルを含むことができる問題と、そうでない問題とに分割するための有用な方法であるということを発見した。多くのMPC問題がPIR困難であるということを前提にして、PIRの計算オーバーヘッドを最小限に抑えることが極めて重要になる。計算に関して最先端のPIR方式は、Aguilar-Melchor他[1]によるXPIRであり、この方式は、Angel他[5]のSealPIRの研究においてさらに最適化された。この方式は、RLWEに基づき、データベースを評価表現に前処理することを含む、多くの賢明な最適化を特徴とするが、再帰の深さと共に、比率が指数関数的に減少し(各レベルで5倍以上減少し)、少なすぎるレベルで、クライアントの作業が大きくなる。実際、Angel他は、自分たちの最適化でも、「大きいデータベースをサポートすることは、まだ達成されていない」と述べた。
本明細書における例示的な圧縮可能な方式は、高いレベルで、2つの暗号システムを結合する。1つは、GSW[43]のわずかな変形である低率の(圧縮されない)FHE方式であり、もう1つは、Hiromasa他[52]の行列準同型暗号化(matrix homomorphic encryption)に多少類似する、行列のための新しい高率の(圧縮された)加法準同型方式である。これら2つの暗号システムが、同じ秘密鍵を共有し、多くのGSW暗号文を単一の圧縮された暗号文に詰め込むことができるようにするという意味で「上手く連携する」ことが、本明細書における例示的な方式を圧縮可能にする。
低率の方式は、GSWとほぼ同じであるが、[70]において行われているように、ベクトルではなく行列が鍵として使用されるという点が異なる。すなわち、例示的な秘密鍵は、S=[S’|I]の形態の行列であり、公開鍵は、S×P=E(mod q)を満たす疑似ランダム行列Pであり、qはLWEモジュラスであり、Eは低ノルム行列(low norm matrix)である。GSWと全く同じように、低率の暗号システムは小さいスカラー(通常は、単にビットσ∈{0,1})を暗号化し、暗号文は行列Cであり、復号の不変式はSC=σSG+E(mod q)である(GはMicciancio-Peikertのガジェット行列(gadget matrix)[64]であり、Eは低ノルム行列である)。
本明細書における例示的な高率の方式は、単一の暗号文行列において行列全体モジュロqを暗号化し、単一の暗号文行列の次元は、平文行列よりわずかに大きいだけである。導入される新しい技術的材料は、IIと呼ばれる異なるガジェット行列である。GSWにおけるGガジェット行列と同様に、この例示的なIIは、冗長性を暗号文に追加し、Hは、復号時のノイズの除去を可能にする「パブリック・トラップドア(public trapdoor)」を有する。Hがほぼ正方形の行列であり、したがって、ほとんど拡張を伴わず、高率の暗号文を可能にするという点が異なる。さらに詳細には、Gはn×mの次元を有し、m=nlogqである。例えば、q=260である場合、mはnより60倍大きい。一方、Hは通常、行よりも1つだけ多い列を含む。ほぼ四角形のHがあまり冗長性を追加することができず、したがって、高品質のトラップドアを有することができないということに、注意するべきである。このようにして、少量のノイズのみを除去できる低品質のトラップドアで済ませるということが行われる。
例示的な方式での平文から暗号文への次元におけるわずかな増加は、2つのステップで導入される。最初に、SM’=Mを得るために
Figure 2024063125000004

を設定して、いくつかの追加のゼロ行で平文行列Mを「埋める」ために、特殊な形態の秘密鍵が使用される(Hiromasa他は、[52]において、同じ特殊な形態を同じ目的に使用した)。次に、この行列の右側にガジェット行列Hを掛けることによって、冗長性がM’に追加され、復号中の少量のノイズの除去を可能にする。知られているように、加算および特に暗号文に対する乗算などの、準同型演算の場合、ノイズが増加する。圧縮された暗号文の復号の不変式は、SC=M’H+E(mod q)である。高率の圧縮された暗号文を取得するために、実施形態例は、平文から暗号文への次元における増加ができるだけ小さくなることを保証する。n×n平文行列Mでは、LWEシークレット(LWE secret)(kによって示される)の次元と同じ数のゼロ行を追加する必要がある。n=n+kと表すと、埋められた行列M’は次元n×nを有する。次元n×nのやや四角形のガジェット行列Hを右側に掛けることによって、冗長性がさらに追加される。暗号文の最終的な次元がn×nであるため、圧縮された暗号文の情報の比率は、
Figure 2024063125000005

である。
ここで、サイズ
Figure 2024063125000006

のモジュラスqを使用して、任意の望ましいε>0に対して
Figure 2024063125000007

を得ることができるように、種々のパラメータを調整する方法が示される。これは、多項式のギャップでのLWEの困難さを仮定して、任意の定数ε>0をサポートすることができ、または半指数関数のギャップでのLWEの困難さを仮定する場合は、多項式的に小さいεをサポートすることもできるということを意味する。以下で、さらに詳細が示される。
新しいガジェット行列Hを使用する代わりに、十分に大きい整数f(例えば、f>1)に対して復号の不変式SC=f・M’+E(mod q)を使用して冗長性が暗号文に追加されるということが、述べられる。この変形(以下で説明される)は、Hを使用する変形と同じ漸近的挙動を有し、具体的な効率は多少悪いように見えるが、まだ使用可能である。
追加の概要として、圧縮可能なFHEを説明するときに以下で説明されるプロセスは、一般に(1)データを低率の(圧縮されない)暗号文で暗号化して、暗号化データに対して何かを計算し、次に(2)その結果を高率の(圧縮された)暗号文に圧縮し、最後に(3)結果を復号して回復することである。以下で圧縮された(F)HE方式について説明するときに、「冗長性を平文に追加する」というような語句が使用され、この語句が、例えば、おそらく平文を高率の暗号文に直接暗号化することにおけるように、平文が任意の方法で処理されているというようなことを述べているということに、注意する。平文を圧縮された暗号文に直接暗号化できるというのは真実であるが(以下では、その実行方法も説明される)、以下の説明における要旨は、異なる技術を使用する。特に、2つの式SC=M’H+E(mod q)(上記および下記で、第1の変形として説明されている)およびSC=f・M’+E(mod q)(上記で、別の変形として説明されている)が、復号プロセスを表す。最初に、暗号文Cに秘密鍵Sを掛けることによって、M’H+E(mod q)またはf・M’+E(mod q)のいずれかを得る。項Eは、取り除く必要のあるノイズであり、そのために、M’H(またはf・M’)が何らかの冗長性を有しているという事実を使用することができる。そのため、以下の要旨は、前述したプロセス(1)~(3)を使用し、さきほど説明した復号プロセスも組み込む。
ここまでのアイデアは、漸近的に効率的な方式を得るために十分であり、以下で説明される。ただし、実用的効率を得るために、さらに多くの具体的な方法が使用され得る。具体的には、実施形態例は、LWEではなくRLWEを基礎になる方式に使用し、FFTを軽減するようにデータベースを前処理し、モジュラス切り替え技術を適用して、より良いノイズ管理を得ることができ、これらの方法がすべて以下で説明される。ただし、これらのアイデアのいずれかを提示する前に、例示的な方法およびシステムの概要が本文書の次の部分で提供され、その後、追加の背景が説明される。
図1を参照すると、この図は、例示的な実施形態例において圧縮可能な(F)HE方式を使用するクライアントとサーバの間の暗号化された通信のための例示的な方法のフローチャートである。この方法は、PIRを含んでいないが、PIRの基本的なブロックが含まれている。PIRは後で説明される。クライアント110によって(例えば、ユーザの制御下で)実行される動作が左側に示されており、サーバ170によって(例えば、サービス・プロバイダの動作の一部として)実行される動作が右側に示されている。
下でさらに詳細に説明されているように、次の手順を含んでいる圧縮可能な(F)HE方式70が存在しており、これらの手順が下でさらに詳細に説明される:キー生成プロシージャであるKeyGen、平文の準同型暗号化を実行するEncrypt、回路を暗号文に対して使用して準同型評価を実行するEvaluate、準同型評価を実行された暗号文を圧縮するCompress、および圧縮された暗号文の復号を実行するDecrypt。この方式は、下で説明されているように図1の複数の位置で使用され得る。
ブロック10で、クライアント110が公開鍵(pk)をサーバ170に送信し、ブロック20で、サーバ170が公開鍵を受信する。ブロック30で、クライアント110が、下で説明されているように、特に、ガジェット行列またはその変形の使用を含んでいる(F)HE暗号化方式70の(例えば、公開または秘密)鍵を使用して、データを暗号化する。ブロック40で、クライアント110が、暗号化データを(例えば、暗号文として)サーバに送信し、ブロック50で、サーバが暗号化データを受信する。サーバ170は、このデータを暗号文としてデータベース20に格納する。一部の実施形態では、データベース28が、暗号文のみの代わりに、平文と暗号文の混合(または平文のみ)を含んでよいということにも注意する。データベース28内の平文に関しては、下で説明されているように、暗号化された照会が使用されてよく、平文のみのデータベースも使用され得る。
ある時点で、クライアントが、例えば暗号化された要求およびサーバに格納されている情報に関する照会を生成し(ブロック55を参照)、これらの要求および照会が、(F)HE方式70によって暗号化され得る。照会は、回路として実現され得る。ブロック55は、クライアント110が要求および照会(例えば、回路)をサーバ170に送信することを示しており、ブロック60で、サーバ170がそれらの要求および照会を受信する。原則として、暗号化データに対して評価される回路は、任意の場所から取得することもできる。例えば、FHEの1つのシナリオは、クライアントが、財務データを暗号化して、暗号化データをオンライン税務書類作成会社に送信し(この会社が、暗号化データをデータベース28に格納する)、その後クライアントが、納税義務の評価を要求することである。この場合、要求は、単に納税評価を実行するよう会社に伝え、暗号化されなくてよい。この会社(サーバ170を使用している)は、独自の納税申告用紙ソフトウェアを(例えば、回路として)暗号化された財務データに適用して、納税義務の評価を取得する。このシナリオでは、回路はクライアントから取得されない。
別の(代替または追加の)選択肢は、このフローの開始部分が、クライアント110とサーバ170の間に必ずしも直接存在しないことである。例えば、さまざまな(例えば、ランダムな)1人または複数の関係者が、クライアントの公開鍵に従ってデータを暗号化し、この情報が最終的にサーバで(クライアントの公開鍵pkと一緒に)データベース28内に収集されるということが、当てはまることがある。後で、クライアント110は、例えば、「あるキーワードを含んでいる、私の鍵に従ってあなたが暗号化したすべてのファイルを私に送信する」という(回路を使用する)効果に対する要求を生成して、サーバに送信してよく(ブロック55)、サーバは、この要求に応答することができる。実際には、(必要なのは、クライアント110およびサーバ170が、使用される鍵に同意することだけであるため)この協調は自動的に発生する。
ブロック65で、サーバ170が、データベース28に格納された暗号文の(例えば、一部分において回路によって定義された)計算を実行する。この時点で、サーバ170は、照会に対する回答を暗号文として生成している。標準的な(F)HEのシナリオでは、結果として得られる暗号文がかなり大きくなる可能性がある。しかし、本明細書では(F)HE暗号化方式70を使用して暗号文を圧縮することによって、暗号文のサイズを大幅に縮小する。したがって、ブロック65は、サーバが暗号文を圧縮して圧縮された暗号文を作成することを含む。
ブロック70で、サーバ170が、要求および照会に対応する圧縮された暗号文を含んでいるメッセージを形成する。サーバは、照会に対する回答の圧縮された暗号文を含んでいる1つのメッセージ(または複数のメッセージ)も送信する。ブロック80で、クライアント110が、圧縮された暗号文70のメッセージを受信し、ブロック90で、例えば(F)HE暗号化方式70を使用して、圧縮された暗号文70を復号して平文を得る。クライアント110は、周知のように、平文を使用する1つまたは複数の動作を実行してよい。
本明細書における方式に関わるコンピュータ・システムはクライアント110およびサーバ170と呼ばれるが、これらのコンピュータ・システム間にクライアント/サーバ関係が存在する必要はない。例えば、代わりにピアツーピア関係が存在することができる。
図2を参照すると、この図は、図1の複数のデバイスにおいて使用されてよい、例示的なコンピュータ・システムのブロック図である。コンピュータ・システム210は、1つまたは複数のバス227を介して相互接続された、1つまたは複数のプロセッサ220、1つまたは複数のメモリ225、1つまたは複数のトランシーバ230、1つまたは複数のネットワーク(N/W:network)インターフェイス(I/F:interfaces)245、およびユーザ・インターフェイス回路265を含む。1つまたは複数のトランシーバ230の各々は、受信器Rx232および送電器Tx233を含む。ユーザ201は、ユーザ・インターフェイス要素205と情報をやりとりしてよい。トランシーバは、ワイヤレス・フィディリティ(Wi-Fi:wireless fidelity)、Bluetooth、近距離無線通信(NFC:nearfield communication)、または4G(第4世代:fourth generation)もしくは5G(第5世代:fifth generation)などのセルラー・プロトコル、あるいはその組み合わせなどの、任意の適用可能なプロトコルを使用してよい。1つまたは複数のバス227は、アドレス・バス、データ・バス、または制御バス、あるいはその組み合わせであってよく、マザーボードまたは集積回路上の一連の配線、光ファイバ、またはその他の光通信機器などの、任意の相互接続メカニズムを含んでよい。1つまたは複数のトランシーバ230は、1つまたは複数のアンテナ228に接続される。1つまたは複数のメモリ225は、コンピュータ・プログラム・コード223を含む。
コンピュータ・システム210は、部品240-1または240-2あるいはその両方のうちの1つまたは両方を含む制御モジュール240を含む。制御モジュール240は、コンピュータ・システム210に、本明細書において個別のデバイスによって実行される前述した動作を実行させる。制御モジュール240は、複数の方法で実装され得る。制御モジュール240は、1つまたは複数のプロセッサ220の一部として実装されるなど、ハードウェアにおいて制御モジュール240-1として実装され得る。制御モジュール240-1は、集積回路として実装されるか、またはプログラマブル・ゲート・アレイなどのその他のハードウェアによって実装されてもよい。別の例では、制御モジュール240は、コンピュータ・プログラム・コード223として実装され、1つまたは複数のプロセッサ220によって実行される、制御モジュール240-2として実装され得る。例えば、1つまたは複数のメモリ225およびコンピュータ・プログラム・コード223は、1つまたは複数のプロセッサ220と共に、ユーザ・コンピュータ・システム210に、本明細書において説明されている動作のうちの1つまたは複数を実行させるように、構成され得る。ユーザ・コンピュータ・システム210に示されているデバイスに限定されず、その他の異なるデバイスまたはより少ないデバイスが使用され得るということにも、注意するべきである。例えば、代わりに1つまたは複数のトランシーバ230を介した無線ネットワークのみが使用される場合、有線N/W IF225が不要になることがある。
実装されることもあれば、実装されないこともあるユーザ・インターフェイス回路265は、実装された場合、1つまたは複数のユーザ・インターフェイス要素205と通信し、ユーザ・インターフェイス要素205は、ユーザ・コンピュータ・システム210と一体で形成されてよく、またはユーザ・コンピュータ・システム210の外部で、ただしユーザ・コンピュータ・システム210に結合されて形成されてよく、あるいはその両方であってよい。ユーザ・インターフェイス要素205は、1つまたは複数のカメラ、1つまたは複数の音声デバイス(マイクロホン、スピーカなど)、1つまたは複数のセンサ(GPSセンサ、指紋センサ、方位センサなど)、1つまたは複数のディスプレイ、または1つまたは複数のキーボード、あるいはその組み合わせのうちの1つまたは複数を含む。このリストは網羅的でも限定的でもなく、その他の要素、異なる要素、またはより少ない要素が使用され得る。ユーザ201(例えば、クライアント110を使用している)は、ユーザ・インターフェイス要素205と情報をやりとりし、対応するコンピュータ・システム210に、動作を実行させることができる。例えば、クライアント110は、一部分においてユーザ201の制御下にあって、例えば銀行に対して情報を要求することができ、この銀行は、場合によっては対応するユーザ201と情報をやりとりせずに、サーバ170を制御する。
図2のさまざまなデバイスの例示的な実装に関して、制御モジュール240は、対応するデバイスのコンピュータ・システム210のために、クライアント110内の(完全)準同型暗号化および通信(および例えばPIR)アプリケーション112、またはサーバ170内の(完全)準同型暗号化および通信(および例えばPIR)アプリケーション172のうちの1つとして実装され得る。
さらに、コンピュータ・システム210は、例えばサーバ170に割り当てられるリソースとして、クラウド内に存在し、プロセッサ220およびメモリ225から形成され得る。コンピュータ・システム210は、例えばクライアント110のユーザ201のための、スマートフォン、タブレット、またはパーソナル・コンピュータなどのデバイスであることができる。
これで例示的な方法およびシステムの概要について説明したので、ここで追加の背景について説明する。(環)エラーを伴う学習(LWE)に関して、GSW暗号システム[43]のセキュリティは、(環)エラーを伴う学習(R)LWE決定問題の困難さに基づく[71、62]。LWEは整数R=Zの環を使用するが、RLWEは、通常、円分体の整数Rの環を使用する。モジュラスq、次元k、およびR上のノイズ分布χの場合のこの問題の「はい」の事例は、値
Figure 2024063125000008

と共に多くの均一な
Figure 2024063125000009

から成り、
Figure 2024063125000010

は固定された秘密のベクトルであり、e←χである。「いいえ」の事例では、
Figure 2024063125000011

およびbが両方とも均一である。(R)LWE決定の仮定は、2つの分布が計算的に区別できない(すなわち、「はい」の事例が疑似ランダムである)ということである。通常、χは、あるサイズの場合にPe<αがαを制限するように、セキュリティ・パラメータλにおいて圧倒的な確率で存在する。セキュリティ・パラメータは、環のサイズまたは次元kあるいはその両方、および比率α/qの下限も制限する。RLWEに基づく方式は、より効率的であるが、本文書のこの部分の残りの部分では、LWEが参照される。
秘密の行列を含むLWEに関しては、LWEの事例は、(さらに一般的には)秘密の行列S’に関連付けられ、ハイブリッド論法によって、LWEの行列バージョンを解読することが、従来のLWEを解読するのと同程度に困難であるということを証明することができる。LWEの行列バージョンでは、「はい」の事例が、均一な行列AおよびB=S’A+Eから成る。これらの行列に次元を与えよう。S’はn×k、Aはk×m、BおよびEはn×mである。1つの例示的な構造におけるこれらの行列の図について、図3を参照する。n=n+kを設定する。Bの上部に-Aを含む行列になるように、
Figure 2024063125000012

およびPを設定する。次に、SP=E mod qとする。LWEの仮定(行列バージョン)では、このPが疑似ランダムであると仮定する。(行列用に一般化された)GSWでは、Pが公開鍵に設定される。
図3に関して、ある小さいε>0に対して、n=n+k≒n=n(1+ε/2)およびm=nlogqが存在する。そのため、n≒2k/εである。そのため、ガジェット行列Hを使用するエラーEを伴う暗号文の正しい復号のために、PEP<qε/2が必要である。
Figure 2024063125000013

が「非常に冗長な」スカラーであり、
Figure 2024063125000014

が「やや冗長な」行列であり、C=σG+Rmod qがGSW暗号文(ctxt)であり、C=M+Rmod qが圧縮された暗号文(ctxt)であるということにも注意する。
ガジェット行列に関して、GSWは、四角形のガジェット行列[64]
Figure 2024063125000015

を使用して、冗長性を暗号文に追加する(これは、準同型乗算および復号の両方に使用される)。多くの場合、Gは
Figure 2024063125000016

に設定され、
Figure 2024063125000017

はベクトル(
Figure 2024063125000018

)である。すなわち、
Figure 2024063125000019

およびGの行が、ベクトル
Figure 2024063125000020

のシフトから成る。文献において一般なように、G・(G-1(C))=Cとなるような小さい係数を含む行列を示すために、表記G-1(C)が使用される。Gが
Figure 2024063125000021

を使用する場合、{0,1}内の係数を含む適切なG-1(C)を効率的に見つけることができる。{0,1}内のエントリを含み、R上の最大階数である標準的なG-1(0)が存在する。G-1(C)を計算することは、まずG・Y=CとなるようなYを見つけ、次に、Yに近く、G-1(0)内のベクトルによって生成された格子内にあるY’を引くことによって、Yを小さくすることであると考えることができる。さらに一般的には、
Figure 2024063125000022

を使用すると、G-1(C)は[±B/2]内の係数を含む。Cが次元n×cを有する場合、G-1(C)は次元m×cを有する。
GSWの暗号化および復号の場合、スカラー行列
Figure 2024063125000023

を暗号化するために、暗号化器は
Figure 2024063125000024

を設定し、小さいノルムを有するRの要素であるエントリを含むランダムなm×m行列Xを選択し、
Figure 2024063125000025

を出力する。復号するために、次の計算を行う。
S・C=S・M’・G+S・P・X=M・S・G+E’
E’=E・Xは小さい係数を含む。E’が適切なβによって制限された係数を含むと仮定すると、E’・G-1(0)は、モジュロqを包むことができないほど小さいエントリを含み、(G-1(0)が最大階数であり、Rに関連付けられた分数体上で可逆的であるため)復号器がE’を回復できるようにし、したがってM・S・Gを回復できるようにする。S・Gが階数nを有する(実際には、部分行列として
Figure 2024063125000026

を含む)ため、復号器はMおよびσを取得することができる。βによって制限されたEに対してS・C=M・S・G+Eである場合、CがMをGSW暗号化する(GSW-encrypts)と言われる。
Mがスカラー行列でない場合、MのGSW暗号化を取得する方法は不明確である。前と同様に、暗号文の候補がC=M’・G+P・Xである場合、M’はS・M’=M・Sを満たす必要がある。Mがスカラー行列である場合、そのようなM’を見つけるのは簡単である。Mは、同じスカラーを含むスカラー行列であるが、次元がより大きい。しかし、Mがスカラー行列でない場合、そのようなM’を見つけるには、Sを知る必要があると思われる。Hiromasa他[52]は、LWE、および秘密鍵の暗号化が行列暗号化ステップに必要であるという循環セキュリティの仮定を仮定して、非スカラー行列を暗号化するGSWのバージョンを取得する方法を示している。一実施形態例では、暗号化ステップのために(循環暗号化を含まない)LWEに依存し、そのためGSW暗号文はスカラーのみを暗号化する。
GSWでの準同型演算に関して、MおよびMをそれぞれGSW暗号化するCおよびCが存在すると仮定する。次に、エラーの合計がβによって制限されたままであるということを条件として、明らかにC+CがM+MをGSW暗号化する。乗算のために、C=C・G-1(C)mod qを設定する。結果は、次のようになる。
S・C=(M・S・G+E)・G-1(C)=M・M・S・G+M・E+E・G-1(C
したがって、新しいエラーE’=M・E+E・G-1(C)がβによって制限されたままであるということを条件として、CがM・MをGSW暗号化する。新しいエラーでは、G-1(C)が小さい係数を含んでいるため、項E・G-1(C)は、元のエラーEよりわずかに大きいだけである。項M・Eを小さく保つために、2つの方針がある。第一に、Mが小さいスカラー(例えば、0または1)に対応する場合、この項はC内の元のエラーと同程度に小さくなる。第二に、E=0である場合、この項は現れることもない。例えば、定数σ∈Rによる準同型乗算を実行したい場合、C=σ・G(P・Xを含まない)を設定し、上記のようにCを計算するだけでよい。C内の平文にσが掛けられ、新しいエラーは、σにもσにも依存せず、したがって、R内で任意になることができる。
GSW暗号文の部分圧縮に関して、GSWは、(ノイズをあまり増やさずに)R内のより大きいスカラーを暗号化して、多くのビット暗号文が単一の暗号文に圧縮されるという意味では、暗号文の部分圧縮をすでにサポートしている(相対的に言って、結果として得られる圧縮された暗号文は、本明細書において実現される圧縮された暗号文よりもはるかに大きい)。簡単な例として、LWEに基づくGSW(R=Z)の場合について考え、C、...、Cl-1を、ビットσ、...、σl-1を暗号化するGSW暗号文とする。圧縮するために、単に
Figure 2024063125000027

を設定する。すなわち、(ノイズを大幅に増やさない)前述した定数による乗算手順を使用して、C’にスカラー2を掛け、その結果が加算される。明らかにCは、スカラーx=Σσ mod qを暗号化する。l<logqである限り、復号した後に、xの2進表現からビットσを読み取ることができる。
これは、スカラーx∈Rを2進数でx=Σσとしてエンコードし(r∈Rをxから独立した固定された基底として、σを「xのビット」として使用する)、復号時にxからσを回復できる限り、他の環Rに一般化される。例えば、R=Z[X]/F(X)の場合、
Figure 2024063125000028

およびk=0、1、...deg(F)-1について、基底要素2を使用することができる。
ただし、これは単にGSW暗号文を部分的に圧縮し、平文/暗号文の比率が最大で1/nmのままであるということに注意する。ノイズを小さく保つために、GSW暗号文は通常、ビットを暗号化する。大まかに言うと、ある上限Lの場合、l<LのGSW暗号文C、...、Cl-1を圧縮することができ、これらのGSW暗号文はビットσ、...、σl-1を単一の暗号文Cに暗号化し、単一の暗号文Cは、(σ,...,σl-1,0,...,0)∈{0,1}である2進表現を有するσ∈Rを暗号化する。この2進表現の場合、ρ(σ,...,σ)=Σσ・rによって与えられたマップρ:{0,1}→Rが単射になり、ρの原像を効率的に計算できるように、要素r、...、r∈Rが存在する必要がある。例えば、R=Zである場合、rを、単に
Figure 2024063125000029

になるように設定できる(Rが多項式環である場合、2進表現はやや複雑になる)。圧縮するために、単にC=Σ・G-1(r・G)mod qを設定する。言い換えると、(ノイズを大幅に増やさない)前述した定数による乗算手順を使用して、Cの平文にrを掛け、その結果を加算してよい。復号は、暗号化されたRの要素を回復し、その後、その(一意の)2進表現を抽出することによって機能する。ただし、これは単にGSW暗号文を部分的に圧縮し、平文/暗号文の比率は最大で1/nmのままである。
圧縮可能な準同型暗号化に関して、この主題は、圧縮可能な(完全)準同型暗号化の概念を定義することから始めた。次に、LWE(およびFHEを得る場合は循環セキュリティ)に基づいてその概念を実現する方法について説明する。
定義に関して、圧縮可能な(F)HEは、標準的な(F)HEに非常に似ているが、復号が第1の圧縮およびその後の「圧縮された復号」に分かれるということを主張する点が異なっている。本明細書では、ビットに対する1ホップの完全準同型暗号化の単純な事例のみに関する定義が提示されるが、同じ種類の定義が、複数のホップ、異なる平文空間、または部分的準同型、あるいはその組み合わせにも同様に当てはまる(これらすべての変形の詳細な取り扱いについては、[51]を参照)。
定義1.圧縮可能な完全準同型暗号方式(例えば、図1の方式25)は、次の5つのプロシージャ(KenGen、Encrypt、Evaluate、Compress、Decrypt)を含む。
(1)
Figure 2024063125000030

。セキュリティ・パラメータλを受け取り、秘密鍵/公開鍵の対を出力する。
(2)
Figure 2024063125000031

。公開鍵および平文のビットを前提として、低率の暗号文を出力する。
(3)
Figure 2024063125000032

。公開鍵pk、回路Π、低率の暗号文
Figure 2024063125000033

のベクトルを、Πの入力ビットごとに1つ受け取り、低率の暗号文
Figure 2024063125000034

の別のベクトルを、Πの出力ビットごとに1つ出力する。
(4)
Figure 2024063125000035

。公開鍵pkおよび低率の暗号文
Figure 2024063125000036

のベクトルを受け取り、1つまたは複数の圧縮された暗号文
Figure 2024063125000037

を出力する。
(5)
Figure 2024063125000038

。秘密鍵および圧縮された暗号文に関して、平文のビットの列を出力する。
プロシージャDecryptは、各ベクトルを別々に復号することによって、圧縮された暗号文のベクトルに拡張される。この方式は、すべての回路Πおよび平文のビット
Figure 2024063125000039

について、Πの入力ビットごとに1つである場合に、正しい。次の方程式(1)を参照する。
Figure 2024063125000040

Decryptの出力がΠの出力の長さよりも長くなる可能性があるため、プレフィックスが許容されるということに注意する。
十分に長い出力を伴うすべての回路Π、平文のビット
Figure 2024063125000041

、および方程式1におけるような低率の暗号文
Figure 2024063125000042

について、
Figure 2024063125000043

となる場合、この方式は比率α(λ)∈(0,1)を有する。
ガジェット行列Hに関して、例示的な構造の1つの変形における新しい技術的構成要素は、「ほぼ正方形の」ガジェット行列である。まず、GSWにおいて使用されている通常のMicciancio-Peikertのガジェット行[64]
Figure 2024063125000044

によって高い比率を得ることができない理由について考える。(前述したように、[52]と同様に)
Figure 2024063125000045

の暗号化が、
Figure 2024063125000046

についてC=M’・G+P・Xの形態を有する場合、単にCがMの列数のm/n倍の列を含んでいるため、比率は最大でn/mになることができる。この比率は、通常のGの場合の1/logq未満である。
当然ながら、B>2について
Figure 2024063125000047

の場合に、
Figure 2024063125000048

を使用することができ、G-1(C)はまだ、最大でB/2の大きさの係数を含む。しかしこれは、単に自明でない
Figure 2024063125000049

が少なくとも2の次元を有さなければならないため、(
Figure 2024063125000050

の場合に)よくても比率1/2の方式を生むことしかできない。1に近い比率を達成するために、Gを「ほぼ正方形の」行列に置き換えることができる。Gが必要とする特性は、以下が成り立つような既知の行列F=G-1(0)∈Rm×mが存在することである。
1.Fが小さいエントリ(=q)を含む
2.G・F=0 mod q
3.FがR上の最大階数である(ただし当然ながら、Gのカーネルであるため、R上ではない)
そのようなFを前提として、G-1(C)内のエントリがFの係数よりあまり大きくならないように、任意の暗号文
Figure 2024063125000051

についてG-1(C)を容易に計算することができる。
例示的な設定では、新しいガジェット行列(混乱を避けるために、GではなくHと呼ばれる)が(「ほぼ正方形」になるように)ほぼ最大の階数モジュロqを有するのが望ましく、そのためF=H-1(0)が非常に低い階数モジュロqを有するのが望ましい。R上の最大階数を有するが、非常に低い階数モジュロqを有する低ノルム行列Fが存在するようになった後に、Hが単にFのmod-qカーネルの基底として設定される。
簡潔にするために、ある整数p、tについてq=p-1が存在すると仮定する。次のように、実数上の最大階数を有するが、階数1モジュロqを有する「やや小さい」係数を含む行列F’が生成され得る。
Figure 2024063125000052

F’のエントリが最大で(q+1)/p≒q1-1/tのサイズを有し、さらにすべてのベクトル
Figure 2024063125000053

について次式が存在するということに注意する。
Figure 2024063125000054

さらに、この制限は、特に
Figure 2024063125000055

の場合に、かなり厳しくなる。
このF’は、実施形態例において、r×r単位行列
Figure 2024063125000056

とのF’のテンソル積を計算することによって、(任意のrについて)実数上の階数r・tを有するが、階数rモジュロqを有する行列Fを生成するために使用され得る。これは、lのノルムに関する上記と正確に同じ制限を生み出す。ガジェット行列Hは、Fモジュロqのゼロ空間に広がる行を含むr(t-1)×rt行列である(任意のそのような行列が役立つ)。したがって、この例示的な方式の場合、
Figure 2024063125000057

を設定する。
以下の圧縮された暗号文の復号では、「やや小さい」F=H-1(0)が使用される。具体的には、
Figure 2024063125000058

での行列Z=MH+E(mod q)を前提として、最初にこの行列にFモジュロqを掛け、(HF=0(mod q)であるため)ZF=(MH+E)F=EF(mod q)を得る。ただし、
Figure 2024063125000059

であり、したがって、整数上で(ZF mod q)=EFである。ここで、Fが実数上の最大階数を有するという事実を利用して、E:=(ZF mod q)× F-1を回復する。次に、Z-E=MH(mod q)を計算し、Hが階数nモジュロqを有しているため、MHからMを回復することができる。したがって、圧縮された暗号文を復号する際の正しさを保証するために、圧縮された暗号文におけるノイズの大きさに対する制限
Figure 2024063125000060

を使用するのは、十分である。
制限q=p’-1は、実際は不要であり、多くの変形が可能である。次のかなりおおざっぱ方法は、発生する可能性がある任意のqに有効である。
Figure 2024063125000061

の場合に、ベクトル
Figure 2024063125000062

モジュロqの倍数の格子Lについて考える。
Figure 2024063125000063

の場合に、i∈[t]について、F’の行がLベクトル
Figure 2024063125000064

であるとする。明らかにF’は、階数1モジュロqを有する(F’が整数上の最大階数であるという証明は省略される)。本明細書では、F’のすべてのエントリが小さいということが請求される。i∈[t]、j∈{0,...,t-1}について
Figure 2024063125000065

である、
Figure 2024063125000066

のj番目の係数について考える。i>jの場合、
Figure 2024063125000067

の大きさが、q/ai-j+a≦q/a+at-1≦2at-1によって制限される。j≧iの場合、
Figure 2024063125000068

が[q,q+a]内の整数であり、したがって最大でaモジュロqであるということを観察する。したがって、
Figure 2024063125000069

は最大でa≦at-1モジュロqである。q≧tである限り、at-1≦(q1/t・(1+1/t))t-1<q(t-1)/t・eが存在する。すなわち、PF’Pが、q=p-1が使用された場合とほぼ同じ程度に小さくなる。上で示したように、いずれにせよqはβを超える必要があり、βは、暗号文のノイズに対する制限であり、そのためq>tという条件は、すでに満たされている可能性がある。
相互に相対的な素数pについてq=p…pである場合、ベクトル
Figure 2024063125000070

モジュロqの倍数の格子LからF’を取得することができる。具体的には、F’のi番目の行を(0,...,0,q/p,0,...,0)とする。このF’は明らかに最大階数であり、pがほぼ同じサイズである場合、q(t-1)/tに相当するエントリを含む。
ここで、高率のHE方式および圧縮技術などの、例示的な圧縮可能な準同型暗号方式を含む異なる手順について詳細に述べる。
鍵生成の場合、秘密鍵/公開鍵の対を生成するために、2つの均一にランダムな行列
Figure 2024063125000071

および
Figure 2024063125000072

、ならびに小さい行列
Figure 2024063125000073

を選択し、疑似ランダム行列
Figure 2024063125000074

を計算することができる。
秘密鍵は行列
Figure 2024063125000075

であり、公開鍵は
Figure 2024063125000076

であり、S×P=S’×(-A)+I×B=E(mod q)となる。
暗号化、復号、および評価に関して、小さいスカラーの暗号化および復号、ならびに暗号化および復号に対する回路の評価が、正確に元のGSW方式におけるように、実行され得る。つまり、小さいエントリを含む行列X∈Rm×mを選択し、次に、暗号文C:=σG+PX(mod q)を出力することによって、スカラーσ∈Rが暗号化される。
復号の不変式は、E=qで、SC=σSG+E(mod q)になる。復号するには、Z:=S×C mod qを設定し、次に、トラップドアをGに使用して小さいノイズEを除去し、σを見つける。
評価も、GSWにおけるのと同じであり、加算が、暗号文行列モジュロqを単に加算することによって実装され、乗算が、C:=C×G-1(C)mod qとして実装される。これらの動作が(暗号化されたスカラーが小さい限り)復号の不変式を維持することを示すことは、やはり、正確にGSWにおけるように行われる。
圧縮された復号に関して、圧縮された暗号文が、平文行列
Figure 2024063125000077

を暗号化する行列
Figure 2024063125000078

であるということを想起されたい。圧縮された暗号文の復号の不変式は、低ノルム行列
Figure 2024063125000079

の場合、SC=MH+E(mod q)であり、Hは、前述したほぼ正方形のガジェット行列である。PEP<βである限り、トラップドアF=H-1(0)を使用して小さいノイズEを除去し、行列Mを回復することによって、復号を完了することができる。
圧縮に関して、ここで、多くのGSWビット暗号を単一の圧縮された暗号文に詰め込む方法が示される。便宜上、前述した部分圧縮技術を使用して(多くの)GSW暗号文を圧縮しており、これらのGSW暗号文が、ビットを(より少ない)暗号文に暗号化し、これらの暗号文がRの要素を暗号化するということが仮定される。しかし、圧縮全体が2つのステップではなく1つのステップで実行された場合、最終的な圧縮された暗号文のノイズ・レベルがさらに低くなるということに注意する。元のGSW暗号文が、例示的な圧縮されたHE方式に適した鍵Sに従っているということも仮定される。そうでない場合、「鍵の切り替え」を行って、そのようにすることができる。鍵の切り替え[16、15、39]は、準同型復号を介して、ある鍵に従っているメッセージから、別の鍵に従っているメッセージに変換するが、ノイズ・レベルを減らさず、ブートストラッピングよりはるかに計算コストが低い「線形の」方法で、これを行う。
の要素σu,vをそれぞれ暗号化する、
Figure 2024063125000080

個のGSW暗号文
Figure 2024063125000081

、u,v∈[n]について考える。すなわち、S×Cu,v=σu,v・SG+Eu,v(mod q)となる。
これらの暗号文をすべて単一の圧縮された暗号文に詰め込むために、Tu,vによって、エントリ(u,v)に1、それ以外に0を含む正方形のn×nシングルトン行列、すなわち
Figure 2024063125000082

を示す(
Figure 2024063125000083


Figure 2024063125000084

は、それぞれ位置u、vに1を含む次元nの単位ベクトルである)。さらに、T’u,vによって、上部にk個のゼロ行が埋め込まれたバージョンのTu,vも示す。
Figure 2024063125000085

次式を計算することによって、Cu,vが圧縮される。
Figure 2024063125000086

まず、T’u,v×Hがn×n行列であり、したがって、G-1(T’u,v×H)がm×n行列であり、Cu,vがn×m行列であるため、必要に応じて
Figure 2024063125000087

であるということに注意する。次式を観察することができる。
Figure 2024063125000088

ここで、
Figure 2024063125000089

である(S=[S’|I]および
Figure 2024063125000090

であり、したがってST’=S’×0+I×T=Tであるため、この等式(*)は有効である)。
上記の圧縮された復号が行列Mを回復し、その後、Mのエントリであるσu,vを読み取ることができるということに注意する。
基本的な圧縮可能なHEインターフェイスに加えて、例示的な方式は、PIRアプリケーションにおいて役立つ複数のその他の動作もサポートする。以下では、それらの動作について説明する。
手順(i)(圧縮された暗号文の暗号化)として示された手順に関しては、小さいエントリを含むランダムな
Figure 2024063125000091

を選択し、疑似ランダムなX’:=PX mod qおよびやや冗長な平文
Figure 2024063125000092

を計算し、暗号文C=M+X’mod qを出力することによって、圧縮された暗号文において行列
Figure 2024063125000093

を直接暗号化することができる。
手順(ii)(圧縮された暗号文の加法準同型)として示された手順に関しては、圧縮された暗号文が加算され、小さいスカラーによって乗算されるということは明らかである。実際、M、MがR上の行列であり、σが小さいスカラーである場合、およびi=1、2についてSC=MH+Eが存在する場合、S(C+C)=(M+M)H+(E+E)およびS×σC=σMH+σEとなる。(E+E)およびσEが、βより小さいlのノルムを有する限り、結果は、それぞれM+Mmod qおよびσMmod qの有効な圧縮された暗号文である。
手順(iii)(圧縮された暗号文によるGSW暗号文の乗算)として示された手順に関しては、より小さいスカラーσを暗号化するGSW暗号文Cに、R上の行列Mを暗号化する圧縮された暗号文
Figure 2024063125000094

を掛けて、行列σM mod qを暗号化する圧縮された暗号文C”を取得することもできる。これは、C”:=C×G-1(C’)mod qを設定することによって行われる(C’がn個の行を含んでいるため、G-1(C’)は明確に定義されるということに注意する)。正確さのために、R上のSC=σSG|EおよびR上のSC’=MH|E’が存在することを想起すると、次にようになる。
Figure 2024063125000095

これは、ノイズE”=σE’+EG-1(C’)がまだ制限βより小さい限り、σM mod qの有効な圧縮された暗号化である。
手順(iv)(平文行列によるGSW暗号文の乗算)として示された手順に関しては、GSW暗号文の右に圧縮された暗号文を掛け、それらの右に平文行列を掛ける、同じ技術である。実際、
Figure 2024063125000096

が平文行列であり、M’が、その埋め込まれたバージョン
Figure 2024063125000097

である場合、やや冗長な行列M=M’×Hは、ノイズのない暗号文であると見なされることができ(S×M=MHに注意する)、したがって上記のように、GSW暗号文によって乗算されることができる。唯一の違いは、この場合、大きいスカラーを暗号化するGSW暗号文も使用できることである。「ノイズのない暗号文」MはE’=0を含み、したがってσがいかに大きくても、上記の項目σE’は、得られたノイズの項に現れない。
その他の多数の可能な最適化および変形が、以下で例示的なPIRアプリケーションを説明するときに、説明される。1つの例示的な主要な最適化は、より大きいノイズを処理するためのモジュラス切り替え技術の使用である。
パラメータを設定することに関して、セキュリティ・パラメータに応じて、行列の次元n,n,n、ならびにノイズ制限αおよびβを含む、さまざまなパラメータの設定方法を示すことが、まだ行われていない。ブートストラッピングなしで、GSWのやや準同型の変形が使用される場合、評価された暗号文内のノイズを制限するパラメータβは、計算されるのが望ましい関数によって決まる。例示的なPIRアプリケーションに関して、(完全に指定された定数を含む)1つのそのような具体的な例が、以下に示される。ここでは、GSWをブートストラッピングと共に完全準同型方式として使用する場合のパラメータの漸近解析が示される。つまり、暗号化データに対して、(GSW FHE方式を使用して)長い出力を伴う任意の関数を評価したいと思い、結果として得られた暗号化されたビットを、復号可能なままである圧縮された暗号文に詰め込む。
実施形態例は、圧縮された暗号文が、所定の選択のある小さいεについて1-εの比率を有するということを保証する。これは、
Figure 2024063125000098

が必要であるため、n,nの両方を少なくとも
Figure 2024063125000099

になるように設定することが十分であるということを意味する。
Figure 2024063125000100

をほぼ正方形のガジェット行列Hに使用することは、復号を可能にするために、ノイズを
Figure 2024063125000101

未満に保つべきであるということを意味する。
[43、17]に従って、新しい暗号文のサイズαのノイズおよび次元n×mの暗号文行列と共にGSWを使用する場合、任意の計算が実行されてよく、その後、実行された結果をブートストラップし、ブートストラッピング後のノイズがam未満によって制限される。上記の技術およびさらに方程式(3)の圧縮を使用して、部分圧縮を1つのステップに統一すると、すべてPEu,v,w<am2を満たしている
Figure 2024063125000102

個のエラー行列Eu,v,wが得られる。したがって、圧縮後のエラーの項はΣu,v,wu,v,w-1(何か)であり、そのサイズは
Figure 2024063125000103

によって制限される。したがって、制限
Figure 2024063125000104

を使用する方式の事例を示すことは、十分である。β<qε/2/2が必要であるため、次の正当性制約が決定される。
Figure 2024063125000105
α≦poly(k/ε)を設定し、これはq=(k/ε)θ(1/ε)が必要であるということを意味している。したがって、この方式のセキュリティは、ギャップkθ(1/ε)を含むLWEの困難さに依存し、特に、εが定数である場合、多項式のギャップを含むLWEに依存してよい。
ノイズの増加を遅らせるために適用できる多くの技術が存在するということに注意する。これらの技術(例えば、モジュラス切り替え)の多くが、例示的なPIRアプリケーションとの関連において以下で説明される。これらの技術は、漸近的挙動を変更せずに(q=(k/ε)θ(1/ε)を常に必要とする可能性がある)、指数の定数を大幅に改善することができる。
ガジェット行列Hを含まない変形に関して、ここでは、変形がガジェット行列Hを使用しないが、メッセージがノイズより大きくなるようにメッセージの拡大に依存するという点において、Regevの暗号化により類似する、例示的な方式の変形が説明される。具体的には、この方式は、暗号文モジュラスより小さい平文モジュラス(p<q)を特徴とする。圧縮された暗号文は、平文ベクトル
Figure 2024063125000106

を暗号化するベクトル
Figure 2024063125000107

であり、復号の不変式は、低ノルムのベクトル
Figure 2024063125000108

の場合に
Figure 2024063125000109

になる。制約β=q/2pが存在し、
Figure 2024063125000110

である限り、(Regevの暗号化と同様に)
Figure 2024063125000111

によって平文を回復することができる。
圧縮された暗号文の比率は、
Figure 2024063125000112

である。前と同様に、小さいエラー
Figure 2024063125000113

を保証し、p≒q1-1/2εを設定することができる。これによって
Figure 2024063125000114

が得られ、n<n(1-ε/2)と共に比率1-εをもたらす。
GSW暗号文を圧縮することは、上記に似ているが、ビット暗号をスカラー暗号に部分的に圧縮するときに、
Figure 2024063125000115

によってサイズを変更するべきであるという点が異なる。すなわち、ビットb,...,bを暗号化する
Figure 2024063125000116

GSW暗号文を前提として、上で提示された技術は、それらの暗号文を、
Figure 2024063125000117

を暗号化する単一のGSW暗号文に部分的に圧縮するために使用され得る。これによって、あるσ∈Zについての形態
Figure 2024063125000118

のスカラーを暗号化するGSW暗号文を生成する。σを暗号化するn個のそのような暗号文Ciを前提として、これらの暗号文は、
Figure 2024063125000119

を設定することによって圧縮され、
Figure 2024063125000120

は、k個の0が先頭に追加されたi番目の単位ベクトルである(すなわち、
Figure 2024063125000121

である)。その結果は、ベクトル[σの圧縮された暗号化である。
この変形も、圧縮された暗号文の加法準同型、およびGSW暗号文の右に圧縮された暗号文を掛ける能力を享受している(積を暗号化して圧縮された暗号文を生成している)ことを確認するのは簡単である。
これで、暗号文の(F)HE圧縮の一般的な方式が説明されたので、プライベート情報検索(PIR)へのこれらの方式の応用が説明される。PIRは、クライアントに、どのエントリが取り出されたかをサーバが学習することなく、サーバによって保持されているデータベースからエントリを取り出させる。単純な解決策は、サーバにデータベース全体をクライアントに送信させ、Chor他[25]は、より帯域幅効率が高い解決策の研究を開始した。PIRプロトコルは、(安全でない解決策と比較して)帯域幅のオーバーヘッドを減らすための方法を提供する。データベース内のエントリの数Nにおいて帯域幅のオーバーヘッドを劣線形にする。
準同型暗号化がその目的に使用されるということは良く知られている。クライアントは、必要なエントリのインデックスを暗号化することができ、サーバは、暗号化されたエントリを返すテーブル検索機能の準同型評価を実行することができる。この解決策は、サーバに単一の暗号化されたエントリを返させるため、帯域幅のオーバーヘッドが、エントリの数とは無関係に、ほとんど準同型方式の平文と暗号文の比率のみになる。しかし、(各動画が数ギガバイトの長さになる動画データベースにおけるように)エントリ自体が大きい場合、このNと無関係なオーバーヘッドでさえ、コストが非常に高くなる可能性がある。詳細な説明については、[55、1、60]を参照する。明らかに、圧縮可能なHE方式が存在する場合、この方式を使用して帯域幅のオーバーヘッドを任意に1に近づけることができる。
任意に1に近い平文から暗号文への膨張率をサポートするDamgard-Jurikの暗号化方式[31]を使用する、大きいエントリのための最初の単一サーバ、比率1のPIR方式が、Kiayias他[55]によって説明された。しかし、Damgard-Jurikは、加法準同型のみであるため、その解決策は、はるかに複雑になり、Ishai-Paskinの分岐プログラムの準同型構造[53](内部でDamgard-Jurikを使用する)に依存している。したがって、例示的な圧縮可能なHE方式は、Damgard-JurikのN番目の剰余性の困難さの仮定に依存する代わりに、(耐量子安全性)LWEの困難さに依存する比率1のPIRを得るための新しい手段を提供する。帯域幅以外に、現実的なPIRシステムは、計算効率も心配しなければならない。PIR方式は、照会ごとにデータベース内のすべてのビットを処理しなければならず、ほとんどの単一サーバのPIR方式は、かなり高コストの処理を各ビットに適用する。特に、[55]の最適な比率の方式は、最小限、ビット・モジュロRSAモジュラス(少なくとも2048ビット)ごとに1回の乗算を適用しなければならない。このことが、SionおよびCarbunarの研究[77]によって強調されており、この研究は、「最近の現実のハードウェア上の、自明でない単一サーバのPIRプロトコルのデプロイメントは、データベース全体を自明に転送することよりも、時間効率が数桁低かった」という結論を(2007年に)下した。データベース全体を送信することが、計算を含まないわけではないということに注意する。この送信は、通信セキュリティの目的で、少なくともデータベース全体を暗号化することを含んでいた。それにもかかわらず、Sion-Carbunarの研究の後の10年間にわたって、本研究の前に、計算に関して自明な方式と競争できる単一サーバのPIR方式は存在しなかった。以下では、帯域幅効率が高いだけでなく、データベース全体のAES暗号化より性能も優れている構造を生成する、例示的な方式に関する一連の最適化が説明される。
例示的な最適化されたPIR方式に向かって進むことに関して、開始点は基本的な階層的PIRであり、N個のデータベース・エントリが、次元N=N×…×Nの超立方体に配置され、この方式は次数dの準同型を使用する。
(1)クライアントのインデックスi∈[N]が、基底N,...,Nの混合基数で表され、すなわち、
Figure 2024063125000122

となるように(i,...,i)として表される。クライアントのメッセージが処理されて、すべてのiの暗号化された単項表現を取得する。すなわち、次元jごとに、暗号化されたビットの次元Nのベクトルを取得し、このベクトル内のi番目のビットは1であり、その他すべてのビットは0である。
(2)第1の次元を処理し、各超行(hyper-row)u∈[N]に、第1のベクトルからのu番目の暗号化されたビットを掛け、i番目の超行を除くすべてをゼロにする。i番目の超行(例えば、第1の次元内にある)が、単に、第1のインデックスがiである超立方体のスライスであるということに注意する。すなわち、形態(i, *, *, …, *)のインデックスを持つ超立方体内のすべてのエントリである(*は何でもよい)。同様に、第2の次元内のi番目の超行は、形態(*, i, *, …, *)のインデックスを持つすべてのエントリである。次に、結果として得られた暗号化された超行をすべて加算し、このようにして、データベースのi番目の超行のみから成る次元N/N=N×...Nのより小さい超立方体を得る。
(3)同様の方法が引き続き使用され、選択されたエントリiのみから成るゼロ次元の超立方体が残されるまで、1つずつ他の次元を折り畳む。
データベースのサイズをNからN/Nに縮小する1番目のステップ(ステップ(1))は、このステップが最も多くのデータを処理するため、通常、最も高コストであるということに注意する。一方、そのステップが、(それに続くステップにおいて必要とされる平文による平文の乗算に対して)平文による暗号文の乗算のみを必要とするため、このステップは、他のステップよりも良く最適化できることがある。
これで、計算効率も良い高率のPIR方式をもたらす、例示的な最終的構造を得るための一連の導出および最適化が説明された。この構造は、帯域幅と計算の間のトレードオフを特徴とする。以下では、比率4/9を有する変形が説明される。
環LWEを使用することに関して、通常のLWE方式のように、環(またはモジュール)の変形に切り替えることによって、性能を改善することができ、LWEシークレットが、大きい拡大体上で低い次元を有している。大きい行列を操作することを必要とする代わりに、これらの変形は、同じ大きい拡大体上の低次元の行列を操作し、これらの低次元の行列は、表すために必要なビット数が少なく、(FFTを使用して)より高速に操作され得る。同等のセキュリティを得るために、基本的なLWE方式が次元kのLWEシークレットを必要とする場合、新しい方式は、k’d≧kとなるように、次数dの拡大体上で次元k’のシークレットを有する(環LWEの場合、k’=1およびd=kが存在する)。この方式の種々の行列は、拡大体の要素から成り、それらの次元は、(それぞれ、n、mの代わりに)n’=n/dおよびm’=m/dである。以下では、RLWEの文脈においてより小さい値を強調するために、表記n’およびm’が使用される。
FFTを軽減することに関して、使用され得る、(大きいデータベースの場合に)例示的なPR方式をより効率的にする1つの最適化は、処理中のFFTの数を最小限に抑えるようにデータベースを前処理することである。本方式の環LWEの変形における動作は、要素が評価(CRT)基底で表されたときに最も効率的になる、基礎になる体上の行列乗算、および係数(デコーディング)基底での表現を必要とするG-1(・)の適用を含む。これら2つの間の変換は、FFTを使用して準線形時間で実行されるが、まだ間違いなく、実装において使用される最も高コストの動作である(例示的な標準的サイズの場合、これらの表現間で要素を変換することは、CRT基底で表された2つの要素を乗算することよりも、おそらく10~20倍遅い)。
XPIRの研究[1]におけるように、データベースを前処理し、そのすべてをCRT表現に入れることによって、FFTの数を大幅に減らすことができる。このようにして、iの暗号化された単項表現を取得するためにクライアントのメッセージが処理されるとき(これは、データベース内のエントリのサイズとは無関係である)、およびその後、第1の次元が折り畳まれた後に再度にのみ、FFTを計算することが必要である(そのため、FFTは、N/N個のデータベース・エントリを暗号化する圧縮された暗号文のみに適用される)。
を(FFTのオーバーヘッドと相対的に)十分に大きく設定した場合、第1の次元を折り畳んだ後に、FFTが償却され、わずかになる。一方、初期のFFT(そのうちの1つは、およそn’・m’・Nを含む)もわずかになるように、Nを(N/Nおよびエントリの長さLと相対的に)十分に小さく設定する必要がある。
以下の説明では、N=2でのさまざまなパラメータが示され、良好なトレードオフを提供しているように見える。他のNについては、それらを大きくする理由が(ほとんど)ないため、N=N=…=N=4を使用してよい。以下の構造では、使用できるそのような小さいNの数に対する制限が(ほとんど)ないということに注意する。以下の例示的な構造は、N=220個のエントリを含むデータベースに関して示されているが、この構造は、はるかに大きいデータベースを処理することができる(無限大まで、および少なくとも
Figure 2024063125000123

個のエントリを超えて、同じパラメータが機能する)。
クライアント側の暗号化に関して、PIR方式との関連において、暗号化器は、復号鍵を持っているクライアントである。したがって、クライアントは、暗号文ごとに新しい疑似ランダムな公開鍵Pを選択し、C:=σG+Pmod qを設定することによって、秘密鍵を使用して暗号文を作成することができる。これによって、わずかに小さいノイズの暗号文、すなわち(公開鍵によって暗号化された暗号文から取得するE×Xとは対照的に)単に低ノルムのEが得られる。
例示的なPIR構造は小さい次元N=N=…=4を使用しているため、クライアントは、これらの次元の暗号化された単項ベクトルを直接送信してよい。すなわち、
Figure 2024063125000124

が1を暗号化し、その他が0を暗号化するように、各j=2,3,...について、クライアントは4つの暗号文Cj,0,...,Cj,3を送信する。
しかし、第1の次元の場合、大きいN=2が存在するため、クライアントがiのビットの暗号を送信し、この次元の暗号化された単項ベクトルを計算するためにGSW準同型が使用される。したがってクライアントは、全部でlogN+(N+N+…N)個の暗号化されたビットを送信し、例示的な示されたサイズでは、これは8+4×6=32個の暗号化されたビットに達する。
複数のG行列に関して、例示的な方式での累積ノイズは、形態E×G-1(何か)の多くの項を含むが、それらのすべてが等しく作成されるわけではない。特に、第1の(大きい)次元Nを折り畳むときに、GSW暗号文が評価され、それらのGSW暗号文のノイズは、それ自体、そのようなノイズの合計である。これらのGSW暗号文に平文行列を掛けた場合、より大きいE×G-1(何か)×G1(何か)を得る。一方、他の(小さい)次元の場合、これらの次元に新しい暗号文が掛けられるため、はるかに小さいノイズが達成される。この不均衡は、リソースの浪費につながる。
さらに、クライアントのビットの初期処理中のG-1(何か)による乗算が、少量のデータのみに適用される。しかし、GSW行列と平文データの間の乗算は、データベース内のすべてのデータに触れる。したがって、後者は非常に高コストであり、含まれる行列の次元をできるだけ多く削減することは、有益である。
これらのリソースのすべてについて、計算の異なる部分で、異なるG行列を使用する方が良い。特に、クライアントのビットを最初に処理するときに、(G-1(0)のより小さいノルムを有する)非常に幅広かつ短いG行列が使用されてよく、その後、より正方形/高ノルムのG行列が使用され得る。
モジュラス切り替えに関しては、注意深いバランスのG行列を使用しても、例示的な圧縮された方式とって望ましい程度にノイズを小さくすることはできない。したがって、[16、15]のモジュラス切り替え技術が使用され得る。すなわち、大きいモジュラスQに対する計算が実行され、その後、最終結果をクライアントに送信する前に、より小さいモジュラスqに切り替えられ、それによって、おおよそq/Qによって、ノイズの大きさを変更する。
例示的な初期ノイズ解析は、GSW G行列が非常に幅広かつ短くなるように設定されている場合、幅広かつ短い行列を使用することによって、計算全体を通じてノイズを非常に小さく保ったため、おおよそ64ビットのモジュラスqを使用できるということを示した。しかしこれは、サーバでの帯域幅、計算、およびストレージにおける大きい増加を伴った。例えば、サーバは、平文行列M自体より32倍を超えて大きいすべての平文行列G-1(M’)を、CRT基底に格納する必要がある(また、その場合に1/3より良い比率の達成を可能にするパラメータは見つけられなかった)。
より良い選択肢は、少なくとも最初に、大幅に大きいモジュラスを使用し、その後、モジュラス切り替えを使用してモジュラスを64ビット(または場合によっては、さらに小さいビット)に縮小することである。これによって、ノイズに対するシステムの耐性を高くし、パラメータの多くを改善する。例えば、Q≒q25を使用することによって、実際のデータのG行列を単位行列に置き換えることもできる。2倍の次元のLWEシークレットを使用し、2倍を超えて大きい数値を書き込む必要があることを意味する場合でも、単位行列を使用することはまだ、大きい定数係数を省くことになる。さらに、単位行列の使用は、より正方形の行列H(例えば、2×3)を使用させ、それによって、より高い比率を得る。
モジュラス切り替えを使用するには、秘密鍵が、均一に選択されるのではなく、エラー分布から選択される必要があるということに注意する(また、モジュラス切り替えを実装できる方法において、ビットの一部に対して、σ自体ではなく、q’・σが暗号化される(Q=q’・q))。
ここで、詳細なPIR方式の例が提示される。この例は一部分において図4と共に提示され、図4は、PIRに応用されて圧縮可能な(F)HEを使用する例示的な方法のフローチャートである。この例では、例示的な構造が、インデックス213および次元212の円分環、すなわち、
Figure 2024063125000125

に分類される。新しいGSW暗号文の暗号文モジュラスは、q≒246およびq’≒260での複合Q=q・q’である(qおよびq’は、両方とも原始的な212番目の原始根を含み、したがってFFTモジュロq・q’を実行するのが容易である)。環モジュロの下で、これら3つのモジュラスが、R、R、Rq’によって示される。
この例では、R上の環LWEが使用され、特に、LWEシークレットは、エラー分布から選択されたR内のスカラーである[7](最大111ビットのサイズのモジュラスQと共にこの円分環を使用して、128ビットのセキュリティ・レベルを生み出している、[2]の表1を参照)。
この例における例示的な構造での種々の行列の場合、次元k’=1、n’=2、およびn’=n’=3が使用され、平文の要素がRから選択される。したがって、
Figure 2024063125000126

の比率を達成することができる。しかし、処理中に、ほとんどの暗号文は、より大きいQ=q・q’のモジュロになり、これらがqに切り替えられたモジュロになるのは、クライアントへの送信前のみである。上で説明された構造は、2×3行列Hと共に使用される。
図4は、クライアント110によって実行される可能性のある動作を左側に示し、サーバ170によって実行される動作を右側に示している。図4では、設定するための図1の協調動作およびこの例の圧縮可能な(F)HE方式の使用が示されていない。しかし、実行される1つの設定動作がブロック405によって示されており、サーバ170が、ユーザの個人情報の平文のインデックスが作成された(例えば、階層的)データベースを構築し、例えば、N個のデータベース・エントリが、(例えば、N個の基数を含む)N次元の超立方体内にある。このデータベース28-1は、クライアント110によって、またはその他のプロバイダによって提供されたユーザ201の個人情報を使用して構築され得る。以下の例は、データベース28-1内の平文を使用するが、データベース28-1は、(平文の代わりに)ユーザ201からの暗号文を格納してよい。
1つの例では、ブロック406で、サーバ170が、ユーザ201に関連付けられた平文のサイズNのデータベースを構築し、ブロック408で、サーバ170が、サイズNのデータベースを超立方体データベースに分割する。さらに詳細には、サイズNのデータベースが、次元N=256×4×4×...×4の超立方体に分割される。エントリi∈[N]を取り出そうとしているクライアントは、最初に、すべてのj>1について、i∈[256]およびi∈[4]で、iを(i,i,...i)として表す。ブロック415で、クライアント110が、クライアントが必要とするデータベース・エントリのインデックスi(例えば、N個の基数の混合基数で表されたインデックスi)を暗号化する。この暗号化にはEncryptプロシージャを使用する。さらに詳細には、σ1,0,...σ1,7をiのビットとし、次にクライアント110は、スカラーq’・σ1,0およびσ1,1,...,σ1,7をGSW暗号文内で暗号化する(モジュロQ)。j=2,...,Dについて、クライアントは、GSW暗号文を使用して、位置iでは1であり、それ以外の位置では0である、単位ベクトル
Figure 2024063125000127

のビットを暗号化する。この例では、3つの異なるガジェット行列が、これらのGSW暗号文に使用される。
(a)iのLSB(GSWを使用して乗算される右端のビット)の場合、ガジェット行列Gがすべて除去され、単位元のみが使用されるが、ビットσ1,0にq’を掛ける。すなわち、
Figure 2024063125000128

となるように、
Figure 2024063125000129

が存在する。
(b)iの他のビットの場合、幅広かつ短い
Figure 2024063125000130

が使用され、
Figure 2024063125000131

である。各ビットσ1,tが、SC1,t=σ1,tSG+E(mod Q)となるように、
Figure 2024063125000132

によって暗号化される。
(c)他のi(j>1)の単項表現をエンコードするビットの場合、やや四角形(3×6)の行列
Figure 2024063125000133

が使用され、
Figure 2024063125000134

である。
ブロック420で、クライアント110が、これらすべての暗号文を、暗号化されたインデックスを使用するサーバからの項目の検索要求の一部として、サーバに送信する。iのビットの暗号化は、LSBを暗号化するための9つの要素および他の7ビットを暗号化するための7・3・159=3381個の要素から成る。ブロック425で、サーバが要求を受信する。ブロック430で、サーバ170が、クライアントのメッセージを処理して、(例えば、D個の)インデックス要素(例えば、(i,...i))の単項表現を取得する。この処理には、上で説明された手順(iii)圧縮された暗号文によるGSW暗号文の乗算を使用してよいということに、注意する。例えば、要求は、GSW照会暗号文の形態であってよい。さらに詳細には、他のインデックスiごとに、4・3・6=72個の要素が、iの単項表現を暗号化するために使用される。N-220個のデータベース・エントリを含むこの数値的例では、さらに6つのiが存在するため、クライアントが送信する環の要素の数は、9+3381+6・72=3822になる。各要素は、指定するために106・212ビットを必要とし、したがって、クライアントによって送信されるビットの総数は、106・212・3822≒230.6(大量の198MB)になる。クライアントの照会のサイズが問題になる応用の場合、パラメータを微調整することができる(例えば、比率において2の係数を諦め、クライアントの照会のサイズにおいて2~4倍の改善を得る)。さらに良いことに、比率に関して妥協せずにクライアントの照会のサイズにおける極めて大きい削減を得るために、本設定では、SealPIRの研究[5]における照会拡張技術も適用され得る。
ここで、ブロック430の前にデータベース28-1が前処理されているということを仮定していることに注意する。すなわち、ブロック410で、サーバが、各エントリをR上の2×2の平文行列に分割することによって、データベースを前処理する(q≒246であることを想起されたい)。したがって、各行列は3・2・46・212=220.11ビット(おおよそ138KB)を保持する。サーバは、これらの行列内の各エントリを、CRT表現モジュロQでエンコードする(ブロック410)。データベース28-1が平文を含む場合、この後の追加のプロセスが、上で説明された手順(iv)平文行列によるGSW暗号文の乗算を使用してよいということに注意する。CRT表現モジュロQの結果は、平文である。この例は、平文(または一部平文)のデータベース28-1を使用しているが、データベースは暗号化されることもでき、その後、上で説明された手順(iii)圧縮された暗号文によるGSW暗号文の乗算が使用されることができるということにも注意する。平文行列内のエントリは小さい([±245]以内)が、それらのCRT表現モジュロQは小さくない。したがって、この表現は、サーバでのストレージ要件における106/46≒2.3倍の膨張を伴う。以下で、単一のデータベース・エントリをエンコードするために必要な行列の数になるように、Lが設定される(単一のJPEG画像は、L≒3を含み、4GBの動画は、約29K個の行列でエンコードされる)。
クライアントの暗号文を前提として、ブロック435で、サーバが、第1の次元について、GSW評価を使用して単位ベクトル
Figure 2024063125000135

のGSW暗号化を計算してよい(これは、N=256回未満のGSW乗算を使用して実行される)。このプロセスは、上で説明された手順(iv)平文行列によるGSW暗号文の乗算を使用してもよい。r=1,2,..,256について、サーバは、(1)このベクトル内のr番目の暗号文に、超立方体のr番目の超行内のすべてのエントリのすべての平文行列を掛けることによって、および(2)第1の超立方体の次元にわたってすべてを加算することによって、この次元を折り畳む。この加算が、上で説明された手順(ii)圧縮された暗号文の加法準同型を使用してよいということに注意する。この結果は、(次元N×…×Nの)単一の暗号化された超行であり、その各エントリは、L個の圧縮された暗号文から成る。
次にサーバは、順々に小さい次元の折り畳みを続行する(ブロック440)。サイズ4の次元ごとに、サーバは、4つのGSW暗号化されたビットに、4つの超列(hyper-columns)内のすべての圧縮された暗号文をそれぞれ掛け、その後、現在の次元にわたって結果を加算し、暗号文の数において4回の折り畳みの削減を得る。これは、L個の圧縮された暗号文モジュロQの単一のエントリのみがサーバに残されるまで、継続する。
最後に、サーバが、各暗号文Cを
Figure 2024063125000136

に置き換えてモジュラス切り替えを実行し(ブロック445)、結果として得られた暗号文を、復号のためにクライアントに送信する。暗号文CがSC=q’MH+E(mod q’q)を満たしていることに注意する。
Figure 2024063125000137

によって丸め誤差を示すと、新しい暗号文は
Figure 2024063125000138

を含む。
エラー分布および
Figure 2024063125000139

から鍵Sが選択されたため、追加されるノイズは小さく、結果は有効な暗号文になる(詳細については下記を参照)。
ブロック450で、サーバ170が、要求に対する暗号化された回答である選択されたエントリをユーザに送信し、ブロック455で、クライアント110が、暗号化された回答を受信する。ブロック460で、クライアント110が、暗号化された回答を平文に復号し、したがって、要求されたエントリを明らかにする。ブロック465で、クライアント110が、平文を使用して1つまたは複数の動作を実行する。例えば、ユーザ201が当座預金口座の残高を要求した場合、ユーザ201は、例として、おそらくさらに現金を当座預金口座に追加するか、または当座預金口座を使用してクレジット・カードを支払う。
ノイズ解析に関して、第1の次元について、GSW評価を使用して暗号化された単項ベクトルを計算する必要があり、そのベクトル内の各暗号文は、logN=8個の暗号文の積である。したがって、これらの各評価された暗号文のノイズは、Eを暗号化中にサンプリングされたエラー行列のうちの1つとして、おおよそ形態
Figure 2024063125000140

を有する。これらにデータベースの平文行列を掛けて、圧縮された暗号化を方程式(4)として得て、Nサイズの次元にわたってすべての暗号文が加算された後に、次の形態のノイズの項が決定される。
Figure 2024063125000141

(245未満に制限されたエントリを含む平文行列によって、ただしG-1を含まずに、右側の乗算が実行されるということに注意する。)漸近的に、具体的な性能を最適化する、平文を導入する本明細書において使用される非従来型の方法を無視すると、このステップからのノイズが、Nと共に線形に増加するということに注意する。セキュリティ・パラメータλについてN=O(logN+λ)を設定した場合、このステップおよび残りのステップからのノイズがO(logN+λ)によって制限され、そのためqが、これらの量の定数次数の多項式によって制限され得る。mod-q乗算の複雑さが
Figure 2024063125000142

であるということを前提として、この例示的なPIR方式の漸近的オーバーヘッドは
Figure 2024063125000143

になる。
のエントリは、分散8(Arora-Geの攻撃[8]を防ぐには十分である)の分布から選択され得る。G-1(・)のエントリは、[±2]の範囲内であり(m=nlog(Q)が存在するため)、そのため
Figure 2024063125000144

による乗算は、2・m’・212<221.4倍未満に分散を増やす。同様に、([±245]の範囲内のエントリの)平文行列による乗算は、22.45・n・212<2103.6倍に分散を増やす。したがって、各ノイズ座標の分散は、2・7・8・221.4・2103.6<28+3+3+21.4+103.6=2139によって制限される。各ノイズ座標が、類似する加重によるEのエントリの加重和であるため、ノイズ座標を通常のランダム変数として扱うのは理にかなっている。このエラーのサイズに対する十分に高い確率制限は、(例えば)確率
Figure 2024063125000145

に対応する標準偏差16である。すなわち、第1の次元を折り畳んだ後に、すべての圧縮された暗号文は、高い確率で
Figure 2024063125000146

を含む。
さらに多くの次元を引き続き折り畳むときに、今回はGを使用して方程式(4)を使用し、(GSW暗号文である)それらの次元の暗号化された単項ベクトルに、(圧縮された暗号文である)前の次元の結果を再び掛ける。これらの次元内のGSW暗号文が未加工であり、したがって、それらのノイズの項が、単に暗号化中に選択された行列Eであるということに注意する。したがって、この次元内のN個のノイズの項の各々は、これらのE行列のうちの1つについて、
Figure 2024063125000147

の形態である。さらに、各次元内の4つの項のうちの1つのみが、暗号化されたビットσ=1を含み、他の項がσ=0を含む。したがって、項σ・previousNoiseは、j番目の次元を折り畳んだ後に、得られたノイズの項に1回だけ現れる。したがって、各小さい次元j≧2を折り畳むことは、単に形態E×G-1(何か)の4つのノイズの項を前の次元からのノイズに追加する。

Figure 2024063125000148

を含んでいるため、
Figure 2024063125000149

内の各エントリは、間隔[±252]内であり、Gを掛けることは、分散を(252・m’・212=3・2117倍未満に増やす(m’=6であることを想起されたい)。これらの項の4(D-1)=24で、追加されたノイズの項における各座標の分散が、24・8・3・2117=9・2123によって制限される。したがって、すべての小さい超立方体の次元のため、追加されたノイズのサイズに対する高確率の制限
Figure 2024063125000150

を使用することができる。
これまでの解析は、モジュラス切り替え動作の前に、ノイズが273.5+267.1未満の大きさに制限されるということを意味している。モジュラス切り替えにおける丸め誤差に起因して追加されるノイズの項は
Figure 2024063125000151

であり、この式での各ノイズ座標の分散は8・n’・212/2=3・215である。したがって、この最後のノイズの項の大きさに対する高確率の制限
Figure 2024063125000152

が存在する。したがって、クライアントに返される暗号文内の合計ノイズは、次式によって制限される。
Figure 2024063125000153

ほぼ正方形のガジェット行列Hが
Figure 2024063125000154

と共に使用されるということであったので、ノイズは実際に、必要に応じて(p-1)/2未満に制限され、したがって、クライアントに返される暗号文は、圧倒的な確率で正しく復号される。
複雑性解析に関しては、照会の処理中のサーバの作業は、主にRの乗算およびFFTから成る(加算、およびFFTが実行された後のG-1()の適用などのその他の動作は、比較して、ほとんど時間がかからない)。
次元212の円分環では、各FFTの動作は、評価表現における環乗算演算よりも約10~20倍遅い。しかし、データベース・エントリのサイズLのN/N倍が十分に大きい場合、乗算の数がFFTの数を20倍を超えて小さくするということを理解するのは簡単である。実際、FFTは、(LおよびN/Nとは無関係である)クライアントによって送信されたインデックスiのビットが処理される初期段階において、および(データのN/N≒0.25%のみに適用される)第1の次元の折り畳みの後にのみ実行される。例示的な設定では、L・N/Nが数千を超えると、乗算の時間がFFTの時間を超えるはずである。この例のN/N=4000では、各エントリ内で単一のJPEG画像を保持することでさえ、FFTの処理が時間全体のうちの50%未満を占めるということをすでに意味する。L=29Kである動画の場合、FFTの時間は全くわずかである。
ここで、乗算にかかる時間を、データベース・サイズの関数として評価することができる。大きいL・N/Nの場合、第1の超立方体の次元を折り畳みながら、GSW暗号文に、データベースをエンコードしている平文行列を掛けるときに、間違いなく最大の数の乗算が実行される。これらの乗算は、形態C’:=C×M’H mod q’qを有し、C’は次元n×nのハイブリッド暗号文であり、M’Hは次元n×nの冗長な平文行列である(n=n=3)。最適化なしで単純に処理すると、これらの行列乗算(2倍の大きさのモジュラスq’・qのモジュロ)の各々に、3=27回の環乗算が必要になる。(CRT表現での要素に対する)各環乗算は、212回の2倍の大きさのモジュラー整数乗算(modular integer multiplication)から成るため、そのような各行列乗算は、合計で2・27・212≒217.75回のモジュラー乗算を必要とする。この作業のために、約217.11バイトを含んでいる単一の平文行列が処理され、そのため償却作業は、データベースのバイトごとに約1.56回のモジュラー乗算である(Ladermanの方法を使用すると、23回の乗算のみを使用して3×3行列を乗算することができ[59]、そのため償却作業は、バイトごとに1.33回のモジュラー乗算のみになる)。Lが大きい場合、他の作業がこの数を大幅に変更しないはずであるということを考慮すると、これらの乗算は、実行時間のうちの少なくとも90%を占める可能性が高い。
バイトごとの1回(または2回)のモジュラー乗算は、同じデータのAES暗号化よりも大幅に速いはずである。例えば、ハードウェアに支援されないAESのソフトウェアの実装は、バイトごとに25サイクル以上と推定される[76、30]。同じGSW行列に非常に多くの平文行列を掛けるという事実を利用して、モジュラー乗算を前処理できることがあり、これによって性能が、CPUでのハードウェアの支援に基づくAESの実装にも負けないほど高くなるはずである。
大きいデータベースの場合、前述した方法は、大量の通信の節約を考慮しなくても、データベース全体を送信する単純な方法よりも計算速度が速いはずである。この速度が、帯域幅の大きな節約をまだ提供しながら達成されたということが強調される。実際、この解決策の比率は0.44であるため、プライバシーを獲得するために、帯域幅において2.25倍支払う。
参考文献の引用が、角括弧内の番号として配置されていることに注意する(例えば「[1]」は、参照番号1を意味する)。それらの参考文献は、以下に関連付けられる。
[1]Carlos Aguilar-Melchor, Joris Barrier,Laurent Fousse, and Marc-Olivier Killijian. Xpir: Private information retrieval for everyone. Proceedings on Privacy Enhancing Technologies, 2016(2):155-174, 2016.
[2]Martin Albrecht, Melissa Chase, HaoChen, Jintai Ding, Shafi Goldwasser, Sergey Gorbunov, Shai Halevi, Jeffrey Hoffstein, Kim Laine, Kristin Lauter, Satya Lokam, Daniele Micciancio, Dustin Moody Travis Morrison, Amit Sahai, and Vinod Vaikuntanathan. Homomorphic encryption standard. Availabale at http://homomorphicencryption.org/, accessed February 2019, November 2018.
[3]Jacob Alperin-Sheriff and ChrisPeikert. Practical bootstrapping in quasilinear time. In Ran Canetti and Juan A. Garay, editors, Advances in Cryptology - CRYPTO’13, volume 8042 of Lecture Notes in Computer Science, pages1-20.Springer, 2013.
[4]Jacob Alperin-Sheriff and Chris Peikert. Faster bootstrapping with polynomial error. In Juan A. Garayand Rosario Gennaro, editors, Advances in Cryptology - CRYPTO 2014, Part I,pages 297-314.Springer, 2014.
[5]Sebastian Angel, Hao Chen, Kim Laine,and Srinath Setty. Pir with compressed queries and amortized query processing. In 2018 IEEE Symposium on Security and Privacy (SP), pages 962-979.IEEE, 2018.
[6]Yoshinori AONO, Takuya HAYASHI, Le Trieu PHONG, and Lihua WANG. Privacy-preserving logistic regression with distributed data sources via homomorphic encryption. IEICE Transactions on Information and Systems, E99.D(8):2079-2089, 2016.
[7]Benny Applebaum, David Cash, Chris Peikert, and Amit Sahai. Fast cryptographic primitives and circular-secure encryption based on hard learning problems. In Advances in Cryptology- CRYPTO 2009, 29th Annual International Cryptology Conference, Santa Barbara, CA,USA, August 16-20, 2009.Proceedings, pages 595-618, 2009.
[8]Sanjeev Arora and Rong Ge. New algorithms for learning in presenceof errors. In ICALP (1), volume6755 of Lecture Notes in Computer Science, pages 403-415.Springer, 2011.
[9]Saikrishna Badrinarayanan, Sanjam Garg,Yuval Ishai, Amit Sahai, and Akshay Wadia.Two-message witness indistinguishability and secure computation in the plain model from new assumptions.In International Conference on the Theory and Application of Cryptology and Information Security, pages 275-303.Springer, 2017.
[10]Daniel Benarroch, Zvika Brakerski, and Tancrede Lepoint. FHE over theintegers: Decomposed and batched in the post-quantum regime. In Public Key Cryptography (2), volume10175 of Lecture Notes in Computer Science, pages 271-301.Springer, 2017.
[11]Elliptic curve point multiplication,en.wikipedia.org/wiki/Elliptic_curve_point_multiplication, downloaded on6/13/19.
[12]Dan Boneh, Craig Gentry, Shai Halevi,Frank Wang, and David J. Wu.Private database queries using somewhat homomorphic encryption. In ACNS, volume 7954 of Lecture Notes in Computer Science, pages 102-118.Springer, 2013.
[13]Elette Boyle, Yuval Ishai, andAntigoni Polychroniadou. Limits ofpractical sublinear secure computation.In Annual International Cryptology Conference, pages 302-332.Springer,2018.
[14]Zvika Brakerski, Craig Gentry, andShai Halevi. Packed ciphertexts inLWE-based homomorphic encryption.In Kaoru Kurosawa and Goichiro Hanaoka, editors, Public Key Cryptography, volume 7778 of Lecture Notes in Computer Science, pages1-13.Springer, 2013.
[15]Zvika Brakerski, Craig Gentry, and Vinod Vaikuntanathan. Fully homomorphic encryption without bootstrapping. In Innovations in Theoretical Computer Science (ITCS’12), 2012. Available at http://eprint.iacr.org/2011/277.
[16]Zvika Brakerski and Vinod Vaikuntanathan. Efficient fully homomorphic encryption from (standard) lwe. SIAM Journal on Computing, 43(2):831-871,2014.
[17]Zvika Brakerski and Vinod Vaikuntanathan. Lattice-based FHE as secure as PKE. In Moni Naor,editor, Innovations in Theoretical Computer Science, ITCS’14, pages 1-12.ACM, 2014.
[18]Zvika Brakerski. Fully homomorphic encryption without modulus switching from classical gapsvp.In Reihaneh Safavi-Naini and Ran Canetti, editors, CRYPTO, volume 7417of Lecture Notes in Computer Science, pages 868-886.Springer, 2012.
[19]Hao Chen, Kim Laine, and Rachel Player. Simple encrypted arithmetic library - SEAL v2.1. In Financial Cryptography Workshops, volume 10323 of Lecture Notes in Computer Science,pages 3-18.Springer, 2017.
[20]Jingwei Chen, Yong Feng, Yang Liu, and Wenyuan Wu. Faster binary arithmetic operations on encrypted integers. In WCSE’17, Proceedings of 2017 the 7th International Workshop on Computer Science and Engineering, 2017.
[21]Jung Hee Cheon, Jean-Sebastien Coron,Jinsu Kim, Moon Sung Lee, Tancrede Lepoint, Mehdi Tibouchi, and Aaram Yun. Batch fully homomorphic encryption overthe integers. In Advances in Cryptology- EUROCRYPT 2013, 32nd Annual International Conference on the Theory and Applications of Cryptographic Techniques, Athens, Greece, May 26-30,2013.Proceedings, pages 315-335, 2013.
[22]Jung Hee Cheon, Andrey Kim, Miran Kim,and Yong Soo Song. Homomorphic encryption for arithmetic of approximate numbers. In ASIACRYPT (1), volume 10624 ofLecture Notes in Computer Science, pages 409-437.Springer, 2017.
[23]Jung Hee Cheon, Miran Kim, and Myungsun Kim. Search-and-compute onencrypted data. In International Conference on Financial Cryptography and Data Security, pages 142-159.Springer,2015.
[24]Ilaria Chillotti, Nicolas Gama, Mariya Georgieva, and Malika Izabachene.Improving TFHE: faster packed homomorphic operations and efficient circuit bootstrapping. In ASIACRYPT(1), volume 10624 of Lecture Notes in Computer Science, pages 377-408.Springer,2017.
[25]Benny Chor, Oded Goldreich, Eyal Kushilevitz, and Madhu Sudan.Private information retrieval.Journal of the ACM (JACM) JACM, Volume 45 Issue 6, Nov. 1998, Pages 965-981.
[26]Jean-Sebastien Coron, Tancrede Lepoint, and Mehdi Tibouchi.Scale-invariant fully homomorphic encryption over the integers. In Public-Key Cryptography - PKC’14, volume 8383 of Lecture Notes in Computer Science, pages 311-328.Springer, 2014.
[27]Jean-Sebastien Coron, David Naccache,and Mehdi Tibouchi. Public key compression and modulus switching for fully homomorphic encryption over the integers. In Advances in Cryptology- EUROCRYPT 2012 - 31st Annual International Conference on the Theory and Applications of Cryptographic Techniques, Cambridge, UK, April 15-19,2012.Proceedings, pages 446-464, 2012.
[28]Anamaria Costache, Nigel P. Smart,Srinivas Vivek, and Adrian Waller.Fixed-point arithmetic in SHE schemes. In SAC, volume 10532 of Lecture Notes in Computer Science, pages 401-422.Springer, 2016.
[29]Jack L.H.Crawford, Craig Gentry, Shai Halevi, Daniel Platt, and Victor Shoup.Doing real work with fhe: The case of logistic regression. Cryptology ePrint Archive, Report 2018/202, 2018. https://eprint.iacr.org/2018/202.
[30]Crypto++ 5.6.0, pentium 4 benchmarks.https://www.cryptopp.com/benchmarks-p4.html, accessed February 2019,2009.
[31]Ivan Damgard and Mads Jurik. A generalisation, a simplification and some applications of paillier’s probabilistic public-key system. In International Workshop on Public Key Cryptography, pages 119-136.Springer, 2001.
[32]Whitfield Diffie and Martin Hellman. New directions in cryptography. IEEE transactions on Information Theory, 22(6):644-654, 1976.
[33]Leo Ducas and Daniele Micciancio. FHEW: bootstrapping homomorphic encryption in less than a second.In EUROCRYPT (1), volume 9056 of Lecture Notes in Computer Science,pages 617-640.Springer, 2015.
[34]Steven D Galbraith and Xibin Lin. Computing pairings using x-coordinates only. Designs, Codes and Cryptography, 50(3):305-324, 2009.
[35]Nicholas Genise, Craig Gentry, Shai Halevi, Baiyu Li, and Daniele Micciancio.Homomorphic encryption for finite automata. Cryptology ePrint Archive, Report 2019/176, 2019. https://eprint.iacr.org/2019/176.
[36]Craig Gentry, Shai Halevi, Charanjit S. Jutla, and Mariana Raykova.Private database access with he-over-oram architecture. In ACNS, volume 9092 of Lecture Notes in Computer Science, pages 172-191.Springer, 2015.
[37]Craig Gentry, Shai Halevi, Chris Peikert, and Nigel P. Smart. Field switching in BGV-style homomorphic encryption. Journal of Computer Security,21(5):663-684, 2013.
[38]Craig Gentry, Shai Halevi, and Nigel P. Smart. Better bootstrapping in fully homomorphic encryption. In Public Key Cryptography - PKC 2012, volume 7293 of Lecture Notes in Computer Science, pages 1-16.Springer, 2012.
[39]Craig Gentry, Shai Halevi, and Nigel Smart. Fully homomorphic encryption with polylog overhead. In "Advances in Cryptology - EUROCRYPT 2012", volume 7237 of Lecture Notes in Computer Science, pages 465-482.Springer, 2012. Full version at http://eprint.iacr.org/2011/566.
[40]Craig Gentry, Shai Halevi, and Nigel Smart. Homomorphic evaluation ofthe AES circuit. In "Advancesin Cryptology - CRYPTO 2012", volume 7417 of Lecture Notes in Computer Science, pages 850-867.Springer, 2012.Full version at http://eprint.iacr.org/2012/099.
[41]Craig Gentry and Shai Halevi. Fully homomorphic encryption without squashing using depth-3 arithmetic circuits. In Foundations of Computer Science(FOCS), 2011 IEEE 52nd Annual Symposium on, pages 107-109.IEEE, 2011.
[42]Craig Gentry and Shai Halevi. Implementing gentry’s fully-homomorphic encryption scheme. In Advances in Cryptology - EUROCRYPT’11, volume6632 of Lecture Notes in ComputerScience, pages 129-148.Springer, 2011.
[43]Craig Gentry, Amit Sahai, and Brent Waters. Homomorphic encryption from learning with errors: Conceptually-simpler, asymptotically-faster,attribute-based. In Ran Canetti and Juan A. Garay, editors, Advances in Cryptology - CRYPTO 2013, Part I, pages75-92.Springer, 2013.
[44]Craig Gentry. How to compress rabin ciphertexts and signatures (and more). In Annual International Cryptology Conference, pages 179-200.Springer, 2004.
[45]Craig Gentry. Fully homomorphic encryption using ideal lattices. In Proceedings of the41st ACM Symposium on Theory of Computing - STOC 2009, pages 169-178.ACM, 2009.
[46]Ran Gilad-Bachrach, Nathan Dowlin, KimLaine, Kristin E. Lauter, Michael Naehrig, and John Wernsing. Cryptonets: Applying neural networks to encrypted data with high throughput and accuracy. In ICML, volume 48 of JMLR Workshop and Conference Proceedings, pages 201-210.JMLR.org, 2016.
[47]Matthew Green, Susan Hohenberger, and Brent Waters. Outsourcing thedecryption of ABE ciphertexts. In20th USENIX Security Symposium, San Francisco, CA, USA, August 8-12, 2011,Proceedings.USENIX Association, 2011.
[48]Shai Halevi and Victor Shoup. Algorithms in HElib. In CRYPTO (1), volume 8616 of LectureNotes in Computer Science, pages 554-571.Springer, 2014.
[49]Shai Halevi and Victor Shoup. Bootstrapping for HElib. In EUROCRYPT (1), volume 9056 of Lecture Notes in Computer Science, pages 641-670.Springer, 2015.
[50]Shai Halevi and Victor Shoup. HElib - An Implementation of homomorphic encryption. https://github.com/shaih/HElib/, AccessedSeptember 2014.
[51]Shai Halevi. Homomorphic encryption. In Tutorials on the Foundations of Cryptography, pages 219-276.Springer International Publishing, 2017.
[52]Ryo Hiromasa, Masayuki Abe, and Tatsuaki Okamoto. Packing messages and optimizing bootstrapping in gsw-fhe. IEICE TRANSACTIONS on Fundamentals of Electronics, Communications and Computer Sciences, 99(1):73-82, 2016.
[53]Yuval Ishai and Anat Paskin. Evaluating branching programs on encrypted data. In Theory of Cryptography Conference, pages 575-594.Springer, 2007.
[54]Alhassan Khedr, P. Glenn Gulak, and Vinod Vaikuntanathan. SHIELD:scalable homomorphic implementation of encrypted data-classifiers. IEEE Trans.Computers, 65(9):2848-2858,2016.
[55]Aggelos Kiayias, Nikos Leonardos,Helger Lipmaa, Kateryna Pavlyk, and Qiang Tang. Optimal rate private information retrieval from homomorphic encryption.Proceedings on Privacy Enhancing Technologies, 2015(2):222-243, 2015.
[56]Miran Kim, Yongsoo Song, Shuang Wang,Yuhou Xia, and Xiaoqian Jiang.Secure logistic regression based on homomorphic encryption. Cryptology ePrint Archive, Report 2018/074,2018. https://eprint.iacr.org/2018/074.
[57]Demijan Klinc, Carmit Hazay, Ashish Jagmohan, Hugo Krawczyk, and Tal Rabin.On compression of data encrypted with block ciphers. arXiv:1009.1759 [cs.IT].
[58]Eyal Kushilevitz and Rafail Ostrovsky. Replication is not needed: Single database, computationally-private information retrieval. In Foundations of Computer Science,1997.Proceedings., 38th Annual Symposium on, pages 364-373.IEEE, 1997.
[59]Julian D. Laderman. A noncommutative algorithm formultiplying 3x3 matrices using 23 multiplications. Bull.Amer.Math.Soc., 82(1):126-128, 011976.
[60]Helger Lipmaa and Kateryna Pavlyk. A simpler rate-optimal cpirprotocol. In International Conference on Financial Cryptography and Data Security, pages 621-638.Springer, 2017.
[61]Adriana Lopez-Alt, Eran Tromer, and Vinod Vaikuntanathan. On-the-flymultiparty computation on the cloud via multikey fully homomorphic encryption. In STOC, pages 1219-1234, 2012.
[62]Vadim Lyubashevsky, Chris Peikert, and Oded Regev. On ideal lattices andlearning with errors over rings.J. ACM, 60(6):43, 2013.Early version in EUROCRYPT 2010.
[63]Vadim Lyubashevsky, Chris Peikert, and Oded Regev. A toolkit for ring-LWE cryptography. In Thomas Johansson and Phong Q. Nguyen, editors, Advances in Cryptology - EUROCRYPT 2013, pages35-54.Springer, 2013.
[64]Daniele Micciancio and ChrisPeikert. Trapdoors for lattices:Simpler, tighter, faster, smaller.In EUROCRYPT, volume 7237 ofLecture Notes in Computer Science, pages 700-718.Springer, 2012.
[65]Payman Mohassel and Yupeng Zhang. Secureml: A system for scalableprivacy-preserving machine learning.In 2017 IEEE Symposium on Security and Privacy, SP 2017, San Jose, CA,USA, May 22-26, 2017, pages 19-38.IEEE Computer Society, 2017.
[66]Michael Naehrig, Kristin Lauter, and Vinod Vaikuntanathan. Can homomorphic encryption be practical? In Proceedings of the 3rd ACM workshop on Cloud computing security workshop, pages 113-124.ACM, 2011.
[67]Femi Olumofin and Ian Goldberg. Revisiting the computational practicality of private information retrieval. In International Conference on Financial Cryptography and Data Security, pages 158-172.Springer, 2011.
[68]Emmanuela Orsini, Joop van de Pol, and Nigel P. Smart. Bootstrapping BGV ciphertexts with a wider choice of p and q. Cryptology ePrint Archive, Report 2014/408, 2014. http://eprint.iacr.org/.
[69]Pascal Paillier. Public-key cryptosystems based on composite degree residuosity classes.In International Conference on the Theory and Applications of Cryptographic Techniques, pages 223-238.Springer, 1999.
[70]Chris Peikert, Vinod Vaikuntanathan,and Brent Waters. A framework for efficient and composable oblivious transfer. In Advances in Cryptology - CRYPTO 2008,volume 5157 of Lecture Notes in Computer Science, pages 554-571.Springer, 2008.
[71]Oded Regev. On lattices, learning with errors,random linear codes, and cryptography. J. ACM, 56(6):34:1-34:40, 2009.
[72]Ronald L Rivest, Adi Shamir, and Leonard Adleman. A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM, 21(2):120-126,1978.
[73]R. Rivest, L. Adleman, and M.Dertouzos. On data banks and privacy homomorphisms. In Foundations of Secure Computation, pages 169-177.Academic Press, 1978.
[74]Kurt Rohloff and David B.Cousins. A scalable implementation of fully homomorphic encryption built on NTRU. 2nd Workshop on Applied Homomorphic Cryptography and Encrypted Computing, WAHC’14,2014. Available athttps://www.dcsec.uni-hannover.de/fileadmin/ful/mitarbeiter/brenner/wahc14_RC.pdf,accessed September 2014.
[75]Markku-Juhani Olavi Saarinen. Ring-lwe ciphertext compression and error correction: Tools for lightweight post-quantum cryptography. In Proceedings of the 3rd ACM International Workshop on IoT Privacy, Trust, and Security, pages 15-22.ACM, 2017.
[76]Patrick Schmid and Achim Roos. "aes-ni performance analyzed;limited to 32nm core i5 cpus". https://www.tomshardware.com/reviews/clarkdale-aes-ni-encryption,2538.html,accessed February 2019, 2010.
[77]Radu Sion and Bogdan Carbunar. On the practicality of private information retrieval. In Proceedings of the Network and Distributed System Security Symposium, NDSS2007, San Diego, California, USA, 28th February - 2nd March 2007, 2007.
[78]Nigel P. Smart and Frederik Vercauteren. Fully homomorphic SIMD operations. Des.Codes Cryptography,71(1):57-81, 2014. Early verion athttp://eprint.iacr.org/2011/133.
[79]Julien P Stern. A new and efficient all-or-nothing disclosure of secrets protocol. InInternational Conference on the Theory and Application of Cryptology andInformation Security, pages 357-371.Springer, 1998.
[80]Marten van Dijk, Craig Gentry, Shai Halevi, and Vinod Vaikuntanathan.Fully homomorphic encryption over the integers. In Advances in Cryptology - EUROCRYPT 2010, 29th Annual International Conference on the Theory and Applications of Cryptographic Techniques, French Riviera, May 30 - June 3, 2010.Proceedings,pages 24-43, 2010.
[81]Shuang Wang, Yuchen Zhang, Wenrui Dai,Kristin Lauter, Miran Kim, Yuzhe Tang, Hongkai Xiong, and Xiaoqian Jiang. Healer: homomorphic computation of exactlogistic regression for secure rare disease variants analysis in gwas. Bioinformatics, 32(2):211-218,2016.
[82]Chen Xu, Jingwei Chen, Wenyuan Wu, and Yong Feng. Homomorphically encrypted arithmetic operations over the integer ring. In Feng Bao, Liqun Chen, Robert H. Deng,and Guojun Wang, editors, Information Security Practice and Experience, pages 167-181, Cham, 2016.Springer International Publishing. https://ia.cr/2017/387.
本発明は、システム、方法、またはコンピュータ・プログラム製品、あるいはその組み合わせであってよい。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を含むコンピュータ可読ストレージ媒体を含んでよい。
コンピュータ可読ストレージ媒体は、命令実行デバイスによって使用するための命令を保持および格納できる有形のデバイスであることができる。コンピュータ可読ストレージ媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、またはこれらの任意の適切な組み合わせであってよいが、これらに限定されない。コンピュータ可読ストレージ媒体のさらに具体的な例の非網羅的リストは、ポータブル・フロッピー(R)・ディスク、ハード・ディスク、ランダム・アクセス・メモリ(RAM:random access memory)、読み取り専用メモリ(ROM:read-only memory)、消去可能プログラマブル読み取り専用メモリ(EPROM:erasable programmable read-only memoryまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM:static random access memory)、ポータブル・コンパクト・ディスク読み取り専用メモリ(CD-ROM:compact disc read-only memory)、デジタルバーサタイルディスク(DVD:digital versatile disk)、メモリ・スティック、フロッピー(R)・ディスク、パンチカードまたは命令が記録されている溝の中の***構造などの機械的にエンコードされるデバイス、およびこれらの任意の適切な組み合わせを含む。本明細書において使用されるとき、コンピュータ可読ストレージ媒体は、それ自体が、電波またはその他の自由に伝搬する電磁波、導波管またはその他の送信媒体を伝搬する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)、あるいはワイヤを介して送信される電気信号などの一過性の信号であると解釈されるべきではない。
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体から各コンピューティング・デバイス/処理デバイスへ、またはネットワーク(例えば、インターネット、ローカル・エリア・ネットワーク、広域ネットワーク、または無線ネットワーク、あるいはその組み合わせ)を介して外部コンピュータまたは外部ストレージ・デバイスへダウンロードされ得る。このネットワークは、銅伝送ケーブル、光伝送ファイバ、無線送信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組み合わせを備えてよい。各コンピューティング・デバイス/処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェイスは、コンピュータ可読プログラム命令をネットワークから受信し、それらのコンピュータ可読プログラム命令を各コンピューティング・デバイス/処理デバイス内のコンピュータ可読ストレージ媒体に格納するために転送する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA:instruction-set-architecture)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、あるいは、Smalltalk、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語などの従来の手続き型プログラミング言語を含む1つまたは複数のプログラミング言語の任意の組み合わせで記述されたソース・コードまたはオブジェクト・コードであってよい。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に実行すること、ユーザのコンピュータ上でスタンドアロン・ソフトウェア・パッケージとして部分的に実行すること、ユーザのコンピュータ上およびリモート・コンピュータ上でそれぞれ部分的に実行すること、あるいはリモート・コンピュータ上またはサーバ上で全体的に実行することができる。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN:local area network)または広域ネットワーク(WAN:wide area network)を含む任意の種類のネットワークを介してユーザのコンピュータに接続されてよく、または接続は、(例えば、インターネット・サービス・プロバイダを使用してインターネットを介して)外部コンピュータに対して行われてよい。一部の実施形態では、本発明の態様を実行するために、例えばプログラマブルロジック回路、フィールドプログラマブル・ゲート・アレイ(FPGA:field-programmable gate arrays)、またはプログラマブル・ロジック・アレイ(PLA:programmable logic arrays)を含む電子回路は、コンピュータ可読プログラム命令の状態情報を利用することによって、電子回路をカスタマイズするためのコンピュータ可読プログラム命令を実行してよい。
本発明の態様は、本明細書において、本発明の実施形態に従って、方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して説明される。フローチャート図またはブロック図あるいはその両方の各ブロック、ならびにフローチャート図またはブロック図あるいはその両方に含まれるブロックの組み合わせが、コンピュータ可読プログラム命令によって実装されるということが理解されるであろう。
これらのコンピュータ可読プログラム命令は、コンピュータまたはその他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図あるいはその両方のブロックに指定される機能/動作を実施する手段を作り出すべく、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供されてマシンを作り出すものであってよい。これらのコンピュータ可読プログラム命令は、命令が格納されたコンピュータ可読ストレージ媒体がフローチャートまたはブロック図あるいはその両方のブロックに指定される機能/動作の態様を実施する命令を含む製品を備えるように、コンピュータ可読ストレージ媒体に格納され、コンピュータ、プログラム可能なデータ処理装置、または他のデバイス、あるいはその組み合わせに特定の方式で機能するように指示できるものであってもよい。
コンピュータ可読プログラム命令は、コンピュータ上、その他のプログラム可能な装置上、またはその他のデバイス上で実行される命令が、フローチャートまたはブロック図あるいはその両方のブロックに指定される機能/動作を実施するように、コンピュータ、その他のプログラム可能なデータ処理装置、またはその他のデバイスに読み込まれてもよく、それによって、一連の動作可能なステップを、コンピュータ上、その他のプログラム可能な装置上、またはコンピュータ実装プロセスを生成するその他のデバイス上で実行させる。
図内のフローチャートおよびブロック図は、本発明の種々の実施形態に従って、システム、方法、およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および動作を示す。これに関連して、フローチャートまたはブロック図内の各ブロックは、規定された論理機能を実装するための1つまたは複数の実行可能な命令を備える、命令のモジュール、セグメント、または部分を表してよい。一部の代替の実装では、ブロックに示された機能は、図に示された順序とは異なる順序で発生してよい。例えば、連続して示された2つのブロックは、実際には、含まれている機能に応じて、実質的に同時に実行されるか、または場合によっては逆の順序で実行され得る。ブロック図またはフローチャート図あるいはその両方の各ブロック、ならびにブロック図またはフローチャート図あるいはその両方に含まれるブロックの組み合わせは、規定された機能または動作を実行するか、または専用ハードウェアとコンピュータ命令の組み合わせを実行する専用ハードウェアベースのシステムによって実装されるということにも注意する。
本発明は、好ましい実施形態に従って、以下の各項によって要約される。
1.第1のコンピュータ・システムで、第2のコンピュータ・システムから、第1のコンピュータ・システム上のデータベース内のデータを使用して決定される特定の情報に対する要求を受信することであって、第1のコンピュータ・システムが、暗号化データまたは暗号化された要求を復号するための復号鍵を持っておらず、少なくともデータの一部が暗号化されているか、または要求が暗号化されている、受信することと、第1のコンピュータ・システムによって、圧縮可能な準同型暗号化動作をデータベース内のデータに対して実行し、データベース内の特定の情報に対応する1つまたは複数の圧縮された暗号文を決定することであって、圧縮可能な準同型暗号化動作が、第1の非圧縮準同型暗号方式および第2の圧縮準同型暗号方式を使用し、圧縮可能な準同型暗号化動作を実行することが、第1の準同型暗号方式をデータに対して使用して、他の複数の暗号文を作成することと、第2の準同型暗号方式を他の複数の暗号文に対して使用して、他の複数の暗号文を、圧縮されたより少ない暗号文に圧縮することとを含み、第1および第2の準同型暗号方式が、両方とも同じ秘密鍵を使用する、決定することと、第1のコンピュータ・システムによって、第2のコンピュータ・システムに、要求に対する応答を送信することであって、この応答が、要求された特定の情報に対応する1つまたは複数の圧縮された暗号文を含む、送信することとを含む、方法。
2.第2の圧縮された準同型暗号方式を使用することによって、圧縮された暗号文のサイズを、圧縮された暗号文が対応する暗号化されていないデータのサイズに任意に近づけることができる、第1項に記載の方法。
3.第2の準同型暗号方式が構成されているため、圧縮された暗号文のサイズを、圧縮された暗号文が対応する平文のサイズに任意に近づけることができ、任意の選択されたεについて、圧縮された暗号文のサイズが対応する平文のサイズの(1+ε)倍である第2の準同型暗号方式の事例が存在する、第2項に記載の方法。
4.第1のコンピュータ・システムによって、データに対して圧縮可能な準同型暗号化動作を実行することが、整数Rの環内のスカラーを表す多くのビット暗号文を含んでいるデータに対して部分圧縮を実行して、多くのビット暗号文を、整数Rの環内のより大きいスカラーを暗号化する単一の暗号文に圧縮することをさらに含む、第1項に記載の方法。
5.複数の準同型暗号文に対して第2の準同型暗号方式を使用して、複数の準同型暗号文を単一の圧縮された暗号文に圧縮することが、
Figure 2024063125000155

を計算することによって、暗号文Cu,vを圧縮することをさらに含み、
Figure 2024063125000156

個の暗号文
Figure 2024063125000157

、u,v∈[n]が存在し、nおよびnが次元であり、qがエラーを伴う学習(LWE)モジュラスであり、Gが四角形のガジェット行列であり、Hがほぼ正方形のガジェット行列
Figure 2024063125000158

であり、Tu,vが、エントリ(u,v)に1を含み、他のエントリに0を含む、正方形のn×nシングルトン行列(すなわち、
Figure 2024063125000159

)であり、
Figure 2024063125000160


Figure 2024063125000161

が、それぞれ位置u,vに1を含む次元nの単位ベクトルであり、
Figure 2024063125000162

である、第1項に記載の方法。
6.第1のコンピュータ・システムによって、データに対して圧縮可能な準同型暗号化動作を実行することが、ビットb,...,bを暗号化する
Figure 2024063125000163

個のGentry、Sahai、およびWaters(GSW)暗号文を前提として、GSW暗号文を、
Figure 2024063125000164

を暗号化する単一のGSW暗号文に部分的に圧縮することと、あるσ∈Zについて形態
Figure 2024063125000165

のスカラーを暗号化する単一のGSW暗号文を生成することであって、Zが整数のセットである、生成することと、σを暗号化するn個のそのような暗号文Cを前提として、
Figure 2024063125000166

を設定することによって暗号文Cを圧縮することであって、
Figure 2024063125000167

が、k個の0が先頭に追加されたi番目の単位ベクトルであり、Gが四角形のガジェット行列であり、kが秘密鍵の長さであり、ベクトル[σの圧縮された暗号化をもたらす、圧縮することとをさらに含む、第1項に記載の方法。
7.第1のコンピュータ・システムに送信するために、第2のコンピュータ・システムで実行される、平文を暗号化して暗号化データを作成することと、第1のシステムが、暗号化データを復号するための復号鍵を持っておらず、暗号化データを第2のコンピュータ・システムから第1のコンピュータ・システムに送信することと、第2のコンピュータ・システムによって、暗号化データを使用して決定される特定の情報に対する要求を送信することと、第2のコンピュータ・システムで、第1のコンピュータ・システムから、要求に対する応答を受信することであって、この応答が、要求された特定の情報に対応する1つまたは複数の圧縮された暗号文を含む、受信することと、第2のコンピュータ・システムによって、1つまたは複数の圧縮された暗号文を対応する平文に復号することとを含む、方法。
8.復号することが、秘密鍵を使用して、1つまたは複数の圧縮された暗号文を含んでいる応答を復号して、1つまたは複数の圧縮された暗号文に対応する平文および追加のノイズの冗長なエンコーディングを含んでいる行列を取得することと、エンコーディングの冗長性を使用して、ノイズを除去し、1つまたは複数の圧縮された暗号文に対応する平文を回復することとを含む、第7項に記載の方法。
9.平文の冗長なエンコーディングが、ほぼ正方形のガジェット行列が掛けられた平文を含んでいる行列を含む、第8項に記載の方法。
10.ほぼ正方形のガジェット行列Hについて、別の行列Fが存在し、Fが最大階数およびqよりはるかに小さいエントリを含み、qがエラーを伴う学習モジュラスであり、H×F=0 mod qであり、行列Fのエントリが、エントリに暗号文からのノイズを掛けた後に結果がqよりまだ小さくなるように、十分に小さい、第9項に記載の方法。
11.秘密鍵が形態S=[S’|I]の行列であり、S’がエラーを伴う学習(LWE)シークレットであり、平文を含んでいる行列が行列
Figure 2024063125000168

であり、Mが平文であり、SM’=Mとなるようにする、第9項に記載の方法。
12.平文がn×n行列Mであり、行列M’が、エラーを伴う学習(LWE)シークレットの次元と同じ数のゼロ行を追加することによってMから取得され、次元がkによって示され、n=n+kと表すと、埋められた行列M’が次元n×nを有する、第11項に記載の方法。
13.M’の右に次元n×nのガジェット行列Hを掛けることを含んでいる冗長なエンコーディングが、n×nの暗号文の行列の最終的な次元をもたらす、第12項に記載の方法。
14.平文の冗長なエンコーディングが、1より大きい整数が掛けられた平文を含んでいる行列を含む、第8項に記載の方法。
15.秘密鍵が形態S=[S’|I]の行列であり、S’がエラーを伴う学習(LWE)シークレットであり、平文を含んでいる行列が行列
Figure 2024063125000169

であり、Mが平文であり、SM’=Mとなるようにする、第14項に記載の方法。
16.平文がn×n行列Mであり、行列M’が、エラーを伴う学習(LWE)シークレットの次元と同じ数のゼロ行を追加することによってMから取得され、次元がkによって示され、n=n+kと表すと、埋められた行列M’が次元n×nを有する、第15項に記載の方法。
17.第1のコンピュータ・システムで、第2のコンピュータ・システムから、第1のコンピュータ・システム上のデータベースから選択されたエントリに対する要求を受信することと、第1のコンピュータ・システムによって、圧縮可能な準同型暗号方式をデータベース内のデータに対して実行して、データベース内の選択されたエントリに対応する暗号化された回答を計算することであって、圧縮可能な準同型暗号方式が、対応する平文の回答よりもあまり長くない暗号化された回答を生成し、その暗号化された回答の計算が、データベース内のバイトごとに数サイクルを必要とする、計算することと、第1のコンピュータ・システムによって、第2のコンピュータ・システムに、要求に対する応答を送信することであって、この応答が、要求されている選択されたエントリに対応する暗号化された回答を含む、送信することとを含む、方法。
18.対応するN次元内のN個のデータベース・エントリへのインデックスがデータベースに作成され、要求が、データベース内のインデックスiを有している選択されたエントリに対応し、第1のコンピュータ・システムによって、圧縮可能な準同型暗号方式をデータベース内のデータに対して実行して、暗号化された回答を計算することが、要求を処理して、インデックス要素(i,i,...,i)を含んでいるインデックス要素の単項表現を取得することと、N次元のうちの第1の次元について、各超行rに、i番目の次元に対応する第1のベクトルからの超行に対応するr番目の暗号化されたビットを掛け、この乗算がi番目の超行を除くすべてをゼロにすることによって、および結果として得られた暗号化された超行をすべて加算して、より小さい数の次元のより小さいデータベースを取得することによって、第1の次元を折り畳むことと、インデックスiに対応する選択されたエントリのみを含んでいるゼロ次元の超立方体が残されるまで、1つずつ他の次元を折り畳み続けることとをさらに含み、送信することが、インデックスiに対応するエントリを送信することを含む、第17項に記載の方法。
19.第1のコンピュータ・システムによって、圧縮可能な準同型暗号方式をデータベース内のデータに対して実行して、暗号化された回答を計算することが、折り畳みの前に、データベースをより小さい行列に分割し、これらのより小さい行列を中国剰余定理(CRT)表現でエンコードすることによって、データベースを前処理することをさらに含む、第18項に記載の方法。
20.より小さい行列を中国剰余定理(CRT)表現でエンコードした後に、エンコードされたより小さい行列の左に暗号文行列を掛ける、第19項に記載の方法。
21.暗号文行列Cが、小さいスカラーσを暗号化しており、平文行列Mの左に暗号文Cを掛けることの結果が、行列σM mod qを暗号化する圧縮された暗号文であり、qがエラーを伴う学習(LWE)モジュラスである、第20項に記載の方法。
22.第1のコンピュータ・システムによって、圧縮可能な準同型暗号方式をデータベース内のデータに対して実行して、暗号化された回答を計算することが、すべての折り畳みが実行された後の、送信の前に、モジュラス切り替えを実行し、選択されたエントリ内の各暗号文を、異なるモジュラスを含んでいる暗号文に変換することをさらに含む、第18項に記載の方法。
23.加算することが、圧縮された暗号文に対して加法準同型を使用し、圧縮された暗号文が加算され、小さいスカラーによって乗算される、第18項に記載の方法。
24.乗算することが、暗号文を含んでいる行列の右に平文行列を掛けることをさらに含む、第18項に記載の方法。
25.第2のコンピュータ・システムによって第1のコンピュータ・システムに送信され、第1のコンピュータ・システムによってデータベースに格納される、エントリのインデックスiを暗号化することであって、インデックスiが、N個の基数の混合基数で表され、データベースもN個の基数を含む、暗号化することと、第2のコンピュータ・システムによって、暗号化されたインデックスを使用する第1のコンピュータ・システムからの項目の検索を要求することと、第2のコンピュータ・システムによって、第1のコンピュータ・システムから、要求に対する応答を受信することであって、この応答が、暗号化されたインデックスを使用して要求されたデータベース内のエントリに対応する、1つまたは複数の圧縮された暗号文を含んでいる暗号化された回答を含む、受信することと、第2のコンピュータ・システムによって、1つまたは複数の圧縮された暗号文を対応する平文に復号することとを含む、方法。
26.N個の基数の混合基数がインデックス要素(i,i,...,i)を含み、データベースがN次元を有し、N=A×B×B×...×Bであり、すべてのj>1についてi∈[A]およびi∈[B]であり、インデックスiを暗号化することが、スカラーq’・σ1,0およびσ1,0,...σ1,7を暗号化することであって、σ1,1,...σ1,7がiのビットである、暗号化することと、j=2,...,Dについて、暗号文を暗号化して、位置iでは1であり、それ以外の位置では0である、単位ベクトル
Figure 2024063125000170

のビットを暗号化することとを含み、暗号文の暗号文モジュラスが、q≒246およびq’≒260での複合Q=q・q’である、第25項に記載の方法。
27.インデックスiを暗号化することが、iの最下位ビットσ1,0には、単位元を使用して最下位ビットを乗算し、ビットσ1,0にはq’も掛けることと、
の他のビットには、幅広かつ短いガジェット行列を使用して他のビットを乗算することと、j>1の他のiの単項表現をエンコードするビットには、やや四角形のガジェット行列を使用して、単項表現をエンコードするビットを乗算することとを含む、第26項に記載の方法。
28.復号することが、秘密鍵を使用して、1つまたは複数の圧縮された暗号文を含んでいる応答を復号して、1つまたは複数の圧縮された暗号文に対応する平文および追加のノイズの冗長なエンコーディングを含んでいる行列を取得することと、エンコーディングの冗長性を使用して、ノイズを除去し、1つまたは複数の圧縮された暗号文に対応する平文を回復することとを含む、第25項に記載の方法。
29.平文の冗長なエンコーディングが、ほぼ正方形のガジェット行列が掛けられた平文を含んでいる行列を含む、第30項に記載の方法。
30.ほぼ正方形のガジェット行列Hについて、別の行列Fが存在し、Fが最大階数およびqよりはるかに小さいエントリを含み、qがエラーを伴う学習モジュラスであり、H×F=0 mod qであり、行列Fのエントリが、エントリに暗号文からのノイズを掛けた後に結果がqよりまだ小さくなるように、十分に小さい、第29項に記載の方法。
31.秘密鍵が形態S=[S’|I]の行列であり、S’がエラーを伴う学習(LWE)シークレットであり、平文を含んでいる行列が行列
Figure 2024063125000171

であり、Mが平文であり、SM’=Mとなるようにする、第29項に記載の方法。
32.平文がn×n行列Mであり、行列M’が、エラーを伴う学習(LWE)シークレットの次元と同じ数のゼロ行を追加することによってMから取得され、次元がkによって示され、n=n+kと表すと、埋められた行列M’が次元n×nを有する、第31項に記載の方法。
33.M’の右に次元n×nのガジェット行列Hを掛けることを含んでいる冗長なエンコーディングが、n×nの暗号文の行列の最終的な次元をもたらす、第32項に記載の方法。
34.平文の冗長なエンコーディングが、1より大きい正数が掛けられた平文を含んでいる行列を含む、第30項に記載の方法。
35.秘密鍵が形態S=[S’|I]の行列であり、S’がエラーを伴う学習(LWE)シークレットであり、平文を含んでいる行列が行列
Figure 2024063125000172

であり、Mが平文であり、SM’=Mとなるようにする、第34項に記載の方法。
36.平文がn×n行列Mであり、行列M’が、エラーを伴う学習(LWE)シークレットの次元と同じ数のゼロ行を追加することによってMから取得され、次元がkによって示され、n=n+kと表すと、埋められた行列M’が次元n×nを有する、第35項に記載の方法。

Claims (10)

  1. 第1のコンピュータ・システムに送信するために、第2のコンピュータ・システムで実行される、平文を暗号化して暗号化データを作成することと、
    前記第1のシステムが、前記暗号化データを復号するための復号鍵を持っておらず、前記暗号化データを前記第2のコンピュータ・システムから前記第1のコンピュータ・システムに送信することと、
    前記第2のコンピュータ・システムによって、前記暗号化データを使用して決定され得る特定の情報に対する要求を送信することと、
    前記第2のコンピュータ・システムで、前記第1のコンピュータ・システムから、前記要求に対する応答を受信することであって、前記応答が、要求された前記特定の情報に対応する1つまたは複数の圧縮された暗号文を含む、前記受信することと、
    前記第2のコンピュータ・システムによって、前記1つまたは複数の圧縮された暗号文を対応する平文に復号することとを含む、方法。
  2. 前記復号することが、秘密鍵を使用して、前記1つまたは複数の圧縮された暗号文を含んでいる前記応答を復号して、前記1つまたは複数の圧縮された暗号文に対応する前記平文および追加のノイズの冗長なエンコーディングを含んでいる行列を取得することと、前記エンコーディングの冗長性を使用して、前記ノイズを除去し、前記1つまたは複数の圧縮された暗号文に対応する前記平文を回復することとを含む、請求項1に記載の方法。
  3. 前記平文の前記冗長なエンコーディングが、ほぼ正方形のガジェット行列が掛けられた前記平文を含んでいる行列を含む、請求項2に記載の方法。
  4. 前記ほぼ正方形のガジェット行列Hについて、別の行列Fが存在し、Fが最大階数およびqよりはるかに小さいエントリを含み、qがエラーを伴う学習モジュラスであり、H×F=0 mod qであり、行列Fの前記エントリが、前記エントリに暗号文からのノイズを掛けた後に結果がqよりまだ小さくなるように、十分に小さい、請求項3に記載の方法。
  5. 前記秘密鍵が形態S=[S’|I]の行列であり、S’がエラーを伴う学習(LWE)シークレットであり、
    前記平文を含んでいる前記行列が行列
    Figure 2024063125000173
    であり、Mが前記平文であり、SM’=Mとなるようにする、請求項3に記載の方法。
  6. 前記平文がn0×n0行列Mであり、前記行列M’が、前記エラーを伴う学習(LWE)シークレットの次元と同じ数のゼロ行を追加することによってMから取得され、前記次元がkによって示され、n1=n0+kと表すと、埋められた前記行列M’が次元n1×n0を有する、請求項5に記載の方法。
  7. M’の右に次元n0×n2のガジェット行列Hを掛けることを含んでいる前記冗長なエンコーディングが、n1×n2の暗号文の行列の最終的な次元をもたらす、請求項6に記載の方法。
  8. 前記平文の前記冗長なエンコーディングが、1より大きい整数が掛けられた前記平文を含んでいる行列を含む、請求項2に記載の方法。
  9. 前記秘密鍵が形態S=[S’|I]の行列であり、S’がエラーを伴う学習(LWE)シークレットであり、
    前記平文を含んでいる前記行列が行列
    Figure 2024063125000174
    であり、Mが前記平文であり、SM’=Mとなるようにする、請求項8に記載の方法。
  10. 前記平文がn0×n0行列Mであり、前記行列M’が、前記エラーを伴う学習(LWE)シークレットの次元と同じ数のゼロ行を追加することによってMから取得され、前記次元がkによって示され、n1=n0+kと表すと、埋められた前記行列M’が次元n1×n0を有する、請求項9に記載の方法。
JP2024029851A 2019-06-18 2024-02-29 プライベート情報検索に応用される準同型暗号化方法 Pending JP2024063125A (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US16/444,540 US10985904B2 (en) 2019-06-18 2019-06-18 Compressible (F)HE with applications to PIR
US16/444,278 2019-06-18
US16/444,278 US10972252B2 (en) 2019-06-18 2019-06-18 Compressible (F)HE with applications to PIR
US16/444,540 2019-06-18
PCT/EP2020/066490 WO2020254248A1 (en) 2019-06-18 2020-06-15 Homomorphic encryption with applications to private information retrieval
JP2021574206A JP7486529B2 (ja) 2019-06-18 2020-06-15 プライベート情報検索に応用される準同型暗号化方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021574206A Division JP7486529B2 (ja) 2019-06-18 2020-06-15 プライベート情報検索に応用される準同型暗号化方法

Publications (1)

Publication Number Publication Date
JP2024063125A true JP2024063125A (ja) 2024-05-10

Family

ID=74038352

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021574206A Active JP7486529B2 (ja) 2019-06-18 2020-06-15 プライベート情報検索に応用される準同型暗号化方法
JP2024029851A Pending JP2024063125A (ja) 2019-06-18 2024-02-29 プライベート情報検索に応用される準同型暗号化方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2021574206A Active JP7486529B2 (ja) 2019-06-18 2020-06-15 プライベート情報検索に応用される準同型暗号化方法

Country Status (12)

Country Link
US (4) US10972252B2 (ja)
EP (1) EP3984160B1 (ja)
JP (2) JP7486529B2 (ja)
KR (1) KR20220004201A (ja)
CN (1) CN113906712A (ja)
AU (1) AU2020294855B2 (ja)
BR (1) BR112021025744A2 (ja)
CA (1) CA3143362A1 (ja)
IL (1) IL288975B2 (ja)
MX (1) MX2021014837A (ja)
SG (1) SG11202110349VA (ja)
WO (1) WO2020254248A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3419211B1 (en) * 2017-06-23 2022-03-30 Flytxt B.V. Privacy preserving computation protocol for data analytics
CN112182595B (zh) * 2019-07-03 2024-03-26 北京百度网讯科技有限公司 基于联邦学习的模型训练方法及装置
US11526466B2 (en) * 2019-08-23 2022-12-13 Salesforce, Inc. Uniform growth for differently sized files
US20210081807A1 (en) * 2019-09-17 2021-03-18 Sap Se Non-Interactive Private Decision Tree Evaluation
IL272520A (en) * 2020-02-06 2021-08-31 Google Llc Aggregation of encrypted network values
KR20210146513A (ko) * 2020-05-27 2021-12-06 삼성전자주식회사 인공 지능 연산 반도체 장치 및 이를 포함하는 저장 장치
EP3993308A1 (en) * 2020-10-29 2022-05-04 Zama SAS Fully homomorphic cryptography with improved data item representation
CN112766495A (zh) * 2021-01-26 2021-05-07 支付宝(杭州)信息技术有限公司 一种基于混合环境的深度学习模型隐私保护方法及装置
EP4050471A1 (en) * 2021-02-26 2022-08-31 Zama SAS Encrypted scalar multiplication
US20220321332A1 (en) * 2021-03-30 2022-10-06 International Business Machines Corporation Post-quantum cryptography secured execution environments for edge devices
US20220358237A1 (en) * 2021-05-04 2022-11-10 International Business Machines Corporation Secure data analytics
US11722290B2 (en) * 2021-05-21 2023-08-08 Samsung Electronics Co., Ltd. Method and apparatus for modulus refresh in homomorphic encryption
US11461481B1 (en) * 2021-06-04 2022-10-04 Polyverse Corporation Encrypted to be executed software code and execution environment apparatuses, systems, and methods
EP4120617A1 (en) * 2021-07-14 2023-01-18 Siemens Healthcare GmbH Privacy preserving artificial intelligence based clinical decision support
CN115694776A (zh) * 2021-07-27 2023-02-03 三星电子株式会社 存储设备、存储***操作方法和计算***
CN113660085B (zh) * 2021-08-13 2023-06-06 北方工业大学 一种基于量子同态加密的量子安全多方计算方法
US20230143175A1 (en) * 2021-10-29 2023-05-11 Seagate Technology Llc Device specific multiparty computation
CN115378571A (zh) * 2022-06-28 2022-11-22 中国人民武装警察部队工程大学 具有高效密文扩展过程的gsw型多密钥全同态加密方法
KR20240018910A (ko) 2022-08-03 2024-02-14 경희대학교 산학협력단 양자 단대단 암호화 시스템 및 그 동작 방법
CN116016571A (zh) * 2022-12-29 2023-04-25 中国科学技术大学 基于rcrt的分布式存储方法、***、设备及存储介质
US11977657B1 (en) * 2023-02-22 2024-05-07 Lorica Cybersecurity Inc. Method and system for confidential repository searching and retrieval
CN117729534A (zh) * 2023-05-17 2024-03-19 荣耀终端有限公司 一种查询方法、电子设备及***

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9569771B2 (en) 2011-04-29 2017-02-14 Stephen Lesavich Method and system for storage and retrieval of blockchain blocks using galois fields
KR101795771B1 (ko) * 2013-03-18 2017-11-09 한국전자통신연구원 정수 기반 준동형 암호 기법에서 압축 암복호화를 제공하는 시스템 및 방법
KR102019159B1 (ko) * 2013-12-23 2019-09-09 한국전자통신연구원 정수 기반 준동형 암호 기법에 일반적으로 적용 가능한 압축 암복호화 장치 및 방법
US9397832B2 (en) * 2014-08-27 2016-07-19 International Business Machines Corporation Shared data encryption and confidentiality
WO2016048775A1 (en) 2014-09-26 2016-03-31 Thomson Licensing Xor-homomorphic cryptosystems with fast key generation
JP6381128B2 (ja) * 2015-02-05 2018-08-29 国立研究開発法人産業技術総合研究所 検索システム、クライアント、サーバ、検索プログラムおよび検索方法
FR3035986B1 (fr) 2015-05-06 2018-07-27 Morpho Procede de generation d'une signature de message a partir d'un jeton de signature chiffre a l'aide d'une fonction de chiffrement homomorphique
US10560257B2 (en) * 2015-07-08 2020-02-11 Brown University Homomorphic encryption
FR3040842B1 (fr) * 2015-09-03 2018-12-07 Commissariat A L'energie Atomique Et Aux Energies Alternatives Methode d'interrogation confidentielle d'un service geodependant par cryptographie homomorphe
US10554385B2 (en) * 2015-09-04 2020-02-04 Nec Corporation Method for providing encrypted data in a database and method for searching on encrypted data
CN108140334B (zh) * 2015-10-09 2021-03-23 三菱电机株式会社 隐匿检索***、管理装置、隐匿检索方法和记录介质
US10972251B2 (en) * 2017-01-20 2021-04-06 Enveil, Inc. Secure web browsing via homomorphic encryption
KR101919940B1 (ko) * 2017-02-08 2018-11-19 서울대학교산학협력단 완전 동형 암호 방법에 의한 동적 데이터의 처리 방법
CN108964869A (zh) * 2018-06-08 2018-12-07 浙江捷尚人工智能研究发展有限公司 短密钥全同态加密方法及***

Also Published As

Publication number Publication date
BR112021025744A2 (pt) 2022-02-22
JP7486529B2 (ja) 2024-05-17
MX2021014837A (es) 2022-01-18
EP3984160B1 (en) 2023-07-26
US11502821B2 (en) 2022-11-15
US10972252B2 (en) 2021-04-06
US10985904B2 (en) 2021-04-20
WO2020254248A1 (en) 2020-12-24
US20200403772A1 (en) 2020-12-24
IL288975B2 (en) 2024-06-01
US11394526B2 (en) 2022-07-19
US20210111864A1 (en) 2021-04-15
CN113906712A (zh) 2022-01-07
CA3143362A1 (en) 2020-12-24
AU2020294855B2 (en) 2023-08-10
JP2022537531A (ja) 2022-08-26
EP3984160C0 (en) 2023-07-26
EP3984160A1 (en) 2022-04-20
US20200403781A1 (en) 2020-12-24
AU2020294855A1 (en) 2021-10-14
SG11202110349VA (en) 2021-10-28
US20210111865A1 (en) 2021-04-15
IL288975B1 (en) 2024-02-01
KR20220004201A (ko) 2022-01-11
IL288975A (en) 2022-02-01

Similar Documents

Publication Publication Date Title
JP7486529B2 (ja) プライベート情報検索に応用される準同型暗号化方法
Gentry et al. Compressible FHE with applications to PIR
JP7053537B6 (ja) 素数モジュロの二重カプセル化に基づく1対多分配鍵管理によるポスト量子非対称鍵暗号化システム
Liu et al. An efficient privacy-preserving outsourced calculation toolkit with multiple keys
Geng Homomorphic encryption technology for cloud computing
Liu et al. An efficient privacy-preserving outsourced computation over public data
US20210243005A1 (en) Fully homomorphic encryption method and device and computer readable storage medium
Benzekki et al. A secure cloud computing architecture using homomorphic encryption
Bogos et al. Cryptanalysis of a homomorphic encryption scheme
Schoinianakis Residue arithmetic systems in cryptography: a survey on modern security applications
KR20160114624A (ko) 연관된 개인 키 부분을 사용하는 보다 빠른 공개 키 암호화를 위한 시스템들 및 방법들
Mironov et al. Incremental deterministic public-key encryption
Yasumura et al. Secure Naïve Bayes classification protocol over encrypted data using fully homomorphic encryption
Vo-Huu et al. EPiC: efficient privacy-preserving counting for MapReduce
Blass et al. Epic: Efficient privacy-preserving counting for mapreduce
Lian et al. Bootstrapping of FHE over the integers with large message space
Xu et al. Efficient Private Information Retrieval Protocol with Homomorphically Computing Univariate Polynomials
Yang et al. Inner product encryption from middle-product learning with errors
Bhat et al. A secure two-party PIR for privacy applications
Cheng et al. Compact lossy and all-but-one trapdoor functions from lattice
Zhang et al. How to build a faster private information retrieval protocol?
Zhi-Min et al. Diffie-Hellman Key Exchange Protocol Based on Ring-LWE
김진수 Efficient Fully Homomorphic Encryption over the Integers
Palamakumbura et al. Homomorphic Evaluation of Database Queries
JP2004266479A (ja) 暗号鍵生成方法および装置、暗号鍵生成プログラム並びにそのプログラムを記録した記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240229