THE CUBIC PUBLIC-KEY TRANSFORMATION*

Similar documents
Introduction to Modern Cryptography. Benny Chor

The security of RSA (part 1) The security of RSA (part 1)

Mathematics of Cryptography

Number Theory. CSS322: Security and Cryptography. Sirindhorn International Institute of Technology Thammasat University CSS322. Number Theory.

Number Theory. Modular Arithmetic

Definition: For a positive integer n, if 0<a<n and gcd(a,n)=1, a is relatively prime to n. Ahmet Burak Can Hacettepe University

CPSC 467b: Cryptography and Computer Security

Encryption: The RSA Public Key Cipher

Lecture Notes, Week 6

Public-Key Cryptosystems CHAPTER 4

1 Recommended Reading 1. 2 Public Key/Private Key Cryptography Overview RSA Algorithm... 2

Security Issues in Cloud Computing Modern Cryptography II Asymmetric Cryptography

CIS 551 / TCOM 401 Computer and Network Security

Ma/CS 6a Class 3: The RSA Algorithm

Lecture 5: Arithmetic Modulo m, Primes and Greatest Common Divisors Lecturer: Lale Özkahya

LECTURE 5: APPLICATIONS TO CRYPTOGRAPHY AND COMPUTATIONS

Public Key Cryptography. All secret key algorithms & hash algorithms do the same thing but public key algorithms look very different from each other.

Introduction to Public-Key Cryptosystems:

Theme : Cryptography. Instructor : Prof. C Pandu Rangan. Speaker : Arun Moorthy CS

Lecture 1: Introduction to Public key cryptography

10 Public Key Cryptography : RSA

Addition. Ch1 - Algorithms with numbers. Multiplication. al-khwārizmī. al-khwārizmī. Division 53+35=88. Cost? (n number of bits) 13x11=143. Cost?

Public Key Cryptography

Cryptography. pieces from work by Gordon Royle

Pseudo-random Number Generation. Qiuliang Tang

10 Modular Arithmetic and Cryptography

Lemma 1.2. (1) If p is prime, then ϕ(p) = p 1. (2) If p q are two primes, then ϕ(pq) = (p 1)(q 1).

Algorithmic Number Theory and Public-key Cryptography

An Introduction to Probabilistic Encryption

Theory of Computation Chapter 12: Cryptography

during transmission safeguard information Cryptography: used to CRYPTOGRAPHY BACKGROUND OF THE MATHEMATICAL

Lecture 22: RSA Encryption. RSA Encryption

Cryptography IV: Asymmetric Ciphers

Attacks on RSA & Using Asymmetric Crypto

Asymmetric Encryption

Public Key Algorithms

CRYPTOGRAPHY AND NUMBER THEORY

CRYPTOGRAPHY AND LARGE PRIMES *

Topics in Cryptography. Lecture 5: Basic Number Theory

Public-Key Encryption: ElGamal, RSA, Rabin

CPSC 467b: Cryptography and Computer Security

Slides by Kent Seamons and Tim van der Horst Last Updated: Oct 1, 2013

Cryptosystem. Traditional Cryptosystems: The two parties agree on a secret (one to one) function f. To send a message M, thesendersendsthemessage

Chapter 8 Public-key Cryptography and Digital Signatures

1 Number Theory Basics

THE RSA ENCRYPTION SCHEME

The RSA cryptosystem and primality tests

Cryptography. Course 1: Remainder: RSA. Jean-Sébastien Coron. September 21, Université du Luxembourg

The RSA public encryption scheme: How I learned to stop worrying and love buying stuff online

Introduction to Cryptography. Lecture 6

Numbers. Çetin Kaya Koç Winter / 18

Asymmetric Cryptography

Chapter 4 Asymmetric Cryptography

8.1 Principles of Public-Key Cryptosystems

CPSC 467: Cryptography and Computer Security

Overview. Background / Context. CSC 580 Cryptography and Computer Security. March 21, 2017

Number theory (Chapter 4)

Number Theory A focused introduction

RSA. Ramki Thurimella

Ma/CS 6a Class 4: Primality Testing

CS483 Design and Analysis of Algorithms

CPSC 467b: Cryptography and Computer Security

Chapter 9 Mathematics of Cryptography Part III: Primes and Related Congruence Equations

Course 2BA1: Trinity 2006 Section 9: Introduction to Number Theory and Cryptography

Public Key Algorithms

L7. Diffie-Hellman (Key Exchange) Protocol. Rocky K. C. Chang, 5 March 2015

and Other Fun Stuff James L. Massey

RSA Algorithm. Factoring, EulerPhi, Breaking RSA. Çetin Kaya Koç Spring / 14

Fundamentals of Modern Cryptography

University of Tokyo: Advanced Algorithms Summer Lecture 6 27 May. Let s keep in mind definitions from the previous lecture:

Cryptography and RSA. Group (1854, Cayley) Upcoming Interview? Outline. Commutative or Abelian Groups

Week 7 An Application to Cryptography

YALE UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE

CPSC 467b: Cryptography and Computer Security

Course MA2C02, Hilary Term 2013 Section 9: Introduction to Number Theory and Cryptography

Introduction to Cryptography. Lecture 8

CSCI3390-Lecture 16: Probabilistic Algorithms: Number Theory and Cryptography

Discrete Logarithm Problem

CPSC 467: Cryptography and Computer Security

Simple Math: Cryptography

Mathematical Foundations of Public-Key Cryptography

Cryptography. P. Danziger. Transmit...Bob...

Logic gates. Quantum logic gates. α β 0 1 X = 1 0. Quantum NOT gate (X gate) Classical NOT gate NOT A. Matrix form representation

Applied Cryptography and Computer Security CSE 664 Spring 2018

NUMBER THEORY AND CODES. Álvaro Pelayo WUSTL

Ma/CS 6a Class 4: Primality Testing

Lecture V : Public Key Cryptography

YALE UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE

A Guide to Arithmetic

Candidates must show on each answer book the type of calculator used. Only calculators permitted under UEA Regulations may be used.

ECE596C: Handout #11

Evidence that the Diffie-Hellman Problem is as Hard as Computing Discrete Logs

RSA RSA public key cryptosystem

Question: Total Points: Score:

8 Elliptic Curve Cryptography

One can use elliptic curves to factor integers, although probably not RSA moduli.

Number Theory & Modern Cryptography

MODIFIED RSA IN THE DOMAIN OF GAUSSIAN INTEGERS

Solving Systems of Modular Equations in One Variable: How Many RSA-Encrypted Messages Does Eve Need to Know?

CIS 6930/4930 Computer and Network Security. Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography

Transcription:

CIRCUITS SYSTEMS SIGNAL PROCESSING c Birkhäuser Boston (2007) VOL. 26, NO. 3, 2007, PP. 353 359 DOI: 10.1007/s00034-006-0309-x THE CUBIC PUBLIC-KEY TRANSFORMATION* Subhash Kak 1 Abstract. This note proposes the use of the cubic transformation for public-key applications and random event and number generation, in a manner akin to the Rabin cipher. Transformations modulo a prime p or a composite n = pq, where p and q are primes, are so used that each transformed value has only three roots. Such a transformation, together with additional tag information, makes it possible to uniquely invert each transformed value. The effectiveness of the method as a random number generator (used in a variant with nine roots) comes from the fact that the cryptanalyst must contend with a ninefold branching at each step. Key words: Public-key cryptography, random number generation, cubic transformation. 1. Introduction Certain many-to-one mappings, when used together with additional side information, may be uniquely inverted and used for public-key cryptography and digital signatures. Given message m in Z n, we propose the use of the encryption function c = m 3 mod n, under suitable restrictions on n. We will be primarily interested in the case where 3 divides the Euler totient function φ(n), but 9 does not. For secure communication, Alice transmits to Bob c together with side information that depends on the message and is essential to uniquely identify it, which may be sent in an encrypted form or published. This transformation is akin to the mapping c = m 2 mod n proposed by Michael Rabin [3] that has the virtue of being provably as intractable as the factorization of n. In his article, Rabin did consider generalization beyond the squaring function, but he dismissed the use of higher powers for their relative inefficiency. Specifically, he spoke of the nine cube roots in the cubic mapping, having implicitly taken Received March 9, 2006; revised November 15, 2006; published online June 25, 2007. 1 Department of Electrical and Computer Engineering, Louisiana State University, Baton Rouge, Louisiana 70803, USA. E-mail: kak@ece.lsu.edu

354 KAK n to be divisible by 9, which made it less efficient than the squaring transformation with its four roots. The n that we choose ensures only three cube roots for each value. We also consider extensions of our side information scheme to the case when n is divisible by 9. Given its easy implementation, the proposed cubic transformation lends itself to several cryptographic applications. Specifically: It makes many more exponents available for the Rivest, Shamir, and Adleman (RSA) transformation [2], [4] and for key distribution systems that use powers of primitive roots. It makes it possible to use a small exponent to send information and implement digital signatures. It allows the generation of probability events based on whether the parity of the bit chosen by the recipient is the same as the one picked at the sending point. It may be used as an effective random number generator [1], [5], [6] for the case when φ(n) is divisible by 9, because the cryptanalyst must contend with the 9-branching tree at each step. 2. The properties of the cubic transformation Consider first the transformation c = m 3 mod p, where p = 3k + 1 is prime, and p = 3 mod 4. Because p 1 and 3 have at least one common divisor (namely 3), this transformation is not one to one. Thus, three different values of m maptothe same c. If p 1 is not divisible by 9, one can obtain one of the three values of c 1/3 by means of an inverse exponentiation operation: c 1/3 = c a(p 1)+3 9, (1) where a is an appropriate integer so that a(p 1)+3 9 is an integer. The proof of this assertion is in the fact that c p 1 = 1 by Fermat s little theorem and c a(p 1)+3 = c 3. Consequently, c a(p 1)+3 9 = c 1/3. One needs to pick a value of a so that the exponent of c on the right-hand side of equation (1) is an integer. An inverse by exponentiation does not exist if p 1 is divisible by 9. The cube roots of 1 are 1, α, and α 2 because if α is a root, so is its square. The three cube roots of 1 may be obtained by solving the equation α 3 1 = 0 (2) Apart from the obvious solution of 1, the other two solutions are obtained by solving α 2 + α + 1 = 0, which is possible if the square root of p 3 exists. This may be determined by the use of Euler s criterion that b is square modulo p if and only if b (p 1)/2 = 1 mod p.

PUBLIC-KEY CRYPTOGRAPHY 355 Table 1. Mapping for p = 31, α = 5 Values of m, mα, mα 2 The output c 1, 5, 25 1 2, 10, 19 8 3, 15, 13 27 4, 20, 7 2 6, 30, 26 30 8, 9, 14 16 11, 24, 27 29 12, 29, 21 23 16, 18, 28 4 17, 23, 22 15 Because p = 3 mod 4, the square root a 1/2 = a p+1 4, and we can write α = 1 ± 1 4 2 = 1 2 ) ( 1 ± (p 3) p+1 4. (3) The two roots can also be written as α and α 2, so the value of α may be equivalently expressed as α = p+1 1 + (p 3) 4 1 (p 3) p+1 4. (4) Note that 1+α+α 2 = 0 mod p. This follows from the fact that (1+α+α 2 ) 3 = 1. This means that the value of α 2 may be obtained by subtraction. The value of α, which depends only on n, may be published. The complexity of this computation is no more than that of exponentiation. Example 1. Consider c = m 3 mod 31. To compute α, we must first find 3 = 28. This can be reduced by using the transformation 28 31+1 4 = 28 8 which is equal to 20. Therefore, α = 21/2, 19/2, which may be reduced to 5 and 25. The cube roots of 1 are, therefore, 1, 5, 25. We may pick one of these, say 5, as α (Table 1). Let Alice choose m = 7. She computes m, mα, mα 2, which are 7, 4, 20. Rearranging them in ascending order, she gets 4, 7, 20, which correspond to the ranks 1, 2, 3, and thus the side information related to her choice of m is 2. Alice sends c = 7 3 mod 31 = 2, together with the rank information of 2 to Bob. Using equation (1), Bob finds that one of its cube roots is 2 7 mod 31 = 4. The other cube roots will be 4 5 = 20 mod 31, and 20 5 = 7 mod 31. The side information then helps him pick m = 7 as the message sent by Alice.

356 KAK 3. Cubic transformation modulo a composite number We now consider the cubic transformation modulo n = pq, where φ(n) = (p 1)(q 1) is divisible by 3 but not 9. Then the inverse is given by c 1/3 = c aφ(n)+3 9, (5) where a is such that aφ(n)+3 9, the exponent on the right-hand side of equation (5), is an integer. The method of inverse transformation is identical to that in the previous section, except that under certain circumstances the computation of α will require solving equation (2) modulo the two prime factors of n and then combining them to get the answer modulo n. Both Alice and Bob know the factors of n, but the eavesdropper does not. Example 2. Consider c = m 3 mod 77; p = 7, q = 11. To find the value of α by the method of equation (3), we must obtain n 3 = 74. But 74 is not square modulo 77; therefore, we find the solution directly by the Chinese remainder theorem (CRT), by solving α 3 1 = 0 separately for the two moduli 7 and 11. We can try to obtain these solutions using the method of equation (3). Note that only one new solution is required to fix α and, therefore, it is not essential that solutions to both the primes are found. For p = 7, p 3 = 4 is square modulo 7, and, therefore, the solutions are easily obtained: α p = 2, 4. But 8 is not square modulo 11; therefore, equation (3) cannot be used for it. We, therefore, merely use the obvious solution Combining, using the CRT, α = α p q q 1 p α q = 1. where x y = x mod y. Since 7 1 mod 11 = 8, and 11 1 mod 7 = 2, we have as the first value, and + α q p p 1 q mod pq, (6) α 1 = 2 11 2 + 1 7 8 = 100 = 23 mod 77 α 2 = 4 11 2 + 1 7 8 = 144 = 67 mod 77 as the second value. It is assumed that Alice and Bob have chosen in advance to use α = 23 for their communications. Consider that the message Alice wishes to send is m = 12.

PUBLIC-KEY CRYPTOGRAPHY 357 As in the previous case, she finds its companions by multiplying it successively by α = 23, thus obtaining 45, and 34. The rank order of her message is 1. She now performs the cubic transformation on her message 12, sending Bob c = 34 together with the side information of 1. Bob find its three cube roots by first calculating c 1 3 = c 7 = 34 7 = 34. The other cube roots are 34 23 = 12 mod 77 and 34 67 = 45 mod 77. Bob knows that the message was one of the three 12, 34, and 45. The side information tells him that the specific message out of this set is 12. Because there are three solutions, the side information will require 2 bits. 4. φ(n) divisible by 9 The method proposed will actually work even for φ(n) that is divisible by 9. Although each number will now have nine cube roots, they may be bunched together in separate groups in a variety of ways. The nine cube roots of 1 may be obtained by solving which may be simplified to α 9 1 = 0, (7) (α 1)(α 2 + α + 1)(α 6 + α 3 + 1) = 0. (8) Let the cube roots of 1 be put in numerical order and labeled 1 through 9. Alice would take the message she wishes to send to Bob and find all the multiples of it with the cube roots of 1, and find its relative position in the set. Then she will send the original message with this position number as side information. Bob will obtain the cube root of c and then list all its companion solutions. Given the position number, he will then be able to determine its value. Example 3. Consider c = m 3 mod 91, where φ(n) = 72. Because 88 is square modulo 91, one can use equation (3) to determine the cube roots of 1 modulo 91, and a simple calculation gives us the values 9 and 81. Because 9 and 81 are not cubes themselves, we cannot use equation (8) to find the remaining cube roots. Additional cube roots of 1 are obtained by solving the equation α 3 1 = 0 for the two moduli 7 and 13 (4 and 10 are square modulo 7 and 13, respectively) and using the CRT to combine the results. We end up with the following nine cube roots of 1: 1, 9, 16, 22, 29, 53, 74, 79, 81. Assume that Alice wishes to send the message 24 (which is relatively prime to 91 and therefore has nine cube roots) to Bob. She finds the multiples of 24 with

358 KAK the cube roots of 1, and obtains the set: 20, 24, 33, 34, 47, 59, 73, 76, and 89. The sequence number of 24 is 2, and this number is sent as side information, together with 24 3 = 83. Bob first finds the cube root of 83 by the use of the CRT or some probabilistic algorithm. This number is 33. Now he computes the multiples of 33 with all the cube roots of 1, obtaining: 33, 24, 73, 89, 47, 20, 76, 59, 34. The side information has revealed that the message has the second rank in this set, so he now knows that it is 24. 4.1. Probability events The nine cube roots of 1 may be written as numbers and their squares: 1, a, b, c, d, a 2, b 2, c 2, d 2. (9) These may be bunched together in three groups. Alternatively, if it is agreed by Alice and Bob that each group of three have 1 in it, these numbers may be put in four groups in the following manner: 1, a, a 2 ; 1, b, b 2 ; 1, c, c 2 ; 1, d, d 2. (10) Thus, in our example, the four sets will be 1, 9, 81; 1, 16, 74; 1, 22, 29; 1, 53, 79. Let the protocol require that Bob pick one of these four sets. Bob is also told the rank order within each subgroup. His chances of obtaining the correct message are 1 4. It is clear that the groupings could be done differently as well. But whichever way the groupings are done, they are incorporated in the protocol of the communicating parties. 5. Discussion Generalizations of this method to higher exponents may be readily made, but clearly the cubic transformation is the most efficient as it involves only three roots. For kth roots of 1 related to the solution to c = m k mod n, k odd, the number of groups to generate probability events in the manner of equation (10) will be k + 1, that is k2 1 k 1, corresponding to the probability of 1 k+1. 5.1. Random number generation The cubic transformation may also be used to generate random numbers s i in a manner analogous to the squaring transformation [1], [5], [6]. Let s 0 be the seed

PUBLIC-KEY CRYPTOGRAPHY 359 and let n = pq for primes p, q, where φ(n) is divisible by 9, and s 0 is relatively prime to n. Then, s i = (s i 1 ) 3 mod n. (11) The condition of divisibility of φ(n) by 9 is to increase the computational burden of inverting the transformation. The tree of possibilities has nine branches at each step, which makes the task of the cryptanalyst harder than the case where it has four steps as in a squaring transformation. For a cryptographically strong random number generator to radix-r that generates the sequence c i, one may reduce the numbers s i to the modulus r, where r < n: c i = s i mod r. (12) For binary random numbers generated by this equation, r will be 2. In conclusion, this paper shows that when the exponent of the cubic transformation divides the Euler totient function φ(n), making it a three-to-one mapping, it may be put to interesting cryptographic uses. In particular, it may be used for generation of events of certain probabilities, and it can also serve as an effective random number generator. References [1] L. Blum, M. Blum, and M. Shub, A simple unpredictable random number generator, SIAM Journal on Computing, 15, 364 383, 1986. [2] P. Garrett and D. Lieman (eds.), Public-Key Cryptography, American Mathematical Society, Providence, RI, 2005. [3] M. O. Rabin, Digitalized signatures and public-key functions as intractable as factorization, Technical Report MIT/LCS/TR-212, January 1979. [4] R. L. Rivest, A. Shamir, and L. Adleman, A method for obtaining digital signatures and publickey cryptosystems, Comm. ACM, 21, 128 138, 1978. [5] B. Schneier, Applied Cryptography, John Wiley, New York, 1996. [6] D. Welsh, Codes and Cryptography, Oxford University Press, Oxford, 1998.