EP1031204B1

Cryptographic system and method with fast decryption

Abstract

This record has no abstract on file.

EP1031204B1, drawing sheet 1
Sheet 1 of 30

Term

Term ended

Expired 16 September 2018, 8 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

34 claims: 17 independent, 17 dependent

  1. 1
    A method for sending messages over a network between first and second computing units, the method comprising the following steps:(a) encrypting a message M into ciphertext C at the first computing unit, where the ciphertext C includes a value V and a value W, as follows: (1) the value V is a function of a number x, such that V = x e , where e is an integer and x is as follows: x = g R  mod n , where: (i) n is a number n = p 1 p 2 where p 1 and p 2 are prime numbers with p 1 = r 1 q 1 + 1 and p 2 = r 2 q 2 + 1, where r 1 and r 2 are random numbers, and q 1 and q 2 are prime numbers;(ii) R is a random number selected independent of the random numbers r 1 and r 2 ;and (iii) g is a number in the form of g = r 3 (p 1 -1)(p 2 -1)/(q 1 q 2 ) mod n, where r 3 is a random number selected independent of the random numbers r 1 , r 2 , and R;and (2) the value W is a function of a value h(x) and the message M, the value h(x) being a result of a one-way function of the number x;(b) sending the ciphertext C from the first computing unit to the second computing unit;and (c) decrypting the ciphertext C at the second computing unit to reproduce the message M, where M is a function of the value W and the value h(x) and x is derived as x = V (1/e)mod q 1 q 2 mod n.
  2. 4
    The method of any one of the preceding claims, the integer e equaling 2.
  3. 5
    The method of any one of the preceding claims:the encrypting step comprising the step of computing a hash value h(x, M) from a hash function h of the number x and the message M;the sending step comprising the step of sending the hash value h(x, M) along with the ciphertext C from the first computing unit to the second computing unit;and the decrypting step comprising the steps of computing a test hash value h'(x, M) from the hash function h of the derived number x and the reproduced message M and comparing the hash value h(x, M) received from the first computing unit to the test hash value h'(x, M) to verify whether the message M has been altered.
  4. 6
    The method of any one of the preceding claims, the encrypting step comprising the following steps:storing the number x;generating a new number x' based on the old number x;and using the new number x' for encrypting a next message.
  5. 8
    A computer-implemented method for encrypting a message M into ciphertext C wherein:n is a number in the form n = p 1 p 2 where p 1 and p 2 are prime numbers;p 1 = r 1 q 1 + 1 and p 2 = r 2 q 2 + 1, where r 1 and r 2 are random numbers and q 1 and q 2 are prime numbers;and g is a number in the form of g = r 3 (p 1 -1)/(p 2 -1)/(q 1 q 2 )mod n, where r 3 is a random number selected independent of the random numbers r 1 , and r 2 ;the computer-implemented method comprising the following steps: computing a number x = g R mod n, where R is a random number selected independent of the random numbers r 1 , r 2 , and r 3 ;transforming the number x according to a one-way function h to yield a value h(x);and encoding the message M according to a function of the value h(x).
  6. 10
    The method of any one of claims 8 or 9, further comprising the step of computing a hash value h(x, M) from a hash function h of the number x and the message M.
  7. 11
    The method of any one of claims 8 to 10, further comprising the following steps:storing the number x;generating a new number x' based on the old number x;and using the new number x' for encrypting a next message.
  8. 12
    A computer-implemented method for decrypting ciphertext C to reproduce a message M, wherein:n is a number in the form n = p 1 p 2 , where p 1 and p 2 are prime numbers;p 1 = r 1 q 1 + 1 and p 2 = r 2 q 2 +1, where r 1 and r 2 are random numbers and q 1 and q 2 are prime numbers;g is a number in the form of g = r 3 (p 1 -1)(p 2 -1)/(q 1 q 2 ) mod n, where r 3 is a random number selected independent of the random numbers r 1 and r 2 ;x is a number in the form of x = g R mod n, where R is a random number selected independent of the random numbers r 1 , r 2 , and r 3 ;e is an integer;and V is a value in the form of V = x e ;the computer-implemented method comprising the following steps: recovering the number x from the value V, where x = V (l/c)modq 1 q 2 mod n;transforming the number x according to a one-way function h to yield a value h(x);and decoding the ciphertext C according to a function of the value h(x) to recapture the message M.
  9. 15
    A computer program, or suit of computer programs, arranged such that when executed by a computer it/they control the computer to perform the method of any of the preceding claims.
  10. 16
    A system for sending messages over a communications channel, comprising:an encoder to transform a message M into ciphertext C and transmit the ciphertext C over the communications channel, where the ciphertext C includes a value V and a value W, as follows: (1) the value V is a function of a number x, such that V = x e , where e is an integer and x is as follows: x = g R  mod n , where: (i) n is a number n = p 1 p 2 where p 1 and p 2 are prime numbers with p 1 = r 1 q 1 + 1 and p 2 = r 2 q 2 + 1, where r 1 and r 2 are random numbers, and q 1 and q 2 are prime numbers;(ii) R is a random number selected independent of the random numbers r 1 and r 2 ;and (iii) g is a number in the form of g = r 3 (p 1 -1)(p 2 -1)/(q 1 q 2 ) mod n, where r 3 is a random number selected independent of the random numbers r 1 , r 2 , and R;and (2) the value W is a function of a value h(x) and the message M, the value h(x) being a result of a one-way function of the number x;and a decoder coupled to receive the ciphertext C and the value V from the communications channel and to transform the ciphertext C back to the message M, where M is a function of the value W and the value h(x) and x is derived as x = V (1/e)mod q 1 q 2 mod n.
  11. 19
    The system of any of claims 16 to 18, the integer e equaling 2.
  12. 20
    The system of any of claims 16 to 19:the encoder computing a hash value h(x, M) from a hash function h of the number x and the message M and transmits the hash value h(x, M) along with the ciphertext C;and the decoder computing a test hash value h'(x, M) from the hash function h of the derived number x and the reproduced message M and compares the hash value h(x, M) received from the first computing unit to the test hash value h'(x, M) to verify whether the message M has been altered.
  13. 21
    The system of any of claims 16 to 20, the encoder storing the number x, generating a new number x' based on the old number x, and using the new number x' to compute the values V and W.
  14. 23
    An encoder for a cryptographic system, where:n is a number in the form n = p 1 p 2 , where p 1 and p 2 are prime numbers;p 1 = r 1 q 1 + 1 and p 2 = r 2 q 2 + 1, where r 1 and r 2 are random numbers and q 1 and q 2 are prime numbers;and g is a number in the form of g = r 3 (p 1 -1)(p 2 -1)/(p 1 q 2 ) mod n, where r 3 is a random number selected independent of the random numbers r 1 and r 2 ;the encoder comprising: means for computing a number x = g R mod n, where R is a random number selected independent of the random numbers r 1 , r 2 , and r 3 ;means for transforming the number x according to a one-way function h to yield a value h(x);and means for encoding a message M according to a function of the value h(x).
  15. 26
    A decoder for a cryptographic system, where:n is a number in the form n = p 1 p 2 , where p 1 and p 2 are prime numbers;p 1 = r 1 q 1 + 1 and p 2 = r 2 q 2 + 1, where r 1 and r 2 are random numbers and q 1 and q 2 are prime numbers;g is a number in the form of g = r 3 (p 1 -1)(p 2 -1)/(q 1 q 2 ) mod n, where r 3 is a random number selected independent of the random numbers r 1 and r 2 ;x is a number in the form of x = g R mod n, where R is a random number selected independent of the random numbers r 1 , r 2 , and r 3 ;e is an integer;V is a value in the form of V = x e ;and W is a value derived from a function of a message M and a value h(x), where h(x) is a result of a one-way function h;the decoder comprising: means for receiving the values V and W;means for recovering the number x from the value V, where x = V (1/e) mod q 1 q 2 mod n;means for transforming the number x according to a one-way function h to yield the value h(x);and means for decoding the value W according to a function of the value h(x) to recapture the message M.
  16. 29
    A computer-readable medium having computer-executable instructions causing a computer to encrypt a message M to a ciphertext C, where:n is a number in the form n = p 1 p 2 , where p 1 and p 2 are prime numbers;p 1 = r 1 q 1 + 1 and p 2 = r 2 q 2 + 1, where r 1 and r 2 are random numbers and q 1 and q 2 are prime numbers;and g is a number in the fornn of g = r 3 (p 1 -1)(p 2 -1)/(q 1 q 2 ) mod n, where r 3 is a random number selected independent of the random numbers r 1 and r 2 ;the computer-readable medium comprising: computer-executable instructions which cause a computer to compute a number x = g R mod n, where R is a random number selected independent of the random numbers r 1 , r 2 , and r 3 ;computer-executable instructions which cause a computer to transform the number x according to a one-way function h to yield a value h(x);and computer-executable instructions which cause a computer to encode a message M according to a function of the value h(x).
  17. 32
    A computer-readable medium having computer-executable instructions causing a computer to decrypt ciphertext C to recover a message M, where:n is a number in the form n = p 1 p 2 , where p 1 and p 2 are prime numbers;p 1 = r 1 q 1 + 1 and p 2 = r 2 q 2 + 1, where r 1 and r 2 are random numbers and q 1 and q 2 are prime numbers;g is a number in the form of g = r 3 (p 1 -1)(p 2 -1)/(q 1 q 2 ) mod n, where r 3 is a random number selected independent of the random numbers r 1 and r 2 ;x is a number in the form of x = g R mod n, where R is a random number selected independent of the random numbers r 1 , r 2 , and r 3 ;e is an integer;and V is a value in the form of V = x e ;the computer-readable medium comprising: computer-executable instructions which cause a computer to recover the number x from the value V, where x = V (1/e) mod q 1 q 2 mod n;computer-executable instructions which cause a computer to transform the number x according to a one-way function h to yield h(x);and computer-executable instructions which cause a computer to decode the ciphertext C according to a function of h(x) to recapture the message M.
Independent claims17