JP5103407B2 - 暗号化数値二進変換システム、暗号化数値二進変換方法、暗号化数値二進変換プログラム - Google Patents

暗号化数値二進変換システム、暗号化数値二進変換方法、暗号化数値二進変換プログラム Download PDF

Info

Publication number
JP5103407B2
JP5103407B2 JP2009008968A JP2009008968A JP5103407B2 JP 5103407 B2 JP5103407 B2 JP 5103407B2 JP 2009008968 A JP2009008968 A JP 2009008968A JP 2009008968 A JP2009008968 A JP 2009008968A JP 5103407 B2 JP5103407 B2 JP 5103407B2
Authority
JP
Japan
Prior art keywords
binary conversion
encrypted
digit
encrypted numerical
numerical
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
JP2009008968A
Other languages
English (en)
Other versions
JP2010164897A (ja
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2009008968A priority Critical patent/JP5103407B2/ja
Publication of JP2010164897A publication Critical patent/JP2010164897A/ja
Application granted granted Critical
Publication of JP5103407B2 publication Critical patent/JP5103407B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、暗号応用技術に関し、特に、ある数値の暗号文を入力として、当該数値を復元する事無く、当該数値を二進数表記した桁ごとに暗号化した暗号文を生成する技術に関する。
非特許文献1では、Paillier暗号によって暗号化された数値に対して、当該数値を明かす事無く、当該数値を二進数表記した桁ごとに暗号化した暗号文を生成する方法が開示されている。
また、二進数表記した数値を桁ごとに暗号化することで、当該数値の任意の論理演算を、当該数値を明かすこと無く実行可能とする方法も知られている(例えば、非特許文献2)。このような論理演算は、秘匿回路計算と称されている。
従って、非特許文献1に開示された方法を用いれば、数値の暗号文を入力として秘匿回路計算が実行できるようになる。これにより、秘匿回路計算の入力を提供する装置(入力提供装置)は、数値の暗号文のみを計算、保存すれば良く、当該数値を二進数表記した桁ごとの暗号文を計算、保存する必要が無くなる。
そのため、非特許文献1に開示された方法は、入力提供装置が計算資源やメモリ資源に乏しい場合に特に有効な方法となる。
B. Schoenmakers and P. Tuyls, Efficient binary conversion for Paillier encrypted values, Advances in Cryptology - EUROCRYPT 2006, Lecture Notes in Computer Science 4004, pp. 522-537, Springer-Verlag, 2006. G. Yamamoto, K. Chida, A. Nasciment, K. Suzuki, and S. Uchiyama, Efficient, non-optimistic secure circuit evaluation based on the ElGamal encryption, WISA 2005, Lecture Notes in Computer Science, pp. 328-343, Springer-Verlag, 2005.
非特許文献2に開示された方法は、El Gamal暗号によって数値を二進数表記の桁ごとに暗号化したものに対して秘匿回路計算を実現している。
一方、非特許文献1に開示された方法は、Paillier暗号によって暗号化された暗号文を対象としている。
そのため、非特許文献1に開示された方法を用いることで実現されるのは、Paillier暗号によって数値を二進数表記の桁ごとに暗号化したものに対する秘匿回路計算となる。
しかし、Paillier暗号は、El Gamal暗号と比べて、暗号文のサイズや復号処理、ゼロ知識証明等に要する計算量が多いため、秘匿回路計算におけるデータサイズや計算量が増大してしまうという課題がある。
そこで、本発明の目的は、El Gamal暗号で暗号化された数値に対して、当該数値を明かすこと無く、当該数値の二進数表記の桁ごとに暗号化することができる暗号化数値二進変換システム、暗号化数値二進変換方法、暗号化数値二進変換プログラムを提供することである。
本発明の第1の暗号化数値二進変換システムは、
1または2個の暗号化数値二進変換装置を用いて、El Gamal暗号の暗号化関数をE(・)とし、a≦z≦bとなる整数zの暗号文をE(z)としたとき、E(z)を入力として、zをt桁の二進数表記とした桁ごとの暗号文を求める暗号化数値二進変換システムであって、
関数F及び置換関数πを用いて、(π(i):F(i))(i=0,1,・・・,2t−1)を生成し、
F(z)とF(i)との対応関係を基にπ(i)を求め、
π(i)をt桁の二進数表記とした桁ごとに暗号化してE(wj)(j=0,1,・・・,t−1)を求め、
E(wj)に対してπ-1を作用させてE(zj)を求めることを特徴とする。
本発明の第2の暗号化数値二進変換システムは、
N(Nは3以上の整数)個の暗号化数値二進変換装置を用いて、El Gamal暗号の暗号化関数をE(・)とし、a≦z≦bとなる整数zの暗号文をE(z)としたとき、E(z)を入力として、zをt桁の二進数表記とした桁ごとの暗号文を求める暗号化数値二進変換システムであって、
関数Fn及び置換関数πn(n=1,・・・,N)を用いて、(πN(πN-1(・・・(π1(i)))):FN(FN-1(・・・(F1(E(i))))))(i=0,1,・・・,2t−1)を生成し、
N(FN-1(・・・(F1(E(i)))))に対応するiとE(z)に対応するzとの対応関係を基にπN(πN-1(・・・(π1(i))))を求め、
πN(πN-1(・・・(π1(i))))をt桁の二進数表記とした桁ごとに暗号化してE(wj)(j=0,1,・・・,t−1)を求め、
E(wj)に対してπn -1を作用させてE(zj)を求めることを特徴とする。
本発明は、楕円曲線の有理点群を利用したEl Gamal暗号で暗号化された数値に対して、当該数値を明かすこと無く、当該数値の二進数表記の桁ごとに暗号化を行う。El Gamal暗号は、Paillier暗号と比べて、暗号文のサイズや復号処理、ゼロ知識証明等に要する計算量が小さくすむことが期待できる。
そのため、本発明は、非特許文献1に開示された方法と比べて、秘匿回路計算におけるデータサイズ削減や計算量削減が見込めるという効果が得られる。
本発明の実施例1,2の暗号化数値二進変換システムの構成を説明する図である。 本発明の実施例1の暗号化数値二進変換システムによる暗号化数値二進変換方法を説明するフローチャートである。 本発明の実施例2の暗号化数値二進変換システムによる暗号化数値二進変換方法を説明するフローチャートである。 本発明の実施例3の暗号化数値二進変換システムの構成を説明する図である。 本発明の実施例3の暗号化数値二進変換システムによる暗号化数値二進変換方法を説明するフローチャートである。
図1に示すように、本実施例の暗号化数値二進変換システム20は、暗号化数値二進変換装置21A,21Bを有し、ある数値の暗号文を入力として秘匿回路計算を実行するための当該数値の二進数表記の桁ごとの暗号文を生成する。
なお、図1において、1以上の入力提供装置10は、秘匿回路計算の入力となる、ある数値の暗号文を暗号化数値二進変換システム20に提供する。また、1以上の秘匿回路計算装置30は、暗号化数値二進変換システム20にて生成された二進数表記の桁ごとの暗号文を基に秘匿回路計算を実行する。
以下、暗号化数値二進変換装置21A,21Bにおいて、El Gamal暗号で暗号化された数値に対して、当該数値を明かすこと無く、当該数値を二進数表記の桁ごとに暗号化した暗号文を生成するための処理手順について説明する。
最初に、El Gamal暗号の構成例について説明しておく。
El Gamal暗号の場合、gを素数位数qの乗法群Gの生成元とし、g,q,Gを公開情報としたとき、先ず、鍵ペア(x,y=gx)を生成する。ここで、xは0以上q未満の整数からなる秘密鍵であり、yは公開鍵である。ここでは、暗号化数値二進変換装置21Bが当該鍵ペアを生成し、秘密鍵xは暗号化数値二進変換装置21Bが所持するものとする。
次に、E(・)をEl Gamal暗号の暗号化関数としたとき、Gの元zの暗号文をE(z)=(A,B)=(gr,z×yr)とする。ここで、rは0以上q未満の乱数である。復号に秘密鍵xを用いることで、復号処理の結果z=B/Axを得ることができる。なお、zを0以上q未満の整数としたいときは、E(z)=(gr,yr+z)としても良い。非特許文献2に開示された方法では、この形式のE(z)を用いている。ただし、この形式の場合、上記の復号処理の結果はyzとなり、yzからzを求める必要がある。zの候補数が多くなるとyzからzを求めることは一般に困難となるため、zの候補数は予め少なく設定することが望ましい。
本発明では、非特許文献2に開示された方法とE(z)の形式が同様であることを前提とし、以降説明の簡略化のため、入力提供装置10は単一とし、当該入力提供装置10がE(z)を生成し、暗号化数値二進変換装置21Aに送信するものとする。なお、zは0(=a)以上2t−1(=b)以下の整数とする(tは適当な自然数)。
すなわち、本発明が解決しようとする課題は、zを二進数表記したときの下位j+1桁目をzjと表記したとき、zを復元すること無く、E(z)から、E(zt-1),・・・,E(z0)を生成することである。
以下、暗号化数値二進変換装置21A,21Bの処理手順の概略を、図2を用いて説明する。
先ず、暗号化数値二進変換装置21Aは、ステップA1において、E(z)を受信すると、ステップA2において、ある関数Fによって0から2t−1までの各整数iに対応するデータF(i)、及び、E(F(z))を生成し、iに対してある置換関数πを作用させることで得られる2t個のデータ(π(i):F(i))(i=0,1,・・・,2t−1)を、E(F(z))とともに暗号化数値二進変換装置21Bに送信する。
次に、(π(i):F(i))及びE(F(z))を受信した暗号化数値二進変換装置21Bは、ステップA3において、E(F(z))を復号してF(z)を取得し、(π(i):F(i))からF(z)と一致するF(i)を探索し、対応するπ(i)を取得し、ステップA4において、π(i)をt桁の二進数表記としたときの下位j+1桁目をwjと表記したとき、j=0,1,・・・,t−1についてE(wj)を生成し、E(wj)を暗号化数値二進変換装置21Aに送信する。
最後に、E(wj)(j=0,1,・・・,t−1)を受信した暗号化数値二進変換装置21Aは、ステップA5において、E(wj)に対してπ-1を作用させ、E(zj)(j=0,1,・・・,t−1)を得る。
上記の各処理について具体例を与える。
先ず、Fとして、例えば、0以上q未満の整数uを用いて、F(i)=y(i+1)uとする。この場合、暗号化数値二進変換装置21Aは、E(z)=(g r ,y r+z から、E(F(z))=((gru,(yr+zu×yu=(g ru ,y (z+1)u ×y ru が計算可能となる。また、Fは、暗号化数値二進変換装置21A以外はF(i)からiを求めることが困難となるようにする必要がある。そして、πとして、例えば、二進数表記でt桁の数値vを用いて
Figure 0005103407
とする。ここで、
Figure 0005103407
はiを二進数表記し、iとvを各桁ごとにXOR演算した結果を並べたものとする。
すると、暗号化数値二進変換装置21Bは、E(F(z))を復号してF(z)=y(z+1)uを得ることができ、(π(i):F(i))のF(i)の中からF(z)と一致するものを探索し、対応する
Figure 0005103407
を得ることができる。したがって、
Figure 0005103407
となり(vjはvの二進数表記の下位j+1桁目)、vjを所持している暗号化数値二進変換装置21Aは、E(wj)に対してπ-1を作用させた結果となる、
Figure 0005103407
(j=0,1,・・・,t−1)を得ることができる。ここで、E(1−wj)は、E(wj)から生成できることが知られており、例えば、非特許文献2にも開示されていることから、ここでは生成方法は省略する。
以上により、暗号化数値二進変換装置21Aは、E(zj)を得ることができ、得られたE(zj)を秘匿回路計算装置30に送信する。1以上からなる秘匿回路計算装置30は、例えば、非特許文献2に開示された方法により秘匿回路計算を実行する。なお、非特許文献2に開示された方法によれば秘匿回路計算装置30は2以上を必要とする。
以上、本実施例では、Fやπについて具体例を与えたが、勿論これに限るものではない。例えば、本実施例では、(π(i):F(i))を(π(i):Hash(F(i)))とし(Hash(・)は適当なハッシュ関数)、暗号化数値二進変換装置21Bは、F(z)をHash(F(z))に変換してからHash(F(i))との一致探索を行うとしても良い。また、πとしてπ(i)=z+v等としても良い。この場合、E(wj)からE(zj)を求めるためには、非特許文献1にしたがえば、暗号化数値二進変換装置21A,21Bが協力する必要がある。
また、本実施例では、秘密鍵xは暗号化数値二進変換装置21Bが所持するものとしたが、非特許文献2に開示された方法のように、xを暗号化数値二進変換装置21A,21Bが分散所持するものとしても良い。この場合、いま、暗号化数値二進変換装置21A,21Bがそれぞれ分散された秘密鍵xA,xBを所持するものとすると、暗号化数値二進変換装置21AはE(F(z))に対してxAを用いて部分的に復号したものを暗号化数値二進変換装置21Bに送信し、それを受信した暗号化数値二進変換装置21Bは、xBを用いてE(F(z))を完全に復号することができる。
また、本実施例では、秘匿回路計算装置30を2つとし、それぞれ暗号化数値二進変換装置21A,21Bと同一の装置として構成しても良い。この場合、上述の秘密鍵の分散所持は、非特許文献2の秘匿回路計算で必要となるため、このようにすることが望ましい。
更に、本実施例では、暗号化数値二進変換システム20を2つの暗号化数値二進変換装置21A,21Bで構成したが、1つの暗号化数値二進変換装置で構成しても良い。
本実施例の暗号化数値二進変換システム20は、実施例1と比べて、構成自体は同様であるが、暗号化数値二進変換装置21A,21Bにおいて、E(zj)が正しくzの二進数表記における桁ごとの暗号文となっているかどうか検証を行う点が異なる。
なお、ここでは、実施例1の処理手順に基づき、
Figure 0005103407
とし(u,u′は適当な乱数)、入力提供装置10の処理は同様とし、秘匿回路計算装置30は非特許文献2に開示された方法により秘匿回路計算を実行するものとする。
以下、暗号化数値二進変換装置21A,21Bの処理手順を、図3を用いて説明する。
説明する。
先ず、暗号化数値二進変換装置21Aは、ステップB1において、E(z)を受信すると、ステップB2において、0から2t−1までの各整数iに対応するデータF(i)=yiu+u′、及びE(F(z))を生成し、2t個のデータ
Figure 0005103407
(i=0,1,・・・,2t−1)を、E(F(z))とともに暗号化数値二進変換装置Bに送信する。
次に、
Figure 0005103407
及びE(F(z))を受信した暗号化数値二進変換装置21Bは、ステップB3において、E(F(z))を復号してF(z)を取得し、
Figure 0005103407
からF(z)と一致するF(i)を探索し、対応する
Figure 0005103407
を取得し、ステップB4において、
Figure 0005103407
をt桁の二進数表記としたときの下位j+1桁目をwjと表記したとき、j=0,1,・・・,t−1についてE(wj)を生成する。また、ステップB4においては、更に、暗号化数値二進変換装置21Bは、E(wj)の復号結果wjが0または1のどちらかであることを示すためにゼロ知識証明による証明情報を生成し、E(wj)及び当該証明情報を暗号化数値二進変換装置21Aに送信する。
次に、E(wj)(j=0,1,・・・,t−1)及び当該証明情報を受信した暗号化数値二進変換装置21Aは、ステップB5において、当該証明情報を検証し、正しいと判断した場合は、E(wj)からE(zj)(j=0,1,・・・,t−1)を得る。一方、当該証明情報が不正と判断した場合は、暗号化数値二進変換装置21Aは、以降の処理を行わない等、例外的措置をとる。なお、暗号化数値二進変換装置21Aは、E(zj)を正しく生成したとは限らないため、E(zj)をE(z′j)と表記する。
最後に、暗号化数値二進変換装置21A,21Bは、ステップB6において、E(z′j)から
Figure 0005103407
を計算し、
Figure 0005103407
の復号結果とE(z)の復号結果とが等しいかどうか、それぞれの暗号文を復号すること無く検証する。等しければE(z′j)は正しく生成されていることになる。
当該検証方法として、例えば、暗号化数値二進変換装置21Aは、1以上q未満の乱数aを生成し、
Figure 0005103407
から
Figure 0005103407
を計算し、同様に暗号化数値二進変換装置21Bは、1以上q未満の乱数bを生成し、
Figure 0005103407
から
Figure 0005103407
を計算する。
次に、暗号化数値二進変換装置21A,21Bは、
Figure 0005103407
から
Figure 0005103407
を計算し、
Figure 0005103407
を復号し、復号結果が0であれば
Figure 0005103407
の復号結果とE(z)の復号結果が等しいと判断する。その理由は、zと
Figure 0005103407
が等しければ、
Figure 0005103407
の復号結果はa,bにかかわらず0となり、異なれば当該復号結果が0になることは、a,bが乱数であることからその確率が低くなるためである。なお、例えば、
Figure 0005103407
から
Figure 0005103407
を計算することはE(・)の準同型性により可能であることが非特許文献2等で開示されている。具体的には、E(z)=(A,B),E(z′)=(A′,B′)としたとき、(AA′,BB′)=E(z+z′)となり、また、整数cに対して(Ac,Bc)=E(cz)となることが知られているため、このような処理を実行すれば良い。
図4に示すように、本実施例の暗号化数値二進変換システム20は、実施例1,2と比べて、3つの暗号化数値二進変換装置21A,21B,21Cを有する点が異なる。
なお、図3では、暗号化数値二進変換装置の数を3と固定しているが、本実施例は、4つ以上であっても同様の処理が可能である。
ここでは、入力提供装置10の処理は実施例1と同様とし、秘匿回路計算装置30は非特許文献2に開示された方法により秘匿回路計算を実行するものとする。
以下、暗号化数値二進変換装置21A,21B,21Cの処理手順の概略を、図5を用いて説明する。
ここでは、暗号化数値二進変換装置21A,21B,21Cは、秘密鍵xを分散所持し、暗号化数値二進変換装置21A,21B,21Cの全装置が処理した場合に限り、E(・)によって暗号化された暗号文を復号できるものとし、また、0から2t−1までの各整数iの暗号文E(i)を生成する。
先ず、暗号化数値二進変換装置21Aは、ステップC1において、E(z)を受信する。
すると、暗号化数値二進変換装置21Aは、ステップC2において、ある関数FAによってE(i)を変換したFA(E(i))を生成し、iにある置換関数πAを作用させることで得られる2t個のデータ(πA(i):FA(E(i)))(i=0,1,・・・,2t−1)を暗号化数値二進変換装置21Bに送信する。
次に、(πA(i):FA(E(i)))(i=0,1,・・・,2t−1)を受信した暗号化数値二進変換装置21Bは、ある関数FBによってFA(E(i))を変換したFB(FA(E(i)))を生成し、πA(i)にある置換関数πBを作用させることで得られる2t個のデータ(πB(πA(i)):FB(FA(E(i))))(i=0,1,・・・,2t−1)を暗号化数値二進変換装置21Cに送信する。
次に、(πB(πA(i)):FB(FA(E(i))))(i=0,1,・・・,2t−1)を受信した暗号化数値二進変換装置21Cは、ある関数FCによってFB(FA(E(i)))を変換したFC(FB(FA(E(i))))を生成し、πB(πA(i))にある置換関数πCを作用させることで得られる2t個のデータ(πC(πB(πA(i))):FC(FB(FA(E(i)))))(i=0,1,・・・,2t−1)を暗号化数値二進変換装置21A,21Bに送信する。
次に、暗号化数値二進変換装置21A,21B,21Cは、ステップC3において、当該FC(FB(FA(E(i))))に対応するiとE(z)に対応するzとの一致探索を行い、対応するπC(πB(πA(i)))を得る。そして、暗号化数値二進変換装置21A,21B,21Cは、ステップC4において、πC(πB(πA(i)))をt桁の二進数表記としたときの下位j+1桁目をwjと表記したとき、j=0,1,・・・,t−1についてE(wj)を生成する。
最後に、ステップC5において、E(wj)に対して暗号化数値二進変換装置21C,21B,21Aの順に、それぞれが
Figure 0005103407
を作用させ、E(zj)(j=0,1,・・・,t−1)を得る。
上記の各処理について具体例を与える。
先ず、FA,FB,FCとして、例えば、非特許文献2に開示されたような再暗号化手法がある。すなわち、ある数値zの暗号文E(z)=(gr,yr+z)に対し、0以上q未満の乱数sを用いて、(gr+s,yr+s+z)=(grs,yr+zs)を計算し、これをE(z)に置き換える。数値zを変えること無く暗号文が変化するため、置換関数を作用させることで(gr,yr+z)と(gr+s,yr+s+z)との対応関係を秘匿することが可能となる。FC(FB(FA(E(i))))に対応するiと、E(z)に対応するzとの一致探索は、FA,FB,FCを上述の再暗号化手法とすることで、E(πC(πB(πA(i))))とE(z)の復号結果との一致探索となるため、実施例2で示したような方法を用いれば良い。なお、πA,πB,πC
Figure 0005103407
の作用は実施例1と同様で良く、その説明は省略する。
以上により、暗号化数値二進変換システム20を3つ以上の暗号化数値二進変換装置で構成した場合でも、El Gamal暗号で暗号化された数値に対して、当該数値を明かすこと無く、当該数値を二進数表記の桁ごとに暗号化した暗号文を生成することが可能となる。
以上、本発明を実施例を参照して説明したが、本発明は上記実施例に限定されものではない。本発明の構成や詳細には、本発明の範囲内で当業者が理解し得る様々な変更をすることができる。
例えば、実施例3に、実施例2で示されたE(zj)の検証方法を適用しても良い。
また、実施例1,2,3では、暗号化数値二進変換システム20を複数の暗号化数値二進変換装置で構成したが、1つの暗号化数値二進変換装置で構成しても良い。更に、この場合、その暗号化数値二進変換装置にて行われる暗号化数値二進変換方法を、コンピュータに実行させるためのプログラムに適用しても良い。また、そのプログラムを記憶媒体に格納することも可能であり、ネットワークを介して外部に提供することも可能である。
10 入力提供装置
20 暗号化数値二進変換システム
21A,21B,21C 暗号化数値二進変換装置
30 秘匿回路計算装置

Claims (7)

  1. 1または2個の暗号化数値二進変換装置を用いて、El Gamal暗号の暗号化関数をE(・)とし、a≦z≦bとなる整数zの暗号文をE(z)としたとき、E(z)を入力として、zをt桁の二進数表記とした桁ごとの暗号文を求める暗号化数値二進変換システムであって、
    関数F及び置換関数πを用いて、(π(i):F(i))(i=0,1,・・・,2t−1)を生成し、
    F(z)とF(i)との対応関係を基にπ(i)を求め、
    π(i)をt桁の二進数表記とした桁ごとに暗号化してE(wj)(j=0,1,・・・,t−1)を求め、
    E(wj)に対してπ-1を作用させてE(zj)を求める、暗号化数値二進変換システム。
  2. N(Nは3以上の整数)個の暗号化数値二進変換装置を用いて、El Gamal暗号の暗号化関数をE(・)とし、a≦z≦bとなる整数zの暗号文をE(z)としたとき、E(z)を入力として、zをt桁の二進数表記とした桁ごとの暗号文を求める暗号化数値二進変換システムであって、
    関数Fn及び置換関数πn(n=1,・・・,N)を用いて、(πN(πN-1(・・・(π1(i)))):FN(FN-1(・・・(F1(E(i))))))(i=0,1,・・・,2t−1)を生成し、
    N(FN-1(・・・(F1(E(i)))))に対応するiとE(z)に対応するzとの対応関係を基にπN(πN-1(・・・(π1(i))))を求め、
    πN(πN-1(・・・(π1(i))))をt桁の二進数表記とした桁ごとに暗号化してE(wj)(j=0,1,・・・,t−1)を求め、
    E(wj)に対してπn -1を作用させてE(zj)を求める、暗号化数値二進変換システム。
  3. E(wj)の復号結果wjについてのゼロ知識証明による証明情報を生成し、
    証明情報が正しい場合にE(zj)を求め、更に、E(zj)から
    Figure 0005103407
    を計算し復号した復号結果とE(z)の復号結果とが等しいかどうかを検証する、請求項1または2に記載の暗号化数値二進変換システム。
  4. 1または2個の暗号化数値二進変換手段を用いて、El Gamal暗号の暗号化関数をE(・)とし、a≦z≦bとなる整数zの暗号文をE(z)としたとき、E(z)を入力として、zをt桁の二進数表記とした桁ごとの暗号文を求める暗号化数値二進変換システムによる暗号化数値二進変換方法であって、
    関数F及び置換関数πを用いて、(π(i):F(i))(i=0,1,・・・,2t−1)を生成する第1ステップと、
    F(z)とF(i)との対応関係を基にπ(i)を求める第2ステップと、
    π(i)をt桁の二進数表記とした桁ごとに暗号化してE(wj)(j=0,1,・・・,t−1)を求める第3ステップと、
    E(wj)に対してπ-1を作用させてE(zj)を求める第4ステップと、を有する暗号化数値二進変換方法。
  5. N(Nは3以上の整数)個の暗号化数値二進変換手段を用いて、El Gamal暗号の暗号化関数をE(・)とし、a≦z≦bとなる整数zの暗号文をE(z)としたとき、E(z)を入力として、zをt桁の二進数表記とした桁ごとの暗号文を求める暗号化数値二進変換システムによる暗号化数値二進変換方法であって、
    関数Fn及び置換関数πn(n=1,・・・,N)を用いて、(πN(πN-1(・・・(π1(i)))):FN(FN-1(・・・(F1(E(i))))))(i=0,1,・・・,2t−1)を生成する第1ステップと、
    N(FN-1(・・・(F1(E(i)))))に対応するiとE(z)に対応するzとの対応関係を基にπN(πN-1(・・・(π1(i))))を求める第2ステップと、
    πN(πN-1(・・・(π1(i))))をt桁の二進数表記とした桁ごとに暗号化してE(wj)(j=0,1,・・・,t−1)を求める第3ステップと、
    E(wj)に対してπn -1を作用させてE(zj)を求める第4ステップと、を有する暗号化数値二進変換方法。
  6. 前記第3ステップでは、更に、E(wj)の復号結果wjについてのゼロ知識証明による証明情報を生成し、
    前記第4ステップでは、証明情報が正しい場合にE(zj)を求め、
    更に、E(zj)から
    Figure 0005103407
    を計算し復号した復号結果とE(z)の復号結果とが等しいかどうかを検証する第5ステップを有する、請求項4または5に記載の暗号化数値二進変換方法。
  7. 請求項4から6のいずれか1項に記載の暗号化数値二進変換方法をコンピュータに実行させるための暗号化数値二進変換プログラム。
JP2009008968A 2009-01-19 2009-01-19 暗号化数値二進変換システム、暗号化数値二進変換方法、暗号化数値二進変換プログラム Active JP5103407B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009008968A JP5103407B2 (ja) 2009-01-19 2009-01-19 暗号化数値二進変換システム、暗号化数値二進変換方法、暗号化数値二進変換プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009008968A JP5103407B2 (ja) 2009-01-19 2009-01-19 暗号化数値二進変換システム、暗号化数値二進変換方法、暗号化数値二進変換プログラム

Publications (2)

Publication Number Publication Date
JP2010164897A JP2010164897A (ja) 2010-07-29
JP5103407B2 true JP5103407B2 (ja) 2012-12-19

Family

ID=42581083

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009008968A Active JP5103407B2 (ja) 2009-01-19 2009-01-19 暗号化数値二進変換システム、暗号化数値二進変換方法、暗号化数値二進変換プログラム

Country Status (1)

Country Link
JP (1) JP5103407B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103684760B (zh) * 2012-09-24 2018-12-07 腾讯科技(深圳)有限公司 通信的加密和解密的方法、装置及系统
JP5506961B1 (ja) * 2012-11-19 2014-05-28 日本電信電話株式会社 記数法変換装置、方法、プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5537032B2 (ja) * 2005-12-13 2014-07-02 コーニンクレッカ フィリップス エヌ ヴェ 安全な閾値復号プロトコル計算
JP5578754B2 (ja) * 2007-01-22 2014-08-27 日本電信電話株式会社 暗号変換方法および装置、並びにプログラム

Also Published As

Publication number Publication date
JP2010164897A (ja) 2010-07-29

Similar Documents

Publication Publication Date Title
JP6934963B2 (ja) データを暗号化する方法およびシステム
CN111510281B (zh) 一种同态加密方法及装置
Abusukhon et al. A hybrid network security algorithm based on Diffie Hellman and Text-to-Image Encryption algorithm
JP2011130120A (ja) 量子公開鍵暗号システム、鍵生成装置、暗号化装置、復号装置、鍵生成方法、暗号化方法、及び復号方法
Saarinen Ring-LWE ciphertext compression and error correction: Tools for lightweight post-quantum cryptography
CN102187617B (zh) 密码系统
JP6522263B2 (ja) 準同型演算装置、暗号システム及び準同型演算プログラム
JP2015184594A (ja) 暗号文処理装置、暗号文処理方法、暗号文処理プログラムおよび情報処理装置
WO2016136142A1 (ja) 暗号文照合システム、方法、および記録媒体
Wang et al. Proxy re-encryption schemes with key privacy from LWE
JP6738061B2 (ja) 暗号文照合システム、方法、および記録媒体
JP2012150399A (ja) プロキシ再暗号化システム、委譲情報生成装置、被委譲情報生成装置、変換鍵生成装置、暗号文変換装置、プロキシ再暗号化方法、及びそれらのプログラム
WO2023056763A1 (zh) 一种隐私数据共享方法及装置
JP5578754B2 (ja) 暗号変換方法および装置、並びにプログラム
WO2014030706A1 (ja) 暗号化データベースシステム、クライアント装置およびサーバ、暗号化データ加算方法およびプログラム
JP2007114494A (ja) 秘匿計算方法及び装置
Ahmad Abusukhon et al. A novel network security algorithm based on encrypting text into a white-page image
CN113098675B (zh) 基于多项式完全同态的二进制数据加密系统及方法
CN116346336B (zh) 一种基于多层密钥生成中心的密钥分发方法及相关系统
JP5103407B2 (ja) 暗号化数値二進変換システム、暗号化数値二進変換方法、暗号化数値二進変換プログラム
JP5434925B2 (ja) 多者分散乗算装置、多者分散乗算システム及び方法
WO2019220900A1 (ja) 暗号化システム、暗号化装置、復号装置、暗号化方法、復号方法、及びプログラム
JP5406796B2 (ja) 本人性証明システム、検証装置、本人性証明方法
JP5489115B2 (ja) 原本性保証装置、原本性保証プログラム、及びこのプログラムを記録する記録媒体
JP5297918B2 (ja) 暗号化数値二進変換システム及び方法とプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110208

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120710

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120904

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: 20120925

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121001

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151005

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5103407

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350