WO2005098796A1 - 暗号方式の安全性を保証するパディング適用方法 - Google Patents

暗号方式の安全性を保証するパディング適用方法 Download PDF

Info

Publication number
WO2005098796A1
WO2005098796A1 PCT/JP2005/005287 JP2005005287W WO2005098796A1 WO 2005098796 A1 WO2005098796 A1 WO 2005098796A1 JP 2005005287 W JP2005005287 W JP 2005005287W WO 2005098796 A1 WO2005098796 A1 WO 2005098796A1
Authority
WO
WIPO (PCT)
Prior art keywords
bit string
encryption
padding
ciphertext
random number
Prior art date
Application number
PCT/JP2005/005287
Other languages
English (en)
French (fr)
Inventor
Isamu Teranisi
Original Assignee
Nec Corporation
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 Nec Corporation filed Critical Nec Corporation
Priority to EP05721337.3A priority Critical patent/EP1734493B1/en
Priority to US10/561,216 priority patent/US7321658B2/en
Priority to JP2006511999A priority patent/JP4715748B2/ja
Priority to AU2005230066A priority patent/AU2005230066A1/en
Publication of WO2005098796A1 publication Critical patent/WO2005098796A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/20Manipulating the length of blocks of bits, e.g. padding or block truncation

Definitions

  • the present invention relates to an information encryption / decryption system, and more particularly to a padding application method and an encryption / decryption device that guarantee security against a selected ciphertext attack.
  • Non-Patent Document 1 NTRU: A Ring-Based Public Key Cryptosystem
  • the NTRU cryptosystem is the following public key cryptosystem.
  • L (a, b) is an element of R, and among the coefficients of each degree of u, a set of a is 1 and b is -1 and the others are 0. (Subset).
  • the element m of the subset L of R is encrypted.
  • Non-Patent Document 2 the NTRU encryption method Is known for many decoding methods!
  • OAEP + proposed in Victor Shoup's document "OAEP Reconsidered” journal of Cryptology 15 (4) (Non-Patent Document 3) is known! / RU OAEP + padding is the following padding method.
  • the parameters k, k, and k are selected as follows: k, k, and k are positive integers and k + k ⁇ k ⁇
  • G is a hash function that maps an n-bit bit sequence to a k-bit bit sequence
  • H ′ is a hash function that associates a k-bit bit string with an n + k-bit bit string
  • H is a hash function that associates a bit string of k bits with a bit string of n + k bits.
  • the padding device receives an n-bit plaintext M and randomly selects a k-bit bit string R.
  • the receiver decrypts the received ciphertext e to obtain w.
  • t s
  • Restore R more.
  • Restore M by calculating the bitwise exclusive OR of G (R) and s
  • this OAEP + padding is a padding scheme that has been proposed to adapt to the encryption scheme without using random numbers when calculating the encryption function. For this reason, there is a problem that security is not necessarily guaranteed when applied to an encryption method using random numbers such as NTRU described above.
  • OAEP + padding is applied to an encryption method that uses random numbers such as NTRU, the adaptation method is not unique, and various methods can be considered. However, there is a problem that what kind of padding application is safe is not immediately effective.
  • the OAEP + padding method can guarantee security only for the encryption method that does not use random numbers.
  • the OAEP + padding method or a similar padding method is applied to the NTRU encryption method that uses random numbers.
  • Non-Patent Document 4 NTRU Cryptosystems, 1998
  • Non-Patent Document 5 References Optimizations for NTRU "by Jeffrey Hoffstein and Joseph H. Silverman" Public-key Cryptography and Computational Number Theory (Non-Patent Document 5)
  • Non-Patent Document 6 Protecting NTRU Against Chosen Ciphertext and Reaction Attacs technical Report, NTRU Cryptosystems, 2000, Report # 16 version 1 by Jeffrey Hoffstein and Joseph H. Silverman (Non-Patent Document 6)
  • Non-Patent Document 8 Decrypted in the algorithm proposed in
  • Non-Patent Document 9 the NTRU encryption scheme with padding described in Non-Patent Documents 5 and 6 is decrypted by the algorithm proposed in Non-Patent Document 7, and the padding according to Non-Patent Document 7 The method was deciphered by John A. Proos, Imperfect Decryption and an Attack on the NTRU Encryption Scheme "(Non-Patent Document 9).
  • a scheme has been proposed that uses a padding scheme other than the OAEP + padding scheme to ensure the security of an encryption scheme using random numbers such as the NTRU encryption scheme, but the padding scheme has different weaknesses for each scheme. It is still meaningful to use OAEP + padding to ensure the security of the encryption scheme.
  • Non-patent Document 1 Document "NTRU: A Ring-Based Public Key Cryptosystem” by Jeffrey Hoffstein, Jill Pipher and Joseph Silver Silverman
  • Non-special reference literature 2 "Lattice Attacks on NTRU”, Eurocrypt'97 Springer Lecture Notes in Computer Sciences, 1997
  • Non-Patent Document 3 "OAEP Reconsidered, Journal of Cryptology 15 (4)
  • Non-Patent Document 4 "Plaintext Awareness and the NTRU PKCS" Technical Report # 7 version 2, NTRU Cryptosystems, 1998
  • Non-special reference PM 6 "Protecting NTRU Against Chosen and lphertext and Reaction Attacks"
  • Non-special reference PM 7 "Analysis and Improvements of NTRU Encryption Paddings" Crypto
  • Non-Patent Document 8 "A Chosen-Ciphertext Attack against NTRU, Crypto 2000 Springer Lecture Notes in Computer Sciences, 2000
  • Non-special reference 9 'Imperfect Decryption and an Attack on the NTRU Encryption Scheme' by John A. Proos
  • the conventional NTRU encryption method with padding cannot perform secure encrypted communication.
  • An object of the present invention is to provide appropriate padding for a scheme such as the NTRU encryption scheme.
  • the present invention provides a padding application method and an encryption / decryption device that achieve secure and secure encrypted communication.
  • the present inventor has focused on the fact that random numbers used for encryption can be restored in the NTRU encryption method, and invented a new padding application method that can guarantee the security of encrypted communication.
  • Typical examples of the encryption method using random numbers include the ElGamal encryption method and the Payerian encryption method.
  • the plaintext and the random numbers must be treated as completely different types of data.
  • the encryption function is a stochastic function
  • the domain of the encryption function is the entire space of the plaintext M
  • the range is the cryptography. This is the space for the whole sentence.
  • the decryption function is a function that does not use probability.
  • the domain is the space of the entire ciphertext
  • the range is the space of the entire plaintext.
  • the cipher function is a function that does not use random numbers, and its domain is the space of the entire concatenation of the plaintext M and the random number R, and the range is the space of the entire ciphertext.
  • the decryption function is also a function that does not use random numbers, and its domain is the space of the entire ciphertext, and its range is the space of the entire concatenation of the plaintext M and the random number R.
  • the padding application method according to the present invention is applicable to an encryption method E3 ⁇ 4n) in which the ciphertext receiver can recover the value of the random number used by the ciphertext creator to create the ciphertext, and such a cryptographic method is used. Therefore, when the present invention is applied, safety is guaranteed.
  • the input information is converted into a bit string of a predetermined length or less by the padding method, and the bit string is converted into a first bit string and a second bit string by a predetermined conversion rule.
  • the first bit string is used as a data input
  • the second bit string is supplied as a random number input to an encryption function
  • the conversion rule is that the bit string having the predetermined length or less is a set of the first bit string and a set of the second bit string.
  • mapping corresponding to the element of the direct product of, and the mapping is injective, that the mapping and its inverse can be calculated in polynomial time, and that the direct product is a domain
  • the cipher The function is one-way function, meet, characterized in that.
  • the conversion rule is a rule that divides the bit string into two so that the first half of the bit string is the first bit string and the second half is the second bit string.
  • the padding scheme is OAEP + padding
  • the encryption scheme using random numbers is the NTRU encryption scheme.
  • FIG. 1 (A) is a conceptual block diagram of an encryption device using a padding application method according to the present invention
  • the padding application method according to the present invention will be described with reference to FIG. 1A, as follows.
  • n k-k-k, where G corresponds to an n-bit bit string to a k-bit bit string.
  • a hash function that maps H 'to a bit string of k bits with a bit string of n + k bits
  • H be a hash function that maps a bit string of k bits to a bit string of n + k bits.
  • OAEP + padding is performed. That is, a bit string R of k bits is randomly selected, and the exclusive OR s ° of each bit of G (R) and M is calculated,
  • A is a mapping m r that maps elements of L X L to bit strings of k bits or less.
  • X represents the range that (m, r) can take
  • L represents the space of the entire ciphertext.
  • bit string w may be equally divided into the first half bit string and the second half bit string, and may be respectively set to m and r.
  • e E f (m) is calculated and encrypted, and e is transmitted to the ciphertext receiver.
  • r. After decrypting w, restore M in the same way as OAEP + padding. Specifically, first, w is w s
  • t s
  • Restore R by taking exclusive OR, and calculate bitwise exclusive OR of G (R) and s
  • Fig. 1 (B) in the scheme proposed in Non-Patent Document 417 mentioned above, only m is constructed from plaintext M using OAEP + (or other) padding scheme, and r is any value. Is made using another means.
  • These schemes are encryption schemes such as the El Gamal encryption scheme or the Payer-One encryption scheme that can only recover plain text and cannot recover random numbers on the receiving side. Since it is an ad-hoc method that can be used, security cannot be guaranteed, and complete decoding is possible especially in the case of NTRU.
  • the scheme according to the present invention is a padding scheme applied to an encryption scheme such as NTRU that allows a recipient of a ciphertext to recover both plaintext and random numbers.
  • an encryption scheme such as NTRU that allows a recipient of a ciphertext to recover both plaintext and random numbers.
  • both m and r are created from plaintext M using the OAEP + padding method and a predetermined conversion rule (function A).
  • function A a predetermined conversion rule
  • security can be assured when applied to an encryption method such as NTRU, which enables a receiver of encrypted text to recover both plaintext and random numbers.
  • secure encryption communication can be performed using the NTRU encryption method, which requires a small amount of memory and uses a high-speed encryption / decryption calculation algorithm.
  • FIG. 2 is a block diagram showing an example of an encryption communication system in which the encryption Z decryption device according to the present invention is mounted. Here, encrypted communication is performed between communication terminals through a network.
  • the communication terminal on the transmission side has a program control processor 10, a random number generator 11, a program memory 12, a memory 13, and a transmission / reception unit 14, and as described later, an OAEP + conversion stored in the program memory 12.
  • a program control processor 10 By executing necessary programs such as conversion by the conversion function A and NTRU encryption, the plaintext is encrypted, and the encrypted text is transmitted from the transmission / reception unit 14 to the destination receiving terminal through the network.
  • the memory 13 stores information necessary for encryption such as public information and a secret key.
  • the receiving terminal also has a program control processor 20, a random number generator 21, a program memory 22, a memory 23, and a transmitting / receiving unit 24.
  • the receiving terminal includes the program memory 22, the memory 13, and the transmitting / receiving unit 14.
  • necessary programs such as NTRU decryption, random number restoration, inverse conversion, and OAEP + inverse conversion stored in the program memory 22
  • the ciphertext received by the transmission / reception unit 24 is converted into plaintext.
  • Decrypt The memory 23 stores information necessary for decryption such as public information and a secret key.
  • FIG. 3 is a block diagram showing a functional configuration of the encryption Z decryption device according to the first embodiment of the present invention. It is a lock figure.
  • the encryption Z decryption device according to the present embodiment includes an encryption device 100 for encrypting plaintext and a decryption device 200 for decrypting ciphertext into plaintext, and further includes a key generation device. It has a public information storage device 301 for storing public information necessary for decryption generated by 300 and a secret key storage device 302 for storing secret key information required for decryption.
  • the plaintext is provided to the encryption device 100 by the plaintext input device 101, and the encryption device 100 implements processes such as an OAEP + conversion unit 102, a conversion unit 103 using the conversion function A, and an NTRU encryption unit 104. Have been.
  • the cipher text generated by the encryption device 100 is output to, for example, a receiving terminal through the cipher text output device 105.
  • the ciphertext is provided to the decryption device 200 by the ciphertext input device 201, and the decryption device 200 provides the NTRU decryption unit 202, the random number recovery unit 203, the inverse conversion unit 204 of the conversion function A, the OAEP + Processes such as the inverse transform unit 205 are realized.
  • the plaintext generated by the decryption device 200 is output through the plaintext output device 206.
  • FIG. 4 is a flowchart showing a key generation procedure in the first embodiment.
  • the key generation device 1 selects the parameters k, k, and ko as follows: k, k, and k are positive integers and k + k ⁇ k ⁇ Meet L. Where L is
  • G is a hash function that maps an n-bit bit sequence to a k-bit bit sequence
  • H ′ is a hash function that associates a k-bit bit string with an n + k-bit bit string
  • H is a hash function that associates a bit string of k bits with a bit string of n + k bits (step
  • the key generation device 1 determines the conversion function A (Step S13).
  • the conversion function A has k bits If the LXL element is mapped to the bit string below
  • the key generation device 1 performs key generation in the same manner as in the NTRU. That is, L force is also 3 ⁇ 4, L
  • f and g be private keys and h be a public key (step S14).
  • the key generation device 1 keeps f and g secret in the secret key storage device 302 (step S15), and uses the public key of the NTRU, the hash function and the conversion function (p, q, N, L, L, L, L, L, L,
  • step S f g r m k, k, k, G, ⁇ ′, H, A, h
  • FIG. 5 is a flowchart showing an encryption procedure in the first embodiment.
  • the encryption device 100 first receives the n-bit plaintext M from the plaintext input device 101 (step S21), and the public information p, q, N, L, L, L, L, k, k from the public information storage device 301. , k, G, ⁇ ', H, A,
  • bit string R of k bits is randomly selected (step S23), and the OAEP + conversion section 102
  • w is equally divided and the first half bit sequence is set to m and the second half bit sequence.
  • FIG. 6 is a flowchart showing a decoding procedure in the first embodiment.
  • the decryption device 200 receives the ciphertext e from the ciphertext input device 201 (step S31), and subsequently transfers the secret key corresponding to the ciphertext from the secret key storage device 302 to the secret key from the public information storage device 301. Receive the corresponding public information (step S32).
  • t s
  • step S35 the OAEP + inverse transformer 205 restores R by taking an exclusive OR for each bit of H (s) and t, and restores G (R) and s
  • step S36 M is restored by calculating exclusive OR for each bit of 0 (step S36).
  • FIG. 7 is a block diagram showing a functional configuration of the encrypted Z-decryption device according to the second embodiment of the present invention.
  • the encryption Z decryption device according to the present embodiment includes an encryption device 400 for encrypting plaintext and a decryption device 500 for decrypting ciphertext into plaintext, and further includes a key generation device. It has a public information storage device 301 for storing public information necessary for decryption generated by 300 and a secret key storage device 302 for storing secret key information required for decryption.
  • the plaintext is provided to the encryption device 400 by the plaintext input device 101, and the encryption device 400 receives the plaintext from the random number generation unit 401, the secret key encryption unit 402, the OAEP + conversion unit 403, and the conversion function A.
  • the processes such as the conversion unit 404 and the NTRU encryption unit 405 are realized!
  • the ciphertext generated by the encryption device 400 is output to, for example, a receiving terminal through the ciphertext output device 105.
  • the ciphertext is provided to the decryption device 500 by the ciphertext input device 201, and the decryption device 500 provides the NTRU decryption unit 501, the random number recovery unit 502, the inverse conversion unit 503 of the conversion function A, the OAEP + inverse Processes such as the conversion unit 504 and the secret key encryption / decryption unit 505 are realized.
  • the plaintext generated by the decryption device 500 is output through the plaintext output device 206.
  • FIG. 8 is a flowchart showing a key generation procedure in the second embodiment.
  • the key generation device 1 selects the parameters k, k, and ko as follows: k, k, and k are positive integers and k + k ⁇ k ⁇ Meet L. Where L is
  • G is a hash function that maps an n-bit bit sequence to a k-bit bit sequence
  • H ′ is a hash function that associates a k-bit bit string with an n + k-bit bit string
  • H is a hash function that associates a bit string of k bits with a bit string of n + k bits (step
  • the key generation device 1 determines a conversion function A (step S43).
  • the transformation function A is a mapping that maps the elements of L X L to bit strings of k bits or less, and
  • the key generation device 1 determines a common key encryption method E to be used (step S45),
  • NTRU public key, hash function and transformation function (p, q, N, L, L, L, L, k, k, k, f g r m 0 1
  • G, ⁇ ', H, A, h are stored in the public information storage device 301 and made public (step S46).
  • FIG. 9 is a flowchart showing an encryption procedure according to the second embodiment.
  • the encryption device 400 receives the n-bit plaintext X from the plaintext input device 101 (step S51), and the public information p, q, N, L, L, L, L, k, k from the public information storage device 301. , k, G, ⁇ ', H, A, and fgrm 0 1
  • E (X) is obtained by encrypting plaintext X using M as a key in accordance with the common key cryptosystem E.
  • bit string R of k bits is randomly selected (step S55), and the OAEP + conversion unit 403
  • w is divided into two, and the first half bit string is m and the second half bit string 3 ⁇ 4 ⁇ .
  • FIG. 10 is a flowchart showing a decryption procedure in the second embodiment.
  • the encrypting device 500 receives the ciphertext e from the ciphertext input device 201 (step S61), and subsequently converts the secret key corresponding to the ciphertext from the secret key storage device 302 and the secret key from the public information storage device 301. Receive public information (step S62).
  • NTRU decryption unit 501 decrypts cipher text e using public information and a secret key in the same manner as in the NTRU encryption method.
  • t s
  • the OAEP + inverse conversion unit 504 restores R by taking the exclusive OR of H (s) and t for each bit, and obtains the exclusive OR of G (R) and s for each bit. Restore M by calculating (
  • the ciphertext is decrypted by using the key M of the secret key, and the plaintext X is output (step S68). If it is not valid, the ciphertext e outputs ⁇ as an invalid ciphertext (step S69).
  • FIG. 1 (A) is a conceptual block diagram of an encryption padding apparatus using a padding application method according to the present invention, and (B) is a conventional encryption padding method using an OAEP-based padding method. It is a conceptual block diagram of a device.
  • FIG. 2 is a block diagram showing an example of a cryptographic communication system equipped with an encryption Z decryption device according to the present invention.
  • FIG. 3 is a block diagram showing a functional configuration of an encryption / decryption device according to the first embodiment of the present invention.
  • FIG. 4 is a flowchart showing a key generation procedure in the first embodiment.
  • FIG. 5 is a flowchart showing an encryption procedure in the first embodiment.
  • FIG. 6 is a flowchart showing a decoding procedure in the first embodiment.
  • FIG. 7 is a block diagram showing a functional configuration of an encryption / decryption device according to a second embodiment of the present invention.
  • [8] is a flowchart showing a key generation procedure in the second embodiment.
  • FIG. 9 is a flowchart showing an encryption procedure in the second embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

 NTRU暗号方式のような方式に対して適切なパディングを施すことで安全な暗号通信を達成する暗号化/復号化装置を提供する。  nビットの平文Mを受け取りOAEP+パディングを行い、その結果を次の条件を満たす変換Aを用いて2つのビット列mとrを得る。変換Aは、kビット以下のビット列にLm × Lrの元を対応させる写像であり、Lmはmの取りうる範囲、Lrはrの取りうる範囲であるとすると、次の条件:単射であること、Aおよびその逆写像は多項式時間で計算できること、暗号化関数をE(m,r)とした時に写像E:A(X)→Leは一方向性関数であること、を満たす必要がある。ただしXは(m,r)の取りうる範囲を表し、Leは暗号文全体の空間を表す。mおよびrに分割されると、e = Er(m)を計算して暗号化し、eを暗号文受信者に送信する。

Description

暗号方式の安全性を保証するパディング適用方法 化装置
技術分野
[oooi] 本発明は情報の暗号化 Z復号化システムに係り、特に選択暗号文攻撃に対し安 全性を保証するパディング適用方法および暗号ィ匕 Z復号ィ匕装置に関する。
背景技術
[0002] 通信のセキュリティを確保するために暗号技術の社会的応用が盛んに進められ、 効率的な暗号計算が従来以上に望まれている。このような傾向のなかで、 Jeffrey Hoffstein、 Jill Pipherおよび Joseph H. Silvermanによる文献" NTRU:A Ring-Based Public Key Cryptosystem" (非特許文献 1)により提案された NTRU暗号方式は、従来 の RSA暗号方式や ElGamal暗号方式と比べ、メモリ消費が少なく高速な暗号 Z復号 計算方法として注目されて ヽる。
[0003] (NTRU暗号化方式)
NTRU暗号方式は以下のような公開鍵暗号方式である。
[0004] まず以下のようにして鍵生成を行う。正整数 p, q, Nをとり領域変数として公開し、 R =
Z[X]/(XN-1)とする。以下、 L(a,b)は、 Rの元であって、 uの各次数の係数のうち a個が 1で b個が- 1、他のものが 0であるもの全体の集合 (Rの部分集合)を表すものとする。 パラメータ df, dg, dを決め、 L = L(df, df+1), Lg = L(dg, dg+1), L φ = L(d, d)とする。 L
f f から 、 L力も gをランダムに取り、 h = f_1g mod qとする。 f, gを秘密鍵とし、 hを公開鍵
g
とする。
[0005] 鍵が生成されると、 Rの部分集合 Lの元 mを暗号化する。まず、 Rの部分集合元 Lか
m r ら rをランダムに選び、 e = phr + m mod qを計算し、 eを暗号文として出力する。
[0006] 暗号文 eから元の平文 mを復号するには、まず fe = pgr + fin mod qを計算する。 f, g, r, mがそれぞれ L、 L、 L、 Lの元であることから fe = pgr + finであるので、 fe (mod p)
f g r m
= m (mod p)を計算することができ、 mが Lの元であることから m = m (mod p)なので m
m
を復元できる。 [0007] しかしながら、 Don Coppersmith, Adi Shamirによる文献" Lattice Attacks on NTRU" , Eurocrypt'97 Springer Lecture Notes in Computer Sciences, 1997 (非特許文献 2) などに指摘されて 、るように、 NTRU暗号方式には数々の解読方法が知られて!/、る。 これに対して、平文に何らかのパディングを施した後、 NTRU暗号ィ匕することにより解 読を防御する方法が幾つか知られて 、る。
[0008] (OAEP +パディング方式)
暗号方式を安全にするためのパディング方法としては、例えば Victor Shoupによる 文献" OAEP Reconsidered"journal of Cryptology 15(4) (非特許文献 3)で提案された OAEP+と呼ばれるパディング方法が知られて!/、る。 OAEP+パディングは以下のような パディング方式である。
[0009] まず、ノ ラメータ k, k , kを次のように選ぶ: k, k , kは正整数、かつ、 k + k ≤ k≤
Lを満たす。ここで、 Lは平文空間の元の数である。
[0010] さらに、 n = k— k — kとし、
0 1
Gは、 kビットのビット列に nビットのビット列を対応させるハッシュ関数、
H'は、 n+kビットのビット列に kビットのビット列を対応させるハッシュ関数、および、
0 1
Hは、 n+kビットのビット列に kビットのビット列を対応させるハッシュ関数とする。
1 0
[0011] パディング装置は nビットの平文 Mを受け取り、 kビットのビット列 Rをランダムに選ぶ
0
。続いて、 G(R)と Mのビット毎の排他的論理和 s°を計算し、
Figure imgf000004_0001
s = s° lis1とする。ここで「||」はビット列の連接を表す。 tを H(s)と Rのビット毎の排他的論理和と し、 w = s||tとする。この wを「平文 Mの乱数 Rを用いた OAEP+パディング」と呼ぶ。こうし て得られた OAEP+パディング wをほ L数を使わない暗号方式で)暗号化し、暗号文 eを 受信者に送信する。
[0012] 受信者は、受信した暗号文 eを復号し、 wを得る。 wを復号後、パディング復元装置 は以下のようにして平文 Mを復元する。まず wは w = s||t = s ||s ||tの形をしているので、
0 1
これを使って s、 s、 tを復元する。次に H(s)と tのビット毎の排他的論理和を取ることに
0 1
より Rを復元する。 G(R)と sのビット毎の排他的論理和を計算することにより Mを復元す
0
る。 s = H'(R||M)を満たせば Mを出力し、満たさなければ eは不正な暗号文として「丄」
1
を出力する。 [0013] し力しながら、この OAEP+パディングは、暗号ィ匕関数を計算する際に乱数を使用し な 、暗号方式に対して適応するために提案されたパディング方式である。このために 、上述した NTRUのような乱数を使用した暗号方式に適応した場合は必ずしも安全性 が保証されないという問題がある。また、 NTRUのような乱数を使用した暗号方式に OAEP+パディングを適応する場合には、適応方法は一意ではなく様々な方法を考え ることができるために、どのようなパデイングの適用方法が安全で、どのようなパディン グの適用方法が安全でな 、かがすぐには分力もな ヽと 、う問題もある。
[0014] このように OAEP+パディング方式は乱数を使用しない暗号方式に対してのみ安全 性が保証できるのである力 乱数を使用する NTRU暗号方式に対して OAEP+パディ ング方式ないしそれに類似したパディング方式を適応することで安全性を保証しょう という試みもいくつカゝ提案されている。たとえば、次の文献を参照されたい。
[0015] 'Joseph H. Silvermanによる文献 laintext Awareness and the NTRU PKし S
Technical Report#7 version 2, NTRU Cryptosystems, 1998 (非特許文献 4)
• Jeffrey Hoffstein、 Joseph H. Silvermanによ 文献 Optimizations for NTRU" Public-key Cryptography and Computational Number Theory (非特許文献 5)
• Jeffrey Hoffstein、 Joseph H. Silvermanによ 文献 Protecting NTRU Against Chosen Ciphertext and Reaction Attac s echnical Report, NTRU Cryptosystems, 2000, Report#16 version 1 (非特許文献 6)
• Phong Q. Nguyen、 David Pointchevalによる文献" Analysis and Improvements of NTRU Encryption Paddings "Crypto 2002 Springer Lecture Notes in Computer Sciences, 2002 (非特許文献 7)。
[0016] しかしながら、これらのパディングつき NTRU暗号方式はすべて解読された。非特許 文献 4に記載されたパディングを施した NTRU暗号方式は、 Eliane Jaulmes, Antoine Jouxによる文献 A Chosen— Ciphertext Attack against NTRU,,し rypto 2000 Springer Lecture Notes in Computer Sciences, 2000 (非特許文献 8)で提案されたァルゴリズ ムで解読された。
[0017] また、非特許文献 5および 6に記載されたパディングを施した NTRU暗号方式は非 特許文献 7で提案されたアルゴリズムで解読され、この非特許文献 7によるパディング 方法は John A. Proosによる Imperfect Decryption and an Attack on the NTRU Encryption Scheme" (非特許文献 9)により解読された。
[0018] OAEP+パディング方式以外のパディング方式を用いて NTRU暗号方式のような乱 数を使った暗号方式の安全性確保を図った方式も提案されているが、パディング方 式は方式毎に異なる弱点を持っているために、 OAEP+パディングを用いて暗号方式 の安全性を確保することは依然として有意義である。
非特許文献 1 : Jeffrey Hoffstein、 Jill Pipherおよび Joseph Η· Silvermanによる文献" NTRU: A Ring-Based Public Key Cryptosystem"
非特言午文献 2 : "Lattice Attacks on NTRU", Eurocrypt'97 Springer Lecture Notes in Computer Sciences, 1997
非特許文献 3 : "OAEP Reconsidered,,Journal of Cryptology 15(4)
非特許文献 4 : "Plaintext Awareness and the NTRU PKCS" Technical Report#7 version 2, NTRU Cryptosystems, 1998
特言午文献 5 : Jeffrey Hoffstein、 Joseph H. Silverman【こよる文献 Optimizations for
NTRU" Public-key Cryptography and Computational Number Theory
非特言午文献 6 : "Protecting NTRU Against Chosenし lphertext and Reaction Attacks"
Technical Report, NTRU Cryptosystems, 2000, Report#16 version 1
非特言午文献 7 : "Analysis and Improvements of NTRU Encryption Paddings "Crypto
2002 Springer Lecture Notes in Computer sciences, 2002
非特許文献 8 : "A Chosen- Ciphertext Attack against NTRU,,Crypto 2000 Springer Lecture Notes in Computer Sciences, 2000
非特言午文献 9 : John A. Proosによる 'Imperfect Decryption and an Attack on the NTRU Encryption Scheme"
発明の開示
発明が解決しょうとする課題
[0019] 上述したように、従来のパディングつき NTRU暗号方式は安全な暗号通信を行うこと ができない。
[0020] 本発明の目的は NTRU暗号方式のような方式に対して適切なパディングを施すこと で安全な暗号通信を達成するパディング適用方法および暗号化 z復号化装置を提 供することにある。
課題を解決するための手段
[0021] 本発明者は、 NTRU暗号方式では暗号に使用した乱数を復元可能であることに着 目し、暗号通信の安全性を保証できる新規なパディング適用方式を発明した。
[0022] (成立根拠)
まず、本発明の成立根拠について簡単に説明する。乱数を使用した暗号方式で代 表的なものに、エルガマル暗号方式やペイリエ一暗号方式などがある。これらの暗号 方式では、暗号文受信者が平文を復元することはできるが乱数を復元することはでき ないために、平文と乱数とは全く異なる種類のデータとして扱う必要がある。
[0023] また、エルガマル暗号方式やペイリエ一暗号方式等の多くの暗号方式では、暗号 化関数は確率的な関数であり、暗号化関数の定義域は平文 M全体の空間であり、 値域は暗号文全体の空間である。それに対し、復号ィ匕関数は確率を使わない関数 であり、定義域は暗号文全体の空間で値域は平文全体の空間である。繰り返すが、 これらの暗号方式では暗号に使用した乱数を復元できない。
[0024] これに対して、 NTRU暗号方式は、平文 mを復元した後に、 r = (fe - ftn)/pgにより舌 L 数 rを求めることができる、という特徴がある。このため、 NTRU暗号方式は、エルガマ ル暗号方式やペイリエ一暗号方式等の暗号方式とは異なり、平文と乱数とを区別す る必然'性がない。
[0025] したがって、 NTRU暗号方式では、次のようにみなすことができる。
[0026] ·暗号ィ匕関数は乱数を使わな 、関数であり、その定義域は平文 Mと乱数 Rとの連接 全体の空間、値域は暗号文全体の空間である。
[0027] ·復号ィ匕関数も乱数を使わない関数であり、その定義域は暗号文全体の空間、値 域は平文 Mと乱数 Rとの連接全体の空間である。
[0028] 既に述べたように OAEP+パディングは暗号ィ匕関数が乱数を使わない場合には安全 性が保証される。したがって、 NTRU暗号方式の平文と乱数とを区別しないデータ構 造に対して、安全性保証つき OAEP+パディングを適用可能であることがわかる。
[0029] (本発明の概要) この知見に基づいて、本発明がなされた。すなわち、本発明によるパディング適用 方式は、暗号文作成者が暗号文の作成に使用した乱数の値を暗号文受信者が復元 できる暗号方式 E¾n)に対して適用可能であり、このような暗号方式に対して本発明を 適用した場合に安全性が保証される。
[0030] 本発明によれば、暗号文の作成に乱数を使用し、その使用した乱数を受信側で復 元できる暗号化方式に対して、乱数を使用しない暗号ィ匕方式で安全性が保証された パディング方式を適用する方法は、入力情報を前記パディング方式により所定長以 下のビット列に変換し、前記ビット列を所定の変換規則によって第 1ビット列と第 2ビッ ト列とに変換し、前記第 1ビット列をデータ入力とし、前記第 2ビット列を乱数入力とし て暗号化関数にそれぞれ供給し、前記変換規則は、前記所定長以下のビット列を前 記第 1ビット列の集合と第 2ビット列の集合との直積の元に対応させる写像であり、か つ、前記写像は単射であること、前記写像およびその逆写像が多項式時間で計算可 能であること、および、前記直積を定義域とする前記暗号化関数が一方向性関数で あること、を満たす、ことを特徴とする。
[0031] 本発明の一実施形態によれば、変換規則は、前記ビット列の前半を前記第 1ビット 列とし、後半を前記第 2ビット列とするように前記ビット列を 2分割する規則である。
[0032] 本発明の一実施例によれば前記パディング方式は OAEP+パディングであり、前 記乱数を使用する暗号化方式は NTRU暗号方式である。
[0033] 図 1 (A)は、本発明によるパディング適用方式による暗号ィ匕装置の概念的ブロック 図であり、 (B)は従来例による OAEPベースのパディング方式を適用した暗号ィ匕装 置の概念的ブロック図である。ただし、パラメータは最も標準的な場合が示されており 、 n = k = kであり、 mのビット数は rである。
0 1
[0034] 図 1 (A)を用いて本発明によるパディング適用方式を説明すると、おおよそ次のよう になる。まず、 OAEP+パディング方式と同様のパラメータを選ぶ。すなわち、上述した ように、正整数 k, 1^を1^ + k 〈k〈Lを満たすように取る。ここで Lは平文空間の 元の数である。 n = k - k - kとし、 Gを kビットのビット列に nビットのビット列を対応さ
0 1
せるハッシュ関数、 H'を n+kビットのビット列に kビットのビット列を対応させるハッシュ
0 1
関数、 Hを n+kビットのビット列に kビットのビット列を対応させるハッシュ関数とする。 [0035] 次に、 nビットの平文 Mを受け取り、 OAEP+パディングを行う。すなわち kビットのビッ ト列 Rをランダムに選び、 G(R)と Mのビット毎の排他的論理和 s°を計算し、
Figure imgf000009_0001
を計算して、 s = ls1とする。記号「||」はビット列の連接を表す。 tを H(s)と Rのビット毎 の排他的論理和とし、 w = s||tとする。
[0036] 次に、 wを次の条件を満たす規則 A (以下、変換関数 Aという。 )を用いて 2つのビット 列 mおよび rを生成する。 Aは、 kビット以下のビット列に L X Lの元を対応させる写像 m r
であり、ここでしは mの取りうる範囲、 Lは rの取りうる範囲である。変換関数 Aが満たす m r
べき条件は次の通りである。
[0037] (1) Aは単射であること
(2) Aおよびその逆写像は多項式時間で計算できること
(3)暗号ィ匕関数を E(m,r)とした時、写像 E :A(X)→Lは、一方向性関数であること(た e
だし Xは (m,r)の取りうる範囲を表し、 Lは暗号文全体の空間を表す)。
e
[0038] NTRU暗号方式の場合、例えばビット列 wを前半のビット列と後半のビット列に等分 割して、それぞれを mおよび rとすればよい。こうして 2つのビット列に変換されると、 e = Ef(m)を計算して暗号ィ匕し、 eを暗号文受信者に送信する。
[0039] 受信者は eを受信したら、 eを復号して mを得る。上述したように Ef(m)の特徴によりは 復元可能であるから、 rを復元する。そして、 w = m||rにより wを復元する。 wを復号後、 OAEP+パデイングの復元と同様に Mを復元する。具体的には、まず、 wは w = s||t =s
0 lis ||tの形をしているので、これを使って s、 s、 tを復元する。次に、 H(s)と tのビット毎の
1 0 1
排他的論理和を取ることにより Rを復元し、 G(R)と sのビット毎の排他的論理和を計算
0
することにより Mを復元する。 s = H'(R||M)を満たせば、 Mを出力し、そうでなければ e
1
は不正な暗号文として丄を出力する。
発明の効果
[0040] 次に、本発明による方式と従来の方式とを比較して、本発明の効果を説明する。図 1 (B)に一例を示すように、上述した非特許文献 4一 7で提案された方式では、平文 Mから OAEP+ (あるいはその他の)パディング方式を使って mのみを作り上げ、 rは何ら かの別の手段を用いて作っている。これらの方式は、エルガマル暗号方式やペイリエ 一暗号方式のような受信側で平文だけが復元でき乱数は復元できない暗号方式に 対しても利用できる力 ad-hocな方法であるため安全性が保証できず、特に NTRUの 場合には完全解読が可能である。
[0041] これに対して、本発明による方式は、 NTRUのような暗号文受信者が平文および乱 数を共に復元できる暗号方式に適用されるパディング方式である。上記の従来の方 式とは異なり、平文 Mから OAEP+パディング方式および所定の変換規則(関数 A)を 使って mおよび rの両方を作り上げる。また、従来の方式とは異なり、 NTRUのような暗 号文受信者が平文および乱数をともに復元できる暗号方式に対して適用した場合に 安全性が保証できる。
[0042] すなわち、本発明により、 NTRU暗号方式という必要メモリ量の少なくかつ暗号化復 号ィ匕計算が高速な暗号方式を利用して安全な暗号通信を行うことが可能になる。 発明を実施するための最良の形態
[0043] 図 2は、本発明による暗号化 Z復号化装置を実装した暗号通信システムの一例を 示すブロック図である。ここではネットワークを通して通信端末間で暗号通信が行わ れる。
[0044] 送信側の通信端末は、プログラム制御プロセッサ 10、乱数生成器 11、プログラムメ モリ 12、メモリ 13および送受信部 14を有し、後述するように、プログラムメモリ 12に格 納された OAEP+変換、変換関数 Aによる変換、 NTRU暗号ィ匕などの必要なプロダラ ムを実行することで平文を暗号ィ匕し、暗号文を送受信部 14からネットワークを通して 宛先の受信端末へ送信する。なお、メモリ 13〖こは、公開情報や秘密鍵などの暗号化 に必要な情報が格納されて 、る。
[0045] 受信端末も同様に、プログラム制御プロセッサ 20、乱数生成器 21、プログラムメモリ 22、メモリ 23および送受信部 24を有し、後述するように、プログラムメモリ 22、メモリ 1 3および送受信部 14を有し、後述するように、プログラムメモリ 22に格納された NTRU 復号化、乱数復元、逆変換、 OAEP+逆変換などの必要なプログラムを実行すること で、送受信部 24で受信した暗号文を平文に復号する。なお、メモリ 23には、公開情 報や秘密鍵などの復号ィ匕に必要な情報が格納されている。
[0046] 1.第 1実施形態
図 3は、本発明の第 1実施形態による暗号化 Z復号化装置の機能的構成を示すブ ロック図である。本実施形態による暗号化 Z復号化装置は、平文を暗号化するため の暗号化装置 100と、暗号文を平文に復号するための復号ィ匕装置 200とを有し、さ らに鍵生成装置 300により生成された暗号ィ匕 Z復号ィ匕に必要な公開情報を記憶す る公開情報記憶装置 301、復号化に必要な秘密鍵情報を記憶する秘密鍵記憶装置 302を有する。
[0047] 平文は、平文入力装置 101により暗号化装置 100へ与えられ、暗号化装置 100〖こ は OAEP+変換部 102、変換関数 Aによる変換部 103および NTRU暗号ィ匕部 104など のプロセスが実現されている。暗号化装置 100により生成された暗号文は暗号文出 力装置 105を通して、例えば受信端末へ出力される。
[0048] 暗号文は、暗号文入力装置 201により復号化装置 200へ与えられ、復号化装置 20 0には NTRU復号ィ匕部 202、乱数復元部 203、変換関数 Aの逆変換部 204、 OAEP+ 逆変換部 205などのプロセスが実現されている。復号ィ匕装置 200により生成された平 文は平文出力装置 206を通して出力される。
[0049] 1. 1)鍵生成
まず鍵生成手順を説明する。
[0050] 図 4は、第 1実施形態における鍵生成手順を示すフローチャートである。鍵生成装 置 300は、正整数 p, q, Nをとり、領域変数として公開する。上述した NTRU暗号方式 と同様に、 R = Z[X]/(XN-1)とし、 Rの元 uであって uの各次数の係数のうち a個力 1で b 個が- 1、他のものが 0であるもの全体の集合 (Rの部分集合)を L(a,b)で表すものとし、 Rの部分集合 L , L , L , Lを取る(ステップ S 11)。
f g r m
[0051] さらに鍵生成装置 1は、 OAEP+パディング方式で説明したように、ノ ラメータ k, k , k o を次のように選ぶ: k, k , kは正整数、かつ、 k + k ≤ k≤ Lを満たす。ここで、 Lは
1 0 1 0 1
L X Lの元の数である。さらに、 n = k— k — kとし、
m r 0 1
Gは、 kビットのビット列に nビットのビット列を対応させるハッシュ関数、
H'は、 n+kビットのビット列に kビットのビット列を対応させるハッシュ関数、および、
0 1
Hは、 n+kビットのビット列に kビットのビット列を対応させるハッシュ関数とする(ステ
1 0
ップ S12)。
[0052] さらに、鍵生成装置 1は変換関数 Aを決定する (ステップ S13)。変換関数 Aは kビッ ト以下のビット列に L X Lの元を対応させる写像とし、以下の性質を満たさねばなら
m r
ない。
[0053] (1) Aは単射であること
(2) Aおよびその逆写像が多項式時間で計算できること
(3)暗号ィ匕関数を E(m, r)とした時、写像 E:A(X)→Lは、一方向性関数であること(
e
ただし、 Xは (m, r)の取りうる範囲を表し、 Lは暗号文全体の空間を表す)。
e
[0054] 鍵生成装置 1は、 NTRUと同様の方法で鍵生成を実行する。すなわち L力も ¾、 L
f g 力 gをランダムに取り、 h = f_1g mod qとする。 f, gを秘密鍵とし、 hを公開鍵とする(ス テツプ S14)。鍵生成装置 1は、 f, gを秘密鍵記憶装置 302に秘密裡に保持し (ステツ プ S 15)、 NTRUの公開鍵、上記ハッシュ関数および変換関数 (p, q, N, L , L , L , L ,
f g r m k, k , k , G, Η', H, A, h)を公開情報記憶装置 301に格納して公開する(ステップ S
0 1
16)。
[0055] 1. 2)暗号化手順
次に暗号ィ匕手順を説明する。
[0056] 図 5は、第 1実施形態における暗号化手順を示すフローチャートである。暗号化装 置 100は、まず平文入力装置 101から nビットの平文 Mを受け取り(ステップ S21)、公 開情報記憶装置 301から公開情報 p, q, N, L , L , L , L , k, k , k , G, Η', H, A,お
f g r m 0 1
よび hを受け取る(ステップ S22)。
[0057] 続、て、 kビットのビット列 Rをランダムに選び (ステップ S23)、 OAEP+変換部 102
0
は、 G(R)と Mのビット毎の排他的論理和 s°を計算し、
Figure imgf000012_0001
ls1とし 、さらに、 tを H(s)と Rのビット毎の排他的論理和として、 w = s||tを生成することで、平文 を OAEP+パディングする(ステップ S 24)。
[0058] さらに、変換部 103は変換関数 Aを用いて、(m, r)=A(w)によって、 wを 2つのビット列 mおよび rに変換する (ステップ S25)。ここでは、 wを等分割して前半のビット列を m、 後半のビット列 とする。そして、 NTRU暗号化部 104は、 e = phr + m mod qを計算 することで NTRU暗号ィ匕を行い (ステップ S26)、生成された暗号文を暗号文出力装 置 105から出力する (ステップ S27)。
[0059] 1. 3)復号化手順 最後に復号ィ匕手順を説明する。
[0060] 図 6は、第 1実施形態における復号ィ匕手順を示すフローチャートである。まず復号 化装置 200は暗号文入力装置 201から暗号文 eを受け取り(ステップ S31)、続いて、 秘密鍵記憶装置 302から暗号文に対応する秘密鍵を、公開情報記憶装置 301から その秘密鍵に対応する公開情報を受け取る (ステップ S32)。
[0061] NTRU復号部 202は、公開情報および秘密鍵を用いて、 NTRU暗号方式と同様に 暗号文 eの復号ィ匕処理を行う。すなわち、 fe = pgr + fin mod qを計算し、 f, g, r, mがそ れぞれ L、 L、 L、 Lの元であることから fe = pgr + finであるので、 fe (mod p) = m (mod f g r m
p)を計算することができ、 mが Lの元であることから m = m (mod p)なので、 mを復元で
m
きる(ステップ S33)。
[0062] また、乱数復元部 203は、 fe = pgr + finであるので、 r = (fe - ftn)/pgにより rを復元す る(ステップ S 34)。
[0063] 次に、逆変換部 204は変換関数 Aの逆変換を用いて、 A— ^ΠΙ,Γ)により、 w = s||t = s ||s
0
」|tを復元する(ステップ S35)。続いて、 OAEP+逆変換部 205は、 H(s)と tのビット毎の 排他的論理和を取ることにより Rを復元し、 G(R)と s
0のビット毎の排他的論理和を計算 することにより Mを復元する (ステップ S 36)。
[0064] 最後に、パデイングが正当である力否かを s = H'(R||M)が満たされる力否かによつ て判断し (ステップ S37)、正当であれば平文 Mを出力し (ステップ S38)、正当でなけ れば暗号文 eは不正な暗号文として丄を出力する (ステップ S39)。
[0065] 2.第 2実施形態
図 7は、本発明の第 2実施形態による暗号化 Z復号化装置の機能的構成を示すブ ロック図である。本実施形態による暗号化 Z復号化装置は、平文を暗号化するため の暗号化装置 400と、暗号文を平文に復号するための復号ィ匕装置 500とを有し、さ らに鍵生成装置 300により生成された暗号ィ匕 Z復号ィ匕に必要な公開情報を記憶す る公開情報記憶装置 301、復号化に必要な秘密鍵情報を記憶する秘密鍵記憶装置 302を有する。
[0066] 平文は、平文入力装置 101により暗号化装置 400へ与えられ、暗号化装置 400〖こ は乱数発生部 401、秘密鍵暗号化部 402、 OAEP+変換部 403、変換関数 Aによる変 換部 404および NTRU暗号化部 405などのプロセスが実現されて!、る。暗号化装置 4 00により生成された暗号文は暗号文出力装置 105を通して、例えば受信端末へ出 力される。
[0067] 暗号文は、暗号文入力装置 201により復号化装置 500へ与えられ、復号化装置 50 0には NTRU復号化部 501、乱数復元部 502、変換関数 Aの逆変換部 503、 OAEP+ 逆変換部 504、秘密鍵暗号復号部 505などのプロセスが実現されている。復号化装 置 500により生成された平文は平文出力装置 206を通して出力される。
[0068] 2. 1)鍵生成
まず鍵生成手順を説明する。
[0069] 図 8は、第 2実施形態における鍵生成手順を示すフローチャートである。鍵生成装 置 300は、正整数 p, q, Nをとり、領域変数として公開する。上述した NTRU暗号方式 と同様に、 R = Z[X]/(XN-1)とし、 Rの元 uであって uの各次数の係数のうち a個力 1で b 個が- 1、他のものが 0であるもの全体の集合 (Rの部分集合)を L(a,b)で表すものとし、 Rの部分集合 L , L , L , L
f g r mを取る(ステップ S41)。
[0070] さらに鍵生成装置 1は、 OAEP+パディング方式で説明したように、ノ ラメータ k, k , k o を次のように選ぶ: k, k , kは正整数、かつ、 k + k ≤ k≤ Lを満たす。ここで、 Lは
1 0 1 0 1
L X Lの元の数である。さらに、 n = k— k — kとし、
m r 0 1
Gは、 kビットのビット列に nビットのビット列を対応させるハッシュ関数、
H'は、 n+kビットのビット列に kビットのビット列を対応させるハッシュ関数、および、
0 1
Hは、 n+kビットのビット列に kビットのビット列を対応させるハッシュ関数とする(ステ
1 0
ップ S42)。
[0071] さらに、鍵生成装置 1は変換関数 Aを決定する (ステップ S43)。変換関数 Aは、上 述したように、 kビット以下のビット列に L X Lの元を対応させる写像とし、以下の性
m r
質を満たさねばならない。
[0072] (1) Aは単射であること
(2) Aおよびその逆写像が多項式時間で計算できること
(3)暗号ィ匕関数を E(m, r)とした時、写像 E:A(X)→Lは、一方向性関数であること(
e
ただし、 Xは (m, r)の取りうる範囲を表し、 Lは暗号文全体の空間を表す)。
e [0073] 鍵生成装置 1は、 NTRUと同様の方法で鍵生成を実行する。すなわち L力も ¾、 L f g 力 gをランダムに取り、 h = f_1g mod qとする。 f, gを秘密鍵とし、 hを公開鍵とする。鍵 生成装置 1は、 f, gを秘密鍵記憶装置 302に秘密裡に保持し (ステップ S44)する。
[0074] さらに、鍵生成装置 1は、使用する共通鍵鍵暗号方式 Eを決定し (ステップ S45)、
NTRUの公開鍵、上記ハッシュ関数および変換関数 (p, q, N, L , L , L , L , k, k , k , f g r m 0 1
G, Η', H, A, h)を公開情報記憶装置 301に格納して公開する (ステップ S46)。
[0075] 2. 2)暗号化手順
次に暗号ィ匕手順を説明する。
[0076] 図 9は、第 2実施形態における暗号化手順を示すフローチャートである。暗号化装 置 400は、まず平文入力装置 101から nビットの平文 Xを受け取り(ステップ S51)、公 開情報記憶装置 301から公開情報 p, q, N, L , L , L , L , k, k , k , G, Η', H, A,およ f g r m 0 1
び hを受け取る(ステップ S 52)。
[0077] 続 、て、乱数発生部 401を用いて秘密鍵暗号ィ匕部 402は nビットのビット列 Mをラン ダムに選び (ステップ S53)、 Y = E (X)を計算して共通化鍵暗号ィ匕を行う(ステップ S
54)。ここで、 E (X)は、 Mを鍵として平文 Xを共通鍵暗号方式 Eに従って暗号ィ匕したも のである。
[0078] 続 、て、 kビットのビット列 Rをランダムに選び (ステップ S55)、 OAEP+変換部 403
0
は、 G(R)と Mのビット毎の排他的論理和 s°を計算し、
Figure imgf000015_0001
ls1とし 、さらに、 tを H(s)と Rのビット毎の排他的論理和として、 w = s||tを生成することで、平文 を OAEP+パディングする(ステップ S56)。
[0079] さらに、変換関数 Aによる変換部 404は、 (m, r) = A(w)によって wを 2つのビット列 m および rに変換する (ステップ S57)。ここでは、 wを 2分割して前半のビット列を m、後 半のビット列 ¾τとする。そして、 NTRUB音号ィ匕部 405は、 e = phr + m mod qを計算す ることで NTRU暗号化を行い(ステップ S58)、生成された暗号文 eと共通鍵暗号の暗 号文 Yとを暗号文 (e, Y)として暗号文出力装置 105から出力する (ステップ S59)。
[0080] 2. 3)復号化手順
最後に復号ィ匕手順を説明する。
[0081] 図 10は、第 2実施形態における復号ィ匕手順を示すフローチャートである。まず復号 化装置 500は暗号文入力装置 201から暗号文 eを受け取り(ステップ S61)、続いて、 秘密鍵記憶装置 302から暗号文に対応する秘密鍵を、公開情報記憶装置 301から その秘密鍵に対応する公開情報を受け取る (ステップ S62)。
[0082] NTRU復号ィ匕部 501は、公開情報および秘密鍵を用いて、 NTRU暗号方式と同様 に暗号文 eの復号化処理を行う。すなわち、 fe = pgr + fin mod qを計算し、 f, g, r, mが それぞれし、 L、 L、 Lの元であることから fe = pgr + finであるので、 fe(mod p) = m
f g r m
(mod p)を計算することができ、 mが Lの元であることから m = m (mod p)なので、 mを復
m
元できる(ステップ S63)。
[0083] また、乱数復元部 502は、 fe = pgr + finであるので、 r = (fe - ftn)/pgにより rを復元す る(ステップ S 64)。
[0084] 次に、逆変換部 503は、 A— m.r)により、 w = s||t = s ||s ||tを復元する (ステップ S65)
0 1
。続いて、 OAEP+逆変換部 504は、 H(s)と tのビット毎の排他的論理和を取ることによ り Rを復元し、 G(R)と sのビット毎の排他的論理和を計算することにより Mを復元する(
0
ステップ S66)。
[0085] 最後に、パデイングが正当である力否かを s = H'(R||M)が満たされる力否かによつ て判断し (ステップ S67)、正当であれば、共通鍵暗号の鍵 Mを用いて共通鍵暗号を 解き、平文 Xを出力し (ステップ S68)、正当でなければ暗号文 eは不正な暗号文とし て丄を出力する (ステップ S69)。
図面の簡単な説明
[0086] [図 1] (A)は、本発明によるパディング適用方式による暗号ィ匕装置の概念的ブロック 図であり、 (B)は従来例による OAEPベースのパディング方式を適用した暗号ィ匕装 置の概念的ブロック図である。
[図 2]本発明による暗号化 Z復号化装置を実装した暗号通信システムの一例を示す ブロック図である。
[図 3]本発明の第 1実施形態による暗号ィ匕 Z復号ィ匕装置の機能的構成を示すブロッ ク図である。
[図 4]第 1実施形態における鍵生成手順を示すフローチャートである。
[図 5]第 1実施形態における暗号ィ匕手順を示すフローチャートである。 圆 6]第 1実施形態における復号ィ匕手順を示すフローチャートである。
圆 7]本発明の第 2実施形態による暗号ィ匕 Z復号ィ匕装置の機能的構成を示すブロッ ク図である。
圆 8]第 2実施形態における鍵生成手順を示すフローチャートである。
圆 9]第 2実施形態における暗号ィ匕手順を示すフローチャートである。
圆 10]第 2実施形態における復号ィ匕手順を示すフローチャートである。
符号の説明
100 暗号化装置
101 平文入力装置
102 OAEP +変換部
103 変換関数 Aによる変換部
104 NTRU暗号化部
105 暗号文出力装置
200 復号化装置
201 暗号文入力装置
202 NTRU復号化部
203 乱数復元部
204 変換関数 Aの逆変換部
205 OAEP +逆変換部
206 平文出力装置
300 鍵生成装置
301 公開情報記憶装置
302 秘密鍵記憶装置

Claims

請求の範囲
[1] 暗号文の作成に乱数を使用し、その使用した乱数を受信側で復元できる暗号ィ匕方 式に対して、乱数を使用しない暗号ィ匕方式で安全性が保証されたパディング方式を 適用する方法において、
入力情報を前記パディング方式により所定長以下のビット列に変換し、 前記ビット列を所定の変換規則によって第 1ビット列と第 2ビット列とに変換し、 前記第 1ビット列をデータ入力とし、前記第 2ビット列を乱数入力として暗号ィ匕関数 にそれぞれ供給し、
前記変換規則は、前記所定長以下のビット列を前記第 1ビット列の集合と第 2ビット 列の集合との直積の元に対応させる写像であり、かつ、前記写像は単射であること、 前記写像およびその逆写像が多項式時間で計算可能であること、および、前記直積 を定義域とする前記暗号ィヒ関数が一方向性関数であること、を満たす、
ことを特徴とするパディング適用方法。
[2] 前記変換規則は、前記ビット列の前半を前記第 1ビット列とし、後半を前記第 2ビット 列とするように前記ビット列を 2分割する規則であることを特徴とする請求項 1に記載 のパディング適用方法。
[3] 前記パディング方式は OAEP+パディングであり、前記乱数を使用する暗号化方 式は NTRU暗号方式であることを特徴とする請求項 1または 2に記載のパディング適 用方法。
[4] 暗号文の作成に乱数を使用し、その使用した乱数を受信側で復元できる暗号ィ匕方 式に対して、乱数を使用しない暗号ィ匕方式で安全性が保証されたパディング方式を 適用する方法において、
入力情報を前記パディング方式により所定長以下のビット列に変換するパディング 変換手段と、
前記ビット列を所定の変換規則によって第 1ビット列と第 2ビット列とに変換するビッ ト列変換手段と、
前記第 1ビット列をデータ入力とし、前記第 2ビット列を乱数入力として暗号ィ匕関数 にそれぞれ供給して暗号文を生成する暗号化手段と、 前記変換規則は、前記所定長以下のビット列を前記第 1ビット列の集合と第 2ビット 列の集合との直積の元に対応させる写像であり、かつ、前記写像は単射であること、 前記写像およびその逆写像が多項式時間で計算可能であること、および、前記直積 を定義域とする前記暗号ィヒ関数が一方向性関数であること、を満たす、
ことを特徴とするパディング装置。
[5] 前記変換規則は、前記ビット列の前半を前記第 1ビット列とし、後半を前記第 2ビット 列とするように前記ビット列を 2分割する規則であることを特徴とする請求項 4に記載 のパディング装置。
[6] 前記パディング方式は OAEP+パディングであり、前記乱数を使用する暗号化方 式は NTRU暗号方式であることを特徴とする請求項 4または 5に記載のパディング装 置。
[7] 暗号文の作成に乱数を使用し、その使用した乱数を受信側で復元できる暗号ィ匕方 式に対して、乱数を使用しない暗号ィ匕方式で安全性が保証されたパディング方式を 適用することで暗号文を生成する暗号化装置において、
入力した平文を前記パディング方式により所定長以下のビット列に変換するパディ ング変換手段と、
前記ビット列を所定の変換規則によって第 1ビット列と第 2ビット列とに変換するビッ ト列変換手段と、
前記第 1ビット列をデータ入力とし、前記第 2ビット列を乱数入力として暗号ィ匕関数 にそれぞれ供給して暗号文を生成する暗号化手段と、
前記変換規則は、前記所定長以下のビット列を前記第 1ビット列の集合と第 2ビット 列の集合との直積の元に対応させる写像であり、かつ、前記写像は単射であること、 前記写像およびその逆写像が多項式時間で計算可能であること、および、前記直積 を定義域とする前記暗号ィヒ関数が一方向性関数であること、を満たす、
ことを特徴とする暗号ィ匕装置。
[8] 暗号文の作成に乱数を使用し、その使用した乱数を受信側で復元できる暗号ィ匕方 式に対して、乱数を使用しない暗号ィ匕方式で安全性が保証されたパディング方式を 適用することで暗号文を生成する暗号化装置において、 秘密鍵暗号の鍵をランダムに選択し、前記秘密鍵暗号の鍵を用いて、入力した平 文を秘密鍵暗号化することで第 1暗号文を生成する第 1暗号化手段と、
前記秘密鍵暗号の鍵を前記パディング方式により所定長以下のビット列に変換す るパディング変換手段と、
前記ビット列を所定の変換規則によって第 1ビット列と第 2ビット列とに変換するビッ ト列変換手段と、
前記第 1ビット列をデータ入力とし、前記第 2ビット列を乱数入力として暗号ィ匕関数 にそれぞれ供給して第 2暗号文を生成する第 2暗号化手段と、
前記第 1暗号文および前記第 2暗号文を暗号文として出力する暗号文出力手段と を有し、前記変換規則は、前記所定長以下のビット列を前記第 1ビット列の集合と 第 2ビット列の集合との直積の元に対応させる写像であり、かつ、前記写像は単射で あること、前記写像およびその逆写像が多項式時間で計算可能であること、および、 前記直積を定義域とする前記暗号ィヒ関数が一方向性関数であること、を満たす、 ことを特徴とする暗号ィ匕装置。
[9] 前記変換規則は、前記ビット列の前半を前記第 1ビット列とし、後半を前記第 2ビット 列とするように前記ビット列を 2分割する規則であることを特徴とする請求項 7または 8 に記載の暗号化装置。
[10] 前記パディング方式は OAEP+パディングであり、前記乱数を使用する暗号化方 式は NTRU暗号方式であることを特徴とする請求項 7または 8に記載の暗号ィ匕装置
[11] 暗号文の作成に乱数を使用し、その使用した乱数を受信側で復元できる暗号ィ匕方 式に対して、乱数を使用しない暗号ィ匕方式で安全性が保証されたパディング方式を 適用することで暗号文を生成する方法において、
入力した平文を前記パディング方式により所定長以下のビット列に変換し、 前記ビット列を所定の変換規則によって第 1ビット列と第 2ビット列とに変換し、 前記第 1ビット列をデータ入力とし、前記第 2ビット列を乱数入力として暗号ィ匕関数 にそれぞれ供給して暗号文を生成し、 前記変換規則は、前記所定長以下のビット列を前記第 1ビット列の集合と第 2ビット 列の集合との直積の元に対応させる写像であり、かつ、前記写像は単射であること、 前記写像およびその逆写像が多項式時間で計算可能であること、および、前記直積 を定義域とする前記暗号ィヒ関数が一方向性関数であること、を満たす、
ことを特徴とする暗号化方法。
[12] 暗号文の作成に乱数を使用し、その使用した乱数を受信側で復元できる暗号ィ匕方 式に対して、乱数を使用しない暗号ィ匕方式で安全性が保証されたパディング方式を 適用することで暗号文を生成する方法において、
秘密鍵暗号の鍵をランダムに選択し、
前記秘密鍵暗号の鍵を用いて、入力した平文を秘密鍵暗号化することで第 1暗号 文を生成し、
前記秘密鍵暗号の鍵を前記パディング方式により所定長以下のビット列に変換し、 前記ビット列を所定の変換規則によって第 1ビット列と第 2ビット列とに変換し、 前記第 1ビット列をデータ入力とし、前記第 2ビット列を乱数入力として暗号ィ匕関数 にそれぞれ供給して第 2暗号文を生成し、
前記第 1暗号文および前記第 2暗号文を暗号文として出力し、
前記変換規則は、前記所定長以下のビット列を前記第 1ビット列の集合と第 2ビット 列の集合との直積の元に対応させる写像であり、かつ、前記写像は単射であること、 前記写像およびその逆写像が多項式時間で計算可能であること、および、前記直積 を定義域とする前記暗号ィヒ関数が一方向性関数であること、を満たす、
ことを特徴とする暗号化方法。
[13] 前記変換規則は、前記ビット列の前半を前記第 1ビット列とし、後半を前記第 2ビット 列とするように前記ビット列を 2分割する規則であることを特徴とする請求項 11または
12に記載の暗号化方法。
[14] 前記パディング方式は OAEP+パディングであり、前記乱数を使用する暗号化方 式は NTRU暗号方式であることを特徴とする請求項 11または 12に記載の暗号ィ匕方 法。
[15] 請求項 7に記載の暗号化装置により生成された暗号文を復号化する装置において 前記乱数を使用する暗号化方式に対応する復号化方式に従って、入力した暗号 文を復号ィ匕して第 1ビット列を生成する第 1復号ィ匕手段と、
前記暗号ィ匕に使用した乱数を第 2ビット列として復元する乱数復号手段と、 前記変換規則の逆変換規則に従って、前記第 1ビット列および前記第 2ビット列を 所定長以下のビット列に逆変換するビット列逆変換手段と、
前記所定長以下のビット列力 前記パディング方式によるパディングを除去すること で元の平文を生成するパディング逆変換手段と、
前記パデイングの正当性を判断し、正当であれば前記平文を出力する判定手段と を有することを特徴とする復号化装置。
[16] 請求項 8に記載の暗号化装置により生成された暗号文を復号化する装置において 前記乱数を使用する暗号化方式に対応する復号化方式に従って、前記第 2暗号 文を復号ィ匕して第 1ビット列を生成する第 1復号ィ匕手段と、
前記暗号ィ匕に使用した乱数を第 2ビット列として復元する乱数復号手段と、 前記変換規則の逆変換規則に従って、前記第 1ビット列および前記第 2ビット列を 所定長以下のビット列に逆変換するビット列逆変換手段と、
前記所定長以下のビット列力 前記パディング方式によるパディングを除去すること で元の秘密鍵暗号の鍵を生成するパディング逆変換手段と、
前記パデイングの正当性を判断し、正当であれば前記秘密鍵暗号の鍵を用いて前 記第 1暗号文を復号する第 2復号手段と、
を有することを特徴とする復号化装置。
[17] 請求項 11に記載の暗号化方法により生成された暗号文を復号化する方法におい て、
前記乱数を使用する暗号化方式に対応する復号化方式に従って、入力した暗号 文を復号ィ匕して第 1ビット列を生成し、
前記暗号ィ匕に使用した乱数を第 2ビット列として復元し、 前記変換規則の逆変換規則に従って、前記第 1ビット列および前記第 2ビット列を 所定長以下のビット列に逆変換し、
前記所定長以下のビット列力 前記パディング方式によるパディングを除去すること で元の平文を生成し、
前記パデイングの正当性を判断し、正当であれば前記平文を出力する、 ことを特徴とする復号化方法。
[18] 請求項 12に記載の暗号化方法により生成された暗号文を復号化する方法におい て、
前記乱数を使用する暗号化方式に対応する復号化方式に従って、前記第 2暗号 文を復号ィ匕して第 1ビット列を生成し、
前記暗号ィ匕に使用した乱数を第 2ビット列として復元し、
前記変換規則の逆変換規則に従って、前記第 1ビット列および前記第 2ビット列を 所定長以下のビット列に逆変換し、
前記所定長以下のビット列力 前記パディング方式によるパディングを除去すること で元の秘密鍵暗号の鍵を生成し、
前記パデイングの正当性を判断し、正当であれば前記秘密鍵暗号の鍵を用いて前 記第 1暗号文を復号する、
ことを特徴とする復号化方法。
[19] 暗号文の作成に乱数を使用し、その使用した乱数を受信側で復元できる暗号ィ匕方 式と、乱数を使用しない暗号ィ匕方式で安全性が保証されたパディング方式とを用い、 通信ネットワークを通して通信端末間で暗号通信を行うシステムにおいて、
送信側通信端末は、
入力した平文を前記パディング方式により所定長以下のビット列に変換するパデ イング変換手段と、
前記所定長以下のビット列を前記第 1ビット列の集合と第 2ビット列の集合との直 積の元に対応させる写像であり、かつ、前記写像は単射であること、前記写像および その逆写像が多項式時間で計算可能であること、および、前記直積を定義域とする 前記暗号ィ匕関数が一方向性関数であること、を満たす変換規則に従って、前記ビッ ト列を第 1ビット列と第 2ビット列とに変換するビット列変換手段と、
前記第 1ビット列をデータ入力とし、前記第 2ビット列を乱数入力として暗号ィ匕関数 にそれぞれ供給して暗号文を生成する暗号化手段と、
前記暗号文を受信側端末へ送信する送信手段と、
を有し、
前記受信側通信端末は、
前記暗号文を前記送信側通信端末から受信する受信手段と、
前記乱数を使用する暗号ィ匕方式に対応する復号ィ匕方式に従って、入力した暗号 文を復号ィ匕して第 1ビット列を生成する第 1復号ィ匕手段と、
前記暗号ィ匕に使用した乱数を第 2ビット列として復元する乱数復号手段と、 前記変換規則の逆変換規則に従って、前記第 1ビット列および前記第 2ビット列を 所定長以下のビット列に逆変換するビット列逆変換手段と、
前記所定長以下のビット列力 前記パディング方式によるパディングを除去するこ とで元の平文を生成するパディング逆変換手段と、
前記パデイングの正当性を判断し、正当であれば前記平文を出力する判定手段 と、
を有する、
ことを特徴とする暗号通信システム。
暗号文の作成に乱数を使用し、その使用した乱数を受信側で復元できる暗号ィ匕方 式と、乱数を使用しない暗号ィ匕方式で安全性が保証されたパディング方式とを用い、 通信ネットワークを通して通信端末間で暗号通信を行うシステムにおいて、
送信側通信端末は、
秘密鍵暗号の鍵をランダムに選択し、前記秘密鍵暗号の鍵を用いて、入力した平 文を秘密鍵暗号化することで第 1暗号文を生成する第 1暗号化手段と、
前記秘密鍵暗号の鍵を前記パディング方式により所定長以下のビット列に変換 するパディング変換手段と、
前記所定長以下のビット列を前記第 1ビット列の集合と第 2ビット列の集合との直 積の元に対応させる写像であり、かつ、前記写像は単射であること、前記写像および その逆写像が多項式時間で計算可能であること、および、前記直積を定義域とする 前記暗号ィ匕関数が一方向性関数であること、を満たす変換規則に従って、前記ビッ ト列を第 1ビット列と第 2ビット列とに変換するビット列変換手段と、
前記第 1ビット列をデータ入力とし、前記第 2ビット列を乱数入力として暗号ィ匕関数 にそれぞれ供給して第 2暗号文を生成する第 2暗号化手段と、
前記第 1暗号文および前記第 2暗号文を暗号文として出力する暗号文出力手段 と、
を有し、
前記受信側通信端末は、
前記暗号文を前記送信側通信端末から受信する受信手段と、
前記乱数を使用する暗号化方式に対応する復号化方式に従って、前記第 2暗号 文を復号ィ匕して第 1ビット列を生成する第 1復号ィ匕手段と、
前記暗号ィ匕に使用した乱数を第 2ビット列として復元する乱数復号手段と、 前記変換規則の逆変換規則に従って、前記第 1ビット列および前記第 2ビット列を 所定長以下のビット列に逆変換するビット列逆変換手段と、
前記所定長以下のビット列力 前記パディング方式によるパディングを除去するこ とで元の秘密鍵暗号の鍵を生成するパディング逆変換手段と、
前記パデイングの正当性を判断し、正当であれば前記秘密鍵暗号の鍵を用いて 前記第 1暗号文を復号する第 2復号手段と、
を有する、
ことを特徴とする暗号通信システム。
PCT/JP2005/005287 2004-03-31 2005-03-23 暗号方式の安全性を保証するパディング適用方法 WO2005098796A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP05721337.3A EP1734493B1 (en) 2004-03-31 2005-03-23 Padding application method to ensure the security of the ntru encryption
US10/561,216 US7321658B2 (en) 2004-03-31 2005-03-23 Padding application method ensuring security of cryptosystem and encryptor/decryptor
JP2006511999A JP4715748B2 (ja) 2004-03-31 2005-03-23 暗号方式の安全性を保証するパディング適用方法
AU2005230066A AU2005230066A1 (en) 2004-03-31 2005-03-23 Padding application method guaranteeing safety of encryption method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004102399 2004-03-31
JP2004-102399 2004-03-31

Publications (1)

Publication Number Publication Date
WO2005098796A1 true WO2005098796A1 (ja) 2005-10-20

Family

ID=35125301

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/005287 WO2005098796A1 (ja) 2004-03-31 2005-03-23 暗号方式の安全性を保証するパディング適用方法

Country Status (5)

Country Link
US (1) US7321658B2 (ja)
EP (1) EP1734493B1 (ja)
JP (1) JP4715748B2 (ja)
AU (1) AU2005230066A1 (ja)
WO (1) WO2005098796A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4664850B2 (ja) * 2006-03-30 2011-04-06 株式会社東芝 鍵生成装置、プログラム及び方法
US8484485B2 (en) * 2008-06-04 2013-07-09 Panasonic Corporation Encryption device and encryption system
CN103780382B (zh) * 2014-01-13 2017-01-18 华南理工大学 一种基于超球面的多变量公钥加密/解密系统及方法
WO2020229436A1 (en) * 2019-05-13 2020-11-19 Pii Guard Aps A computer-implemented method of performing feistel-network-based block-cipher encryption of plaintext

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000516733A (ja) * 1996-08-19 2000-12-12 エヌティーアールユー クリプトシステムズ,インコーポレーテッド 公開鍵暗号システム方法および装置
EP1249963A2 (en) 2001-04-11 2002-10-16 Hitachi, Ltd. Method of a public key encryption and a cypher communication both secure against a chosen-ciphertext attack
EP1304829A2 (en) 2001-10-19 2003-04-23 Matsushita Electric Industrial Co., Ltd. A numerical array output device, a numerical array output method, an encryption device, and a decryption device

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2871690B2 (ja) * 1988-04-28 1999-03-17 日本電気株式会社 符号化装置及び復号化装置
US5345507A (en) * 1993-09-08 1994-09-06 International Business Machines Corporation Secure message authentication for binary additive stream cipher systems
GB0013349D0 (en) * 2000-06-01 2000-07-26 Tao Group Ltd Pseudo-random number generator
US7020776B2 (en) * 2000-06-22 2006-03-28 Microsoft Corporation Cryptosystem based on a Jacobian of a curve
US20020199001A1 (en) * 2001-02-25 2002-12-26 Storymail, Inc. System and method for conducting a secure response communication session
IL154651A0 (en) * 2000-08-29 2003-09-17 Ntru Cryptosystems Inc Speed enhanced cryptographic method and apparatus
JP2002252611A (ja) * 2000-12-19 2002-09-06 Matsushita Electric Ind Co Ltd 暗号通信システム、送信装置及び受信装置
JP4208230B2 (ja) * 2001-10-19 2009-01-14 パナソニック株式会社 配列出力装置、配列出力方法、暗号化装置、および復号化装置
US20040151307A1 (en) * 2003-02-03 2004-08-05 Lih-Chung Wang Tractable rational map public-key system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000516733A (ja) * 1996-08-19 2000-12-12 エヌティーアールユー クリプトシステムズ,インコーポレーテッド 公開鍵暗号システム方法および装置
EP1249963A2 (en) 2001-04-11 2002-10-16 Hitachi, Ltd. Method of a public key encryption and a cypher communication both secure against a chosen-ciphertext attack
EP1304829A2 (en) 2001-10-19 2003-04-23 Matsushita Electric Industrial Co., Ltd. A numerical array output device, a numerical array output method, an encryption device, and a decryption device

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
NGUYEN P.Q. AND POINTCHEVAL D. ET AL: "Analysis and Improvements of NTRU Encryption Paddings.", LNCS., vol. 2442, 2002, pages 210 - 225, XP002989876 *
See also references of EP1734493A4 *
SHOUP V. ET AL: "OAEP Reconsidered (Entended Abstract)", LNCS., vol. 2139, 2001, pages 239 - 259, XP000988705 *

Also Published As

Publication number Publication date
US7321658B2 (en) 2008-01-22
EP1734493A4 (en) 2010-03-10
EP1734493A1 (en) 2006-12-20
JP4715748B2 (ja) 2011-07-06
US20060171531A1 (en) 2006-08-03
JPWO2005098796A1 (ja) 2008-02-28
AU2005230066A1 (en) 2005-10-20
EP1734493B1 (en) 2013-11-27

Similar Documents

Publication Publication Date Title
Perlner et al. Quantum resistant public key cryptography: a survey
US9172529B2 (en) Hybrid encryption schemes
US7443980B2 (en) Hierarchical identity-based encryption and signature schemes
Coron What is cryptography?
CN110011995B (zh) 多播通信中的加密和解密方法及装置
KR20050087815A (ko) 키공유 시스템, 공유키 생성장치 및 공유키 복원장치
CN110784314A (zh) 无证书的加密信息处理方法
US20050240762A1 (en) Cryptographic method and apparatus
JP4715748B2 (ja) 暗号方式の安全性を保証するパディング適用方法
KR100396740B1 (ko) 계산적 디피-헬만 가정에 기반하는 안전성 증명 가능한공개키 암호화 방법
JP3517663B2 (ja) 暗号通信方法及び暗号通信システム
Gobi et al. A comparative study on the performance and the security of RSA and ECC algorithm
CN112733176B (zh) 基于全域哈希的标识密码加密方法
JP2004201124A (ja) 公開鍵暗号方法,署名方法,暗号通信システム及びコンピュータプログラム
JP2005176144A (ja) 端末装置、通信システム及び通信方法
KR100388059B1 (ko) 비대칭키 암호 알고리즘을 이용한 데이터 암호화 시스템및 그 방법
Elkamchouchi et al. A new proxy identity-based signcryption scheme for partial delegation of signing rights
JP2002023626A (ja) 公開鍵暗号方法および公開鍵暗号を用いた通信システム
JP4612027B2 (ja) 署名システム
CN116781243B (zh) 一种基于同态加密的不经意传输方法、介质及电子设备
AlDerai et al. A Study of Image Encryption/Decryption by Using Elliptic Curve Cryptography ECC
JP4284867B2 (ja) 標準モデル上で適応的選択暗号文攻撃に対して安全な公開鍵暗号方法
Karki A comparative analysis of public key cryptography
WO2000045548A1 (fr) Chiffreur a cle non protegee et procede de partage de cle
Tomar et al. Implementation of elliptic–curve cryptography

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2005721337

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2005230066

Country of ref document: AU

ENP Entry into the national phase

Ref document number: 2005230066

Country of ref document: AU

Date of ref document: 20050323

Kind code of ref document: A

Ref document number: 2006171531

Country of ref document: US

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 10561216

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2005230066

Country of ref document: AU

WWP Wipo information: published in national office

Ref document number: 10561216

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2006511999

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

WWP Wipo information: published in national office

Ref document number: 2005721337

Country of ref document: EP