JP3136709B2 - べき積演算装置 - Google Patents

べき積演算装置

Info

Publication number
JP3136709B2
JP3136709B2 JP03312079A JP31207991A JP3136709B2 JP 3136709 B2 JP3136709 B2 JP 3136709B2 JP 03312079 A JP03312079 A JP 03312079A JP 31207991 A JP31207991 A JP 31207991A JP 3136709 B2 JP3136709 B2 JP 3136709B2
Authority
JP
Japan
Prior art keywords
calculation
unit
groups
positive integer
positive integers
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
Application number
JP03312079A
Other languages
English (en)
Other versions
JPH05150722A (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP03312079A priority Critical patent/JP3136709B2/ja
Publication of JPH05150722A publication Critical patent/JPH05150722A/ja
Application granted granted Critical
Publication of JP3136709B2 publication Critical patent/JP3136709B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報を安全に伝達する
暗号技術の分野において必要となるべき積演算装置に関
するものである。ここでべき積演算とは、n個の正整数
の組(Xi,Yi)(i=1,2,…,n)と正整数pに対して、pを法
とする正整数の組(Xi,Yi)(i=1,2,…n) に対する次の演
算Z=(X1Y1×X2Y2…×XnYn) modp のことである。
【0002】
【従来の技術】付加価値の高い情報を通信ネットワーク
を介して安全にやり取りするためには暗号の技術が必要
である。暗号の分野では、(Xi,Yi)(i=1,2,…,n)および
pをいずれも数百ビットの正の整数とするときに、pを
法としそれぞれYi(i=1,2,…,n) をべきとするXi(i=1,
2,…,n) のべき積演算 Z=(X1Y1×…×Xn Yn) modp [1] を効率よく求める方法が必要となる (以降ではこの演算
をn次のべき積演算と称する)。 例えば公開鍵暗号の代
表的な方式としてよく知られているElGamal 署名法では
3 次のべき積演算が必要となる。ところで、n次のべき
積演算を求める計算法としては、2値計算法(binary me
thod) と呼ばれる方法が知られている。この計算法は、
D.E.Knuth(ディー・ケー・クヌース)の"THE ART OF C
OMPUTER PROGRAMMING SECOND EDITION"(”ザ アート
オブ コンピュータ プログラミング セコンド エ
ディション”),Vol 2 Seminumerical Algorithms(セ
ミヌメリカル アルゴリズムに),p465 exercises 27,1
981,ADDISON-WESLEY PUBLISHING COMPANY,INC.述べられ
ている。
【0003】以下に、3 次のべき積演算を2値計算法で
計算する例を示す (ただし剰余演算modp の記述は省略
している) 。
【0004】2値計算法によるべき積演算の例:Z=25
×36×47 の計算 〔1〕予備計算 (2b1×3b2×4b3),((b1,b2,b3)∈{0,1}3)を求め、テーブ
ルに記憶しておく。 すなわち8 通りの値がテー
ブルに格納される。各値は(b1,b2,b3)をインデ
ックスとして引き出せる。
【0005】〔2〕主処理 (1)べき数5、6、7を2進数に展開する。5=(101)2,6=(1
10)2,7=(111)2 (2)各べき数の最上位ビットを5,6,7の順にみると(1,1,
1)であるから、テーブルより(21×31×41)を得て、t1
←(21×31×41)とする(←は代入に示す)。
【0006】(3)各べき数の上位2番目のビットを5,6,7
の順にみると(0,1,1)であるから テーブルよ
り(20×31×41)を得て、t2←t1 2×(20×31×41)とす
る。
【0007】(4)各べき数の上位3番目のビットを5,6,7
の順にみると(1,0,1)であるから テーブルよ
り(21×30×41)を得て、t3←t2 2×(21×30×41)とす
る。
【0008】〔3〕結果出力 このとき結果はz←t3で与えられる。 ここで、z=t3=t2 2×(21×30×41) =(t1 2×(20×31×41))2×(21×30×41)) =((21×31×41)2×(20×31×41))2×(21×30×41)) =25×36×47 となり、計算結果が正しいことがわかる。この例におけ
る乗算の回数は8 回となる(〔1〕において2×3,2×4,3
×4,(2×3)×4を求めるために4 (=Σ3Cj(2≦j≦3))回
の乗算と〔2〕 に4 (=2×((log27)-1))回の乗算が必
要)。このように2値計算法では、べき数を2進数に展
開し、その上位ビットから1ビットずつ順次計算してい
く方法といえる。なお、べき数を一般にq進数に展開し
て計算することもできる。この方法をここでは多値計算
法と呼ぶ。特にqを2kとするとき、上位ビットからk ビ
ットずつ区切って順次計算することができる。
【0009】以下では2値計算法についてのみ述べる
が、同様のことは多値計算法についてもいえることに注
意されたい。
【0010】一般にn次のべき積演算にこの2値計算法
を利用する場合の計算量をpを法とする乗算の回数で表
わすと、高々以下のとおりとなる(ΣnCk(2≦k≦n)=2n-
n-1であることに注意)。
【0011】 (2n-n-1)+(2×(k-1)) (k=log2(max(Y1,…,Yn))) [2] ここで(2) 式の第1項は〔1〕 の予備計算に必要な乗算
の回数であり、第2項は〔2〕 の主処理に必要な乗算の
回数である。
【0012】また、予備計算で求めた値を蓄積するため
のテーブル容量は、(X1b1×X2b2×…×Xnbn modp),
(b1,b2,…,bn)∈{0,1}n)が、それぞれ高々log2pビット
であるから以下のとおりとなる。
【0013】 (2n×log2p) [3] 具体的に、p,Xi がそれぞれ 500ビット、Yiが 150ビッ
トの正整数値とするとき(暗号分野ではこの程度の数値
に対する演算が必要)、8 次以下のべき積演算に対して
は、予備計算に必要な計算量が比較的小さく、全体の計
算量は、[2] 式より約300〜600となり、1 次の場合に必
要な計算量([2]式においてnが1 の場合)の1〜2倍程度
である。また、このとき使用するテーブル容量は[3] 式
より高々100kビット程度である。しかし、9 次以上にな
ると、予備計算における計算量が全体の計算量を支配す
るようになり、例えば12次の場合では、全体の計算量
は、約4000となり1 次の場合に必要な計算量の13倍以上
になる。またテーブル容量も2Mビット程度必要となる。
【0014】以上から分かるようにn次のべき積演算に
2値計算法を利用する場合、nが比較的小さいとき、1
次の場合とほぼ同じ計算量で、かつ比較的少ないテーブ
ル容量で計算結果が求められることが分かる。従って、
2値計算法を実行するように構成されたべき積演算装置
は、nが比較的小さいとき有効であることが分かる。
【0015】
【発明が解決しようとする課題】しかし、n次のべき積
演算を、2値計算法を実行するように構成されたべき積
演算装置を用いて計算する場合、nが大きくなると、計
算量が膨大となり、実用的な時間で計算が実行できなく
なったり、また必要となるテーブル容量が膨大となり、
計算の実行が不可能になったりする問題点があった。こ
の問題は、予備計算に必要となる計算量や予備計算値を
蓄積するためのテーブルの記憶容量が、nに対して指数
関数的に増加するために生じる。
【0016】この問題を克服するため、与えられたn次
のべき積演算を、比較的小さな次数のいくつかのべき積
演算に分割し、分割された比較的小さな次数の各べき積
演算に対して、上述の2値計算法を実行するべき積演算
装置を用いる方法が考えられる。しかし、このような方
法では、与えられたn次のべき積演算を、いくつに分割
するかを判断してやる必要があるし、また分割されたい
くつかのべき積演算の結果から所望する結果を得るため
に別途計算が必要である。
【0017】また、いくつに分割するとすれば計算量的
に最適であるかが不明であったため、適当に分割して、
逐一べき積演算装置に入力して結果を求めるなければな
らず、その分割の仕方によっては、計算量的に必ずしも
効率的とはならないという問題点があった。
【0018】本発明は、上述の問題点に鑑みて試された
もので、比較的大きなnに対しても、予備計算に必要と
なる計算量や、予備計算値を蓄積するためのテーブルの
メモリ容量が、nに対して指数関数的に増加することが
ないように、与えられたn次のべき積演算を、自動的に
いくつかのべき積演算に分割して計算するべき積演算装
置を提供することを目的とする。
【0019】
【課題を解決するための手段】本発明は、上述の問題点
を解決するため、以下の手段を備える。 (1) 入力であるn個の正整数の組(Xi,Yi)を、m(m≧1)
個のグループGj(j=1,2,…,m)に、それぞれnj(1≦nj≦
n,n=n1+n2+…+nm) 個ずつ分割する入力分割部と、グ
ループの個数mを決定するグループ数決定部と、各グル
ープGj(j=1,2,…,m)に分割する正整数の個数njを決定
する要素数決定部と、各グループGj に分割されたnj個
の正整数の組(Xi,Yi)(i∈Gj)に対するべき積演算Zj=
Πi (XiYi) modp (i∈Gj,j=1,2,…,m)を2値計算法を
利用して求めるべき積計算部と、正整数pを法とするべ
き積計算部で求めたZj(j=1,2,…,m) に対する乗算結果
Z=(Z1×…×Zm) modp を求める乗算計算部を備え
る。 (2) (1) の構成で、特にグループ数決定部で、グループ
の個数mを、入力されたn個の正整数の組(Xi,Yi)(i=1,
2,…,n)および正整数pより決定し、要素数決定部で、
各グループGj に分割される正整数の組の個数nj(j=1,
2,…,m) を、前記正整数の組(Xi,Yi)(i=1,2,…,n)、
正整数p、および前記グループの個数mより決定する。 (3) (1) の構成で、特にグループ数決定部で、tに関す
る方程式 {1-loge2×(n/t)}×2n/t+2(k-1)=0 (但し、k=log2(max(Y1,Y2,…,Yn)))の根αを求め、グ
ループ数mを、この根αを用いて m=|α|もしくはm=|α|-1 (但し、|a|はa以上で最小の正整数)とし、要素数決定
部で、各グループGj に分割される正整数の組の個数nj
(j=1,2,…,m)を、前記グループ数mを用いて nj(j=1,2,…, (n+m-|n/m|×m))=|n/m| nj(j=(n+m-|n/m|×m+1),…,m)=|n/m|-1 とする。 (4) (1) の構成で、特に多値計算法を用いてべき積演算
を求めるべき積計算部を備える。 (5) (1) の構成でべき積計算部およびそれに付随するメ
モリー部を複数備える。
【0020】
【作用】本発明は、上述の構成によって、n次のべき積
演算が、入力分割部でm(≧1)個のnj(1≦nj≦n,n=n1
+n2+…+nm) 次のべき積演算に分割され、各nj次のべき
積演算が、それぞれべき積計算部で2値計算法を用いて
実行され、各nj次のべき積演算の結果に対する乗算が、
乗算計算部で実行されるため、与えられたn次のべき積
演算を、自動的に、また効率的に求めることができる。
【0021】特に、グループ数決定部で、グループの個
数mを入力であるn個の正整数の組(Xi,Yi)(i=1,2,…,
n)および正整数pより決定し、また、要素数決定部
で、要素数njを入力であるn個の正整数の組(Xi,Yi)、
正整数pおよび分割数mより決定するため、n次のべき
積演算を計算量的にもテーブル容量的にも効率よく計算
できる。
【0022】また、特にグループ数決定部で、tに関す
る方程式 {1-loge2×(n/t)}×2n/t+2(k-1)=0 (但し、k=log2(max(Y1,Y2,…,Yn)))の根αを求め、グ
ループ数mを、この根αを用いて m=|α|もしくはm=|α|-1 (但し、|a|はa以上で最小の正整数)とし、要素数決定
部で、各グループGj に分割される正整数の組の個数nj
(j=1,2,…,m)を、前記グループ数mを用いて nj(j=1,2,…, (n+m-|n/m|×m))=|n/m| nj(j=(n+m-|n/m|×m+1),…,m)=|n/m|-1 とすることで、n次のべき積演算を、計算量およびテー
ブル容量が指数関数的に増加しないように実行できる。
【0023】なぜなら、分割数を仮にtとするとき、n
次のべき積演算を|n/t|次以下べき積演算に分割でき
る。このとき計算量は、高々 {(2|n/t|-|n/t|-1)+2×(k-1)}×t+(t-1) となる。上式において、tが連続値を取るものと仮定す
れば次式が得られる。
【0024】{(2n/t-n/t-1)+2×(k-1)}×t+(t-1) ここで、この式を最小にするtは、上記方程式の根αで
あることは明かである。一方実際の分割数mは整数値し
か取らないから、mを上述のように選ぶとき計算量は最
小となる。
【0025】また、べき積計算部において、べき積演算
を2値計算法に代えて多値計算法にすることで、2値計
算法を利用する場合より計算量を削減することができ
る。ただしこの場合テーブル容量は逆に増加する。
【0026】また、べき積計算部を複数備えることによ
り、べき積計算部の処理を並列に実行できるため、n次
のべき積演算に要する処理時間を軽減できる。
【0027】
【実施例】図1は本発明の一実施例によるべき積演算装
置の概略構成を示すものであって、10は入力分割部、11
はグループ数決定部、12は要素数決定部、20はべき積計
算部、21はメモリー部、30は乗算計算部である。
【0028】以下に実施例の動作について説明する。こ
のべき積演算装置は、n個の正整数の組(Xi,Yi) (i=1,
2,…,n)および正整数pが入力されたときに、pを法と
しそれぞれYi(i=1,2,…,n) をべきとするXi(i=1,2,…,
n) のべき積演算 Z=(X1Y1×…×Xn Yn) modp [4] を以下の手順で求める。
【0029】[1] グループ数決定部によるグループの個
数の決定 入力された(Xi,Yi)(i=1,2,…,n)は、まず入力分割部の
グループ数決定部渡され以下の手順でグループ数が決定
される。
【0030】(1) Yi(i=1,2,…,n) の最大値のビット数
k=log2(max(Y1,Y2,…,Yn))を求める。
【0031】(2) tに関する次の方程式の根αを求め
る。 {1-loge2×(n/t)}×2n/t+2(k-1)=0 [5] (3) 分割すべきグループ数mを、この根αを用いて以下
のように決定する。
【0032】このmは要素数決定部に渡される。 m=|α|もしくはm=|α|-1 [6] (但し、|a|はa以上で最小の正整数) [2] 要素数決定部による要素数の決定 グループ数決定部で決定されたグループ数mをもとに以
下の手順で要素数が決定される。
【0033】(4) 各グループGj に分割される正整数の
組の個数nj(j=1,2,…,m)を、以 下のように
決定する。このnjはmとともに入力分割部に渡される。
【0034】 nj(j=1,2,…, (n+m-|n/m|×m))=|n/m| nj(j=(n+m-|n/m|×m+1),…,m)=|n/m|-1 [7] [3] 入力分割部による入力正整数組の分割 (5) 各グループGjに、n個の(Xi,Yi)を適当にnj個ずつ
分割し、各グループGj 毎に分割された(Xi,Yi)(i∈G
j) をべき積演算部に与える。
【0035】[4] べき積計算部による演算 (6) 各グループ毎に分割されたnj個の正整数の組(Xi,Y
i)(i∈Gj)に対して 入力である正整数pを法
とするべき積演算を求め、結果Zjを乗算計算
部に与える。
【0036】 Zj=Πi (XiYi) modp (i∈Gj,j=1,2,…,m) [8] [5]乗算計算部による演算 (7) べき積演算部で求められた各Zj(j=1,2,…,m)の正
整数pを法とする積 を求め、これを出力す
る。
【0037】 Z=(Z1×…×Zm) modp [9] このべき積演算装置の全体の計算量(pを法とする乗算
回数)は、(2)式より以下の通りとなる。
【0038】 (n-(|n/m|-2)×m)×2|n/m|-1-m-n)+2×(k-1)×m+(m-1) [10] (但し、k=log2(max(Y1,Y2,…,Yn))) またべき積計算部において必要なテーブル容量は、高々
以下の通りである 2|n/m|×log2p ビット [11] 具体的に、この実施例においてp,Xiが500 ビット、Yi
が150 ビットとするとき、nに対する最適な分割数mと
その時の計算量を以下に示す。また図2(a)にこの結果
を図示する。
【0039】 1≦n≦ 8のとき分割数m=1、計算量は 300〜 600 9≦n≦15のとき分割数m=2、計算量は 600〜1000 16≦n≦22のとき分割数m=3、計算量は1000〜1400 23≦n≦28のとき分割数m=4、計算量は1400〜1800 また従来の技術の項で述べたn次べき積演算を全く分割
せずに求める場合の計算量と実施例の計算量を比較した
ものを図2(b) に示す。このように本発明による実施例
では、計算量はnに対して指数関数的に増加しないこと
が分かる。また、べき積計算部に必要となるテーブル容
量は、任意のnに対して高々100kヒ゛ット となる。
【0040】なお、以上の説明では、分割数mおよび要
素数njをそれぞれ[5][6]式、および[7] 式より決定する
ように選んだが、分割数mおよび要素数njを別の手順で
選ぶように構成できる。
【0041】また、以上の説明では、べき積計算部にお
いて、べき積演算を2値計算法により求める場合に限っ
て、そのときの計算量やテーブル容量について説明した
が、べき積演算を多値計算法により求めることも可能で
ある。この場合、2値計算法に比較して、計算量的に削
減できる一方、テーブル容量は増加する。このため、計
算量と、テーブル容量の兼ね合いでどちらの構成にする
かを決定すればよい。
【0042】また、べき積計算部を1個備える場合につ
いて説明したが、べき積計算部およびそれに付随するメ
モリー部を複数備えるようにも構成できる。このとき、
分割された各べき積演算を並列に処理できる。この場
合、計算量は、いずれのべき積計算部も、約 2|n/m|-|n/m|-1+2×(k-1) となる。またべき積計算部におけるテーブル容量は全体
で、 m×2|n/m|×log2p ビット 必要となる。
【0043】具体的に上述と同じ数値例の場合、べき積
部を複数備える構成の場合の計算量は、いずれのべき積
計算部も600 程度となり、この各べき積計算部の処理を
並列処理させることにより全体の処理時間は短縮され
る。ただし、この場合べき積計算部におけるテーブル容
量は全体で、 1≦n≦ 8のときテーブル容量は 高々100kヒ゛ット 9≦n≦15のときテーブル容量は 高々200kヒ゛ット 16≦n≦22のときテーブル容量は 高々300kヒ゛ット 23≦n≦28のときテーブル容量は 高々400kヒ゛ット となる。この場合、テーブル容量はnに対して指数関数
的に増加しないことがわかる。
【0044】
【発明の効果】以上の説明から明らかなように本発明
は、入力であるn個の正整数の組(Xi,Yi)を、m(m≧1)
個のグループGj(j=1,2,…,m)に、それぞれnj(1≦nj≦
n,n=n1+n2+…+nm) 個ずつ分割する入力分割部と、グ
ループの個数mを決定するグループ数決定部と、各グル
ープGj(j=1,2,…,m)に分割する正整数の個数njを決定
する要素数決定部と、各グループGj に分割されたnj個
の正整数の組(Xi,Yi)(i∈Gj)に対するべき積演算Zj=
Πi (XiYi) modp (i∈Gj,j=1,2,…,m)を求めるべき積
計算部と、正整数pを法とするべき積計算部で求めたZj
(j=1,2,…,m) に対する乗算結果Z=(Z1×…×Zm) mo
dp を求める乗算計算部を備えることによって、n次の
べき積演算が、入力分割部でm(≧1) 個のnj(1≦nj≦
n,n=n1+n2+…+nm) 次のべき積演算に分割され、各nj
次のべき積演算が、それぞれべき積計算部で2値計算法
を用いて実行され、各nj次のべき積演算の結果に対する
乗算が、乗算計算部で実行されるため、与えられたn次
のべき積演算を、自動的に、また効率的に求めることが
できる。
【0045】またグループ数決定部で、グループの個数
mを、入力されたn個の正整数の組(Xi,Yi)(i=1,2,…,
n)および正整数pより決定し、要素数決定部で、各グ
ループGj に分割される正整数の組の個数nj(j=1,2,…,
m) を、前記正整数の組(Xi,Yi)(i=1,2,…,n)、正整数
p、および前記グループの個数mより決定することによ
って、n次のべき積演算を計算量的に効率よく計算する
ことができる。
【0046】特にグループ数決定部で、tに関する方程
式 {1-loge2×(n/t)}×2n/t+2(k-1)=0 (但し、k=log2(max(Y1,Y2,…,Yn)))の根αを求め、グ
ループ数mを、この根αを用いて m=|α|もしくはm=|α|-1 (但し、|a|はa以上で最小の正整数)とし、要素数決定
部で、各グループGj に分割される正整数の組の個数nj
(j=1,2,…,m)を、前記グループ数mを用いて nj(j=1,2,…, (n+m-|n/m|×m))=|n/m| nj(j=(n+m-|n/m|×m+1),…,m)=|n/m|-1 とすることによって、n次のべき積演算を計算量的に最
も効率よく計算することができる。
【0047】さらに、多値計算法を用いてべき積演算を
求めるべき積計算部を備えることで、2値計算法を利用
する場合より計算量を削減することができる。ただしこ
の場合テーブル容量は逆に増加する。
【0048】さらに、べき積計算部およびそれに付随す
るメモリー部を複数備えることで、べき積計算部の処理
を並列に実行できるため、n次のべき積演算に要する処
理時間を軽減できる。
【図面の簡単な説明】
【図1】本発明の実施例におけるべき積演算装置の概略
構成図
【図2】(a)本発明の実施例における計算量と分割数
の関係図 (b)本発明の実施例と従来技術における計算量の比較
【符号の説明】
10 入力分割部 11 グループ数決定部 12 要素数決定部 20 べき積計算部 21 メモリー部 30 乗算計算部
フロントページの続き (56)参考文献 原田俊治,館林誠“効果的なn変数べ き乗剰余演算法の提案とその一応用”電 子情報通信学会技術研究報告,Vol. 91,No.359,(1991年11月29日), pp.25−36(ISEC91−40) (58)調査した分野(Int.Cl.7,DB名) G09C 1/00 - 5/00 H04L 9/00 G06F 7/00 INSPEC(DIALOG) JICSTファイル(JOIS)

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 n個の正整数の組(Xi,Yi)(i=1,2,…,n)
    と正整数pを入力すると、前記正整数pを法とし前記
    正整数Yi(i=1,2,…,n)をそれぞれのべきとする前記正
    整数Xi(i=1,2,…,n) に対するべき積演算の結果 Z=(X1Y1×X2Y2×…×XnYn) modp を出力するべき積演算装置であって、 入力された前記n個の正整数の組(Xi,Yi)を、m(m≧1)
    個のグループGj(j=1,2,…,m) に、それぞれnj(j=1,
    2,…,m)(但し1≦nj≦n,n=n1+n2+…+nm)個の正整数
    の組(Xi,Yi)(i∈Gj) ずつ分割する入力分割部と、 前記入力分割部において、入力された正整数Yi(i=1,2,
    …,n) の最大値のビット数kを求め、このkとnより
    決定される未知数tに関する次の方程式 [1-log e 2×(n/t)]×2n/t+2(k-1)=0 の根αを求めたのち、グループの個数mを、この根αを
    用いてm=|α|もしくはm=(|α|-1) (但し、|a|は
    a以上で最小の正整数)とするものとしてグループの個
    数mを決定するグループ数決定部と 、 前記各グループGj に分割される正整数の組の個数njを
    決定する要素数決定部と、前記各グループGjに分割された前記nj個の正整数の組
    (Xi,Yi)(i∈Gj)に対して、 Z=(Z1×…×Zm) modp ここで、Zj=Πi (Xi Yi ) modp (i∈Gj,j=1,2,…,m) を求める演算部と、演算部に付随するメモリ部と を備え
    たことを特徴とするべき積演算装置。
  2. 【請求項2】 要素数決定部で、各グループGj に分割
    される正整数の組の個数nj(j=1,2,…,m)を、前記グル
    ープの個数mを用いて nj(j=1,2,…, (n+m-|n/m|×m))=|n/m| nj(j=(n+m-|n/m|×m+1),…,m)=(|n/m|-1) とすることを特徴とする 請求項1記載のべき積演算装
    置。
  3. 【請求項3】 前記演算部において、Zjの計算に、2値
    計算法または、2値計算 法を一般化した多値計算法を用
    いることを特徴とする請求項1記載のべき積演算装置。
  4. 【請求項4】 前記演算部、およびそれに付随するメモ
    リー部を複数備え、演算部の処理を並列に処理できるこ
    とを特徴とする請求項1記載のべき積演算装置。
