JP6387466B2 - 電子計算装置 - Google Patents
電子計算装置 Download PDFInfo
- Publication number
- JP6387466B2 JP6387466B2 JP2017533225A JP2017533225A JP6387466B2 JP 6387466 B2 JP6387466 B2 JP 6387466B2 JP 2017533225 A JP2017533225 A JP 2017533225A JP 2017533225 A JP2017533225 A JP 2017533225A JP 6387466 B2 JP6387466 B2 JP 6387466B2
- Authority
- JP
- Japan
- Prior art keywords
- integer
- ring
- modulo
- ring element
- integer list
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 72
- 238000004364 calculation method Methods 0.000 claims description 45
- 238000004590 computer program Methods 0.000 claims description 36
- 238000001308 synthesis method Methods 0.000 claims description 20
- 238000007792 addition Methods 0.000 description 84
- 230000015654 memory Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000021615 conjugation Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000005415 magnetization Effects 0.000 description 1
- ORQBXQOJMQIAOY-UHFFFAOYSA-N nobelium Chemical compound [No] ORQBXQOJMQIAOY-UHFFFAOYSA-N 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/729—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic using representation by a residue number system
-
- 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/002—Countermeasures against attacks on cryptographic mechanisms
-
- 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
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/16—Obfuscation or hiding, e.g. involving white box
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
- Storage Device Security (AREA)
- Devices For Executing Special Programs (AREA)
- Organic Low-Molecular-Weight Compounds And Preparation Thereof (AREA)
- Metal-Oxide And Bipolar Metal-Oxide Semiconductor Integrated Circuits (AREA)
- Stored Programmes (AREA)
- Error Detection And Correction (AREA)
Description
図2に示される計算ユニット230は、モジュロ演算器242、加算ユニット232および乗算ユニット237を有する。
93*143*181*209*231=116213298201
99*151*183*211*241=139111402617
。
・合成法(M)を法とする一つまたは複数のオペランドを、それらの法を法とする一つまたは複数の系列の環要素として記憶する段階310であって、ある系列の各環要素はその系列の法のうちの対応する法に関連付けられ、その系列の少なくとも一つの環要素が整数リストとしてエンコードされる、段階と、
・前記オペランド記憶の第一および第二のオペランドを環要素数系に従って加算および/または乗算する段階320とを含む。
否定入力環要素a=ua1−ua2を表わす否定入力整数リスト(a1,a2)を与えられて、該整数リストを並べ替えることによって、この場合は順序を逆にすることによって、否定出力整数リストが得られてもよい。否定出力整数リストは(a2,a1)であってもよい。偶数位数をもつ基本要素についてそうであるようにum=−1となるmが存在するとすると、否定は代替的には、整数リストの各整数に定数、たとえばmを加算することによって得られてもよい。この場合、否定出力整数リストは(a1+m,a2+m)であってもよい。−a=ua2−ua1=ua1+m−ua2+mなので、これは成立する。整数リストにおける算術は好ましくは、基本元の位数を法として行なわれる。ここで、整数リストの整数は基本元の指数に対応する。よって、基本元の位数を法として同じである整数は同じ環要素をエンコードする。
第一の加算入力環要素a=ua1−ua2をエンコードする受領された第一の加算入力整数リスト(a1,a2)および第二の加算入力環要素b=ub1−ub2をエンコードする第二の加算入力整数リスト(b1,b2)を加算するには、まず、中間加算環要素cをエンコードする中間加算整数リスト((c1,c2))が決定される。
第一の乗算入力環要素r=ur1−ur2をエンコードする受領された第一の乗算入力整数リスト(r1,r2)と第二の乗算入力環要素s=us1−us2をエンコードする第二の乗算入力整数リスト((s1,s2))とを乗算するために、第一の中間乗算整数リスト(t1,t2)および第二の中間乗算整数リスト(u1,u2)が決定される。乗算出力環要素をエンコードする乗算出力整数リストは、第一および第二の中間要素から決定される。他の実施形態では、二つより多くの中間乗算整数リストがあってもよい。r・s=(ur1−ur2)(us1−us2)=ur1+s1−ur1+s2+ur2+s2−ur2+s1=(ur1+s1−ur1+s2)+(ur2+s2−ur2+s1)=t+uとなる。展開された積の項を二つの項tおよびuに分割することは、異なる仕方で、たとえば(ur1+s1−ur2+s1)+(ur2+s2−ur1+s2)のようになされてもよい。
上述した実施形態は、本発明を限定するのではなく例解するものであり、当業者は多くの代替実施形態を設計できるであろうことを注意しておくべきである。
いくつかの態様を記載しておく。
〔態様1〕
合成法によって定義される可換環における難読化された算術を剰余数系において実行するよう構成された電子的な計算装置であって、前記剰余数系は法の系列について定義され、それぞれの法が可換環を定義し、前記系列のそれぞれの法について関連付けられた基本要素が存在して、その法を法とするそれぞれの環要素が、それらの環要素がその基本要素の冪乗の線形結合に等しくなるよう、整数リストとして表現されうるという条件を満たし、それぞれの冪乗は前記整数リストによって決定される指数をもち、当該計算装置は、
・前記合成法を法とした一つまたは複数のオペランドを、それらの法を法とする環要素の一つまたは複数の系列として記憶するよう構成されたオペランド記憶部であって、ある系列の各環要素は法の系列の対応する法に関連付けられ、前記系列の少なくとも一つの環要素が整数リストとしてエンコードされている、オペランド記憶部と、
・前記剰余数系に従って前記オペランド記憶部の第一および第二のオペランドを加算および/または乗算するよう構成された計算ユニットとを有する、
計算装置。
〔態様2〕
前記合成法および法の前記系列におけるそれらの法は、整数またはモジュラー係数をもつ多項式である、態様1記載の計算装置。
〔態様3〕
前記計算ユニットが前記整数リストに対して演算し、前記演算は前記基本要素の位数を法とするモジュロ演算を含み、法の前記系列の二つの異なる法に関連する少なくとも二つの基本要素の位数が等しい、態様1または2記載の計算装置。
〔態様4〕
法の前記系列の法に関連付けられたすべての基本要素の位数が等しい、態様1ないし3のうちいずれか一項記載の計算装置。
〔態様5〕
前記合成法が、法の前記系列における法の最小公倍数に等しい、態様1ないし4のうちいずれか一項記載の計算装置。
〔態様6〕
前記系列におけるそれぞれの法について、法の前記系列の法に関連付けられた、ある増分要素について定義された増分テーブルを記憶するよう構成されたテーブル記憶部を有しており、
前記増分テーブルは、入力環要素を、該入力環要素に前記増分要素を加えたものに等しい出力環要素をエンコードする出力整数リストにマッピングし、前記出力環要素は前記基本要素の冪乗の線形結合に等しく、該冪乗は前記出力整数リストによって決定される指数をもつ、
態様1ないし5のうちいずれか一項記載の計算装置。
〔態様7〕
前記計算ユニットが、整数リストとして表現されている前記第一および第二のオペランドにおける同じ法を法とした第一および第二の環要素に対して、該同じ法に関連付けられた基本要素の位数を法とするモジュロ演算を含む算術を実行し、該同じ法について記憶されている関連付けられた増分テーブルを適用するよう構成されている、態様6記載の計算装置。
〔態様8〕
前記計算ユニットが加算ユニットを有し、前記加算ユニットは、前記系列のそれぞれの法について、
・第一の加算入力環要素をエンコードする第一の加算入力整数リストおよび第二の加算入力環要素をエンコードする第二の加算入力整数リストを受領する段階と、
・前記第一および第二の加算入力整数リストから決定される環要素に前記増分テーブルを適用することによって加算出力環要素をエンコードする加算出力整数リストを決定する段階であって、前記加算出力環要素は前記第一の加算入力環要素および前記第二の加算入力環要素のモジュラー加算に等しい、段階とを実行するよう構成されている、
態様6または7記載の計算装置。
〔態様9〕
前記加算出力整数リストを決定することが、
・一つまたは複数の基本要素の冪乗の線形結合である環要素への前記増分テーブルの第一の適用によって、中間加算環要素をエンコードする中間加算整数リストを決定する段階であって、前記冪乗は前記第一および第二の加算入力整数リストおよび前記基本要素の位数を法とするモジュロ演算から決定される、段階と、
・前記加算出力整数リストを決定する段階であって、前記中間加算整数リストから決定されるおよび前記第二の加算入力整数リストから決定される環要素への前記増分テーブルの第二の適用と、前記基本要素の位数を法とするモジュロ演算とを含む、段階とを含む、
態様8記載の計算装置。
〔態様10〕
前記中間加算整数リストを決定することがさらに、前記第一および第二の加算入力整数リストから決定された整数を、第一の適用から帰結する整数リスト中の整数に加算すること前記基本要素の位数を法としてのモジュロ演算を含む、
態様9記載の計算装置。
〔態様11〕
・前記増分テーブルは、前記一つまたは複数の基本環要素を前記第一の整数リストの第一の整数から前記第二の整数リストの第一の整数を引いたもの乗したもの、足すまたは引く、ある基本環要素を前記第一の整数リストの第二の整数から前記第二の整数リストの第一の整数を引いたもの乗したもの、によって形成される環要素に適用される、および/または
・前記増分テーブルは、前記一つまたは複数の基本環要素を前記第一の整数リストの第一の整数から前記第一の整数リストの第二の整数を引いたもの乗したもの、足すまたは引く、ある基本環要素を前記第二の整数リストの第一の整数から前記第一の整数リストの前記第二の整数を引いたもの乗したもの、によって形成される環要素に適用される、および/または
・前記増分テーブルは、前記一つまたは複数の基本環要素を前記第一の整数リストの第二の整数から前記第一の整数リストの第一の整数を引いたもの乗したもの、足すまたは引く、ある基本環要素を前記第二の整数リストの第一の整数から前記第一の整数リストの前記第一の整数を引いたもの乗したもの、によって形成される環要素に適用される、
態様9または10記載の計算装置。
〔態様12〕
・前記増分テーブルの前記第二の適用の前に、前記中間加算整数リストによって表わされる前記中間加算環要素が否定にされる、
態様9ないし11のうちいずれか一項記載の計算装置。
〔態様13〕
当該計算装置が乗算ユニットを有しており、前記乗算ユニットは、
・第一の乗算入力環要素をエンコードする第一の乗算入力整数リストおよび第二の乗算入力環要素をエンコードする第二の乗算入力整数リストを受領する段階と、
・前記第一および第二の乗算入力整数リストから決定される環要素に前記増分テーブルを適用することによって乗算出力環要素をエンコードする乗算出力整数リストを決定する段階であって、前記乗算出力環要素は前記第一の乗算入力環要素および前記第二の乗算入力環要素のモジュラー乗算に等しい、段階とを実行するよう構成されている、
態様6ないし11のうちいずれか一項記載の計算装置。
〔態様14〕
合成法を法とする難読化された算術を剰余数系において実行する電子的な計算方法であって、前記剰余数系は法の系列について定義され、それぞれの法が可換環を定義し、前記系列のそれぞれの法について関連付けられた基本要素が存在して、その法を法とするそれぞれの環要素が、それらの環要素がその基本要素の冪乗の線形結合に等しくなるよう、整数リストとして表現されうるという条件を満たし、それぞれの冪乗は前記整数リストによって決定される指数をもち、当該方法は、
・前記合成法を法とした一つまたは複数のオペランドを、それらの法を法とする環要素の一つまたは複数の系列として記憶する段階であって、ある系列の各環要素は法の前記系列の対応する法に関連付けられ、前記系列の少なくとも一つの環要素が整数リストとしてエンコードされている、段階と、
・環要素数系に従って前記オペランド記憶部の第一および第二のオペランドを加算および/または乗算する段階とを含む、
計算方法。
〔態様15〕
コンピュータ・プログラムであって、該コンピュータ・プログラムがプログラム可能装置で実行されたときに態様14記載の方法を実行するよう構成されたコンピュータ・プログラム命令を有する、コンピュータ・プログラム。
〔態様16〕
コンピュータ可読媒体上に具現されている態様15記載のコンピュータ・プログラム。
101 第一のオペランド
106 第二のオペランド
102、107 第一の法を法とする剰余
103、108 第二の法を法とする剰余
104、109 第三の法を法とする剰余
102.1、102.2 整数
107.1、107.2 整数
110 オペランド記憶部
120 テーブル記憶部
121 テーブルの系列
122 第一の法についての増分テーブル
123 第二の法についての増分テーブル
124 第三の法についての増分テーブル
130 計算ユニット
131 加算ユニットの系列
132 第一の加算ユニット
133 第二の加算ユニット
134 第三の加算ユニット
136 乗算ユニットの系列
137 第一の乗算ユニット
138 第二の乗算ユニット
139 第三の乗算ユニット
141 モジュロ演算器の系列
142 第一の法を法とした、第一の基本要素の位数についてのモジュロ演算器
143 第二の法を法とした、第二の基本要素の位数についてのモジュロ演算器
144 第三の法を法とした、第三の基本要素の位数についてのモジュロ演算器
200 電子計算装置
230 計算ユニット
232 加算ユニット
237 乗算ユニット
242 モジュロ演算器
Claims (15)
- 合成法によって定義される可換環における難読化された算術を剰余数系において実行するよう構成された電子的な計算装置であって、前記剰余数系は法の系列について定義され、それぞれの法が可換環を定義し、前記系列のそれぞれの法について関連付けられた基本要素が存在して、その法を法とするそれぞれの環要素が、それらの環要素がその基本要素の冪乗の線形結合に等しくなるよう、整数リストとして表現されうるという条件を満たし、それぞれの冪乗は前記整数リストによって決定される指数をもち、当該計算装置は、
・前記合成法を法とした一つまたは複数のオペランドを、それらの法を法とする環要素の一つまたは複数の系列として記憶するよう構成されたオペランド記憶部であって、ある系列の各環要素は法の系列の対応する法に関連付けられ、前記系列の少なくとも一つの環要素が整数リストとしてエンコードされている、オペランド記憶部と、
・前記可換環における演算を定義するテーブルを記憶しているテーブル記憶部と;
・前記剰余数系に従って前記オペランド記憶部の第一および第二のオペランドを加算および乗算を実行できる計算ユニットであって、
前記テーブル記憶部に記憶されているテーブルが、前記系列におけるそれぞれの法について、法の前記系列の法に関連付けられた、ある増分要素について定義された増分テーブルを含み、
前記増分テーブルは、入力環要素をエンコードする入力整数リストを、該入力環要素に前記増分要素を加えたものに等しい出力環要素をエンコードする出力整数リストにマッピングするものであり、
前記オペランド記憶部の第一および第二のオペランドの加算は、第一のオペランドを表わす環要素の系列のうち前記法の系列のそれぞれの法に対応する環要素を、第二のオペランドを表わす環要素の系列のうち前記法の系列の対応する法に対応する環要素と、前記対応する法のもとで加算することを含み、該加算は、加算される環要素が整数リストとしてエンコードされている場合には、前記テーブル記憶部に記憶されている前記増分テーブルを利用して実行され、
前記オペランド記憶部の第一および第二のオペランドの乗算は、第一のオペランドを表わす環要素の系列のうち前記法の系列のそれぞれの法に対応する環要素を、第二のオペランドを表わす環要素の系列のうち前記法の系列の対応する法に対応する環要素と、前記対応する法のもとで乗算することを含み、該乗算は、乗算される環要素が整数リストとしてエンコードされている場合には、前記テーブル記憶部に記憶されている前記増分テーブルを利用して実行される、計算ユニットとを有する、
計算装置。 - 前記合成法および法の前記系列におけるそれらの法は、整数またはモジュラー係数をもつ多項式である、請求項1記載の計算装置。
- 前記計算ユニットが前記整数リストに対して演算し、前記演算は前記基本要素の位数を法とするモジュロ演算を含み、法の前記系列の二つの異なる法に関連する少なくとも二つの基本要素の位数が等しい、請求項1または2記載の計算装置。
- 法の前記系列の法に関連付けられたすべての基本要素の位数が等しい、請求項1ないし3のうちいずれか一項記載の計算装置。
- 前記合成法が、法の前記系列における法の最小公倍数に等しい、請求項1ないし4のうちいずれか一項記載の計算装置。
- 整数リストとしてエンコードされている環要素の前記対応する法のもとでの加算および/または乗算のために利用されるテーブルが、前記対応する法に関連付けられた基本要素の位数を法とするモジュロ演算を含む算術を定義する、請求項1記載の計算装置。
- 前記計算ユニットが、整数リストとしてエンコードされている環要素の前記対応する法のもとでの前記加算を実行する加算ユニットを有し、
前記加算ユニットは、前記系列のそれぞれの法について、前記テーブルを利用して実行される第一の加算入力環要素および第二の加算入力環要素の加算を、
・前記第一の加算入力環要素をエンコードする第一の加算入力整数リストおよび前記第二の加算入力環要素をエンコードする第二の加算入力整数リストを受領する段階と、
・前記第一および第二の加算入力整数リストから決定される環要素に前記増分テーブルを適用することによって加算出力環要素をエンコードする加算出力整数リストを決定する段階であって、前記加算出力環要素は前記第一の加算入力環要素および前記第二の加算入力環要素のモジュラー加算に等しい、段階とを実行することによって実行するよう構成されている、請求項1ないし6のうちいずれか一項記載の計算装置。 - 前記加算出力整数リストを決定することが、
・一つまたは複数の基本要素の冪乗の線形結合である環要素への前記増分テーブルの第一の適用によって、中間加算環要素をエンコードする中間加算整数リストを決定する段階であって、前記冪乗は前記第一および第二の加算入力整数リストおよび前記基本要素の位数を法とするモジュロ演算から決定される、段階と、
・前記加算出力整数リストを決定する段階であって、前記中間加算整数リストから決定されるおよび前記第二の加算入力整数リストから決定される環要素への前記増分テーブルの第二の適用と、前記基本要素の位数を法とするモジュロ演算とを含む、段階とを含む、
請求項7記載の計算装置。 - 前記中間加算整数リストを決定することがさらに、前記第一および第二の加算入力整数リストから決定された整数を、第一の適用から帰結する整数リスト中の整数に加算すること前記基本要素の位数を法としてのモジュロ演算を含む、
請求項8記載の計算装置。 - ・前記増分テーブルは、前記一つまたは複数の基本環要素を前記第一の整数リストの第一の整数から前記第二の整数リストの第一の整数を引いたもの乗したもの、足すまたは引く、ある基本環要素を前記第一の整数リストの第二の整数から前記第二の整数リストの第一の整数を引いたもの乗したもの、によって形成される環要素に適用される、および/または
・前記増分テーブルは、前記一つまたは複数の基本環要素を前記第一の整数リストの第一の整数から前記第一の整数リストの第二の整数を引いたもの乗したもの、足すまたは引く、ある基本環要素を前記第二の整数リストの第一の整数から前記第一の整数リストの前記第二の整数を引いたもの乗したもの、によって形成される環要素に適用される、および/または
・前記増分テーブルは、前記一つまたは複数の基本環要素を前記第一の整数リストの第二の整数から前記第一の整数リストの第一の整数を引いたもの乗したもの、足すまたは引く、ある基本環要素を前記第二の整数リストの第一の整数から前記第一の整数リストの前記第一の整数を引いたもの乗したもの、によって形成される環要素に適用される、
請求項8または9記載の計算装置。 - ・前記増分テーブルの前記第二の適用の前に、前記中間加算整数リストによって表わされる前記中間加算環要素が否定にされる、
請求項8ないし10のうちいずれか一項記載の計算装置。 - 当該計算装置が、整数リストとしてエンコードされている環要素の前記対応する法のもとでの前記乗算を実行する乗算ユニットを有しており、前記乗算ユニットは、前記テーブルを利用して実行される第一の乗算入力環要素および第二の乗算入力環要素の乗算を、
・前記第一の乗算入力環要素をエンコードする第一の乗算入力整数リストおよび前記第二の乗算入力環要素をエンコードする第二の乗算入力整数リストを受領する段階と、
・前記第一および第二の乗算入力整数リストから決定される環要素に前記増分テーブルを適用することによって乗算出力環要素をエンコードする乗算出力整数リストを決定する段階であって、前記乗算出力環要素は前記第一の乗算入力環要素および前記第二の乗算入力環要素のモジュラー乗算に等しい、段階とによって実行するよう構成されている、
請求項1ないし10のうちいずれか一項記載の計算装置。 - 計算装置が合成法を法とする難読化された算術を剰余数系において実行するための電子的な計算方法であって、前記剰余数系は法の系列について定義され、それぞれの法が可換環を定義し、前記系列のそれぞれの法について関連付けられた基本要素が存在して、その法を法とするそれぞれの環要素が、それらの環要素がその基本要素の冪乗の線形結合に等しくなるよう、整数リストとして表現されうるという条件を満たし、それぞれの冪乗は前記整数リストによって決定される指数をもち、当該方法は、
・前記合成法を法とした一つまたは複数のオペランドを、それらの法を法とする環要素の一つまたは複数の系列として前記計算装置のオペランド記憶部に記憶する段階であって、ある系列の各環要素は法の前記系列の対応する法に関連付けられ、前記系列の少なくとも一つの環要素が整数リストとしてエンコードされている、段階と、
・前記計算装置の計算ユニットによって、テーブル記憶部に記憶された増分テーブルを利用して、環要素数系に従って前記オペランド記憶部の第一および第二のオペランドを加算または乗算する段階であって、
前記増分テーブルは、前記可換環における演算を定義するものであり、
前記増分テーブルは、前記系列におけるそれぞれの法について、法の前記系列の法に関連付けられた、ある増分要素について定義された増分テーブルを含み、
前記増分テーブルは、入力環要素をエンコードする入力整数リストを、該入力環要素に前記増分要素を加えたものに等しい出力環要素をエンコードする出力整数リストにマッピングするものであり、
前記オペランド記憶部の第一および第二のオペランドの加算は、第一のオペランドを表わす環要素の系列のうち前記法の系列のそれぞれの法に対応する環要素を、第二のオペランドを表わす環要素の系列のうち前記法の系列の対応する法に対応する環要素と、前記対応する法のもとで加算することを含み、該加算は、加算される環要素が整数リストとしてエンコードされている場合には、前記テーブル記憶部に記憶されている前記増分テーブルを利用して実行され、
前記オペランド記憶部の第一および第二のオペランドの乗算は、第一のオペランドを表わす環要素の系列のうち前記法の系列のそれぞれの法に対応する環要素を、第二のオペランドを表わす環要素の系列のうち前記法の系列の対応する法に対応する環要素と、前記対応する法のもとで乗算することを含み、該乗算は、乗算される環要素が整数リストとしてエンコードされている場合には、前記テーブル記憶部に記憶されている前記増分テーブルを利用して実行される、
段階とを含む、
とを含む、
計算方法。 - コンピュータ・プログラムであって、該コンピュータ・プログラムがプログラム可能装置で実行されたときに請求項13記載の方法を実行するよう構成されたコンピュータ・プログラム命令を有する、コンピュータ・プログラム。
- コンピュータ可読媒体上に具現されている請求項14記載のコンピュータ・プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP14199622 | 2014-12-22 | ||
EP14199622.3 | 2014-12-22 | ||
PCT/EP2015/080760 WO2016102445A1 (en) | 2014-12-22 | 2015-12-21 | Electronic calculating device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018506057A JP2018506057A (ja) | 2018-03-01 |
JP6387466B2 true JP6387466B2 (ja) | 2018-09-05 |
Family
ID=52282483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017533225A Expired - Fee Related JP6387466B2 (ja) | 2014-12-22 | 2015-12-21 | 電子計算装置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US10505710B2 (ja) |
EP (1) | EP3238366B1 (ja) |
JP (1) | JP6387466B2 (ja) |
CN (1) | CN107005403A (ja) |
BR (1) | BR112017013069A2 (ja) |
RU (1) | RU2698763C2 (ja) |
TR (1) | TR201907713T4 (ja) |
WO (1) | WO2016102445A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL2015955B1 (en) * | 2015-12-14 | 2017-06-28 | Koninklijke Philips Nv | Calculating device and method. |
US20190287427A1 (en) | 2016-07-21 | 2019-09-19 | Koninklijke Philips N.V. | Device and method for performing obfuscated arithmetic |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4418394A (en) * | 1980-08-13 | 1983-11-29 | Environmental Research Institute Of Michigan | Optical residue arithmetic computer having programmable computation module |
FR2622713A1 (fr) * | 1987-10-30 | 1989-05-05 | Thomson Csf | Circuit de calcul utilisant une arithmetique residuelle |
US5069547A (en) * | 1988-11-23 | 1991-12-03 | The Boeing Company | Multitrack multilevel sensing system with error detecting |
SU1667059A2 (ru) | 1989-07-11 | 1991-07-30 | Научно-Исследовательский Институт Бытовой Радиоэлектронной Аппаратуры | Устройство дл умножени двух чисел |
US5270956A (en) * | 1991-03-18 | 1993-12-14 | University Of Maryland | System and method for performing fast algebraic operations on a permutation network |
US6760742B1 (en) * | 2000-02-18 | 2004-07-06 | Texas Instruments Incorporated | Multi-dimensional galois field multiplier |
CA2327911A1 (en) * | 2000-12-08 | 2002-06-08 | Cloakware Corporation | Obscuring functions in computer software |
US7711763B2 (en) * | 2001-02-21 | 2010-05-04 | Mips Technologies, Inc. | Microprocessor instructions for performing polynomial arithmetic operations |
US7218734B2 (en) | 2001-05-02 | 2007-05-15 | Nciper Corporation Limited | Ring arithmetic method, system, and apparatus |
CA2369304A1 (en) | 2002-01-30 | 2003-07-30 | Cloakware Corporation | A protocol to hide cryptographic private keys |
EP1636932A2 (en) * | 2003-06-13 | 2006-03-22 | Koninklijke Philips Electronics N.V. | Multiplication in a finite field |
WO2007055104A1 (ja) * | 2005-11-08 | 2007-05-18 | Matsushita Electric Industrial Co., Ltd. | 認証システム、署名生成装置、署名検証装置 |
WO2007126049A1 (ja) | 2006-04-28 | 2007-11-08 | Panasonic Corporation | プログラム難読化システム、プログラム難読化装置及びプログラム難読化方法 |
WO2008007305A2 (en) * | 2006-07-12 | 2008-01-17 | Koninklijke Philips Electronics N.V. | Method and system for obfuscating a gryptographic function |
US8090097B2 (en) * | 2006-10-11 | 2012-01-03 | Frank Rubin | Device, system and method for cryptographic key exchange |
GB0621951D0 (en) | 2006-11-03 | 2006-12-13 | Univ Oxford Brookes | Polynonomial synthesis |
US8752032B2 (en) * | 2007-02-23 | 2014-06-10 | Irdeto Canada Corporation | System and method of interlocking to protect software-mediated program and device behaviours |
US20090158054A1 (en) | 2007-12-13 | 2009-06-18 | Massachusetts Institute Of Technology | Private data processing |
CA2717622C (en) | 2008-03-05 | 2017-10-17 | Irdeto B.V. | White-box implementation |
US10102398B2 (en) * | 2009-06-01 | 2018-10-16 | Ab Initio Technology Llc | Generating obfuscated data |
US8667301B2 (en) | 2010-04-01 | 2014-03-04 | Apple Inc. | Obfuscating transformations on data array content and addresses |
FR2968104B1 (fr) | 2010-11-30 | 2013-07-12 | Logiways France | Procede et systeme de protection d'un dispositif de cryptographie |
RU2467389C1 (ru) | 2011-06-07 | 2012-11-20 | Антон Андреевич Краснопевцев | Способ защиты программно-информационного обеспечения от несанкционированного использования |
EP2831797B1 (en) * | 2012-03-30 | 2018-05-02 | Irdeto B.V. | Securing accessible systems using dynamic data mangling |
US9313028B2 (en) | 2012-06-12 | 2016-04-12 | Kryptnostic | Method for fully homomorphic encryption using multivariate cryptography |
WO2014016795A2 (en) | 2012-07-26 | 2014-01-30 | Nds Limited | Method and system for homomorphicly randomizing an input |
US9576116B2 (en) * | 2013-12-26 | 2017-02-21 | Nxp B.V. | Secure software components anti-reverse-engineering by table interleaving |
WO2015149826A1 (en) * | 2014-03-31 | 2015-10-08 | Irdeto B.V. | Protecting an item of software |
EP3201758A1 (en) * | 2014-09-30 | 2017-08-09 | Koninklijke Philips N.V. | Electronic calculating device for performing obfuscated arithmetic |
EP3224982B1 (en) * | 2014-11-27 | 2018-07-11 | Koninklijke Philips N.V. | Electronic calculating device for performing obfuscated arithmetic |
US9288039B1 (en) | 2014-12-01 | 2016-03-15 | Xerox Corporation | Privacy-preserving text language identification using homomorphic encryption |
-
2015
- 2015-12-21 US US15/535,758 patent/US10505710B2/en not_active Expired - Fee Related
- 2015-12-21 WO PCT/EP2015/080760 patent/WO2016102445A1/en active Application Filing
- 2015-12-21 RU RU2017126055A patent/RU2698763C2/ru not_active IP Right Cessation
- 2015-12-21 BR BR112017013069A patent/BR112017013069A2/pt not_active Application Discontinuation
- 2015-12-21 TR TR2019/07713T patent/TR201907713T4/tr unknown
- 2015-12-21 JP JP2017533225A patent/JP6387466B2/ja not_active Expired - Fee Related
- 2015-12-21 CN CN201580070409.3A patent/CN107005403A/zh active Pending
- 2015-12-21 EP EP15817828.5A patent/EP3238366B1/en not_active Not-in-force
Also Published As
Publication number | Publication date |
---|---|
BR112017013069A2 (pt) | 2018-02-27 |
RU2698763C2 (ru) | 2019-08-29 |
JP2018506057A (ja) | 2018-03-01 |
EP3238366A1 (en) | 2017-11-01 |
RU2017126055A (ru) | 2019-01-24 |
US20170353294A1 (en) | 2017-12-07 |
WO2016102445A1 (en) | 2016-06-30 |
EP3238366B1 (en) | 2019-03-13 |
TR201907713T4 (tr) | 2019-06-21 |
RU2017126055A3 (ja) | 2019-02-28 |
US10505710B2 (en) | 2019-12-10 |
CN107005403A (zh) | 2017-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6621813B2 (ja) | 難読化された算術を実行するための電子計算装置 | |
EP3224982B1 (en) | Electronic calculating device for performing obfuscated arithmetic | |
US20190287427A1 (en) | Device and method for performing obfuscated arithmetic | |
WO2012090288A1 (ja) | 暗号処理装置、暗号処理方法、およびプログラム | |
JP2017533458A5 (ja) | ||
JP6387466B2 (ja) | 電子計算装置 | |
JP6368051B2 (ja) | 電子生成装置 | |
Lombardo et al. | Computing twists of hyperelliptic curves | |
EP3484093A1 (en) | A computation device and method | |
JP6522860B2 (ja) | 計算装置及び方法 | |
CN109952558B (zh) | 用于将余数系统表示转换为基数表示的电子计算装置 | |
JP2018538620A (ja) | 計算デバイス及び方法 | |
JP2014235384A (ja) | 演算装置、演算方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20171127 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171205 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180222 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180306 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180612 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20180620 |
|
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: 20180717 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180813 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6387466 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |