Literature Review: An Efficient RSA Public Key Encryption Scheme

14 downloads 33747 Views 364KB Size Report
The proposed RSA encryption scheme is based on linear group over the ring of ...... A Comparative Study of Applying Real-Time Encryption in Cloud Computing ...
Fifth International Conference on Information Technology: New Generations

An Efficient RSA Public Key Encryption Scheme Sattar J Aboud1, Mohammad A AL-Fayoumi1, 2Mustafa Al-Fayoumi and 3Haidar S Jabbar 1 Middle East University for Graduate Studies/Faculty of IT, Amman, Jordan 2 Faculty of Science and Technology, Anglia Ruskin University, U.K 3 Department of Computer Science and Eng., Anna University, Chennai 600025, INDIA

Abstract In this paper, we propose an efficient RSA public key encryption scheme, which is an improved version of original RSA scheme. The proposed RSA encryption scheme is based on linear group over the ring of integer mod a composite modulus n which is the product of two distinct prime numbers. In the proposed scheme the original message and the encrypted message are h u h square matrices with entities in z n indicated via l (h, z n ) . Since the original RSA Scheme is a block cipher in which the original message and cipher message are integer in the interval [0, n  1] for some integer modulus n .Therefore, in this paper, we generalize RSA encryption scheme in order to be implemented in the general linear group on the ring of integer mod n . Furthermore, the suggested encryption scheme has no restriction in encryption and decryption order and is claimed to be efficient, scalable and dynamic. Keywords RSA public encryption scheme, square matrices, general linear group, digital signature scheme

1. Introduction In 1976 Diffie-Hellmam [2] creates the first revolutionary research in public key cryptography via presented a new idea in cryptography and to challenge experts to generate cryptography algorithms that faced the requirements for public key cryptosystems. However, the first reaction to the challenge is introduced in 1978 by RSA [8]. The RSA scheme is a block cipher in which the original message and cipher message are integer values in the interval [0..n  1] where n a composite modulus. In this paper we take the original message and cipher message from the general linear group of h u h matrices over z n indicated by g (h, z n ) and the original message indicated by m . The process of encryption a message m is indicated via c . A private key is required to disclose the original message from the cipher message.

978-0-7695-3099-4/08 $25.00 © 2008 IEEE DOI 10.1109/ITNG.2008.199

127

However, the message in RSA scheme is encrypted in blocks after divide it to blocks, every block must convert to a value smaller than the modulus n . The intractability of the RSA assumption forms its security. The RSA assumption is the difficulty of solving the integer modulus n which is a product of two distinct odd large primes p and q with an assistance of another public key e and an integer cipher text c [3]. In other words, the RSA difficulty is that of solving eth roots mod a composite modulus n . The conditions determined the modulus n and the public key e are to guarantee that for every integer c  (0,1,..., n  1) there is just one m  (0,1,...,n 1) where m e c mod n . However, the RSA scheme is the most employed public key encryption compared with the other schemes. It can be employed for both encryption and digital signature schemes.

2. Related Work The first revolution event in the era of the public key cryptography is coming on 1976 when Diffie-Hellman [2] published their well-known paper entitled new direction in cryptography. This paper was suggested a great concept for public key cryptography and to build a scheme without a secure communication, but able to provide a secret communication. However, DiffieHellman suggested such technique for distributing the private key to be employed in the classical schemes in insecure communication channel [1]. In 1978 Rivest, Shamir and Adleman (RSA) [8] introduced the first applied scheme which is the most popular public key scheme. The security of the RSA public key scheme is based on the intractability of factoring the integer modulus which is the product of two large and distinct prime numbers that is a difficult computational problem to find. In 1979, Rabin [7] suggested a scheme which is also relied on the factoring of a composite modulus, which is the product of large Blum integer numbers and the result of decryption scheme is four messages; just one from the results represent the original message. In 1992, Shimada [11] enhanced Rabin scheme using the extension Rabin public key encryption scheme

employing certain assumption in a private key utilizing Jacobi symbol. But in 1998, Okamoto [5] proposed a new public key cryptosystem as secure as factoring relied on RSA and Rabin schemes. In 1999, Pointcheval [6] introduced a new public key encryption scheme based on the dependent RSA and Rabin Schemes. In 2006, Sahadeo Padhye [9] modified dependent RSA and Rabin public key cryptosystem using certain conditions to public and private keys.

3. RSA Scheme In 1978, RSA [8] developed a public key cryptosystem that is based on the difficulty of integer factoring. The RSA public key encryption scheme is the first example of a provably secure public key encryption scheme against chosen massage attacks. Assuming that the factoring problem is computationally intractable and it is hard to find the prime factors of n p * q . The RSA scheme is as follows: Key generation algorithm To generate the keys entity A must do the following: 1. Randomly and secretly choose two large prime numbers p and q with equally likely. 2. Compute the modulus n p * q . 3. Compute T (n) ( p  1)(q  1) 4. Select random integer e,1  e  n where gcd(e, T ) 1 5. Use Baghdad method [10] to compute the unique decrypted key d ,1  d  T (n) where e * d { 1 mod T ( n) 6. Determine entity A public and private key. The pair (d , T ) is the private key. While the pair (n, e) is the public key. Public key encryption algorithm Entity B encrypts a message m for entity A which entity A decrypts. Encryption: entity B should do the following: x Obtain entity A ’s public key (n, e) . x Represent the message m as an integer in the interval [0...n  1] x Compute c m e mod n x Send the encrypted message c to entity A . Decryption: To recover the message m from the cipher text c . Entity A must do the following: x Obtain the cipher text c from entity B x Recover the message m c d mod n

Example Key generation: suppose that entity A selects the prime numbers p 43 and q 47 . Then he finds the RSA modulus n p * q 2021 and T ( n ) ( p  1)( q  1) 1932

128

Entity A chooses e 17 and using the Baghdad method for multiplicative inverse [10] to find the decrypted key d 341 where e * d { 1 mod T .So A' s public key is the pair (n 2021, e 17) while A' s private key is (T 1932, d 341) . Encryption: Suppose entity B obtain A' s public key (n 2021) and he determines a message m 741 to be encrypted, entity B uses repeated square and multiply algorithm [4] of modular exponentiation to compute c 74117 mod 2021 1471 and send this c 1471 to entity A . Decryption: To recover and obtain the original message m entity A should first obtain c 1471 from entity B then recover the message m c d mod n 1471341 mod 2021 741 using repeated square and multiply algorithm [4] for exponentiation.

4. The Proposed Scheme In this paper we will widen the RSA scheme to a scheme that employs the general linear group of order h with values selected randomly from the ring of integer mod n where n is a product of two large prime numbers such as with the example of general RSA scheme. The integer is co-prime with n form a group under multiplication mod n of order g (n) , inverse square matrices of rank h on the ring of integer mod n will generate a group of order to this group, and this is unknown in the general scheme. But, in the general scheme where n is a product of two distinct prime numbers we can find the order of this group by the following theorem:

Theorem: Assume that n p * q is the product of two large prime numbers, and suppose that g is the general linear g (q

(p h

group h

of

 1 )( p

 1 )( q

h

h

huh

 p )...( p

 q )...( q

h

h

matrices  p

 q

h 1

h 1

over z n .

Then

)

)

Proof: Each matrix x  g decreased to two matrices x p and x q such

that x p and x q are h u h matrices

members z p and z q such that x p

x mod p , x q

on

the

x mod

q . Actually, a mapping: f : g (h, n) o g (h, p ) † g (h, q) , is the ring identical of a two rings. Key generation algorithm To generate the keys entity A must do the following: 1. Randomly chooses two large prime numbers p and q .

2. Compute the modulus n p * q . 3. Compute g (h, z n ) 4. Choose a random integer e where gcd(e, g ) 1 5. Compute the inverse d where ed { 1 mod g 6. Determine the entity A public and private key. The pair ( g , d ) is the private key. While the pair ( n, e) is the public key.

Public key encryption algorithm Entity B encrypts a message m for entity A which entity A decrypts. Encryption: entity B should do the following: x Obtain entity A public key ( n, e) . x Represent the message m as a h u h matrix x x Compute h u h matrix c m e mod n x Send the encrypted message c to entity A . Decryption: to recover the message m from the cipher text c . Entity A must do the following: x Obtain the cipher text c from entity B x Recover the message m c d mod n

Example Key generation: suppose that entity A selects randomly the two prime numbers p 43 and q 47 . Then find the modulus n

p*q

2021 and compute g

(2,2021)

(43  1)  (43  43)  (47  1)  (47  47) (1848 *1806)  (2208 * 2162) 8111184 . Then entity A picks e 17 and using the Baghdad method to find d 954257 where e * d { 1 mod g . So, A' s public key is the pair ( n 2021, e 17) while A' s private key is ( g 8111184, d 954257) . 2

2

2

while the g (n) 8111184. So, the differences between the two ranges are obvious. 2. In the suggested scheme, we can employ both a h u h matrix x and an integer as used in the RSA scheme. The used of a matrix x in fact is not a weakness. It is actually a strength added to the suggested scheme, since the RSA scheme is a block cipher. In this case we can adopt h 2 blocks and place them in the matrix x then compute when wanted. So in this case the suggested scheme is more flexible compared with the RSA scheme. 3. The proposed scheme can be used with Hill cipher method to obtain more intractable encryption system. Also, the suggested scheme can be employed using a subgroup instead of a full value of g (h, n) , since the gcd(e, g ) 1 . In this case the suggested scheme will give more flexibility to entity to use more than one technique. 4. The intractability of the integer factoring of the modulus n in the propose scheme stays as same as in the RSA scheme. 5. The proposed scheme can be used as a digital signature scheme by inserted in the matrix x as an item.

2

Encryption: Suppose entity B obtain A' s public key ( n 2021, e 17) and he determines a message m 741 to be encrypted and finds c 74117 mod 2021 then send c 1471 to entity A . Decryption: To recover and obtain the original message m entity A should the following: Obtain the cipher text c 1471 from entity B , then recover the original message m 1471954257 mod2021 741 using square and multiply method [4].

6. Conclusions In this paper, we suggest an efficient RSA public key encryption system, which an enhanced version of the original RSA scheme. The suggested RSA scheme is relied on linear algebraic group over the ring of integer number mod a composite modulus n that is the product of two prime numbers. However, in the suggested system the original message and the encrypted message are h u h matrices with parameters in z n denoted by l (h, z n ) . As the original RSA scheme is a block cipher in which the original text and cipher text are integer numbers in the range of [0, n  1] for certain modulus n .Therefore, in this paper we generalize RSA encryption scheme in order to be implemented in the general linear group on the ring of integer mod n , and is claimed to be efficient, scalable and flexible scheme.

5. Advantages of the Proposed Scheme 1. The key range of the proposed scheme is considerable. It means that it can be large enough to use by matrices of high level of ranks. The key range for instance in the RSA scheme is of length T (n) ( p  1)(q  1) . But, in the suggested scheme the key range is of length g (n) . Thus, in the above example the T(n) 1932

129

References [1] Bruce S, "Applied Cryptography", 2nd John Wiley and Sons, Inc. 1996 [2] Diffie W and Hellman M, “New Direction in Cryptography, IEEE Transaction on Information Theory, IT-22(6): 644-654, 1976

[3] Douglas R. Stinson “Cryptography Theory and Practice”, Chapman & Hall/CRC Press, 3rd Edition, pp. 211-214, 2006 [4] Lam K. and Hui L, “Efficiency of square-and-multiply exponentiation algorithms”, Electronics Letters, Vol. 30, Issue 25, pp.2115- 2116, 1994 [5] Okamoto T and Uchiyama S "A New Public Key Cryptosystem as Secure as Factoring", in Proceedings of Europcrypt'98, LNCS 1403, Springer Verlag, pp.308-318, 1998 [6] Pointcheval D "New Public Key Cryptosystem Based on the Dependent-RSA Problem", in proceedings of Euorcrypt'99, LNCS 1592, Springer Verlag, pp. 239-254, 1999 [7] Rabin, M. "Digitalized signature and Public Key Functions as intractable as factorization", Technical Report, MIT/ LCS/ Tr, MIT Lab. Computer Science, Cambridge, Jan. 1979. [8] Rivest R, Shamir A and Adelman L, “A Method for Obtaining Digital Signature and Public Key Cryptosystems”, Communications of the ACM, 21, pp. 120-126, 1978 [9] Sahadeo Padhye, "On DRSA Public Key Cryptosystem", the International Arab Journal of Information Technology, Volume 3, No. 4, October, PP. 334-336, 2006 [10] Sattar Aboud, “Baghdad Method for Calculating Multiplicative Inverse”, International Conference on Information Technology, Las Vegas, Nevada, USA. pp: 816-819, 2004 [11]Shimada M "Another Practical Public Key Cryptosystem”, Electronic Letters, 5th November, Vol. 28, No. 23, 1992 .

130