JP03312079A 1991-11-27 1991-11-27 べき積演算装置 Expired - Fee Related JP3136709B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03312079A JP3136709B2 (ja) 1991-11-27 1991-11-27 べき積演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03312079A JP3136709B2 (ja) 1991-11-27 1991-11-27 べき積演算装置

Publications (2)

Publication Number Publication Date
JPH05150722A JPH05150722A (ja) 1993-06-18
JP3136709B2 true JP3136709B2 (ja) 2001-02-19

Family

ID=18024987

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03312079A Expired - Fee Related JP3136709B2 (ja) 1991-11-27 1991-11-27 べき積演算装置

Country Status (1)

Country Link
JP (1) JP3136709B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4630117B2 (ja) * 2005-04-25 2011-02-09 日本電信電話株式会社 マルチペアリング演算方法、ペアリング比較方法、それらを用いた装置、およびプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
原田俊治,館林誠"効果的なn変数べき乗剰余演算法の提案とその一応用"電子情報通信学会技術研究報告,Vol.91,No.359,(1991年11月29日),pp.25−36(ISEC91−40)

Also Published As

Publication number Publication date
JPH05150722A (ja) 1993-06-18

Similar Documents

Publication Publication Date Title
US5448639A (en) Digital signature device
JP3014391B2 (ja) 暗号法及びこの方法の実施のための暗号プロセツサ
US8504602B2 (en) Modular multiplication processing apparatus
US6795553B1 (en) Method and apparatus for modular inversion for information security and recording medium with a program for implementing the method
US8411855B1 (en) Size optimization for large elliptic curve cryptography scalar multiplication acceleration tables
US8862651B2 (en) Method and apparatus for modulus reduction
US20070185948A1 (en) Method for modular multiplication
JP3532860B2 (ja) 剰余系表現を利用した演算装置及び方法及びプログラム
JPWO2007080652A1 (ja) モンゴメリ法用乗算剰余計算装置
US20020059353A1 (en) Methods and apparatus for incomplete modular arithmetic
US7050579B1 (en) Cryptographic methods and apparatus using word-wise montgomery multiplication
US7480691B2 (en) Arithmetic device for multiple precision arithmetic for Montgomery multiplication residue arithmetic
JP3302043B2 (ja) 暗号通信方法及びそのシステム
US20010054053A1 (en) Method and apparatus for finite field multiplication
US7558817B2 (en) Apparatus and method for calculating a result of a modular multiplication
JP2001051832A (ja) 乗算剰余演算方法および乗算剰余回路
JP3136709B2 (ja) べき積演算装置
Arazi et al. On calculating multiplicative inverses modulo $2^{m} $
JP2000137436A (ja) 素体上楕円曲線上の点の演算方法およびその装置
JP4202701B2 (ja) 多項式剰余系演算装置、方法及びプログラム
JP3332270B2 (ja) べき乗演算装置
JP3110110B2 (ja) 暗号復号装置
Wu et al. Modular arithmetic analyses for RSA cryptosystem
JP4197245B2 (ja) 楕円曲線演算装置及び変換装置及び楕円曲線演算装置の楕円曲線演算方法及びプログラム及びコンピュータ読み取り可能な記録媒体
JP2003029630A (ja) べき乗剰余演算装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees