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 thereforInfo
- 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
Links
Abstract
Description
【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 ,
p 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 nCk]の平文を長さ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を1<j<hを満す各jに対
して、群(OK/pj)(ただしゼロを除く)の生成元
gj,つまりg1,…,ghを1<i<n,1<j<hを
満す各i,jに対して、pjを除いたOK/pjからの元
pij、つまりp11,…,p1h,p21,…,p2h,……,
pn1,…,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が求められる。また
p1,…,ph1,g1,…,gh,p11,…,p1h,p21,
…,p2h,……,pn1…pnhが離散対数計算器103に
入力されて、1<i<n,1<j<hを満す各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に入力され、1<i<nを満す各iに
対して、g=(g1,…,gh) ai=(ai1,…,aih) を満たすg,a1,…,anが計算される。乱数発生器1
05を用いて整数dが発生され、このd,ai,pが加
算器106に入力され、1<i<nを満す各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 nCk]である。logは2を程と
し、nCkは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-iCqであれば、miを1とし、M− n-iC
q-1をMとし、q−1をqとし、M> n-iCqでなけれ
ば、miを0とする。ただしq>0に対し qC0=0と
し、q>1に対し 0Cq=0とする。この2進列mと、
公開鍵biとが加算器202に入力されて、 c=Σi=1 n mibi …(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)を、
その1<j<nを満たす各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-iCqをMとし、q
−1をqとする。所で式(5)に式(4)を代入すると u≡gc-hd mod p …(6) となり、式(3)よりgの指数は、 Σi=1 n mibi−kd となり、式(2)よりbi=(ai+d)であり、2進列
m中のk個が1であるからgの指数は、 Σi=1 n mibi mod p となる。この指数を式(5)に代入して、指数の積の形
式に変形すると u≡Πi=1 n(gai)mi mod p となる。式(1)の関係から u≡Πi=1 n pi 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.
【図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)
k,hが入力され、 Ok のh個の素イデアルp1 ,…,ph を生成し、 p1 ,…,ph を乗算してpを求め、 1<j<hを満す各jに対して、群OK /pj (ただし
0を除く)の生成元g j を生成し、 1<i<n,1<j<hを満す各i,jに対して、pj
を除いたOK からの元pijを生成し、 1<i<n,1<j<hを満す各i,jに対して、pij
≡gj aij(mod pj)を満すaijを計算し、 中国人剰余定理による合成により、 g=(g1 ,…,gh ) ai =(ai1,…,aih) を満すg,a1 ,…,an を求め、 整数の乱数dを生成し、 1<i<nを満す各iに対して、bi =(ai +d)mo
d(N(p)−2)(N(p)はpのノルムを表わす)
を計算して公開鍵bi を公開し、p,gを秘密鍵とする
公開鍵生成器と、 長さ[log nCk ]の平文Mが入力され、(nCk はnか
らk個取出す組合せの数、[A]はAより大きい最小の
整数) 整数kと公開鍵bi とMを、長さnでHamming
(ハミング)重さkである二進列m=(m1 ,m2 ,
…,mn)に変換し、 暗号文c=Σi=1 nmi bi を生成して出力する暗号器
と、 k,d、秘密鍵p,gを保持し、 暗号文cが入力されr=(c−kd)mod(N(p)−
2)を生成し、 u=grmodpを求め、 長さnで、Hamming重さkである二進列m=(m
1 ,…,mn )を、1<j<nを満す各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.
方法であって、 代数体K、Kの整数環をOK とし、n,k,hを整数と
し、 OK のh個の素イデアルp1 ,…,ph を乱数発生器よ
り生成し、 1<j<hを満す各jについて、群OK /pj (ただし
0を含まない)の生成元gj を乱数発生器より生成し、 1<i<n,1<j<hをそれぞれ満たす各i,jにつ
いてpj を除いたOKからの元pijを乱数発生器より生
成し、 1<i<n,1<j<hをそれぞれ満す各i,jについ
てpij≡gj aij(modpj)を満すaijを演算手段により
計算し、 中国人剰余定理による合成により、 g=(g1 ,…,gh ) ai =(ai1,…,aih) を満すg,a1 ,…,an を演算手段により求め、 整数dを乱数発生器より生成し、 1<i<nを満す各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
hを整数とし、 K,OK ,n,k,hが入力され、OK のh個の素イデ
アルp1 ,…,ph と、1<j<hを満す各jに対し、
群OK /pj (ただし0を除く)の生成元gjと、1<
i<n,1<j<hをそれぞれ満すijに対して、pj
を除いたOK からの元pijと、整数dとを生成する乱数
発生器と、 1<i<n,1<j<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.
成するためにコンピュータを、 代数体K、Kの整数環をOK とし、n,k,hを整数と
し、 OK のh個の素イデアルp1 ,…,ph を乱数により生
成する手段、 1<j<hを満す各jについて、群OK /pj (ただし
0を含まない)の生成元gj を乱数により生成する手
段、 1<i<n,1<j<hをそれぞれ満たす各i,jにつ
いてpj を除いたOKからの元pijを乱数により生成す
る手段、 1<i<n,1<j<hをそれぞれ満す各i,jについ
てpij≡gj aij(modpj)を満すaijを演算する手段、 中国人剰余定理による合成により、 g=(g1 ,…,gh ) ai =(ai1,…,aih) を満すg,a1 ,…,an を演算する手段、 整数dを乱数により生成する手段、 1<i<nを満す各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
成するためにコンピュータを、 代数体K、Kの整数環をOK とし、n,k,hを整数と
し、 OK のh個の素イデアルp1 ,…,ph を乱数により生
成する手段、 1<j<hを満す各jについて、群OK /pj (ただし
0を含まない)の生成元gj を乱数により生成する手
段、 1<i<n,1<j<hをそれぞれ満たす各i,jにつ
いてpj を除いたOKからの元pijを乱数により生成す
る手段、 1<i<n,1<j<hをそれぞれ満す各i,jについ
てpij≡gj aij(modpj)を満すaijを演算する手段、 中国人剰余定理による合成により、 g=(g1 ,…,gh ) ai =(ai1,…,aih) を満すg,a1 ,…,an を演算する手段、 整数dを乱数により生成する手段、 1<i<nを満す各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).
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)
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 |
-
2001
- 2001-01-18 JP JP2001010247A patent/JP3740659B2/en not_active Expired - Fee Related
Cited By (4)
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 |