JP2002215024A - Knapsack type public key cryptographic system, public key generation method and device therefor, and program and recording medium therefor - Google Patents

Knapsack type public key cryptographic system, public key generation method and device therefor, and program and recording medium therefor

Info

Publication number
JP2002215024A
JP2002215024A JP2001010247A JP2001010247A JP2002215024A JP 2002215024 A JP2002215024 A JP 2002215024A JP 2001010247 A JP2001010247 A JP 2001010247A JP 2001010247 A JP2001010247 A JP 2001010247A JP 2002215024 A JP2002215024 A JP 2002215024A
Authority
JP
Japan
Prior art keywords
public key
integer
random number
calculating
full
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.)
Granted
Application number
JP2001010247A
Other languages
Japanese (ja)
Other versions
JP3740659B2 (en
Inventor
Keisuke Tanaka
圭介 田中
Tatsuaki Okamoto
龍明 岡本
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 JP2001010247A priority Critical patent/JP3740659B2/en
Publication of JP2002215024A publication Critical patent/JP2002215024A/en
Application granted granted Critical
Publication of JP3740659B2 publication Critical patent/JP3740659B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To accelerate processing speed. SOLUTION: Elements Pij (i=1 to n) are generated from an integer ring OK of an algebraic number field K, from which prime ideals p1 to ph, generators gj (j=1 to h) of OK/pj (except zero), and pj are removed, in accordance with the integer ring OK of the field K and integers n, k, and h (101), and aij satisfying pij=gjaijmodpj is calculated (103), and p=p1.p2.....ph is obtained (102), and g=(g1 to gh) and ai=(ai1 to aih) are synthesized by a Chinese remainder theorem to generate an integer d, and hi=(ai+)mod(N(P)-2) (N(P) is the norm of P) is calculated to obtain a public key bi.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明はナップサック型公
開鍵暗号システムとその公開鍵の生成方法及びその装
置、そのプログラム及びその記録媒体に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a knapsack type public key cryptosystem, a method and apparatus for generating the public key, a program thereof, and a recording medium thereof.

【0002】[0002]

【従来の技術】公開鍵暗号システムは、その安全性をよ
りどころとする問題により類別される。このような、よ
りどころとなる問題としては、素因数分解問題、離散対
数問題、ナップサック問題などが挙げられる。これらの
問題のうち、ナップサック問題を安全性のよりどころと
する公開鍵暗号システムとしては、Markle−He
llmar暗号やChor−Rivest暗号などがあ
るが、そのいずれについても攻撃が成功した例が報告さ
れている。また、これらの鍵生成処理における動作速度
は非常に遅いことが知られている。
2. Description of the Related Art Public key cryptosystems are categorized by their security concerns. Examples of such problems include a prime factorization problem, a discrete logarithm problem, and a knapsack problem. Among these problems, Markle-He is a public key cryptosystem that uses the knapsack problem as a source of security.
There are llmar ciphers and Chor-Rivest ciphers, and there have been reports of successful attacks on any of them. It is known that the operation speed in these key generation processes is very slow.

【0003】[0003]

【発明が解決しようとする課題】この発明の目的はナッ
プサック問題を安全性のよりどころとし、解読が困難で
あり、鍵生成処理を含むすべての処理速度が高速である
新しい公開鍵暗号システムとその公開鍵生成方法及びそ
の装置を提供することにある。
SUMMARY OF THE INVENTION It is an object of the present invention to provide a new public key cryptosystem which uses the knapsack problem as a source of security, is difficult to decipher, and has a high processing speed including key generation processing. An object of the present invention is to provide a public key generation method and a device thereof.

【0004】[0004]

【課題を解決するための手段】この発明では乱数p
ij(i=1,…,n,j=1,…,h)と、乱数gi
j に対し、pij≡gj aij(modpj)を満すaijを計算
し、ai =(ai1,…,ai h)を中国人剰余定理を用い
ることにより、鍵生成処理で行う離散対数の計算及び復
号処理を高速化している。つまり、従来ではpi=gi ai
(modi)を満たすai を直接求めていたため、その計
算に長時間を要し、かつai を短かくすると、攻撃に対
し弱いものとなる。
According to the present invention, a random number p
ij(I = 1,..., N, j = 1,..., H) and a random number gi,
p jFor pij≡gj aij(ModpjA)ijCalculate
Then ai= (Ai1, ..., ai h) Using the Chinese Remainder Theorem
Calculation and recovery of the discrete logarithm performed in the key generation process.
Signal processing speeds up. That is, conventionally, pi= Gi ai
A that satisfies (modi)i Was calculated directly because
It takes a long time to calculate and ai The shorter the
It becomes weak.

【0005】また、長さ[log nk]の平文を長さnで
Hamming(ハミング)重さkである二進列に変換
することにより、方式の安全性を高めている。
Further, the security of the system is enhanced by converting a plaintext of length [log n C k ] into a binary sequence having a length n and a Hamming weight k.

【0006】[0006]

【発明の実施の形態】この発明で用いる公開鍵暗号シス
テムの実施の形態について、図を参照して説明する。こ
のシステムは鍵生成装置と暗号化装置と復号装置とより
なる。鍵生成装置:(図1) Kを代数体、OKをKの整数環、n,k,hを整数とす
る。nは整数環OKの箇数であり、例えば1000など
の大きな値であり、kは例えば200程度、hは例えば
10程度である。n,kは公開される。
DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of a public key cryptosystem used in the present invention will be described with reference to the drawings. This system includes a key generation device, an encryption device, and a decryption device. Key generation apparatus :( Figure 1) K algebraic body, O K of K integers ring, n, k, and h is an integer to. n is an number of articles of the ring of integers O K, a large value, e.g. 1000, k is for example about 200, h is, for example, about 10. n and k are made public.

【0007】図1にこの発明の公開鍵生成装置の実施形
態を示す。K,OK,n,k,hがキーボードなどの入
力部100から入力され、これらの値は記憶部110に
一旦格納され、その後、これらが取り出されて乱数発生
器101に入力される。乱数発生器101はOKのh個
の素イデアルp1,…,phを1hを満す各jに対
して、群(OK/pj)(ただしゼロを除く)の生成元
j,つまりg1,…,ghを1n,1hを
満す各i,jに対して、pjを除いたOK/pjからの元
ij、つまりp11,…,p1h,p21,…,p2h,……,
n1,…,pnhを発生させる。
FIG. 1 shows an embodiment of a public key generation device according to the present invention. K, O K , n, k, and h are input from an input unit 100 such as a keyboard, and these values are temporarily stored in a storage unit 110, and then are extracted and input to a random number generator 101. The random number generator 101 h number of prime ideals p 1 of O K, ..., a p h against 1 <j <h the full to each j, the group of (O K / p j) (except for zero) The generation element g j , that is, g 1 ,..., G h is defined as an element p from O K / p j excluding p j for each i, j satisfying 1 < i < n, 1 < j < h. ij, in other words p 11, ..., p 1h, p 21, ..., p 2h, ......,
p n1, ..., to generate a p nh.

【0008】素イデアルp1,…,phが乗算器102に
入力されこれらの積p=p1,…phが求められる。また
1,…,ph1,g1,…,gh,p11,…,p1h,p21
…,p2h,……,pn1…pnhが離散対数計算器103に
入力されて、1n,1hを満す各i,jに
対して pij≡gj aij(modpj) …(1) を満たすようなaijが計算される。
[0008] prime ideal p 1, ..., p h multipliers 102 is input to these AND p = p 1, ... p h is obtained. The p 1, ..., p h1, g 1, ..., g h, p 11, ..., p 1h, p 21,
, P 2h ,..., Pn1 ... Pnh are input to the discrete logarithmic calculator 103, and p ij ≡g j for each i, j satisfying 1 < i < n, 1 < j < h. aij (modp j) ... (1 ) a ij that satisfies is calculated.

【0009】さらに、g1,…,gh,aij(i=1,
2,…,n,j=1,2,…,h)が中国人剰余定理に
よる合成器104に入力され、1nを満す各iに
対して、g=(g1,…,gh) ai=(ai1,…,aih) を満たすg,a1,…,anが計算される。乱数発生器1
05を用いて整数dが発生され、このd,ai,pが加
算器106に入力され、1nを満す各iに対し
て、 bi=(ai+d)mod(N(p)−2) …(2) が計算され、最終的に公開鍵b1,…,bnが出力され、
公開される。p,pij,gは秘密鍵であり、これらは乱
数dと共に記憶部110に秘密に記憶される。整数dは
例えば0〜N(p)−1程度、これ以上でもよく、また
dは乱数発生器101から発生させてもよい。暗号化処理:(図2) 暗号装置は図2に示すように記憶部200に、公開情報
n、k、公開鍵b1,…,bnが格納されている。入力さ
れる平文Mの長さは[log nk]である。logは2を程と
し、nkはnからkを取り出す組合せの数、[A]はA
以上の最小の整数を表す。
Further, g 1 ,..., G h , a ij (i = 1,
, N, j = 1, 2,..., H) are input to the synthesizer 104 according to the Chinese remainder theorem, and for each i satisfying 1 < i < n, g = (g 1 ,. , g h) a i = ( a i1, ..., g that satisfies a ih), a 1, ... , a n is calculated. Random number generator 1
05, an integer d is generated, and d, a i , and p are input to the adder 106, and for each i satisfying 1 < i < n, b i = (a i + d) mod (N (p) -2) ... (2 ) is calculated and finally the public key b 1, ..., b n are output,
Be published. p, p ij , and g are secret keys, which are secretly stored in the storage unit 110 together with the random number d. The integer d may be, for example, about 0 to N (p) -1 or more, and d may be generated from the random number generator 101. Encryption :( Figure 2) the cryptographic unit in the storage unit 200 as shown in FIG. 2, public information n, k, the public key b 1, ..., b n are stored. The length of the input plaintext M is [log n C k ]. log is about 2, n C k is the number of combinations for extracting k from n, and [A] is A
Represents the minimum integer above.

【0010】この平文Mは平文変換器201でHamm
ing重さがk(1の数がk個)のnビットの2進列m
=(m1,m2,…,mn)に変換される。この変換は例
えばqをkとし、i=1からnまで以下のことを実行す
る。M n-iqであれば、miを1とし、M− n-i
q-1をMとし、q−1をqとし、M n-iqでなけれ
ば、miを0とする。ただしq0に対し q0=0と
し、q1に対し 0q=0とする。この2進列mと、
公開鍵biとが加算器202に入力されて、 c=Σi=1 n ii …(3) の計算が行われ、暗号文cが出力される。復号処理:(図3) 図3に復号装置を示す。記憶部300にはp,pij,p
j,g,k,dが記憶されてある。入力された暗号文c
とk,d,pが減算器301に入力されて、 r=(c−kd)mod(N(p)−2) …(4) N(p)はpのノルムが計算される。その計算結果rと
g,pがべき乗演算器302に入力されて、 u=gr mod p …(5) が計算される。この計算結果uとpi,j,pjが検査器
303に入力され、検査器303では、長さnでHam
ming重さkである2進列m=(m1,…,mn)を、
その1nを満たす各jに対してpijがu mod pj
を割り切るならばm1=1とされ、そうでなければmi
0とされる。このようにして2進列mが復号される。こ
の復号された2進列mが中間復号文変換器304にn,
kと共に入力されて、m=(m1,…,mn)が平文Mに
変換され、復号平文Mが出力される。この変換は例えば
Mを0とし、qをhとし、i=1からnまで下記を実行
する。
The plaintext M is converted by the plaintext converter 201 into a Hamm
n-bit binary sequence m with ing weight k (the number of 1s is k)
= (M 1 , m 2 ,..., Mn ). This conversion performs the following from i = 1 to n, for example, where k is k. If M> ni C q, and 1 m i, M- ni C
The q-1 is M, the q-1 and q, M> unless ni C q, the m i and 0. However q> 0 to the q C 0 = 0, and q> 1 to 0 C q = 0. This binary sequence m,
The public key b i is input to the adder 202, and c = Σ i = 1 n m i b i ... calculation of (3) is performed, the ciphertext c is output. Decoding process (FIG. 3) FIG. 3 shows a decoding device. The storage unit 300 stores p, p ij , p
j , g, k, and d are stored. Entered cipher text c
, K, d, and p are input to the subtractor 301, and r = (c−kd) mod (N (p) −2) (4) N (p) calculates the norm of p. The calculation results r, g, and p are input to the power calculator 302, and u = g r mod p (5) is calculated. The calculation result u and p i , j, and p j are input to the inspection device 303, and the inspection device 303 outputs Ham with the length n.
A binary sequence m = (m 1 ,..., m n ) having a ming weight k is given by
For each j satisfying 1 < j < n, p ij is u mod p j
Is divisible by m 1 = 1, otherwise m i =
It is set to 0. Thus, the binary sequence m is decoded. The decoded binary string m is transmitted to the intermediate decrypted text converter 304 by n,
Input together with k, m = (m 1 ,..., m n ) is converted into plaintext M, and decrypted plaintext M is output. In this conversion, for example, M is set to 0, q is set to h, and the following is performed from i = 1 to n.

【0011】miが1であればM+ p-iqをMとし、q
−1をqとする。所で式(5)に式(4)を代入すると u≡gc-hd mod p …(6) となり、式(3)よりgの指数は、 Σi=1 n ii−kd となり、式(2)よりbi=(ai+d)であり、2進列
m中のk個が1であるからgの指数は、 Σi=1 n ii mod p となる。この指数を式(5)に代入して、指数の積の形
式に変形すると u≡Πi=1 n(gaimi mod p となる。式(1)の関係から u≡Πi=1 n i mi となる。従ってuをpijが割り切るならばmi=1と
し、そうでなければ、mi=0として、2進列mが復号
される。
If mi is 1, M + pi C q is set to M, and q
Let -1 be q. By substituting equation (4) into equation (5), u≡g c−hd mod p... (6), and from equation (3), the exponent of g is Σ i = 1 n m i b i −k d, and from equation (2), b i = (a i + d), and since k in the binary sequence m are 1, the index of g is Σ i = 1 n a m i b i mod p. By substituting this exponent into equation (5) and transforming it into the form of a product of exponents, u≡Πi = 1 n (g ai ) mi mod p. From the relationship of equation (1), u≡Π i = 1 n p i mi . Therefore, if u ij is divisible by p ij , then m i = 1; otherwise, m i = 0, and the binary sequence m is decoded.

【0012】図1に示した公開鍵生成装置、図2に示し
た暗号装置、図3に示した復号装置は、それぞれコンピ
ュータによりプログラムを実行させて機能させることが
できる。つまり例えば公開鍵生成装置は入力手段、出力
手段、記憶部110、公開鍵生成プログラムを格納した
プログラムメモリ、CPU(マイクロプロセッサ)など
を備えるコンピュータにおいて、CPUにより公開鍵生
成プログラムを実行させて、前述したように公開鍵gi
を生成させるようにすることもできる。
The public key generation device shown in FIG. 1, the encryption device shown in FIG. 2, and the decryption device shown in FIG. 3 can be operated by causing a computer to execute a program. That is, for example, the public key generation device causes the computer to execute the public key generation program by using a computer including an input unit, an output unit, a storage unit 110, a program memory storing a public key generation program, a CPU (microprocessor), and the like. Public key g i
Can also be generated.

【0013】[0013]

【発明の効果】この発明によれば、鍵生成処理における
離散対数の計算について中国人剰余定理を用いることに
より高速化している。また、中国人剰余定理を用いるこ
とにより復号処理も高速化している。つまり従来におい
てはa1,…,anを式(1)の離散対数計算により直接
求めていた。例えばhを10とすると、aiは100と
なり、このような大きな値の指数を求めるには非常に長
い時間がかかる。よってaiの値を小さくすると、攻撃
され易いものとなる。しかし、この発明によれば、aij
に分割しているためa ijは例えば10程度の値で済み、
比較的簡単にaijを求めることができ、しかも、中国人
剰余定理によりai=(ai1,…,aih)を比較的簡単
に求めることができ、全体として高速化することがで
き、かつ攻撃に対しても強いものとすることができる。
According to the present invention, in the key generation processing,
Using Chinese Remainder Theorem for Calculation of Discrete Logarithm
It is faster. In addition, we use the Chinese surplus theorem.
This speeds up the decoding process. In other words,
A1, ..., anIs directly calculated by the discrete logarithm calculation of equation (1).
I was asking. For example, if h is 10, aiIs 100 and
It is very long to find such a large index.
It takes a long time. Therefore aiIf the value of
It is easy to be done. However, according to the present invention, aij
Because it is divided into ijIs, for example, about ten,
Relatively easily aijAnd can also ask for Chinese
According to the remainder theorem, ai= (Ai1, ..., aihRelatively easy
And speed up as a whole.
And can be strong against attacks.

【0014】暗号化処理と復号処理において、長さ[l
og(k n)]の平文を長さnでHamming重さkで
ある2進列へ変換することにより、ナップサック暗号の
安全性の指標である密度を十分に高めることができ、し
たがって、平文から暗号文を直接求める低密度攻撃にも
耐えうる。
In the encryption process and the decryption process, the length [l
og ( k n )] into a binary string of length n and Hamming weight k, it is possible to sufficiently increase the density, which is an indicator of the security of the knapsack cipher, and therefore, from the plain text It can withstand low-density attacks that directly search for ciphertext.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明のシステム中の公開鍵生成装置の機能
構成例を示す図。
FIG. 1 is a diagram showing an example of a functional configuration of a public key generation device in a system of the present invention.

【図2】この発明のシステム中の暗号化装置の機能構成
例を示す図。
FIG. 2 is a diagram showing a functional configuration example of an encryption device in the system of the present invention.

【図3】この発明のシステム中の復号装置の機能構成例
を示す図。
FIG. 3 is a diagram showing an example of a functional configuration of a decoding device in the system of the present invention.

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 代数体K、Kの整数環OK 、整数n,
k,hが入力され、 Ok のh個の素イデアルp1 ,…,ph を生成し、 p1 ,…,ph を乗算してpを求め、 1hを満す各jに対して、群OK /pj (ただし
0を除く)の生成元g j を生成し、 1n,1hを満す各i,jに対して、pj
を除いたOK からの元pijを生成し、 1n,1hを満す各i,jに対して、pij
≡gj aij(mod pj)を満すaijを計算し、 中国人剰余定理による合成により、 g=(g1 ,…,gh ) ai =(ai1,…,aih) を満すg,a1 ,…,an を求め、 整数の乱数dを生成し、 1nを満す各iに対して、bi =(ai +d)mo
d(N(p)−2)(N(p)はpのノルムを表わす)
を計算して公開鍵bi を公開し、p,gを秘密鍵とする
公開鍵生成器と、 長さ[log nk ]の平文Mが入力され、(nk はnか
らk個取出す組合せの数、[A]はAより大きい最小の
整数) 整数kと公開鍵bi とMを、長さnでHamming
(ハミング)重さkである二進列m=(m1 ,m2
…,mn)に変換し、 暗号文c=Σi=1 ni i を生成して出力する暗号器
と、 k,d、秘密鍵p,gを保持し、 暗号文cが入力されr=(c−kd)mod(N(p)−
2)を生成し、 u=grmodpを求め、 長さnで、Hamming重さkである二進列m=(m
1 ,…,mn )を、1nを満す各jに対して、p
ijがumodpj を割り切るならばmi =1とし、そうで
ないならばmi =0と生成し、 そのmを平文Mに変換する復号器とを備えることを特徴
とするナップサック型公開鍵暗号システム。
1. An algebraic field K, an integer ring O of KK, The integer n,
k and h are input and OkH elementary ideals p1, ..., phAnd generate p1, ..., phTo obtain p, and 1<j<For each j that satisfies h, the group OK/ Pj(But
The origin g of 0) jGenerates 1<i<n, 1<j<For each i, j that satisfies h, pj
O excludingKEx p fromijGenerates 1<i<n, 1<j<For each i, j that satisfies h, pij
≡gj aij(Mod pjA)ijG = (g1,…, Gh) Ai= (Ai1,…, AihG, a that satisfies1, ..., an, Generate an integer random number d, and 1<i<For each i that satisfies n, bi= (Ai+ D) mo
d (N (p) -2) (N (p) represents the norm of p)
To calculate the public key biAnd make p and g private keys
Public key generator and length [lognCk] Is input, and (nCkIs n
[A] is the smallest number greater than A
Integer) integer k and public key biAnd M are Hamming with length n
(Humming) Binary sequence m = (m1, MTwo,
…, Mn), And the ciphertext c = Σi = 1 nmibiEncryptor that generates and outputs
And k, d and secret keys p, g, and the ciphertext c is input, and r = (c−kd) mod (N (p) −
2), and u = grmodp, a binary sequence m = (m having length n and Hamming weight k
1,…, Mn) To 1<j<For each j that satisfies n, p
ijBut umodpjM if divisible byi= 1 and so
M if noti= 0, and a decoder that converts the m into a plaintext M
Knapsack type public key cryptosystem.
【請求項2】 ナップサック型公開鍵暗号の公開鍵生成
方法であって、 代数体K、Kの整数環をOK とし、n,k,hを整数と
し、 OK のh個の素イデアルp1 ,…,ph を乱数発生器よ
り生成し、 1hを満す各jについて、群OK /pj (ただし
0を含まない)の生成元gj を乱数発生器より生成し、 1n,1hをそれぞれ満たす各i,jにつ
いてpj を除いたOKからの元pijを乱数発生器より生
成し、 1n,1hをそれぞれ満す各i,jについ
てpij≡gj aij(modpj)を満すaijを演算手段により
計算し、 中国人剰余定理による合成により、 g=(g1 ,…,gh ) ai =(ai1,…,aih) を満すg,a1 ,…,an を演算手段により求め、 整数dを乱数発生器より生成し、 1nを満す各iについてbi =(ai +d)mod
(N(p)−2)を演算手段により計算して公開鍵bi
を得ることを特徴とするナップサック型公開鍵生成方
法。
2. A public key generation method for knapsack type public key cryptography, wherein an integer ring of algebraic fields K and K is O K , n, k and h are integers, and h prime ideals p of O K are provided. 1, ..., a p h generated from a random number generator, generated from 1 <j <for fully to each j a h, a random number generator to generate original g j of the group O K / p j (but not including 0) and, 1 <i <n, 1 < original p ij generated from the random number generator from the i, O K, excluding the p j for j satisfying j <h respectively, 1 <i <n, 1 < j For each i, j that satisfies < h, a ij that satisfies p ij ≡g j aij (modp j ) is calculated by the arithmetic means, and g = (g 1 ,..., G h) a i = (a i1 , ..., a ih) the full to g, a 1, ..., obtained by calculation means a n, generated from the random number generator the integer d, 1 <i < For full to each i the b i = (a i + d ) mod
(N (p) -2) is calculated by the calculating means, and the public key b i is calculated.
A knapsack-type public key generation method characterized by obtaining
【請求項3】 代数体Kの整数環をOK とし、n,k,
hを整数とし、 K,OK ,n,k,hが入力され、OK のh個の素イデ
アルp1 ,…,ph と、1hを満す各jに対し、
群OK /pj (ただし0を除く)の生成元gjと、1
n,1hをそれぞれ満すijに対して、pj
を除いたOK からの元pijと、整数dとを生成する乱数
発生器と、 1i<n,1j<hを満す各ijについてpij,g
i ,pj が入力され、pij≡gj aijmodpjを満すaij
計算して出力する離散対数計算量と、 gi(i=1,…,h),aij(i=1,…,n,j=1,
…,h)が入力され、中国人剰余定理により、g=(g
1 ,…,gh )、ai =(ai1,…,aih)をそれぞれ計算
する中国人剰余定理合成器と、 dとai(i=1,…,n)、N(p)が入力され、(N
(p)はpのノルムを表わす) bi =(ai +d)mod(N(p)−2) を計算して公開鍵bi(i=1,…,n)を得る加算器
とを具備するナップサック型公開鍵生成装置。
3. An integer ring of an algebraic field K is represented by O K, and n, k,
The h is an integer, K, O K, n, k, h is input, h pieces of prime ideals p 1 of O K, ..., with respect to p h and, 1 <j <fully to each j and h,
The generator g j of the group O K / p j (except 0) and 1 <
i <n, 1 <j <against each Mitsurusu ij h, p j
The original p ij from O K excluding a random number generator for generating the integer d, 1 <i <n, 1 <j <p ij for full to each ij a h, g
i , p j are input, a discrete logarithm calculation amount for calculating and outputting a ij satisfying p ij ≡g j aij mod p j , and g i (i = 1,..., h), a ij (i = 1, ..., n, j = 1,
..., h) is input, and g = (g
1, ..., g h), a i = (a i1, ..., and Chinese remainder theorem combiner for calculating a ih), respectively, d and a i (i = 1, ... , n), N (p) Is input and (N
(P) denotes the norm of p) b i = (a i + d) mod (N (p) -2) and calculates the public key b i (i = 1, ... , an adder to obtain a n) A knapsack type public key generation device provided.
【請求項4】 ナップサック型公開鍵暗号の公開鍵を生
成するためにコンピュータを、 代数体K、Kの整数環をOK とし、n,k,hを整数と
し、 OK のh個の素イデアルp1 ,…,ph を乱数により生
成する手段、 1hを満す各jについて、群OK /pj (ただし
0を含まない)の生成元gj を乱数により生成する手
段、 1n,1hをそれぞれ満たす各i,jにつ
いてpj を除いたOKからの元pijを乱数により生成す
る手段、 1n,1hをそれぞれ満す各i,jについ
てpij≡gj aij(modpj)を満すaijを演算する手段、 中国人剰余定理による合成により、 g=(g1 ,…,gh ) ai =(ai1,…,aih) を満すg,a1 ,…,an を演算する手段、 整数dを乱数により生成する手段、 1nを満す各iについて公開鍵bi =(ai
d)mod(N(p)−2)を演算する手段、 として機能させるためのナップサック型公開鍵生成プロ
グラム。
4. A computer for generating a public key of a knapsack-type public key cryptosystem, wherein a computer is an algebraic field K, an integer ring of K is O K , n, k, h are integers, and h prime elements of O K are used. Means for generating ideals p 1 ,..., Ph by random numbers; for each j satisfying 1 < j < h, generate generator g j of group O K / p j (but not including 0) by random numbers means, 1 <i <n, 1 <j < respective i satisfying each h, means for generating a random number to the original p ij from O K excluding the p j for j, 1 <i <n, 1 <j < fully to the h respectively i, p ij ≡g j aij ( modp j) means for calculating a full to a ij About j, by synthesis by the Chinese remainder theorem, g = (g 1, ... , g h) a i = (a i1, ..., a ih) the full to g, a 1, ..., means for calculating the a n, means for generating a random number integer d, 1 i <public key for each full to the n i b i = (a i +
d) A means for calculating mod (N (p) -2). A knapsack-type public key generation program for functioning as
【請求項5】 ナップサック型公開鍵暗号の公開鍵を生
成するためにコンピュータを、 代数体K、Kの整数環をOK とし、n,k,hを整数と
し、 OK のh個の素イデアルp1 ,…,ph を乱数により生
成する手段、 1hを満す各jについて、群OK /pj (ただし
0を含まない)の生成元gj を乱数により生成する手
段、 1n,1hをそれぞれ満たす各i,jにつ
いてpj を除いたOKからの元pijを乱数により生成す
る手段、 1n,1hをそれぞれ満す各i,jについ
てpij≡gj aij(modpj)を満すaijを演算する手段、 中国人剰余定理による合成により、 g=(g1 ,…,gh ) ai =(ai1,…,aih) を満すg,a1 ,…,an を演算する手段、 整数dを乱数により生成する手段、 1nを満す各iについて公開鍵bi =(ai
d)mod(N(p)−2)を演算する手段として機能さ
せるためのナップサック型公開鍵生成プログラムを記録
したコンピュータ読み取り可能な記録媒体。
5. A computer for generating a public key of a knapsack type public key cryptosystem, wherein a computer is an algebraic field K, an integer ring of K is O K , n, k, h are integers, and h prime elements of O K are provided. Means for generating ideals p 1 ,..., Ph by random numbers; for each j satisfying 1 < j < h, generate generator g j of group O K / p j (but not including 0) by random numbers means, 1 <i <n, 1 <j < respective i satisfying each h, means for generating a random number to the original p ij from O K excluding the p j for j, 1 <i <n, 1 <j < fully to the h respectively i, p ij ≡g j aij ( modp j) means for calculating a full to a ij About j, by synthesis by the Chinese remainder theorem, g = (g 1, ... , g h) a i = (a i1, ..., a ih) the full to g, a 1, ..., means for calculating the a n, means for generating a random number integer d, 1 i <public key for each full to the n i b i = (a i +
d) A computer-readable recording medium that records a knapsack-type public key generation program for functioning as a means for calculating mod (N (p) -2).
JP2001010247A 2001-01-18 2001-01-18 Knapsack type public key cryptosystem, public key generation method, apparatus, program, and recording medium Expired - Fee Related JP3740659B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001010247A JP3740659B2 (en) 2001-01-18 2001-01-18 Knapsack type public key cryptosystem, public key generation method, apparatus, program, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001010247A JP3740659B2 (en) 2001-01-18 2001-01-18 Knapsack type public key cryptosystem, public key generation method, apparatus, program, and recording medium

Publications (2)

Publication Number Publication Date
JP2002215024A true JP2002215024A (en) 2002-07-31
JP3740659B2 JP3740659B2 (en) 2006-02-01

Family

ID=18877593

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001010247A Expired - Fee Related JP3740659B2 (en) 2001-01-18 2001-01-18 Knapsack type public key cryptosystem, public key generation method, apparatus, program, and recording medium

Country Status (1)

Country Link
JP (1) JP3740659B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004246350A (en) * 2003-01-24 2004-09-02 Sharp Corp Enciphering device, deciphering device, enciphering system equipped with the same, enciphering method, and deciphering method
JP2007171412A (en) * 2005-12-20 2007-07-05 Nippon Telegr & Teleph Corp <Ntt> Key generating device, encryption device, decryption device, multiplication type knapsack encryption system, multiplication type knapsack decryption method, and program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004246350A (en) * 2003-01-24 2004-09-02 Sharp Corp Enciphering device, deciphering device, enciphering system equipped with the same, enciphering method, and deciphering method
JP4563037B2 (en) * 2003-01-24 2010-10-13 シャープ株式会社 ENCRYPTION APPARATUS, DECRYPTION APPARATUS, ENCRYPTION SYSTEM HAVING THEM, ENCRYPTION METHOD, AND DECRYPTION METHOD
JP2007171412A (en) * 2005-12-20 2007-07-05 Nippon Telegr & Teleph Corp <Ntt> Key generating device, encryption device, decryption device, multiplication type knapsack encryption system, multiplication type knapsack decryption method, and program
JP4685621B2 (en) * 2005-12-20 2011-05-18 日本電信電話株式会社 Key generation apparatus, encryption apparatus, decryption apparatus, multiplicative knapsack cryptosystem, multiplicative knapsack cipher decryption method and program

Also Published As

Publication number Publication date
JP3740659B2 (en) 2006-02-01

Similar Documents

Publication Publication Date Title
WO2020253234A1 (en) Data homomorphic encryption and decryption method and apparatus for implementing privacy protection
US8352529B2 (en) Modular multiplication calculation apparatus used for montgomery method
JPS5950068B2 (en) public key cryptographic device
JP4177526B2 (en) Multiplication residue calculation method and multiplication residue circuit
JP3616897B2 (en) Montgomery method multiplication remainder calculator
CN114629665B (en) Hardware platform for trusted computing
KR100340102B1 (en) High speed rsa public key cryptographic apparatus and method
JP3740659B2 (en) Knapsack type public key cryptosystem, public key generation method, apparatus, program, and recording medium
JP2018092010A (en) Encryption device and encryption method, encryption program, key generation device, key generation method, and key generation program
Neuenschwander Probabilistic and statistical methods in cryptology: an introduction by selected topics
Realpe-Muñoz et al. Design of an S-ECIES Cryptoprocessor Using Gaussian Normal Bases Over GF (2 m)
JP3615132B2 (en) Public key encryption and decryption method and system
JP3615133B2 (en) Public key encryption / decryption method and system using algebraic field
Rao et al. Secure and practical outsourcing of linear programming in cloud computing: A survey
JP3278790B2 (en) Public key encryption method and public key encryption system
JPH11161164A (en) Public key cipher system, ciphering device, and deciphering device
US20230327851A1 (en) Secure multi-party computation methods and apparatuses
US7480380B2 (en) Method for efficient generation of modulo inverse for public key cryptosystems
Molaei et al. An effective cipher block scheme based on cellular automata
JP3615137B2 (en) Knapsack type public key cryptosystem and apparatus therefor
JP2000089667A (en) Algorithm generation type secret key encryption system
JPH06282226A (en) Elliptic curve-based public-key cipher system
CN113986199A (en) Homomorphic multiplication hardware computing system and computing method based on remainder system
JP2022117083A (en) Arithmetic system, arithmetic method, and program
CN117499010A (en) Data processing method and device

Legal Events

Date Code Title Description
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: 20051011

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20051027

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051027

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20091118

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101118

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101118

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111118

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111118

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121118

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121118

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131118

Year of fee payment: 8

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

LAPS Cancellation because of no payment of annual fees