JP7841822B2 - 二次関数のための関数暗号化 - Google Patents

二次関数のための関数暗号化

Info

Publication number
JP7841822B2
JP7841822B2 JP2023524501A JP2023524501A JP7841822B2 JP 7841822 B2 JP7841822 B2 JP 7841822B2 JP 2023524501 A JP2023524501 A JP 2023524501A JP 2023524501 A JP2023524501 A JP 2023524501A JP 7841822 B2 JP7841822 B2 JP 7841822B2
Authority
JP
Japan
Prior art keywords
computerized
algorithm
quadratic
key
ciphertext
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.)
Active
Application number
JP2023524501A
Other languages
English (en)
Other versions
JP2023546668A (ja
JP2023546668A5 (ja
JPWO2022087466A5 (ja
Inventor
ホウテック ウィ
Original Assignee
エヌティーティー リサーチ インコーポレイテッド
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 エヌティーティー リサーチ インコーポレイテッド filed Critical エヌティーティー リサーチ インコーポレイテッド
Publication of JP2023546668A publication Critical patent/JP2023546668A/ja
Publication of JP2023546668A5 publication Critical patent/JP2023546668A5/ja
Publication of JPWO2022087466A5 publication Critical patent/JPWO2022087466A5/ja
Application granted granted Critical
Publication of JP7841822B2 publication Critical patent/JP7841822B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3013Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems
    • 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
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or 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
    • 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/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Complex Calculations (AREA)

Description

本開示は、二次関数のための公開鍵関数暗号化(FE)スキームの改善された構成に関する。
関連出願の相互参照
この出願は、2020年10月23日に出願された、米国仮出願第63/104,787号について優先権を主張するものであり、その全内容は、参照により本明細書に組み込まれている。
関数暗号化(functional encryption)は、従来の公開鍵暗号化を2つの異なる方法で拡張する。すなわち、それは、きめ細かい(fine-grained)アクセス制御をサポートし、かつ、暗号化されたデータの関数を学習することを可能にする。関数暗号化における復号鍵(decryption key)は、ユーザが暗号化されたデータの特定の関数を知ることを可能にし、他に何もない。信頼された機関(trusted authority)が存在し、この機関にのみ知られているマスタ秘密鍵を保持している。機関は、ある関数fの記述を入力として与えられると、そのマスタ秘密鍵を使用して、fに関連付けられた導出秘密鍵sk[f]を生成する。sk[f]を保持する者は誰でも、任意のxの暗号化からf(x)を計算することができる。
線形関数が、良好に研究されてきていた。アリスが、データa=3、b=5を保持している例を考える。ここで、ボブは、(a+b)の値を知りたいが、aおよびbは暗号化されている。それで、アリスは、暗号化された変数aおよびbに対する関数を計算するために、ボブにアクセスを提供する。このようにして、ボブは、変数の復号された値にアクセスすることさえなく、復号された形式で関数の結果を獲得するだろう。しかしながら、二次関数の使用は、あまりよく研究されていない。
関数暗号化システムで使用されるように、二次関数は、いくつかの実用的なアプリケーションを有することができる。例えば、二次多項式は、多くの統計関数(例えば、(重み付けされた)平均、分散、共分散、二乗平均平方根)、2つのベクトル間のユークリッド距離、および、線形または二次分類器(例えば、線形または二次回帰)のアプリケーションを表すことができる。しかしながら、既存のシステムは、非常に大きな出力を生成することができる。従って、サイズが制約された環境において、二次関数を用いて関数暗号化を効率的に実行することができる、関数暗号化システムに対する必要性が存在する。
本発明のいくつかの実施形態は、関数暗号化による二次多項式について計算を保護するためのシステム、方法、ネットワークデバイス、および、マシン可読媒体を含む。本方法は、公開鍵およびマスタ秘密鍵を出力する、コンピュータ化セットアップアルゴリズムを実行するステップと、前記マスタ秘密鍵、二次多項式fを受信し、かつ、秘密鍵を出力する、コンピュータ化鍵生成アルゴリズムを実行するステップと、第1コンピュータ化プロセッサにおいて、前記公開鍵および電子メッセージを受信する、暗号化アルゴリズムを実行するステップであり、前記電子メッセージは、両方とも長さnである、2つのベクトルz1およびz2を含み、暗号文を出力する、ステップと、前記第1コンピュータ化プロセッサから遠隔の場所にある第2コンピュータ化プロセッサにおいて、電子通信ネットワークを介して前記暗号文および前記秘密鍵を受信し、かつ、前記暗号文および前記秘密鍵に基づいて、ベクトルz1、z2においてfによって指定される多項式を評価するのと同じ値である、復号された値を出力する、復号アルゴリズムを実行するステップと、前記復号された値を前記第1コンピュータ化プロセッサに送信するステップと、を含む。ここで、任意の計算的に効率的なプロセスは、多項式評価を超えてz1、z2に関して何も学習しない。
いくつかのさらなる実施形態において、前記セットアップアルゴリズムは、さらに、ElGamalスキームのセットアップアルゴリズムを2回実行するステップであり、公開鍵w1とw2、および、秘密鍵sk1とsk2を生成する、ステップと、一次多項式スキームのために関数暗号化スキームのセットアップアルゴリズムを実行するステップであり、結果として、公開鍵w0およびマスタ秘密鍵msk0を生じる、ステップと、前記公開鍵として出力w1、w2、w0を生成し、かつ、前記マスタ秘密鍵としてmsk0を生成するステップと、を含む。
いくつかのさらなる実施形態において、前記暗号化アルゴリズムは、さらに、ElGamalスキームの暗号化アルゴリズムを実行するステップであり、z1のElGamalスキームへの入力が公開鍵w1およびランダム性s1を含み、暗号文y1を結果として生じる、ステップと、前記ElGamalスキームの暗号化アルゴリズムを実行するステップであり、前記ElGamalスキームへの入力が公開鍵w2およびランダム性s2を含み、暗号文y2を結果として生じる、ステップと、一次多項式スキームの暗号化アルゴリズムを実行するステップであり、FE1方式への入力が公開鍵w0およびベクトルを含み、前記ベクトルは、s1掛けるz2、および、y1掛けるs2の連結を含み、暗号文y0を結果として生じる、ステップと、前記暗号文として出力y1、y2、y0を生成するステップと、を含む。
いくつかのさらなる実施形態において、前記鍵生成アルゴリズムは、一次多項式スキームの前記鍵生成アルゴリズムを実行し、前記一次多項式スキームへの入力は、前記マスタ秘密鍵msk0と、f、w1およびw2から導出された一次多項式とを含み、結果として、秘密鍵skを生じ、前記秘密鍵として、出力skを生成するステップ、を実行する。
いくつかのさらなる実施形態において、前記復号アルゴリズムは、さらに、
前記暗号文を受信するステップと、前記暗号文を指定されたコンポーネントy1、y2、y0へと構文解析するステップと、秘密鍵skを受信するステップであり、前記秘密鍵skは一次多項式スキームによって生成される、ステップと、コンポーネントy1およびy2について二次多項式fを計算するステップであり、結果として、値v1を生じる、ステップと、前記一次多項式スキームの前記復号アルゴリズムを使用して、skを用いてy0を復号するステップであり、結果として、復号された値v0を生じる、ステップと、前記復号された値として、出力v1-v0を生成するステップと、を含む。
いくつかのさらなる実施形態において、前記二次多項式fは、二次活性化関数を用いてニューラルネットワークにおいて実行される、プライバシー保護機械学習関数である。いくつかのさらなる実施形態において、前記二次多項式fは、二次関数であり、かつ、統計関数または相関関数のうち1つ以上から選択される。いくつかのさらなる実施形態は、二次多項式fの多項式を、射影ベクトルに適用するステップ、を含む。
いくつかのさらなる実施形態において、前記電子メッセージは、リレーショナルデータベースとして構成され、かつ、保管されており、前記データベースは、指定された関数によって実行される動作と互換性のあるデータモデルにおいて論理的に構成されており、前記秘密鍵は、前記リレーショナルデータベースにおけるデータのサブセットを定義し、かつ、前記復号アルゴリズムは、前記データのサブセットについて前記指定された関数を実行する。
添付の図面は、さらなる理解を提供するために含まれており、そして、この明細書に組み込まれ、かつ、その一部を構成するものであり、開示される実施形態を例示し、そして、説明と共に、開示される実施形態の原理を説明する役割を果たす。図面は、以下の通りである。
図1は、二次関数について関数暗号化システムのための例示的なシステムアーキテクチャを示している。 図2は、二次関数の関数暗号化スキームの自己完結型記述の一つの例を示している。 図3は、請求されるシステムおよび方法を実装するための一つの例示的なコンピュータシステムアーキテクチャを示している。 図4は、請求されるシステムおよび方法を実装するための一つの例示的なコンピュータシステムアーキテクチャのさらなる詳細を示している。
ここにおいて開示されるのは、一定サイズの鍵(constant-size key)、並びに、静的仮定に基づく全ての従来の方式よりも短い暗号文を用いる二次関数のための関数暗号化(functional encryption、FE)スキームである。いくつかの実施形態は、公開属性(public attribute)の長さに依存しない暗号文サイズを用いて、公開属性に対するNC1計算および秘密メッセージに対する二次計算をサポートする、公開鍵部分秘匿(partially-hiding)FEを含んでいる。両方の構成は、無制限の結託(collusion)に対する選択的な、シミュレーションベースのセキュリティを達成し、そして、素数位双線形群(prime-order bilinear group)におけるk-線形仮定(双方向)セキュリティに依存している。これらの構成のコアは、二次関数のFEから一次関数のFEへの新たな低減(reduction)である。
本発明の実施形態は、二次関数のための関数暗号化を提供する。つまり、我々は、メッセージzを暗号化して、暗号文ctを生成し、そして、秘密鍵skfを生成したい。その結果、skfを用いるctの復号は、f(z)をリターンし、一方で、zに関して追加的な情報を漏洩しない。加えて、我々は、(i)zの長さを伴い線形に増える短い暗号文、並びに、(ii)結託に対するシミュレーションベースのセキュリティを望み、その結果、敵対者(adversary)が保持しているct、および、異なる関数f1、f2、…のための秘密鍵は、これらの関数の出力を超えて、zに関して何も学習しない。二次関数のための関数暗号化は、多くのアプリケーションを有し、暗号文サイズがユーザの総数において準線形であるトレイタ追跡(traitor-tracing)スキーム、単純な仮定からの難読化、並びに、二次活性化関数を用いたニューラルネットワークのためのプライバシー保護機械学習、を含んでいる。
実施形態は、二次関数のための新たなペアリングベースの公開鍵関数暗号化スキームを含み、最近の構成を改善している。実施形態は、以下を含む。一定サイズの鍵を用いた二次関数のためのFEスキームであり、その暗号文サイズは、静的仮定に基づく全ての従来の公開鍵方式の暗号文サイズよりも短く、さらに、BLS12-381曲線にわたりインスタンス化されるとき、ここで、

であり、暗号文サイズは、一般的なグループモードにおける最も効率的なスキームの暗号文サイズと一致する。そして、公開属性xに対するNC1計算および秘密メッセージzに対する二次計算をサポートする、部分秘匿FEであり、さらに、暗号文サイズは、zにより線形に増加し、かつ、xから独立している。以前の構成は、zおよびxの両方により線形に増える暗号文サイズを有する。
両方の構成は、無制限の結託に対する少なくとも選択的な、シミュレーションベースのセキュリティを達成し、そして、素数位双線形群における双方向のk-線形仮定に依存している。これらの構成のコアは、二次関数の公開鍵FEから線形関数の公開鍵FEへの新たな低減である。低減は、(双方向)k-線形仮定に依存し、そして、k倍まで膨らむ。平凡な(trivial)低減は、入力サイズを|z|倍まで膨らませることに留意すること。本発明の低減は、以前の低減よりも単純かつ直接的であり、(i)線形関数のための関数隠蔽FEを必要とせず、そして、(ii)本発明の低減は、公開鍵設定において直接的に機能する。(i)により、ここにおいて開示される実施形態は、また、秘密鍵サイズを線形から一定(constant)に減少させることもできる。
例示的な構成の概要が開示されている。我々は、素数位pの非対称双線形群

に依存し、ここで、

である。我々は、それぞれの群

における成分ごとの累乗(component-wise exponentiations)を示すために

を使用する。我々は、行ベクトルを示すために太字の小文字を使用する。

におけるk-線形(k-Lin)仮定は、

をアサートする。
双方向k-線形仮定は、k-線形の強化であり、そして、

をアサートする。
双方向1-線形(1-Lin)は、対称双線形群においてDDHが偽であるのと同じ理由で、偽であることに留意すること。
二次関数のための関数暗号化

で与えられる

について二次関数のクラスを考える。ここで、

は、係数ベクトルである。我々は、最初に、

を使用して、暗号文におけるz1、z2をマスクする。ここで、行列

は、マスタ公開鍵において指定される。次に、

であることを観察する。
我々は、クロス項を、長さ0(kn)の入力に対して評価される線形関数として表現している。この研究における重要な違いは、線形関数がマスタ公開鍵およびfから導出され得ることである。
より正確に、我々は、以下のように記載する。

ここで、第2等式は、テンソル積(tensor product)の混合積特性を使用しており、これは、

であることを我々に教え、そして、||は、行ベクトル連結(row vector concatenation)を示している。示す。右の両側にfTを掛け算して、項を整理すると、次のようになる。

ここで、

であり、先に述べたように、ボックスで囲まれた項(=式(1)におけるクロス項)は、

線形計算に対応する。ここで、入力

は、長さ0(kn)を有し、そして、線形関数MfTは、fおよび公開鍵における行列A1、A2を所与として計算することができる。
MfTに関する後者の特性は、線形関数MfTに関して何も「秘密(“secret”)」がないので、これにより、我々は、以前の低減を著しく簡略化することができる。従来の研究において、線形関数は、マスタ公開鍵から計算することができるものを超えて、マスタ秘密鍵に関する情報を漏らしています。
特には、式(3)を計算するために、線形関数の公開鍵FE(略して、線形FE)を使用することができる。すなわち、我々は、

を暗号化し、そして、[MfT]2のための秘密鍵を生成する。所定の線形FEスキームは、入力および関数の両方が「指数で(“in the exponent”)」指定される、この設定へ容易に拡張される。さらに、これらのスキームは、一定サイズの秘密鍵を用いて、k-線形仮定の下で、選択的な、シミュレーションベースのセキュリティを達成する。線形FE暗号文は、

にあり、一方で、Mおよび秘密鍵の両方は、

にあるだろう。[M]2を計算するために、我々は、また、公開鍵において[A1]2も公開するであろうことに留意すること。二次FEの自己完結型の記述が、ここにおいて開示される。
セキュリティの概要
最初に、k-線形仮定により、[y1]1、[y2]は、z1、z2に関して情報を漏洩しないことを観察する。
次に、我々は、

を仮定して、線形FEに対する暗号文および秘密鍵をシミュレートすることができる。それは、

として、書き直すことができる。我々は、次に、y1、y2が単に与えられれば後者を計算することができ、そして、理想的な機能性の出力、および、従って、線形FE暗号文-鍵ペアは、z1、z2に関して追加的な情報を漏洩しない。
低減においては、線形FEの秘密鍵をシミュレートするために、我々は、

を計算する必要がある。これは、y1、[y2]2、または、[y1]2、y2のいずれかを所与として計算することができるものである。公開鍵において[A1]2の公開を伴う後者は、我々が双方向k-線形仮定を必要とする理由である。最も効率的な、具体的インスタンス化のために、我々は、SXDHと共に双方向2-線形(2-Lin)仮定を使用する(すなわち、1-Lin)。ここで、我々は、

をサンプリングする。我々は、オープン問題として、二次FEを標準k-線形仮定のみに基づかせることについて問題を残す。
部分秘匿関数暗号化(PHFE)への拡張
本発明のアプローチは、クラス

について、部分秘匿(partially hiding)FE(PHFE)へ容易に拡張する。ここで、fは、NC1-より一般的には、任意の算術分岐プログラム(arithmetic branching program)-計算を公開属性xにおいてキャプチャし、そして、

におけるベクトルを出力する。二次関数のFEは、fが定数関数(xとは無関係)である、特別なケースに対応していることに留意すること。PHFEへの拡張の背後にあるアイデアは、等式(2)におけるfTをf(x)で置き換えることであり(xが公開されているので復号ツール(decryptor)はf(x)を計算することができる)、以下を生じる。
新たなボックス化された項を計算するために、クラス


について、我々は、部分秘匿線形FEスキームに依存する。
我々は、マトリクスMを考慮に入れるように構成を拡張することができる。復号アルゴリズムは[M]2のみを得て、Mではないので、いくらかの注意が必要である。続くスキームにおいて、暗号文サイズは、メッセージとともに線形に増大し、かつ、xとは無関係であり、ここで、我々は、次いで、次に我々の部分秘匿二次FEに継承する。
表記法
我々は、有限集合Sからsが一様にランダムに選ばれる(picked)というファクト(fact)を

によって表す。我々は、2つの分布が統計的に区別できないことを示すために

を使用し、そして、2つの分布が計算上区別不可能であることを示すために

を使用する。我々は、行ベクトルを示すために太字の小文字を使用し、そして、マトリクスを示すために太字の大文字を使用する。我々は、i’番目のエレメンタリー行ベクトルを示すためにeiを使用する(i’番目の場所では1であり、かつ、他の場所では0である。そして、コンテキストによって指定されるベクトルの全長である)。任意の正の整数Nについて、{1,2,…,N}を示すために、我々は[N]を使用する。
マトリクス

に対するテンソル積(クロネッカー積)は、

として定義される。
テンソル積の混合積特性(mixed-product property)は、

である。
算術分岐プログラム
分岐(branching)プログラムは、有向非巡回グラフ(directed acyclic graph)(V,E)によって定義される。2つの特別な頂点は、v0,v1∈Vであり、かつ、ラベリング関数はφである。算術分岐プログラム(ABP)では、pが素数であり、関数

を計算する。ここで、φは、Eにおける各エッジに対して、いくつかの入力変数または定数におけるアフィン関数を割り当てる。そして、f(x)は、通信パスに沿った全ての値の積に係る全てのv0-v1通信パスにわたる和である。我々は、|V|+|E|をfのサイズとして参照する。定義は、関数

まで、座標的に拡張される。以降、我々は、ABP

のクラスを示すために、

を使用する。
我々は、任意のブール式(boolean formula)、ブール分岐プログラム、または算術式を、表現サイズにおいて一定のブローアップを伴う算術分岐プログラムへ変換する、線形時間アルゴリズムが存在することに留意する。従って、ABPは、上記の全てよりも強力な計算モデルとして見なすことができる。分岐プログラムおよびブール式が、それぞれに、複雑度クラスLOGSPACEおよびNC1に対応することも、また、想起すること。
素数位数双線形群(Prime-Order Bilinear Group)
ジェネレータ

は、入力としてセキュリティパラメータ1λをとり、そして、記述

を出力する。ここで、pは

ビットの素数であり、G1、G2、およびGTは、p次の循環群(cyclic group)であり、そして、

は、非退化双線形写像(non-degenerate bilinear map)である。我々は、G1、G2、GTにおける群演算が必要であり、そして、線形写像eは、λにおける決定論的多項式時間で計算可能である。

をそれぞれのジェネレータとする。我々は、マトリクス

について、グループ要素の暗黙的表現を使用する。我々は、

を定義する。ここで、べき乗は成分ごとに実行される。また、[A]1、[B]2がを考慮して、

とする。我々は、G1についてマトリクスDiffie-Hellman(MDDH)仮定を想起する。
仮定1(MDDH d k,k’ 仮定)

とする。我々は、全てのPPT敵対者

に対して、以下の有利関数がλにおいて無視される場合に、MDDHd k,lが成り立つと言える。
ここで、以下の有利関数は無視できる。

ここで、

である。
G2におけるMDDHの仮定は、同様の方法で定義することができる。

が確立され、厳重なセキュリティ低減を伴う。(設定においては、l≦kであり、MDDHd k,l仮定は無条件に成り立つ。)
双方向MDDH仮定は、有利関数を用いて同様に定義される。
部分秘匿関数暗号化(PHFE)
我々は、関数クラス

に対する部分秘匿関数暗号化の概念を想起する。ここで、

は、固定であり、そして、

は、秘密鍵によって指定されている。我々は、設定

に主に関心がある。それは、線形関数および二次関数について、それぞれに、FEを一般化する。
シンタックス
部分秘匿関数暗号化スキーム(PHFE)は、4個のアルゴリズムからなる。
Setup(1λ,1n,1n’,h):セットアップアルゴリズムは、入力として、セキュリティパラメータ1λ、並びに、関数パラメータ1n,1n、および、

を取得する。これは、マスタ公開鍵mpk、および、マスタ秘密鍵mskを出力する。
Enc(mpk,x,z):暗号化アルゴリズムは、入力として、mpk、および、メッセージ

を取得する。それは、暗号文ct(x,z)を出力し、xは公開されている。
KeyGen(msk,f):鍵生成アルゴリズムは、入力として、msk、および、関数

を取得する。それは、秘密鍵skfを出力し、fは公開されている。
Dec((skf,f),(ct(x,z),x)):復号アルゴリズムは、入力として、skf、および、fと共にct(x,z)、並びに、xを取得する。それは、Zpにおいて値を出力する。
正確性(Correctness)
全ての

について、我々は、

を必要とする。
正確性の緩和
開示されるスキームは、正確性の緩和を達成する。ここで、復号アルゴリズムは追加の境界1Bをとり(かつ、Bにおいて時間多項式で実行し)、そして、値がBによって有界である場合に、h(z)f(x)Tを出力する。この特徴は、また、「指数から(“from the exponent”)」回答を回復するためのブルートフォース(brute-force)離散ログへの依存のせいで、DDHおよび双線形群からの(IP)FEに対する以前の研究にも存在する。緩和は、機能性のみを参照し、そして、セキュリティに影響を及ぼさない。
セキュリティ定義
我々は、半適応性(選択性の強化)、シミュレーションベースのセキュリティを検討し、それは、ランダム化シミュレータ(Setup*、Enc*、KeyGen*)が存在することを規定する。その結果、全ての効率的なステートフルな敵対者

(以降、「A」)に対して、
であり、そうして、AがKeyGenに対してクエリfを行うときはいつでも、シミュレータKeyGen*は、h(z*)f(x*)Tと共にfを獲得する。我々は、実際のゲームと理想的なゲームとを区別する際の利点を示すために
メイン構成
このセクションにおいて、我々は、クラス

に対するPHFEスキームを提示する。
本スキームは、G1、G2における双方向k-線形仮定およびk’-線形仮定の下でSA-SIMセキュアである(最も効率的な具体的なインスタンス化のために、我々は、k=2、k’-=1を設定する)。本スキームにおいて、復号は、実際に、

を計算し、これに対して、シミュレータは、

を獲得することだけが必要である。二次関数についてのFEは、PHFEの特別な場合であることに留意すること(ここで、fはハードワイヤされた二次関数を有する)。我々の二次FEの自己完結型の説明がここにおいて開示される。
ビルディングブロックとして、我々は、

によってパラメータ化される、クラス

について、SA-SIMセキュアPHFEスキーム(Setup0,KeyGen0,Dec0)に依存する。ここで、暗号化は[Z]1を獲得し、そして、シミュレータは[zMf(x)T]2を獲得する。ビルディングブロックをインスタンス化する方法が、ここにおいて開示される。
スキーム
Setup(p,1n,1n’1,1n’2):

を実行し、

をサンプルする。ここで、

であり、かつ、

を出力する。所与のmpkを観察し、我々は、[M]2を計算することができる。
Enc(mpk,x,(z1,z2)):

をサンプルする。そして、

を出力する。
KeyGen(msk,f):

を出力する。
Dec(skf,f,ct,x):

を出力する。
正確性
最初に、我々は、

(4)
を観察する。ここで、第2等式は、テンソル積の混合積特性を使用している。等式(4)の両辺にf(x)Tを乗算して、項を整理すると、次のようになる。
次に、根底にあるスキームの正確性から、我々は、以下が分かる。

である。次いで、正確性が容易に得られる。
シミュレータ
我々は、シミュレータを説明することから始める。

であり、

をサンプルし、かつ、

を出力する。
Enc*(msk* 0,x*):

をサンプルする。そして、

を出力する。
KeyGen*(msk*,x*,f,[μ]2):

を出力する。
線形関数のための部分秘匿関数暗号化(PHFE)
ここにおいては開示されるのは、マトリクス[M]2によってパラメータ化される、クラス

である。ここで、暗号化は[Z]1を獲得し、そして、シミュレータは[zMf(x)T]2を獲得する。実際に、我々は、より一般的な設定のためのスキームを提示する。ここで、マトリクス[M]2は、秘密鍵に対応する関数によって指定される(すなわち、我々は、全ての鍵に対して同じ行列ではなく、各秘密鍵について異なる[M]2を許容する)。ここで、復号アルゴリズムは、[M]2を獲得するだけであり、そして、Mではない。このスキームは、k-線形の下でシミュレーションベースの半適応性(semi-adaptive)セキュリティを達成する。
部分的ガーブリングスキーム(Garbling Scheme)

であるzf(x)Tのための部分的ガーブリングスキームは、ランダム化されたアルゴリズムであり、入力fについて、以下の形態のx、zにおけるアフィン関数を出力する。

ここで、

は、fのみに依存し、

は、ランダムコインであり、そして、

は、tにおける最後のn’エントリからなり、その結果、(pf,x,z,f,x)が与えられると、我々は、zf(x)Tを回復することができ、一方で、zに関して他には何も学習しない。
補題1(部分的ガーブリング)
4つの効率的なアルゴリズム(lgen,pgb,rec,pgb*)が存在し、以下の特性を有している。
(シンタックス)
入力


について、lgen(f)は、

を出力し、かつ、

である。ここで、

であり、そして、

は、tにおける最後のn’エントリからなり、m、tは、fのサイズにおいて線形である。
(再構成)
rec(f,x)は、

を出力し、その結果、f、x、z、tの全てについて、

であり、ここで、pf,x,z=pgb(f,x,z;t)である。
(プライバシー)
f、x、zの全てについて、

であり、ここで、

についてランダム性である。
構造
我々は、

について、「指数において(“in the exponent”)」pgb(f,x,z;t)の代わりにpgb(f,x,zM;t)を計算するために部分的ガーブリングに依存している。すなわち、再構成アルゴリズムを適用し(これは、Mではなく、f、xが既知であることを要する)、次いで、[zMf(x)T]2をリターンする。
Setup(p,1n,1n’):

を実行し、

をサンプルし、そして、

を出力する。
Enc(mpk,(x,z)):
をサンプルし、そして、

を出力する。[Z]1を獲得することが、Encについて十分であることに留意すること。
KeyGen(msk,(f,[M]2)):

を実行し、ここで、

であり、

をサンプルし、そして、

を出力する。ここで、

は、Tの最も右のn’列(column)からなるマトリクスを指す。
Dec((skf,M,(f,[M]2)),(ctx,z,x)):
入力鍵である、

および、暗号分である、

について、復号は以下のように動作する。
(a)

を計算する。
(b)

を計算する。
(c)

を実行し、

を計算する。
正確性
ctx,zおよびskf,Mについて、我々は、



を有している。
ここで、等式(11)は、

である事実、および、部分的ガーブリングの再構成から得られる。残りの2つの等式(equalities)は、以下から得られる。

ここで、我々は、等式

を使用する。これは、正確性を容易に証明する。
シミュレータ
Setup(p,1n,1n’1,1n’2):

を実行し、

をサンプルし、そして、



を出力する。ここで、

である。我々は、ここでは、(A|c)がフルランクを有していると仮定しており、これは、確立1-1/pで発生する。
Enc*(msk*,x*):

を出力する。
KeyGen*(msk*,x*,(f,[M]2),[μ]2):

を実行する。

を実行し、そして、

を出力する。ここで、


である。
ここで、

は、Tの最も右のn’列(column)からなるマトリクスを指す。つまり、


である。
二次関数のための具体的なスキーム

によって指定される二次関数のための関数暗号化スキームの自己完結型記述は、ここにおいて、

で表される。
本スキームは、G1、G2において、双方向k-線形仮定およびk’-線形仮定の下でSA-SIMセキュアである。最も効率的で、具体的なインスタンス化(図1を参照のこと)のために、我々は、k=2、k’=1を設定する。
Setup(p,1n1,1n2):
を実行し、

をサンプルし、そして、

を出力する。
Enc(mpk,(z1,z2)):

をサンプルし、そして、

を出力する。
KeyGen(msk,f):

を出力する。
Dec(skf,f,ct):skf=[kT]2を解析し、そして、

の離散対数(discrete log)を出力する。
システムの実装
図1を参照すると、一つの例示的なシステムアーキテクチャが示されている。ユーザ(215)は、トークンTFを発行することによって、リモートサーバ(210)が、暗号文について特定の関数Fを実行することを可能にする。サーバは、利用可能な暗号文CについてFを実行し、そして暗号化された形態で結果RFを生成する。システムは、要求された機能のためのトークンTFを構築する責任がある、信頼された機関(TA)(220)を含むことができる。
図示されるように、データ所有者(205)は、暗号文Cをリモートサーバ(210)にアップロードする。データユーザ(215)は、関数(F)のトークンをTA(220)に要求する。TA(220)は、トークンTFをデータユーザに発行する。データユーザは、次いで、TFをサーバに送信する。サーバは、暗号化されたデータについてFを実行し、そして、結果RFをデータユーザに転送する。
図2は、

によって指定される二次関数について、関数暗号化スキームの自己完結型記述の一つの例を示している。ここで

である。
本スキームは、G1、G2における双方向k-線形仮定およびk’-線形仮定の下でSA-SIMセキュアである。最も効率的な具体的なインスタンス化のために(図1を参照のこと)、我々は、k=2、k’-=1を設定する。
図3および図4は、本開示において説明される様々な実施形態を実装するために有用な例示的なコンピュータシステムを示している。種々の実施形態は、例えば、図3に示されるコンピュータシステム500といった、1つ以上のコンピュータシステムを使用して実装され得る。1つ以上のコンピュータシステム500は、例えば、ここにおいて説明される実施形態のいずれか、並びに、それらの組み合わせおよび部分的組み合わせを実装するために使用され得る。
コンピュータシステム500は、プロセッサ504といった、1つ以上のプロセッサ(中央処理装置、処理装置、またはCPUとも呼ばれる)を含み得る。プロセッサ504は、通信インフラストラクチャ506(例えば、バスといったもの)に接続され得る。
コンピュータシステム500は、また、モニタ、キーボード、ポインティングデバイスといった、ユーザ入力/出力デバイス503も含み得る。それらは、ユーザ入力/出力インターフェイス502を介して通信インフラストラクチャ506と通信することができる。プロセッサ504のうち1つ以上は、グラフィックス処理ユニット(GPU)であってよい。一つの実施形態において、GPUは、数学的に集中的なアプリケーションを処理するように設計された専用電子回路である、プロセッサであり得る。GPUは、コンピュータグラフィックスアプリケーション、画像、ビデオ、等に共通の数学的に集約されたデータといった、データの大きなブロックの並列処理に効率的な並列構造を有し得る。
コンピュータシステム500は、また、ランダムアクセスメモリ(RAM)といった、メインメモリ508を含み得る。メインメモリ508は、1つ以上のレベルのキャッシュを含み得る。メインメモリ508は、その中に保管された制御ロジック(すなわち、コンピュータソフトウェア、命令、等)及び/又はデータを有し得る。コンピュータシステム500は、また、1つ以上の二次記憶装置または二次メモリ510を含むこともできる。二次メモリ510は、例えば、ハードディスクドライブ512及び/又はリムーバブルストレージデバイス、もしくはリムーバブルストレージドライブ514を含み得る。リムーバブルストレージドライブ514は、リムーバブルストレージユニット518と相互作用し得る。リムーバブルストレージユニット518は、そこに保管されたコンピュータソフトウェア(制御ロジック)及び/又はデータを有しているコンピュータ使用可能または読取可能ストレージデバイスを含み得る。リムーバブルストレージドライブ514は、リムーバブルストレージユニット518から読み出し、かつ/あるいは、それに書き込むことができる。
二次メモリ510は、コンピュータプログラム、及び/又は他の命令、及び/又はデータが、コンピュータシステム500によってアクセスされることを可能にするための他の手段、デバイス、構成要素、媒介、または、他の手法を含み得る。そうした手段、デバイス、構成要素、媒介、または他のアプローチは、例えば、リムーバブルストレージユニット522およびインターフェイス520を含み得る。例示的なリムーバブルストレージユニット522およびインターフェイス520は、プログラムカートリッジおよびカートリッジインターフェイス、リムーバブルメモリチップ(EPROMまたはPROMといったもの)および関連するソケット、メモリスティックおよびUSBポート、メモリカードおよび関連するメモリカードスロット、及び/又は、任意の他のリムーバブルストレージユニットおよび関連するインターフェイスを含み得る。
コンピュータシステム500は、さらに、通信インターフェイス524(例えば、ネットワークインターフェイス)を含み得る。通信インターフェイス524は、コンピュータシステム500が、外部デバイス、外部ネットワーク、外部エンティティ、など(個別におよび集合的に、リモートデバイス、ネットワーク、エンティティ528と呼ばれる)の任意の組合せと、通信およびインタラクションすることを可能にすることができる。例えば、通信インターフェイス524は、コンピュータシステム500が、通信パス526を介して、外部またはリモートデバイス、ネットワーク、エンティティ528と通信することを可能にすることができる。それらは、有線及び/又は無線(または、それらの組み合わせ)であってよく、そして、LAN、WAN、インターネット、等の任意の組み合わせを含んでもよい。制御ロジック及び/又はデータは、通信パス526を介して、コンピュータシステム500へ、または、コンピュータシステムから伝送され得る。
コンピュータシステム500は、また、いくつかの非限定的な例を挙げると、パーソナルデジタルアシスタント(PDA)、デスクトップワークステーション、ラップトップまたはノートブックコンピュータ、ネットブック、タブレット、スマートフォン、スマートウォッチまたは他のウェアラブルデバイス、アプライアンス、モノのインターネットの一部、及び/又は、組み込みシステム、もしくは、それらの任意の組み合わせのいずれかであり得る。
コンピュータシステム500は、任意の配信パラダイムを介して任意のアプリケーション及び/又はデータにアクセスまたはホストする、クライアントまたはサーバコンピューティングデバイスであり得る。これらに限定されるわけではないが、リモートまたは分散クラウドコンピューティングソリューション、ローカルまたはオンプレミスソフトウェア(「オンプレミス(“on-premise”)」クラウドベースソリューション)、「サービスとして(“as a service”)」モデル
(例えば、サービスとしてのコンテンツ(CaaS)、サービスとしてのデジタルコンテンツ(DCaaS)、サービスとしてのソフトウェア(SaaS)、サービスとしての管理されたソフトウェア(MSaaS)、サービスとしてのプラットフォーム(PaaS)、サービスとしてのデスクトップ(DaaS)、サービスとしてのフレームワーク(FaaS)、サービスとしてのバックエンド(BaaS)、サービスとしてのモバイルバックエンド(MBaaS)、サービスとしてのインフラストラクチャ(IaaS)、等)など)、及び/又は、前述の例、もしくは、他のサービスまたは配信パラダイムの任意の組合せを含むハイブリッドモデル、を含んでいる。
図4は、コンピュータシステム900の例示的なマシンを示しており、その中では、ここにおいて説明される動作のうち任意の1つ以上をマシンに実行させるための命令セットが実行され得る。代替的な実装において、マシンは、LAN、イントラネット、エクストラネット、及び/又は、インターネットにおける他のマシンに接続(例えば、ネットワーク接続)され得る。マシンは、ピアツーピア(または、分散)ネットワーク環境におけるピアマシンとして、または、クラウドコンピューティングインフラストラクチャまたは環境におけるサーバまたはクライアントマシンとして、クライアント-サーバネットワーク環境におけるサーバまたはクライアントマシンの能力において動作することができる。
マシンは、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、携帯電話、ウェブアプライアンス、サーバ、ネットワークルータ、スイッチまたはブリッジ、専用アプリケーションまたはネットワークセキュリティアプライアンスまたはデバイス、もしくは、そのマシンによって行われるべきアクションを指定する命令セット(シーケンシャルまたは他の方法)を実行することが可能な任意のマシンであり得る。さらに、単一のマシンが例示されているが、「マシン(“machine”)」という用語は、また、ここにおいて説明される方法のうち任意の1つ以上を実行するために命令セット(または、複数のセット)を個別または共同で実行する、マシンの任意の集合を含むように解釈されるものである。
例示的なコンピュータシステム900は、処理装置902、メインメモリ904(例えば、リードオンリーメモリ(ROM)、フラッシュメモリ、シンクロナスDRAM(SDRAM)といったダイナミックランダムアクセスメモリ(DRAM)、など)、スタティックメモリ906(例えば、フラッシュメモリ、スタティックランダムアクセスメモリ(SRAM)、など)、および、データストレージデバイス918を含み、これらは、バス930を介して相互に通信する。
処理装置902は、マイクロプロセッサ、中央処理装置といった1つ以上の処理装置を表す。より具体的に、処理装置は、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、または、他の命令セットを実装するプロセッサ、もしくは、命令セットの組み合わせを実装するプロセッサであってよい。処理装置902は、また、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサといった、1つ以上の専用処理装置であってよい。処理装置902は、ここにおいて説明される動作およびステップを実施するための命令926を実行するように構成されている。
コンピュータシステム900は、さらに、ネットワーク920を介して通信するためのネットワークインターフェイスデバイス908を含み得る。コンピュータシステム900は、また、ビデオディスプレイユニット910、英数字入力デバイス912(例えば、キーボード)、カーソル制御デバイス914(例えば、マウス)、グラフィックス処理ユニット922、信号生成デバイス916(例えば、スピーカ)、グラフィックス処理ユニット922、ビデオ処理ユニット928、および、オーディオ処理ユニット932を含み得る。
データストレージデバイス918は、マシン可読媒体924(コンピュータ可読ストレージ媒体としても知られている)を含み得る。そこには、ここにおいて説明された動作のうちいずれか1つ以上を具現化する命令926(例えば、ソフトウェア命令)の1つ以上のセットが保管されている。命令926は、また、完全または少なくとも部分的に、コンピュータシステム900によるその実行の最中にメインメモリ904内及び/又は処理装置902内に存在してもよい。ここで、メインメモリ904および処理装置902は、また、マシン可読ストレージ媒体を構成している。
一つの例において、命令926は、開示される技術的事項(subject matter)に対応する動作および機能を実装するための命令を含んでいる。マシン可読ストレージ媒体924は、例示的な実装において単一の媒体であるように示されているが、「マシン可読ストレージ媒体(“machine-readable storage medium”)」という用語は、命令926の1つ以上のセットを保管している、単一の媒体または複数の媒体(例えば、集中型もしくは分散型データベース、及び/又は、関連するキャッシュおよびサーバ)を含むように解釈されるべきである。「マシン可読ストレージ媒体」という用語は、また、マシンによる実行のための命令926のセットを保管またはエンコーディングすることが可能であり、かつ、マシンに本開示の動作のうちの任意の1つ以上を実行させる、任意の媒体を含むものと解釈されるものである。従って、「マシン可読ストレージ媒体」という用語は、これらに限定されるわけではないが、ソリッドステートメモリ、光媒体、および磁気媒体を含むものと解釈されるものである。
詳細な説明のいくつかの部分は、コンピュータメモリの中のデータビットに対する演算のアルゴリズムおよび記号表現に関して提示されている。これらのアルゴリズムの説明および表現は、データ処理分野の当業者によって、彼らの作業の実体を他の当業者に最も効果的に伝えるために使用される方法である。アルゴリズムは、ここにおいて、または、一般的に、所望の結果をもたらす一貫性のある一連の動作であると考えられる。動作は、物理量の物理的な操作を必要とするものである。たいてい、必須ではないが、これらの量は、保管、結合、比較、および、他の操作が可能な電気信号または磁気信号の形態をとる。これらの信号をビット、値、要素、記号、キャラクタ、ターム、数、などと呼ぶことが、主に共通使用という理由で、時に便利であることが証明されている。
しかしながら、これらの用語および類似の用語の全ては、適切な物理量に関連付けられるべきであり、かつ、これらの量に適用される単なる便利なラベルに過ぎないことに留意すること。上記の説明から明らかなように、特に明記しない限り、説明全体を通して、「識別する(“identifying”)」、または「決定する(“determining”)」、または「実行する(“executing”)」、または「実施する(“performing”)」、または「収集する(“collecting”)」、または「作成する(“creating”)」、または「送信する(“sending”)」、などの用語を利用している説明は、コンピュータシステムのレジスタおよびメモリにおいて物理(電子)量として表されるデータを、コンピュータシステムのメモリまたはレジスタ、もしくは他のそうした情報ストレージデバイスにおいて物理量として同様に表される他のデータへと、操作し、かつ、変換する、コンピュータシステム、または、同様な電子コンピューティングデバイスの動作およびプロセスを指すことを理解されたい。
本開示は、また、ここにおける動作を実行するための装置にも関する。この装置は、意図された目的のために特別に構築されてよく、または、コンピュータに保管されたコンピュータプログラムによって選択的に動作化または再構成されるコンピュータを含み得る。そうしたコンピュータプログラムは、コンピュータ可読ストレージ媒体に保管されてよく、それぞれが、コンピュータシステムバスに結合されている。これらに限定されるわけではないが、フロッピー(登録商標)ディスク、光ディスク、CD-ROM、および光磁気ディスクを含む任意のタイプのディスク、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気カードまたは光カード、もしくは、電子命令を保管するのに適した任意のタイプの媒体、といったものである。
ここにおいて提示される動作および説明は、任意の特定のコンピュータまたは他の装置に本質的には関連していない。様々なタイプのシステムが、ここにおける教示に従って、プログラムと共に使用されてよく、または、動作を実行するために、より特化された装置を構築することが好都合であることが証明され得る。様々なこれらのシステムの構造は、ここにおける説明で明らかにされることが分かる。加えて、本開示は、任意の特定のプログラミング言語を参照して説明されていない。様々なプログラミング言語が、ここにおいて説明される本開示の教示を実装するために使用され得ることが理解されるだろう。
本開示は、命令が保管されたマシン可読媒体を含み得る、コンピュータプログラム製品またはソフトウェアとして提供され得る。命令は、本開示に従ったプロセスを実行するようにコンピュータシステム(または、他の電子デバイス)をプログラムするために使用され得るものである。マシン可読媒体は、マシン(例えば、コンピュータ)によって可読な形態で情報を保管するための任意のメカニズムを含む。例えば、マシン可読(例えば、コンピュータ可読)媒体は、リードオンリーメモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスクストレージ媒体、光ストレージ媒体、フラッシュメモリデバイス、などのマシン(例えば、コンピュータ)可読ストレージ媒体を含む。
いくつかの実施形態において、制御ロジック(ソフトウェア)が保管された有形の非一時的コンピュータ使用可能または可読媒体を備える、有形の、非一時的な装置または製品は、また、コンピュータプログラム製品またはプログラムストレージデバイスとしても、ここにおいて参照され得る。このことは、これらに限定されるわけではないが、コンピュータシステム500、メインメモリ508、二次メモリ510、および、リムーバブルストレージユニット518と522、並びに、上記の任意の組合せを具現化する有形の製品を含んでいる。そうした制御ロジックは、1つ以上のデータ処理装置(コンピュータシステム500といったもの)によって実行されると、そうしたデータ処理装置を、ここにおいて説明されるように動作させることができる。
この開示に含まれる教示に基づいて、図3および図4に示されるもの以外のデータ処理装置、コンピュータシステム、及び/又は、コンピュータアーキテクチャを使用して、この開示の実施形態をどのように作成および使用するかは、当業者にとって明らかであろう。特に、実施形態は、ここにおいて説明されたもの以外のソフトウェア、ハードウェア、及び/又は、オペレーティングシステム実装を用いて動作することができる。
他のセクションではなく、詳細な説明のセクションが、請求項を解釈するために使用されるように意図されていることが理解されよう。他のセクションは、発明者によって考えられる、1つ以上であるが全てではない例示的な実施形態を明らかにすることができ、そして、従って、決して、この開示または添付の請求項を限定するように意図されたものではない。
この開示は、例示的な分野およびアプリケーションについて例示的な実施形態を説明するが、本開示は、それらに限定されるものではないことが理解されるべきである。他の実施形態およびそれに対する修正が可能であり、そして、それらは、この開示の精神および範囲内にある。例えば、このパラグラフの一般性を限定することなく、実施形態は、ここにおいて説明される図において説明されているソフトウェア、ハードウェア、ファームウェア、及び/又は、エンティティに限定されるものではない。さらに、実施形態は(ここにおいて明示的に記載されているか否かにかかわらず)、ここにおいて説明されている実施例を超えた分野およびアプリケーションに対して著しい有用性を有している。
実施形態は、指定された関数、および、それらの関係の実装を説明している機能的ビルディングブロックを用いて、ここにおいて説明されてきている。これらの機能的ビルディングブロックの境界は、説明の便宜のために、ここにおいて任意に定義されてきたものである。指定された関数および関係(または、その均等物)が適切に実行される限り、代替的な境界を定義することができる。また、代替的な実施形態は、ここにおいて説明されるものとは異なる順序を使用して、機能ブロック、ステップ、動作、方法、等を実行することができる。
ここにおける「一つの実施形態(“one embodiment”)」、「実施形態(“an embodiment”)」、「例示的な実施形態(“an example embodiment”)」、または、同様な語句への言及は、説明される実施形態が、特定の特徴、構造、または特性を含むことができるが、必ずしも全ての実施形態が、特定の特徴、構造、または特性を含むとは限らないことを示している。さらに、そうした語句は、必ずしも同じ実施形態に言及しているわけではない。さらに、特定の特徴、構造、または特性が、実施形態に関連して説明されている場合、ここにおいて明示的に言及または説明されているか否かにかかわらず、そうした特徴、構造、または特性を他の実施形態に組み込むことは、当業者の知識の範囲内であろう。追加的に、いくつかの実施形態は、「結合された(“coupled”)」および「接続された(“connected”)」という表現を、それらの派生語と共に使用して説明することができる。これらの用語は、必ずしも相互に同義語として意図されているものではない。例えば、いくつかの実施形態は、2つ以上の要素が、相互に、直接に物理的または電気的に接触していることを示すために、「接続された」及び/又は「結合された」という用語を使用して説明することができる。しかしながら、「結合された」という用語は、また、2つ以上の要素が、相互に直接に接触していないが、それでもなお、相互に協働または相互作用することを意味することもできる。
この開示の広さおよび範囲は、上述の例示的な実施形態のいずれによっても限定されるべきではないが、以降の特許請求の範囲およびそれらの均等物に従ってのみ定義されるべきである。前述の明細書では、本開示の実装について、その特定の例示的な実装を参照して説明してきた。以降の特許請求の範囲で明らかにされる本開示の実装に係るより広い精神および範囲から逸脱することなく、それに対して様々な修正が行われ得ることが明らかだろう。本明細書および図面は、従って、限定的な意味ではなく、例示的な意味で見なされるべきである。

Claims (14)

  1. 関数暗号化によって二次多項式の計算を保護するためのコンピュータ化方法であって、
    公開鍵およびマスタ秘密鍵を出力する、コンピュータ化セットアップアルゴリズムを実行するステップと、
    前記マスタ秘密鍵、二次多項式fを受信し、かつ、秘密鍵を出力する、コンピュータ化鍵生成アルゴリズムを実行するステップであり、前記二次多項式fは二次関数である、ステップと、
    第1コンピュータ化プロセッサにおいて、前記公開鍵および電子メッセージを受信する、暗号化アルゴリズムを実行するステップであり、
    前記電子メッセージは、両方とも長さnである、2つのベクトルz1およびz2を含み、暗号文を出力する、ステップと、
    前記第1コンピュータ化プロセッサから遠隔の場所にある第2コンピュータ化プロセッサにおいて、電子通信ネットワークを介して前記暗号文および前記秘密鍵を受信し、かつ、前記暗号文および前記秘密鍵に基づいて、ベクトルz1、z2において前記二次多項式fを評価するのと同じ値である、復号された値を出力する、復号アルゴリズムを実行するステップと、
    前記復号された値を前記第1コンピュータ化プロセッサに送信するステップと、を含み、
    前記暗号化アルゴリズムおよび前記復号アルゴリズムは、任意の計算的に効率的なプロセスが、前記二次多項式fの前記評価を超えてz1、z2に関して何も学習しないように、双方向のk-線形仮定に基づいており、
    前記暗号化アルゴリズムは、さらに、
    ElGamalスキームの暗号化アルゴリズムを実行するステップであり、z1のElGamalスキームへの入力が公開鍵w1およびランダム性s1を含み、暗号文y1を結果として生じる、ステップと、
    前記ElGamalスキームの暗号化アルゴリズムを実行するステップであり、前記ElGamalスキームへの入力が公開鍵w2およびランダム性s2を含み、暗号文y2を結果として生じる、ステップと、
    一次多項式スキームの暗号化アルゴリズムを実行するステップであり、前記一次多項式スキームへの入力が公開鍵w0およびベクトルを含み、前記ベクトルは、s1掛けるz2、および、y1掛けるs2の連結を含み、暗号文y0を結果として生じる、ステップと、
    前記暗号文として出力y1、y2、y0を生成するステップと、
    を含む、
    方法。
  2. 関数暗号化によって二次多項式の計算を保護するためのコンピュータ化方法であって、
    公開鍵およびマスタ秘密鍵を出力する、コンピュータ化セットアップアルゴリズムを実行するステップと、
    前記マスタ秘密鍵、二次多項式fを受信し、かつ、秘密鍵を出力する、コンピュータ化鍵生成アルゴリズムを実行するステップであり、前記二次多項式fは二次関数である、ステップと、
    第1コンピュータ化プロセッサにおいて、前記公開鍵および電子メッセージを受信する、暗号化アルゴリズムを実行するステップであり、
    前記電子メッセージは、両方とも長さnである、2つのベクトルz1およびz2を含み、暗号文を出力する、ステップと、
    前記第1コンピュータ化プロセッサから遠隔の場所にある第2コンピュータ化プロセッサにおいて、電子通信ネットワークを介して前記暗号文および前記秘密鍵を受信し、かつ、前記暗号文および前記秘密鍵に基づいて、ベクトルz1、z2において前記二次多項式fを評価するのと同じ値である、復号された値を出力する、復号アルゴリズムを実行するステップと、
    前記復号された値を前記第1コンピュータ化プロセッサに送信するステップと、を含み、
    前記暗号化アルゴリズムおよび前記復号アルゴリズムは、任意の計算的に効率的なプロセスが、前記二次多項式fの前記評価を超えてz1、z2に関して何も学習しないように、双方向のk-線形仮定に基づいており、
    前記復号アルゴリズムは、さらに、
    前記暗号文を受信するステップと、
    前記暗号文を指定されたコンポーネントy1、y2、y0へと構文解析するステップと、
    秘密鍵skを受信するステップであり、前記秘密鍵skは一次多項式スキームによって生成される、ステップと、
    コンポーネントy1およびy2について二次多項式fを計算するステップであり、結果として、値v1を生じる、ステップと、
    前記一次多項式スキームの復号アルゴリズムを使用して、skを用いてy0を復号するステップであり、結果として、復号された値v0を生じる、ステップと、
    前記復号された値として、出力v1-v0を生成するステップと、
    を含む、
    方法。
  3. 前記コンピュータ化セットアップアルゴリズムは、さらに、
    ElGamalスキームのセットアップアルゴリズムを2回実行するステップであり、公開鍵w1とw2、および、秘密鍵sk1とsk2を生成する、ステップと、
    一次多項式スキームのために関数暗号化スキームのセットアップアルゴリズムを実行するステップであり、結果として、公開鍵w0およびマスタ秘密鍵msk0を生じる、ステップと、
    前記公開鍵として出力w1、w2、w0を生成し、かつ、前記マスタ秘密鍵としてmsk0を生成するステップと、
    を含む、請求項1または2に記載の方法。
  4. 前記コンピュータ化鍵生成アルゴリズムは、
    一次多項式スキームの鍵生成アルゴリズムを実行し、
    前記一次多項式スキームへの入力は、マスタ秘密鍵msk0と、f、w1およびw2から導出された一次多項式とを含み、結果として、秘密鍵skを生じ、
    前記秘密鍵として、出力skを生成するステップ、を実行する、
    請求項1または2に記載の方法。
  5. 前記二次多項式fは、二次活性化関数を用いてニューラルネットワークにおいて実行される、プライバシー保護機械学習関数であり、もしくは、
    前記二次多項式fは、二次関数であり、かつ、統計関数または相関関数のうち1つ以上から選択され
    請求項1または2に記載の方法。
  6. 前記方法は、さらに、二次多項式fの多項式を、射影ベクトルに適用するステップ、を含む、
    請求項1または2に記載の方法。
  7. 前記電子メッセージは、リレーショナルデータベースとして構成され、かつ、保管されており、
    前記リレーショナルデータベースは、指定された関数によって実行される動作と互換性のあるデータモデルにおいて論理的に構成されており、
    前記秘密鍵は、前記リレーショナルデータベースにおけるデータのサブセットを定義し、かつ、
    前記復号アルゴリズムは、前記データのサブセットについて前記指定された関数を実行する、
    請求項1または2に記載の方法。
  8. 関数暗号化によって二次多項式の計算を保護するためのコンピュータ化システムであって、本システムは、
    1つ以上のコンピュータ化プロセッサであり、
    公開鍵およびマスタ秘密鍵を出力するセットアップアルゴリズム、および、
    前記マスタ秘密鍵、二次多項式fを受信し、かつ、秘密鍵を出力する、鍵生成アルゴリズム、
    を実行するように構成されており、前記二次多項式fは二次関数である、コンピュータ化プロセッサと、
    コンピュータ化暗号プロセッサであり、
    前記公開鍵および電子メッセージを受信する暗号化アルゴリズムを実行するように構成されており、
    前記電子メッセージは、両方とも長さnである、2つのベクトルz1およびz2を含み、かつ、暗号文を出力する、
    暗号プロセッサと、
    コンピュータ化復号プロセッサであり、
    前記コンピュータ化暗号プロセッサから遠隔の場所にあり、
    電子通信ネットワークを介して前記暗号文および前記秘密鍵を受信し、
    前記暗号文および前記秘密鍵に基づいて、ベクトルz1、z2において前記二次多項式fを評価するのと同じ値である、復号された値を出力する、復号アルゴリズムを実行し、かつ、
    前記復号された値を、第1コンピュータ化プロセッサに送信する、
    ように構成されている、コンピュータ化復号プロセッサと、を含み、
    前記暗号化アルゴリズムおよび前記復号アルゴリズムは、任意の計算的に効率的なプロセスが、前記二次多項式fの前記評価を超えてz1、z2に関して何も学習しないように、双方向のk-線形仮定に基づいており、
    前記セットアップアルゴリズムは、さらに、
    ElGamalスキームのセットアップアルゴリズムを2回実行するステップであり、公開鍵w1とw2、および、秘密鍵sk1とsk2を生成する、ステップと、
    一次多項式スキームのために関数暗号化スキームのセットアップアルゴリズムを実行するステップであり、結果として、公開鍵w0およびマスタ秘密鍵msk0を生じる、ステップと、
    前記公開鍵として出力w1、w2、w0を生成し、かつ、前記マスタ秘密鍵としてmsk0を生成するステップと、
    を含む、
    システム。
  9. 関数暗号化によって二次多項式の計算を保護するためのコンピュータ化システムであって、本システムは、
    1つ以上のコンピュータ化プロセッサであり、
    公開鍵およびマスタ秘密鍵を出力するセットアップアルゴリズム、および、
    前記マスタ秘密鍵、二次多項式fを受信し、かつ、秘密鍵を出力する、鍵生成アルゴリズム、
    を実行するように構成されており、前記二次多項式fは二次関数である、コンピュータ化プロセッサと、
    コンピュータ化暗号プロセッサであり、
    前記公開鍵および電子メッセージを受信する暗号化アルゴリズムを実行するように構成されており、
    前記電子メッセージは、両方とも長さnである、2つのベクトルz1およびz2を含み、かつ、暗号文を出力する、
    暗号プロセッサと、
    コンピュータ化復号プロセッサであり、
    前記コンピュータ化暗号プロセッサから遠隔の場所にあり、
    電子通信ネットワークを介して前記暗号文および前記秘密鍵を受信し、
    前記暗号文および前記秘密鍵に基づいて、ベクトルz1、z2において前記二次多項式fを評価するのと同じ値である、復号された値を出力する、復号アルゴリズムを実行し、かつ、
    前記復号された値を、第1コンピュータ化プロセッサに送信する、
    ように構成されている、コンピュータ化復号プロセッサと、を含み、
    前記暗号化アルゴリズムおよび前記復号アルゴリズムは、任意の計算的に効率的なプロセスが、前記二次多項式fの前記評価を超えてz1、z2に関して何も学習しないように、双方向のk-線形仮定に基づいており、
    前記暗号化アルゴリズムは、さらに、
    ElGamalスキームの暗号化アルゴリズムを実行するステップであり、z1のElGamalスキームへの入力が公開鍵w1およびランダム性s1を含み、暗号文y1を結果として生じる、ステップと、
    前記ElGamalスキームの暗号化アルゴリズムを実行するステップであり、前記ElGamalスキームへの入力が公開鍵w2およびランダム性s2を含み、暗号文y2を結果として生じる、ステップと、
    一次多項式スキームの暗号化アルゴリズムを実行するステップであり、前記一次多項式スキームへの入力が公開鍵w0およびベクトルを含み、前記ベクトルは、s1掛けるz2、および、y1掛けるs2の連結を含み、暗号文y0を結果として生じる、ステップと、
    前記暗号文として出力y1、y2、y0を生成するステップと、
    を含む、
    システム。
  10. 関数暗号化によって二次多項式の計算を保護するためのコンピュータ化システムであって、本システムは、
    1つ以上のコンピュータ化プロセッサであり、
    公開鍵およびマスタ秘密鍵を出力するセットアップアルゴリズム、および、
    前記マスタ秘密鍵、二次多項式fを受信し、かつ、秘密鍵を出力する、鍵生成アルゴリズム、
    を実行するように構成されており、前記二次多項式fは二次関数である、コンピュータ化プロセッサと、
    コンピュータ化暗号プロセッサであり、
    前記公開鍵および電子メッセージを受信する暗号化アルゴリズムを実行するように構成されており、
    前記電子メッセージは、両方とも長さnである、2つのベクトルz1およびz2を含み、かつ、暗号文を出力する、
    暗号プロセッサと、
    コンピュータ化復号プロセッサであり、
    前記コンピュータ化暗号プロセッサから遠隔の場所にあり、
    電子通信ネットワークを介して前記暗号文および前記秘密鍵を受信し、
    前記暗号文および前記秘密鍵に基づいて、ベクトルz1、z2において前記二次多項式fを評価するのと同じ値である、復号された値を出力する、復号アルゴリズムを実行し、かつ、
    前記復号された値を、第1コンピュータ化プロセッサに送信する、
    ように構成されている、コンピュータ化復号プロセッサと、を含み、
    前記暗号化アルゴリズムおよび前記復号アルゴリズムは、任意の計算的に効率的なプロセスが、前記二次多項式fの前記評価を超えてz1、z2に関して何も学習しないように、双方向のk-線形仮定に基づいており、
    記鍵生成アルゴリズムは、
    一次多項式スキームの前記鍵生成アルゴリズムを実行し、
    前記一次多項式スキームへの入力は、マスタ秘密鍵msk0と、f、w1およびw2から導出された一次多項式とを含み、結果として、秘密鍵skを生じ、
    前記秘密鍵として、出力skを生成するステップ、を実行する、
    システム。
  11. 関数暗号化によって二次多項式の計算を保護するためのコンピュータ化システムであって、本システムは、
    1つ以上のコンピュータ化プロセッサであり、
    公開鍵およびマスタ秘密鍵を出力するセットアップアルゴリズム、および、
    前記マスタ秘密鍵、二次多項式fを受信し、かつ、秘密鍵を出力する、鍵生成アルゴリズム、
    を実行するように構成されており、前記二次多項式fは二次関数である、コンピュータ化プロセッサと、
    コンピュータ化暗号プロセッサであり、
    前記公開鍵および電子メッセージを受信する暗号化アルゴリズムを実行するように構成されており、
    前記電子メッセージは、両方とも長さnである、2つのベクトルz1およびz2を含み、かつ、暗号文を出力する、
    暗号プロセッサと、
    コンピュータ化復号プロセッサであり、
    前記コンピュータ化暗号プロセッサから遠隔の場所にあり、
    電子通信ネットワークを介して前記暗号文および前記秘密鍵を受信し、
    前記暗号文および前記秘密鍵に基づいて、ベクトルz1、z2において前記二次多項式fを評価するのと同じ値である、復号された値を出力する、復号アルゴリズムを実行し、かつ、
    前記復号された値を、第1コンピュータ化プロセッサに送信する、
    ように構成されている、コンピュータ化復号プロセッサと、を含み、
    前記暗号化アルゴリズムおよび前記復号アルゴリズムは、任意の計算的に効率的なプロセスが、前記二次多項式fの前記評価を超えてz1、z2に関して何も学習しないように、双方向のk-線形仮定に基づいており、
    前記復号アルゴリズムは、さらに、
    前記暗号文を受信するステップと、
    前記暗号文を指定されたコンポーネントy1、y2、y0へと構文解析するステップと、
    秘密鍵skを受信するステップであり、前記秘密鍵skは一次多項式スキームによって生成される、ステップと、
    コンポーネントy1およびy2について二次多項式fを計算するステップであり、結果として、値v1を生じる、ステップと、
    前記一次多項式スキームの復号アルゴリズムを使用して、skを用いてy0を復号するステップであり、結果として、復号された値v0を生じる、ステップと、
    前記復号された値として、出力v1-v0を生成するステップと、
    を含む、
    システム。
  12. 前記二次多項式fは、二次活性化関数を用いてニューラルネットワークにおいて実行される、プライバシー保護機械学習関数であり、もしくは、
    前記二次多項式fは、二次関数であり、かつ、統計関数または相関関数のうち1つ以上から選択され
    請求項8乃至11いずれか一項に記載のシステム。
  13. 前記システムは、さらに、二次多項式fの多項式を、射影ベクトルに適用すること、を含む、
    請求項8乃至11いずれか一項に記載のシステム。
  14. 前記電子メッセージは、リレーショナルデータベースとして構成され、かつ、保管されており、
    前記リレーショナルデータベースは、指定された関数によって実行される動作と互換性のあるデータモデルにおいて論理的に構成されており、
    前記秘密鍵は、前記リレーショナルデータベースにおけるデータのサブセットを定義し、かつ、
    前記復号アルゴリズムは、前記データのサブセットについて前記指定された関数を実行する、
    請求項8乃至11いずれか一項に記載のシステム。
JP2023524501A 2020-10-23 2021-10-22 二次関数のための関数暗号化 Active JP7841822B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063104787P 2020-10-23 2020-10-23
US63/104,787 2020-10-23
PCT/US2021/056324 WO2022087466A1 (en) 2020-10-23 2021-10-22 Functional encryption for quadratic functions

Publications (4)

Publication Number Publication Date
JP2023546668A JP2023546668A (ja) 2023-11-07
JP2023546668A5 JP2023546668A5 (ja) 2024-11-19
JPWO2022087466A5 JPWO2022087466A5 (ja) 2024-11-19
JP7841822B2 true JP7841822B2 (ja) 2026-04-07

Family

ID=81289487

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023524501A Active JP7841822B2 (ja) 2020-10-23 2021-10-22 二次関数のための関数暗号化

Country Status (4)

Country Link
US (1) US12316759B2 (ja)
EP (1) EP4233268B1 (ja)
JP (1) JP7841822B2 (ja)
WO (1) WO2022087466A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023014969A1 (en) * 2021-08-06 2023-02-09 Ntt Research, Inc. Compact Adaptively Secure Functional Encryption For Attribute-Weighted Sums

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101932032B1 (ko) 2018-05-25 2018-12-24 주식회사 크립토랩 선형 길이의 암호문을 가지는 다항식 함수 암호화 방법
JP2019117232A (ja) 2017-12-26 2019-07-18 日本電信電話株式会社 暗号化装置、復号装置、暗号化方法、復号方法、プログラム
WO2020070973A1 (ja) 2018-10-04 2020-04-09 三菱電機株式会社 復号装置、暗号システム、復号方法及び復号プログラム
JP2020086292A (ja) 2018-11-29 2020-06-04 日本電信電話株式会社 暗号システム、暗号化装置、復号装置、暗号方法、暗号化方法、復号方法及びプログラム
US20200336292A1 (en) 2019-04-16 2020-10-22 NEC Laboratories Europe GmbH Method and system for multi-authority controlled functional encryption

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001016196A (ja) 1999-04-28 2001-01-19 Fuji Soft Abc Inc 多重アファイン鍵を用いる暗号化・復号化方法、認証方法、及びこれを用いる各装置
US10715316B2 (en) * 2000-10-30 2020-07-14 Geo Codex, LLC System and method for delivering information in a communication network using location identity
KR100737876B1 (ko) * 2005-02-25 2007-07-12 삼성전자주식회사 계층적 문턱 트리에 기반한 브로드캐스트 암호화 방법
US8532289B2 (en) * 2010-08-16 2013-09-10 International Business Machines Corporation Fast computation of a single coefficient in an inverse polynomial
US10601588B2 (en) * 2014-11-18 2020-03-24 Nokia Technologies Oy Secure access to remote data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019117232A (ja) 2017-12-26 2019-07-18 日本電信電話株式会社 暗号化装置、復号装置、暗号化方法、復号方法、プログラム
KR101932032B1 (ko) 2018-05-25 2018-12-24 주식회사 크립토랩 선형 길이의 암호문을 가지는 다항식 함수 암호화 방법
WO2020070973A1 (ja) 2018-10-04 2020-04-09 三菱電機株式会社 復号装置、暗号システム、復号方法及び復号プログラム
JP2020086292A (ja) 2018-11-29 2020-06-04 日本電信電話株式会社 暗号システム、暗号化装置、復号装置、暗号方法、暗号化方法、復号方法及びプログラム
US20200336292A1 (en) 2019-04-16 2020-10-22 NEC Laboratories Europe GmbH Method and system for multi-authority controlled functional encryption

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
ABDALLA, Michel et al.,Functional Encryption for Attribute-Weighted Sums from k-Lin,Cryptology ePrint Archive,[オンライン],2020年06月21日,Paper 2020/762,pp. 1-39,[取得日 2025.08.20], 取得先 <https://eprint.iacr.org/2020/762.pdf>
BALTICO, Carmen Elisabetta Zaira et al.,Practical Functional Encryption for Quadratic Functions with Applications to Predicate Encryption,Lecture Notes in Computer Science, Advances in Cryptology - CRYPTO 2017,2017年07月29日,volume 10401,pp. 67-98
WEE, H.,Attribute-Hiding Predicate Encryption in Bilinear Groups, Revisited,Lecture Notes in Computer Science,Vol.10677,2017年,pp. 206-233,especially 4 FABP○IP and Encodings, 5 Our PHPE Construction
WEE, Hoeteck,Functional Encryption for Quadratic Functions from k-Lin, Revisited,Cryptology ePrint Archive,[オンライン],2020年11月15日,Paper 2020/1420,pp. 1-14,[取得日 2025.08.20], 取得先 <https://eprint.iacr.org/2020/1420.pdf>

Also Published As

Publication number Publication date
WO2022087466A1 (en) 2022-04-28
US20230396427A1 (en) 2023-12-07
EP4233268A4 (en) 2023-12-20
JP2023546668A (ja) 2023-11-07
EP4233268A1 (en) 2023-08-30
EP4233268B1 (en) 2025-09-17
US12316759B2 (en) 2025-05-27

Similar Documents

Publication Publication Date Title
Viand et al. SoK: Fully homomorphic encryption compilers
Cheon et al. Ensemble method for privacy-preserving logistic regression based on homomorphic encryption
Gagliardoni et al. Semantic security and indistinguishability in the quantum world
CN111898137A (zh) 一种联邦学习的隐私数据处理方法、设备及系统
JPWO2019130528A1 (ja) 変換鍵生成装置、暗号文変換装置、秘匿情報処理システム、変換鍵生成方法、変換鍵生成プログラム、暗号文変換方法及び暗号文変換プログラム
CN105122721A (zh) 针对加密数据的托管安全计算
JP2014126866A (ja) 暗号処理装置および方法
JP2022095852A (ja) デジタル署名方法、署名情報の検証方法、関連装置及び電子機器
WO2023014969A1 (en) Compact Adaptively Secure Functional Encryption For Attribute-Weighted Sums
JP2024514711A (ja) 完全適応型セキュリティを有する分散型マルチオーソリティの属性ベース暗号化
Nita et al. Homomorphic encryption
JP7841822B2 (ja) 二次関数のための関数暗号化
Ananth et al. Towards attribute-based encryption for RAMs from LWE: sub-linear decryption, and more
US20230353346A1 (en) Decentralized Multi-Authority Attribute-Based Inner-Product Functional Encryption
Gentry et al. How to compress (reusable) garbled circuits
Riasi et al. Privacy-preserving verifiable neural network inference service
Xu et al. Multi-key homomorphic secret sharing from LWE without multi-key HE
US11811741B2 (en) Information processing system and information processing method
Liu et al. Secure multiparty computation of a comparison problem
Pan et al. Universal quantum obfuscation for quantum non-linear functions
Theodouli et al. Implementing private k-means clustering using a LWE-based cryptosystem
Liu et al. Efficient and privacy-preserving neural network prediction scheme with TEE
EP3648395A1 (en) Encryption device, decryption device, encryption method, encryption program, decryption method and decryption program
Buchanan et al. Evaluation of privacy-aware support vector machine (SVM) learning using homomorphic encryption
Kim et al. GraSS: graph-based similarity search on encrypted query

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241022

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20241022

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250826

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250829

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20251125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20260224

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260324

R150 Certificate of patent or registration of utility model

Ref document number: 7841822

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150