JP7205016B2 - 秘匿情報処理システムおよび秘匿情報処理方法 - Google Patents
秘匿情報処理システムおよび秘匿情報処理方法 Download PDFInfo
- Publication number
- JP7205016B2 JP7205016B2 JP2022568484A JP2022568484A JP7205016B2 JP 7205016 B2 JP7205016 B2 JP 7205016B2 JP 2022568484 A JP2022568484 A JP 2022568484A JP 2022568484 A JP2022568484 A JP 2022568484A JP 7205016 B2 JP7205016 B2 JP 7205016B2
- Authority
- JP
- Japan
- Prior art keywords
- ciphertext
- inference
- result
- data
- unit
- 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
Links
- 230000010365 information processing Effects 0.000 title claims description 34
- 238000003672 processing method Methods 0.000 title claims description 3
- 239000013598 vector Substances 0.000 claims description 30
- 239000011159 matrix material Substances 0.000 claims description 28
- 238000004364 calculation method Methods 0.000 claims description 21
- 238000009826 distribution Methods 0.000 claims description 6
- 238000003860 storage Methods 0.000 description 108
- 230000015654 memory Effects 0.000 description 47
- 238000000034 method Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 21
- 238000013528 artificial neural network Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 17
- 239000000047 product Substances 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
昨今、クラウドサービスの利用が広まりつつあるが、クラッキングの懸念およびクラウドの信頼性の懸念から、クラウド上ではデータを暗号化して保管することが考えられる。
また、準同型暗号は、暗号化されているデータに対して、復号することなく演算を施すことができる。
そのため、準同型暗号は、安全性を損なうことなくクラウドサービスの利用を可能とする。
入力層は、入力データを受け付けるための層である。
中間層は、入力データまたは他の中間層の計算結果に対して特定の計算を行うための層である。
出力層は、中間層の最終の計算結果を出力するための層である。
そのため、計算能力の低い端末では、このようなニューラルネットワークの推論処理を実行することが困難である。
そこで、高い計算能力を持ったクラウドに推論処理を委託することが考えられる。
その場合、準同型暗号を用いて入力データを暗号化したままニューラルネットワークによる推論処理を行うことで、データ提供者のプライバシーを保ちつつクラウドへ推論処理を委託することができる。
入力データ提供者と推論モデル提供者が入力データと推論モデルデータを共に秘匿したままクラウドに推論処理を委託することを想定する。その場合、入力データが入力データ提供者の暗号化鍵で暗号化されていて、且つ、推論モデルデータが推論モデル提供者の暗号化鍵で暗号化されている必要がある。
複数鍵準同型暗号は、準同型暗号方式の一種であり、異なる暗号化鍵で暗号化されている複数の暗号文を復号することなく複数の暗号文に対して演算を施すことができる。
第1行列と第2行列を連結して得らえる推論モデルデータを暗号化して得られるモデル暗号文を、前記第1行列の暗号文に相当する推論用暗号文と、前記第2行列の暗号文に相当する計算用暗号文と、に分割するモデル分割部と、
前記計算用暗号文と、入力データを暗号化して得られるデータ暗号文と、を復号せずに、準同型演算アルゴリズムによって、前記第1行列と前記入力データを表すベクトルの積の暗号文に相当する事前結果暗号文を生成する事前計算部と、
前記事前結果暗号文と前記推論用暗号文とを復号せずに用いて、準同型演算アルゴリズムによって、前記入力データに対する推論結果の暗号文である推論結果暗号文を生成する準同型推論部と、
前記モデル暗号文のための秘密鍵であるモデル用秘密鍵を用いて、前記推論結果暗号文に対する部分復号を行って、部分復号結果を生成する部分復号部と、
前記データ暗号文のための秘密鍵であるデータ用秘密鍵を用いて、前記部分復号結果から前記入力データに対する前記推論結果を復号する最終復号部と、を備える。
秘匿情報処理システム100について、図1から図13に基づいて説明する。
図1に基づいて、秘匿情報処理システム100の構成を説明する。
秘匿情報処理システム100は、鍵生成装置200と、データ暗号化装置300と、モデル暗号化装置400と、準同型推論装置500と、部分復号装置600と、最終復号装置700と、を備える。これらの装置は、ネットワーク101に接続され、ネットワーク101を介して互いに通信する。ネットワーク101の具体例はインターネットである。
鍵生成装置200は、プロセッサ201とメモリ202と補助記憶装置203と通信装置204と入出力インタフェース205といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
ICは、Integrated Circuitの略称である。
CPUは、Central Processing Unitの略称である。
DSPは、Digital Signal Processorの略称である。
GPUは、Graphics Processing Unitの略称である。
RAMは、Random Access Memoryの略称である。
ROMは、Read Only Memoryの略称である。
HDDは、Hard Disk Driveの略称である。
NICは、Network Interface Cardの略称である。
USBは、Universal Serial Busの略称である。
補助記憶装置203には、さらに、OSが記憶されている。OSの少なくとも一部は、メモリ202にロードされて、プロセッサ201によって実行される。
プロセッサ201は、OSを実行しながら、鍵生成プログラムを実行する。
OSは、Operating Systemの略称である。
メモリ202は記憶部290として機能する。但し、補助記憶装置203、プロセッサ201内のレジスタおよびプロセッサ201内のキャッシュメモリなどの他の記憶装置が、メモリ202の代わりに、又は、メモリ202と共に、記憶部290として機能してもよい。
データ暗号化装置300は、プロセッサ301とメモリ302と補助記憶装置303と通信装置304と入出力インタフェース305といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。これらのハードウェアは、鍵生成装置200のハードウェアに対応する。
メモリ302は記憶部390として機能する。但し、データ暗号化装置300の他の記憶装置が、メモリ302の代わりに、又は、メモリ302と共に、記憶部390として機能してもよい。
モデル暗号化装置400は、プロセッサ401とメモリ402と補助記憶装置403と通信装置404と入出力インタフェース405といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。これらのハードウェアは、鍵生成装置200のハードウェアに対応する。
メモリ402は記憶部490として機能する。但し、モデル暗号化装置400の他の記憶装置が、メモリ402の代わりに、又は、メモリ402と共に、記憶部490として機能してもよい。
準同型推論装置500は、プロセッサ501とメモリ502と補助記憶装置503と通信装置504と入出力インタフェース505といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。これらのハードウェアは、鍵生成装置200のハードウェアに対応する。
メモリ502は記憶部590として機能する。但し、準同型推論装置500の他の記憶装置が、メモリ502の代わりに、又は、メモリ502と共に、記憶部590として機能してもよい。
部分復号装置600は、プロセッサ601とメモリ602と補助記憶装置603と通信装置604と入出力インタフェース605といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。これらのハードウェアは、鍵生成装置200のハードウェアに対応する。
メモリ602は記憶部690として機能する。但し、部分復号装置600の他の記憶装置が、メモリ602の代わりに、又は、メモリ602と共に、記憶部690として機能してもよい。
最終復号装置700は、プロセッサ701とメモリ702と補助記憶装置703と通信装置704と入出力インタフェース705といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。これらのハードウェアは、鍵生成装置200のハードウェアに対応する。
メモリ702は記憶部790として機能する。但し、最終復号装置700の他の記憶装置が、メモリ702の代わりに、又は、メモリ702と共に、記憶部790として機能してもよい。
秘匿情報処理システム100の動作の手順は秘匿情報処理方法に相当する。また、秘匿情報処理システム100の動作の手順は秘匿情報処理プログラムによる処理の手順に相当する。
データ用鍵ペアは、後述する入力データdtのための鍵ペアであり、データ用公開鍵とデータ用秘密鍵とで構成される。
データ用公開鍵は、入力データdtを暗号化するための公開鍵である。
データ用秘密鍵は、データ用公開鍵に対応する秘密鍵である。データ用秘密鍵により、入力データdtの暗号文を復号することができる。暗号文は、暗号化によって得られるデータである。
ステップS101において、受付部210は、パラメータλ1を受け付ける。
パラメータλ1は、データ用鍵ペアのための鍵生成パラメータである。例えば、パラメータλ1は、利用者によって鍵生成装置200に入力される。
公開鍵PK1はデータ用公開鍵であり、秘密鍵SK1はデータ用秘密鍵である。
文献(1):H. Chen, I. Chillotti, Y. Song. “Multi-key Homomorphic Encryption from TFHE”. In ASIACRYPT, pages 446-472, 2019.
ステップS111において、受付部310は、公開鍵PK1を受信する。
ステップS112において、公開鍵保管部320は、公開鍵PK1を記憶部290に保管する。
ステップS121において、受付部510は、公開鍵PK1を受信する。
ステップS122において、公開鍵保管部521は、公開鍵PK1を記憶部590に保管する。
ステップS131において、受付部710は、秘密鍵SK1を受信する。
ステップS132において、秘密鍵保管部720は、秘密鍵SK1を記憶部790に保管する。なお、秘密鍵SK1は外部に漏れないように厳重に保管される。
モデル用鍵ペアは、後述する推論モデルデータMのための鍵ペアであり、モデル用公開鍵とモデル用秘密鍵とで構成される。
モデル用公開鍵は、推論モデルデータMを暗号化するための公開鍵である。
モデル用秘密鍵は、モデル用公開鍵に対応する秘密鍵である。モデル用秘密鍵により、推論モデルデータMの暗号文を復号することができる。
ステップS201において、受付部210は、パラメータλ2を受け付ける。
パラメータλ2は、モデル用鍵ペアのための鍵生成パラメータである。例えば、パラメータλ2は、利用者によって鍵生成装置200に入力される。
公開鍵PK2はモデル用公開鍵であり、秘密鍵SK2はモデル用秘密鍵である。
ステップS211において、受付部410は、公開鍵PK2を受信する。
ステップS212において、公開鍵保管部420は、公開鍵PK2を記憶部490に保管する。
ステップS221において、受付部510は、公開鍵PK2を受信する。
ステップS222において、公開鍵保管部521は、公開鍵PK2を記憶部590に保管する。
ステップS231において、受付部610は、秘密鍵SK2を受信する。
ステップS232において、秘密鍵保管部620は、秘密鍵SK2を記憶部690に保管する。なお、秘密鍵SK2は外部に漏れないように厳重に保管される。
ステップS301からステップS303は、データ暗号化装置300によって実行される。
ステップS301において、受付部310は、入力データdtを受け付ける。
入力データdtは、時刻tの入力データである。「t」は1以上の整数(自然数)である。
入力データは、n個の浮動小数点数から成るベクトルで表される。「n」は1以上の整数である。
例えば、受付部310は、工場に設けられた各種センサによって時刻tに得られた計測値(浮動小数点数)を各種センサから収集する。収集された計測値が入力データdtとなる。
データ暗号文C(dt)は、暗号化された入力データdt、すなわち、入力データdtの暗号文である。
ステップS311において、受付部410は、推論モデルデータMを受け付ける。例えば、推論モデルデータMは、利用者によってモデル暗号化装置400に入力される。但し、推論モデルデータMは、記憶部490に予め記憶されてもよい。
モデル暗号文C(M)は、暗号化された推論モデルデータM、すなわち、推論モデルデータMの暗号文である。
推論モデルデータMは、推論モデル(M)のためのデータである。推論モデル(M)は、推論処理のための機械学習モデルであり、再帰的ニューラルネットワークで表される。具体的な再帰的ニューラルネットワークは「LSTM」である。
LSTMは、Long Short-term Memoryの略称である。
「k」は、1以上の整数である。
「n」は、1以上の整数である(前述の通り)。
「m」は、1以上の整数である。
「M’」は、k×nの要素を持つ行列である。各要素は浮動小数点数である。
「M’’」は、k×mの要素を持つ行列である。各要素は浮動小数点数である。
[M’||M’’]は、行列M’と行列M’’を連結して得られる行列を意味する。
「dt」は、時刻tにおける入力データであり、n個の浮動小数点数から成るベクトルで表される。
「・」は、行列とベクトルの掛け算を表す。
「+」は、ベクトル同士の足し算を表す。
ステップS313において、出力部440は、モデル暗号文C(M)を準同型推論装置500に送信する。
ステップS321において、受付部510は、データ暗号文C(dt)を受信する。
そして、暗号文保管部522は、データ暗号文C(dt)を記憶部590に保管する。
そして、暗号文保管部522は、モデル暗号文C(M)を記憶部590に保管する。
「W’’」は、計算用暗号文を表す。計算用暗号文W’’は、推論モデルデータMの暗号化に用いられる暗号化アルゴリズムによって暗号化された行列M’’、すなわち、行列M’’の暗号文に相当する。つまり、計算用暗号文W’’は、k×mの暗号化された要素を持つ行列である。
具体的には、事前計算部541は、計算用暗号文W’’とデータ暗号文C(dt)とを復号せずに、事前結果暗号文C(Dt’’)を生成する。
準同型演算アルゴリズムは、準同型暗号(特に、複数鍵準同型暗号)のアルゴリズムである。
例えば、上記文献(1)に記載された準同型演算アルゴリズムが使用される。
ステップS401からステップS403は、準同型推論装置500によって実行される。
ステップS401において、モデル分割部530は、モデル暗号文Wを推論用暗号文W’と計算用暗号文W’’とに分割する。
前回結果暗号文C(Dt-1)は、前回の入力データdt-1に対する暗号化された推論結果、すなわち、前回の推論結果の暗号文である。
中間結果暗号文C(Dt-1’)は、行列M’と前回の入力データdt-1に対する推論結果を表すベクトルとの積を暗号化して得られる暗号文に相当する。
例えば、上記文献(1)に記載された準同型演算アルゴリズムが使用される。
推論結果暗号文C(Dt)は、今回の入力データdtに対する暗号化された推論結果、すなわち、今回の推論結果の暗号文である。
例えば、上記文献(1)に記載された準同型演算アルゴリズムが使用される。
ステップS501およびステップS502は、準同型推論装置500によって実行される。
ステップS501において、出力部560は、推論結果暗号文C(Dt)を記憶部590から取得する。
ステップS502において、出力部560は、推論結果暗号文C(Dt)を部分復号装置600と最終復号装置700とのそれぞれに送信する。
ステップS511において、受付部610は、推論結果暗号文C(Dt)を受信する。
つまり、部分復号部630は、推論結果暗号文C(Dt)の要素であるベクトルと秘密鍵SK2を表すベクトルとの内積を算出し、算出した内積と確率分布から選択される値との足し算の結果を算出する。算出される結果が部分復号結果C(D2,t)の各要素d’2,tとなる。
「X」は、特定の確率分布を表す。例えば、確率分布Xは、0,1/232,・・・,(232-1)/232を値としてとる離散正規分布である。
「e」は、確率分布Xに沿って選ばれた値を表す。
<c,SK2>は、ベクトルCと秘密鍵SK2を表すベクトルの内積を表す。
ステップS521において、受付部710は、推論結果暗号文C(Dt)を受信する。
具体的には、最終復号部730は、式(4)を計算することによって、推論結果データDtの各要素d’tを算出する。
つまり、最終復号部730は、推論結果暗号文C(Dt)の要素であるベクトルと秘密鍵SK1を表すベクトルとの内積を算出し、算出した内積と部分復号結果C(D2,t)の要素との足し算によって得られる和を算出し、算出した和に基づいて推論結果データDtの各要素d’tを決定する。
[A]1/4は、値Aが1/4に近ければ1を表し、値Aが1/4に近くなければ0を表す。具体的には、[A]1/4は、値Aと1/4の差が閾値より小さければ1を表し、値Aと1/4の差が閾値より大きければ0を表す。また、[A]1/4は、値Aが1/4の差が閾値と等しければ1または0を表す。
また、出力部750は、推論結果データDtを出力する。例えば、出力部750は、推論結果データDtをディスプレイに表示する。
秘匿情報処理システム100は、入力データを暗号化したまま、再帰的ニューラルネットワークによる推論処理を実行できる。そのため、秘匿情報処理システム100により、データ提供者のプライバシーを保護したまま、推論処理をクラウドに委託することができる。
入力データと推論モデルデータとを暗号化したまま推論処理を実行するためには、複数鍵準同型暗号の性質により、暗号文拡大処理を行う必要がある。複数鍵準同型暗号は、上記文献(1)に記載された準同型暗号方式である。暗号文拡大処理は、例えば、秘密鍵SK1で復号できる暗号文を秘密鍵SK1と秘密鍵SK2の両方を用いることで復号できる暗号文に変換する処理である。
暗号文拡大処理を事前計算処理として実行することで、実際の推論処理時に暗号文拡大処理などによる計算オーバヘッドを削減することができる。つまり、入力データと推論モデルデータを暗号化したままでの再帰的ニューラルネットワークの推論処理を効率的に実現できる。
秘匿情報処理システム100に備わる複数の装置のうち2つ以上の装置を1つの装置にまとめてもよい。例えば、データ暗号化装置300とモデル暗号化装置400を1つの装置にまとめてもよいし、部分復号装置600と最終復号装置700を1つの装置にまとめてもよい。
装置間のデータの送受信は、データの郵送または利用者によるデータの入出力に置き換えてもよい。
鍵生成装置200は処理回路209を備える。
処理回路209は、鍵生成装置200の要素を実現するハードウェアである。
処理回路209は、専用のハードウェアであってもよいし、メモリ202に格納されるプログラムを実行するプロセッサ201であってもよい。
ASICは、Application Specific Integrated Circuitの略称である。
FPGAは、Field Programmable Gate Arrayの略称である。
Claims (14)
- 第1行列と第2行列を連結して得らえる推論モデルデータを暗号化して得られるモデル暗号文を、前記第1行列の暗号文に相当する推論用暗号文と、前記第2行列の暗号文に相当する計算用暗号文と、に分割するモデル分割部と、
前記計算用暗号文と、入力データを暗号化して得られるデータ暗号文と、を復号せずに、準同型演算アルゴリズムによって、前記第1行列と前記入力データを表すベクトルの積の暗号文に相当する事前結果暗号文を生成する事前計算部と、
前記事前結果暗号文と前記推論用暗号文とを復号せずに用いて、準同型演算アルゴリズムによって、前記入力データに対する推論結果の暗号文である推論結果暗号文を生成する準同型推論部と、
前記モデル暗号文のための秘密鍵であるモデル用秘密鍵を用いて、前記推論結果暗号文に対して部分復号を行って、部分復号結果を生成する部分復号部と、
前記データ暗号文のための秘密鍵であるデータ用秘密鍵を用いて、前記部分復号結果から前記入力データに対する前記推論結果を復号する最終復号部と、
を備える秘匿情報処理システム。 - 前記準同型推論部は、前記事前結果暗号文と、前記推論用暗号文と、前回の入力データに対する推論結果の暗号文である前回結果暗号文と、を復号せずに用いて、前記推論結果暗号文を生成する
請求項1に記載の秘匿情報処理システム。 - 前記準同型推論部は、
前記推論用暗号文と前記前回結果暗号文とを復号せずに用いて、準同型演算アルゴリズムによって、前記第1行列と前記前回の入力データに対する前記推論結果を表すベクトルの積の暗号文に相当する中間結果暗号文を生成し、
前記中間結果暗号文と前記事前結果暗号文とを復号せずに用いて、準同型演算アルゴリズムによって、前記中間結果暗号文を復号して得られるベクトルと前記事前結果暗号文を復号して得られるベクトルとの足し算の結果の暗号文を前記推論結果暗号文として生成する
請求項2に記載の秘匿情報処理システム。 - 前記部分復号部は、前記推論結果暗号文の要素であるベクトルと前記モデル用秘密鍵を表すベクトルとの内積と、確率分布から選択される値との足し算の結果を、前記部分復号結果の要素として算出する
請求項1から請求項3のいずれか1項に記載の秘匿情報処理システム。 - 前記最終復号部は、前記データ用秘密鍵を用いて、前記推論結果暗号文と前記部分復号結果とから、前記入力データに対する前記推論結果を復号する
請求項1から請求項4のいずれか1項に記載の秘匿情報処理システム。 - 前記最終復号部は、前記推論結果暗号文の要素であるベクトルと前記データ用秘密鍵を表すベクトルとの内積と、前記部分復号結果の要素との足し算によって得られる和に基づいて、前記推論結果の要素を決定する
請求項5に記載の秘匿情報処理システム。 - 前記最終復号部は、前記和と1/4の差に基づいて前記推論結果の前記要素を決定する
請求項6に記載の秘匿情報処理システム。 - 前記最終復号部は、前記差が閾値より小さい場合に前記推論結果の前記要素を1に決定し、前記差が前記閾値より大きい場合に前記推論結果の前記要素を0に決定する
請求項7に記載の秘匿情報処理システム。 - 前記モデル分割部と前記事前計算部と前記準同型推論部とを備える準同型推論装置と、
前記部分復号部を備える部分復号装置と、
前記最終復号部を備える最終復号装置700と、を備える
請求項1から請求項8のいずれか1項に記載の秘匿情報処理システム。 - 前記入力データのための公開鍵であるデータ用公開鍵を用いて前記入力データを暗号化して前記データ暗号文を生成するデータ暗号化部と、
前記推論モデルデータのための公開鍵であるモデル用公開鍵を用いて前記推論モデルデータを暗号化して前記モデル暗号文を生成するモデル暗号化部と、を備える
請求項1から請求項9のいずれか1項に記載の秘匿情報処理システム。 - 前記データ暗号化部を備えるデータ暗号化装置と、
前記モデル暗号化部を備えるモデル暗号化装置と、を備える
請求項10に記載の秘匿情報処理システム。 - 前記データ用公開鍵と前記データ用秘密鍵の組と、前記モデル用公開鍵と前記モデル用秘密鍵の組と、を生成する鍵生成部を備える
請求項10または請求項11に記載の秘匿情報処理システム。 - 前記鍵生成部を備える鍵生成装置を備える
請求項12に記載の秘匿情報処理システム。 - モデル分割部が、第1行列と第2行列を連結して得らえる推論モデルデータを暗号化して得られるモデル暗号文を、前記第1行列の暗号文に相当する推論用暗号文と、前記第2行列の暗号文に相当する計算用暗号文と、に分割し、
事前計算部が、前記計算用暗号文と、入力データを暗号化して得られるデータ暗号文と、を復号せずに、準同型演算アルゴリズムによって、前記第1行列と前記入力データを表すベクトルの積の暗号文に相当する事前結果暗号文を生成し、
準同型推論部が、前記事前結果暗号文と、前記推論用暗号文と、前回の入力データに対する推論結果の暗号文である前回結果暗号文と、を復号せずに用いて、準同型演算アルゴリズムによって、前記入力データに対する推論結果の暗号文である推論結果暗号文を生成し、
部分復号部が、前記モデル暗号文のための秘密鍵であるモデル用秘密鍵を用いて、前記推論結果暗号文に対する部分復号を行って、部分復号結果を生成し、
最終復号部が、前記データ暗号文のための秘密鍵であるデータ用秘密鍵を用いて、前記部分復号結果から前記入力データに対する前記推論結果を復号する
秘匿情報処理方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/048498 WO2022137447A1 (ja) | 2020-12-24 | 2020-12-24 | 秘匿情報処理システムおよび秘匿情報処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2022137447A1 JPWO2022137447A1 (ja) | 2022-06-30 |
JP7205016B2 true JP7205016B2 (ja) | 2023-01-16 |
Family
ID=82159279
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022568484A Active JP7205016B2 (ja) | 2020-12-24 | 2020-12-24 | 秘匿情報処理システムおよび秘匿情報処理方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230269068A1 (ja) |
JP (1) | JP7205016B2 (ja) |
CN (1) | CN116601691A (ja) |
DE (1) | DE112020007702T5 (ja) |
WO (1) | WO2022137447A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7440149B1 (ja) | 2023-08-21 | 2024-02-28 | Eaglys株式会社 | データ生成方法、データ生成プログラム、およびデータ生成システム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160350648A1 (en) | 2014-11-07 | 2016-12-01 | Microsoft Technology Licensing, Llc. | Neural networks for encrypted data |
JP2019046460A (ja) | 2017-08-30 | 2019-03-22 | 株式会社アクセル | 推論装置、及び推論方法 |
WO2019102624A1 (ja) | 2017-11-27 | 2019-05-31 | 三菱電機株式会社 | 準同型推論装置、準同型推論方法、準同型推論プログラム及び秘匿情報処理システム |
JP2019113665A (ja) | 2017-12-22 | 2019-07-11 | 株式会社アクセル | 撮像モジュール、画像処理デバイス、画像処理方法、および画像処理プログラム |
-
2020
- 2020-12-24 DE DE112020007702.0T patent/DE112020007702T5/de active Pending
- 2020-12-24 JP JP2022568484A patent/JP7205016B2/ja active Active
- 2020-12-24 CN CN202080107959.9A patent/CN116601691A/zh active Pending
- 2020-12-24 WO PCT/JP2020/048498 patent/WO2022137447A1/ja active Application Filing
-
2023
- 2023-05-02 US US18/142,405 patent/US20230269068A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160350648A1 (en) | 2014-11-07 | 2016-12-01 | Microsoft Technology Licensing, Llc. | Neural networks for encrypted data |
JP2019046460A (ja) | 2017-08-30 | 2019-03-22 | 株式会社アクセル | 推論装置、及び推論方法 |
WO2019102624A1 (ja) | 2017-11-27 | 2019-05-31 | 三菱電機株式会社 | 準同型推論装置、準同型推論方法、準同型推論プログラム及び秘匿情報処理システム |
JP2019113665A (ja) | 2017-12-22 | 2019-07-11 | 株式会社アクセル | 撮像モジュール、画像処理デバイス、画像処理方法、および画像処理プログラム |
Also Published As
Publication number | Publication date |
---|---|
WO2022137447A1 (ja) | 2022-06-30 |
US20230269068A1 (en) | 2023-08-24 |
DE112020007702T5 (de) | 2023-08-10 |
CN116601691A (zh) | 2023-08-15 |
JPWO2022137447A1 (ja) | 2022-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9166785B2 (en) | Cryptography processing device and cryptography processing method | |
EP2924911B1 (en) | Secure pattern matching using somewhat homomorphic encryption | |
JP5167348B2 (ja) | ソフトウェア暗号化方法およびソフトウェア暗号解読方法およびソフトウェア暗号化装置およびソフトウェア暗号解読装置 | |
US11522671B2 (en) | Homomorphic inference device, homomorphic inference method, computer readable medium, and privacy-preserving information processing system | |
EP2884690A1 (en) | Re-encryption key generation device, re-encryption device, encryption device, decryption device, and program | |
JP5762232B2 (ja) | プライバシを保護したまま暗号化された要素の順序を選択するための方法およびシステム | |
WO2019130528A1 (ja) | 変換鍵生成装置、暗号文変換装置、秘匿情報処理システム、変換鍵生成方法、変換鍵生成プログラム、暗号文変換方法及び暗号文変換プログラム | |
JP5814880B2 (ja) | 暗号システム、暗号方法、暗号プログラム及び復号装置 | |
EP3364398B1 (en) | Secret random number synthesizing device, secret random number synthesizing method, and program | |
EP3573039B1 (en) | Secure computing system, secure computing device, secure computing method, and program | |
KR102143525B1 (ko) | 교집합 연산을 지원하는 함수 암호를 위한 방법 및 이를 이용한 장치 | |
JP2006311383A (ja) | データ管理方法、データ管理システムおよびデータ管理装置 | |
JP7205016B2 (ja) | 秘匿情報処理システムおよび秘匿情報処理方法 | |
US11909873B2 (en) | Decryption device, cryptographic system, and decryption method | |
US11200346B2 (en) | Secure computation for reading multiple elements from a secure text array | |
EP3767874B1 (en) | Decrypting device, encrypting device, and encryption system | |
EP3648395A1 (en) | Encryption device, decryption device, encryption method, encryption program, decryption method and decryption program | |
KR20240004830A (ko) | 완전 동형 암호화에서 사용하기 위한 블라인드 회전 | |
US20230132163A1 (en) | Memory processing apparatus, memory verification apparatus, memory updating apparatus, memory protection system, method, and computer readable medium | |
CN117242740A (zh) | 密文转换系统、转换密钥生成方法以及转换密钥生成程序 | |
US11811741B2 (en) | Information processing system and information processing method | |
Liu et al. | Secure Medical Data on Cloud storage via DNA Homomorphic Encryption technique | |
WO2024028961A1 (ja) | 暗号システム、方法及びプログラム | |
CN116028969B (zh) | 一种基于数据加密技术的隐私计算方法 | |
JP5880173B2 (ja) | 暗号処理方法、システム及び情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221109 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20221109 |
|
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: 20221206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221228 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7205016 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |