An efficient variant of the RSA cryptosystem
|
|
|
- Dinah Kelley
- 10 years ago
- Views:
Transcription
1 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 14 An efficient variant of the RSA cryptosystem Cesar Alison Monteiro Paixão 1, Décio Luiz Gazzoni Filho 2 1 Instituto de Matemática e Estatística Universidade de São Paulo Rua do Matão, São Paulo SP 2 Departamento de Engenharia de Computação e Sistemas Digitais (PCS) Escola Politécnica Universidade de São Paulo Av. Prof. Luciano Gualberto trav. 3 n São Paulo SP [email protected],[email protected] Abstract. We describe an efficient combination of two variants of the RSA cryptosystem (MPrime and Rebalanced RSA) analyzed by Boneh and Shacham [Boneh and Shacham 2002]. For 2048-bit moduli, the resulting decryption process is about 8 times faster than that presented by Quisquater and Couvreur [Quisquater and Couvreur 1982] and about 27 times faster than the original cryptosystem. Resumo. Descrevemos uma combinação eficiente de duas variantes do criptossistema RSA (MPrime e Rebalanced RSA) analisadas por Boneh e Shacham [Boneh and Shacham 2002]. Para módulos de 2048 bits, o processo de decriptação resultante é cerca de 8 vezes mais rápido que o apresentado por Quisquater e Couvreur [Quisquater and Couvreur 1982], e cerca de 27 vezes mais rápido que o criptossistema original. 1. Introduction In this article we present an extension of the work of Boneh and Shacham on some variants of the RSA cryptosystem. We review two of the four variants (Batch RSA, Mprime RSA, Mpower RSA, Rebalanced RSA) analysed in [Boneh and Shacham 2002], with the goal of reducing the decryption and signature generation times of the original cryptosystem. We briefly discuss the feasibility of combining such variants to obtain a new more efficient one. As a result, we describe a new variant that we call RPrime RSA, which combines Rebalanced RSA and MPrime RSA. For private key operations, this method is about 27 times faster than plain RSA and about 8 times faster than the method presented by Quisquater and Couvreur in [Quisquater and Couvreur 1982]. This paper is organized as follows. In Section 2. we review the RSA cryptosystem and the Quisquater-Couvreur method [Quisquater and Couvreur 1982]. In Section 3. we describe Mprime and Rebalanced RSA, two variants of plain RSA. In Section 4. we Co-sponsored by Scopus Tecnologia S.A.
2 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 15 present RPrime RSA, our proposed combination of MPrime and Rebalanced methods. In Section 5. we present some theoretical and experimental results. In Section 6., we show how to generate a certificate that proves a lower bound on the security of the system to any interested third parties. We conclude in Section 7. with some comments on RPrime RSA. 2. RSA Cryptosystem Before presenting our proposal to improve the RSA cryptosystem, we review the three basic algorithms that constitute the RSA cryptosystem, together with a frequently used optimization technique. Algorithm 2..1 (RSA). 1. [Key generation] Generate two primes p, q and compute their product n = pq; Pick e such that gcd(e, φ(n)) = 1, where φ(n) = (p 1)(q 1); Compute d such that d = e 1 mod φ(n); The public-key is n, e, while the private key is n, d. 2. [Encryption] Given a plaintext M and the public key n, e, compute the ciphertext C = M e mod n. 3. [Decryption] Given a ciphertext C and the private key n, d, compute the plaintext M = C d mod n. In 1982 a new technique that recovers M from C by preprocessing the private key was introduced by J-J. Quisquater and C. Couvreur [Quisquater and Couvreur 1982]. Their method splits the private key in two parts, d p d (mod p 1) and d q d (mod q 1), and recovers the plaintext M from the ciphertext C by first computing modulo each factor of n, i.e. M p = C dp mod p and M q = C dq mod q, followed by reconstruction of M p and M q modulo n using the Chinese Reminder Theorem (CRT) [Jones and Jones 1998]. In this document we refer to this technique as QC RSA, and to the version created by Rivest, Shamir and Adleman [Rivest et al. 1978] as plain RSA. Using the criterion presented in [Boneh and Shacham 2002], we estimate the complexity of each method as a function of the number of operations required. Basic algorithms to compute exponentiations of the form C d mod n take time O(log dm(n)), where M(n) is the cost of multiplying two n-bit integers and can be taken as O(log 2 n). When d = O(n), these algorithms take time O(log 3 n). On the other hand, QC RSA has dp = dq = O( (n)) (so that log dp = log dq = O(log(n)/2)), for an overall cost of O(2(log(n)/2) 3 ). Thus, the theoretical speedup of QC RSA with respect to plain RSA (S RSA ) is S RSA = log 3 n 2(log(n)/2) 3 = 4. That is, the decryption procedure of QC RSA is about 4 times faster than that of plain RSA. A more refined analysis would take into account the cost of the final CRT and
3 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 16 would arrive at a slightly smaller speedup. Actual measurements suggest a gain of 3.24 for 768-bit moduli, 3.32 for 1024-bit moduli and 3.47 for 2048-bit moduli. This improvement led to the adoption of QC RSA (still in rudimentary form) in PKCS#1 since version 1.5, and today it can be considered the standard implementation of RSA. 3. RSA Variants In this section we present two of the four algorithms analyzed by Dan Boneh and Hovav Shacham in [Boneh and Shacham 2002] namely, MPrime RSA and Rebalanced RSA. The Batch RSA and MPower RSA variants are not described in detail here, although they are mentioned in section 5 for comparison purposes Mprime (multi-prime) RSA Mprime RSA was introduced by Collins et al. [Collins et al. 1997]. It differs from plain RSA by constructing moduli with k prime factors (n = p 1 p 2 p k ) instead of only two. The key generation, encryption and decryption algorithms are as follows: Algorithm 3..1 (Mprime RSA). 1. [Key generation] Generate k distinct primes p 1,..., p k, each lg(n)/k bits in size, and compute n = k i=1 p i; Pick e such that gcd(e, φ(n)) = gcd(e, k i=1 (p i 1)) = 1; Compute d such that d = e 1 mod φ(n); For 1 i k, compute d i d (mod p i 1); The public key is n, e, while the private key is n, d 1,..., d k. 2. [Encryption] Given a public key n, e and a message M Z/nZ, encrypt M as in plain RSA, i.e. C = M e mod n. 3. [Decryption] The decryption is an extension of the Quisquater-Couvreur method. To decrypt a ciphertext C, first compute M i = C d i mod p i for 1 i k. Next, apply the CRT to the M i s to obtain M = C d mod n. Mprime RSA achieves a decryption speedup relative to plain and QC RSA by reducing the size of exponents and moduli, at the cost of extra modular exponentiations. However, a linear increase in the number of exponentiations translates to a cubic decrease in the cost of each exponentiation, for an overall speedup that is quadratic in the number of factors k of the modulus. Formally, evaluating C d mod n for d = O(n) costs O(log 3 n), whereas Mprime RSA has d i = O(n 1/k ) (so that log d i = O(log(n)/k)) and multiplication cost of O((log(n)/k) 2 ) for an overall cost of O(k(log(n)/k) 3 ) = O(log 3 (n)/k 2 ). Since QC RSA is already 4 times as fast as plain RSA, the theoretical speedup of Mprime RSA over QC RSA (S QC ) is S QC = k 2 /4. Thus, for k = 3 we obtain a theoretical gain of 2.25 relative to QC RSA.
4 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais Rebalanced RSA Rebalanced RSA is based on comments by Wiener [Boneh and Shacham 2002, Wiener 1990] on the weakness in the use of the private exponent d. This variant improves decryption performance at the expense of encryption performance. This is done by choosing d such that d mod p 1 and d mod q 1 are small (on the order of s bits; usually s = 160). Unfortunately, such a choice of d leads to large values of e (as large as n itself). We now present the key generation, encryption and decryption procedures for Rebalanced RSA. Algorithm 3..2 (Rebalanced RSA). 1. [Key generation] Generate two random primes p, q, each lg(n)/2 bits in size, with gcd(p 1, q 1) = 2, and compute n = pq; Generate two random s-bit integers d p and d q, such that gcd(d p, p 1) = gcd(d q, q 1) = 1 and d p d q (mod 2); Apply the CRT to obtain d such that d d p (mod p 1) and d d q (mod q 1); Compute e = d 1 mod φ(n); The public key is n, e, while the private key is p, q, d p, d q. 2. [Encryption] Apply the encryption procedure of plain RSA. Note though that e = O(n) instead of O(1) as in plain RSA, thus public-key operations will be more costly. 3. [Decryption] Apply the decryption procedure of QC RSA. We now consider the efficiency of Rebalanced RSA. We recall that d p, d q have s bits each (hence log d p = log d q = O(s)). The cost of modular multiplications is the same as that of QC RSA, so the only difference is the number of multiplications computed during each modular exponentiation. As log d p = log d q = O(log(n)/2) for QC RSA, we arrive at a theoretical speedup of Rebalanced RSA with respect to QC RSA (S QC ) of S QC = log n 2s. This result implies that, for moduli of 2048 bits with s = 160, Rebalanced RSA is theoretically 6.4 faster than QC RSA (practical results are provided in Section 5.). Now we describe our proposed variant, Rprime RSA. 4. RPrime RSA The Rebalanced RSA and Mprime RSA methods can be efficiently combined [Boneh and Shacham 2002]. The key generation procedure of Rebalanced RSA (modified for k primes) is employed together with the decryption procedure of Mprime RSA. The new key generation, encryption and decryption algorithms are as follows: Algorithm 4..1 (RPrime RSA). 1. [Key generation] Generate k random primes p 1,..., p k, each lg(n)/k bits in size, with gcd(p 1 1,..., p k 1) = 2, and compute n = k i=1 p i; Generate k random s-bit integers d p1,..., d pk such that gcd(d p1, p 1 1) =... =
5 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 18 gcd(d pk, p k 1) = 1 and d p1... d pk (mod 2); Apply the CRT to obtain d such that d d pi (mod p i 1) for 1 i k [Paixão 2003]; Calculate e = d 1 mod φ(n); The public key is n, e, while the private key is p 1,..., p k, d p1,..., d pk. 2. [Encryption] Apply the encryption procedure of plain RSA. As was the case in Rebalanced RSA, we have e = O(n) instead of O(1) as in plain RSA, leading to more costly public-key operations. 3. [Decryption] Compute M i = C dp i mod p i for 1 i k; Apply the CRT to the M i s to obtain M = C d mod n. Given that the d i s have s bits each (hence log d i = O(s) for all i), and the cost of multiplication is (log(n)/k) 2, we arrive at an overall cost of O(ks(log(n)/k) 2 ) = O(s log 2 (n)/k). The theoretical speedup over QC RSA (S QC ) is then 4.1. Security of RPrime RSA S QC = log3 (n)/4 s log 2 (n)/k = k log n. 4s The security of RPrime RSA depends on the security offered by the private exponent d (as in Rebalanced RSA), under the constraints described in Section 4., and on the size of the primes employed (as in Mprime RSA). The private exponent d is large enough that attacks on small d are ineffective [Boneh 1999]. Attacks on small public exponents e are not a problem either, due to the large e s produced by the key generation procedure. For k = 3 and using exponents d p1, d p2 and d p3 of 160 bits each, the complexity of factoring n is O(2 80 ) using the attack of [Boneh and Shacham 2002, Wiener 1990]. To prevent factorization by ECM, primes larger than 256 bits must be employed, hence a modulus of 1024 bits can have no more than three prime factors, while a 768-bit modulus should employ at most two factors for the same reason. M. Jason Hinek [Hinek 2002] analyzed a partial key exposure attack on MPrime RSA, concluding that the attack is ineffective for three and four primes. He also obtained experimental evidence that the attack has running time exponential in the size of the modulus n, which we believe can be extended for the security of Rprime RSA. 5. Experimental Results In order to get a better estimate of the decryption performance of RPrime RSA, we benchmark it against other variants. The first we ll consider is Batch RSA [Fiat 1989], which simultaneously decrypts b messages with the approximate cost of a single exponentiation (of order n) and some small exponentiations (using public exponents). The second one uses moduli of the form n = p k 1 q [Takagi 1998] and is called MPower RSA [Boneh and Shacham 2002]. Theoretical results shown in previous sections and experimental results obtained for the decryption algorithms are listed in Table 1. All measurements were performed
6 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 19 Speedup (S QC ) Theoretical Experimental Modulus Variant Batch ,47 2,78 3,42 Mprime 2,25 2,25 2,25 1,95 1,89 1,97 Mpower 3,37 3,37 3,37 2,49 2,54 2,79 Rebalanced 2,40 3,20 6,40 2,52 3,02 5,98 Rprime 3,60 4,80 9,60 3,00 3,88 7,83 Table 1. Theoretical and Pratical speedup related to the decryption exponentiations - For b = 4, k = 3 e s = 160. on an AMD Athlon XP platform, with 256 MB of RAM and using the GNU MP library [Granlund 2005] for integer arithmetic. Our methodology consisted of generating 1000 messages and 20 keys for each moduli size, and computing the arithmetic mean of the time spent to decrypt each message. For more details (standard deviations, etc.) see [Paixão 2003]. Experimental results differ from the theoretical results mainly because the observed times include not only exponentiations but some overhead (including CRT computations) that was neglected in our theoretical analyses. Batch RSA had the most noticeable decrease from expected results to experimental measurements. The small exponentiations and multiplications, which weren t taken into account in our analysis, are significant for the actual performance of this variant. The remaining variants showed only a slight decrease from expected results. Another fact to consider is that speed up of Rebalanced and Rprime variants significantly increases with larger moduli while the others variants remains stable. This is because we consider s fixed and equal 160 bits (recall that s is the size of the exponent used in decryption algorithm), while this exponent increases with moduli size for all other variants. Overall, the best performing variant was RPrime RSA, showing a 30% improvement over Rebalanced RSA and 783% improvement over QC RSA, both for 2048 bits moduli. Compared to the plain RSA system, this represents a gain of approximately 2720% or 27 times [Paixão 2003]. Analyzing the variants described in [Boneh and Shacham 2002], we note that some other combinations might be attempted. One possibility would be a mix of Mprime RSA or QC RSA with Batch RSA [Fiat 1989]. That is, reduce each C i (from Batch RSA) modulo p i, 1 i k, later reconstructing these results by the CRT 1. Unfortunately, as the decryption process of Batch RSA requires the execution of small exponentiations for each prime employed 2, it is more advantageous to implement this method with parameter k = 2, that is, using QC RSA instead of Mprime RSA. One could also consider combining Rebalanced RSA and Mpower RSA. Unfortunately, this variant has bad performance for both encryption and decryption. The reason 1 If Batch RSA is combined with QC RSA, we have k = 2. 2 Hence, the larger the parameter k, the more trees will be used and consequently more small exponentiations will be necessary, reducing the gain obtained in the exponentiation phase [Paixão 2003].
7 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 20 is that MPower RSA s decryption algorithm employs the public exponent e, and in Rebalanced RSA the exponent e is much larger than plain RSA s public exponents, increasing the cost of modular exponentiations for both procedures. We therefore do not recommend this variant Advantagens, disadvantages and applications of new method We mention here some characteristics of our proposed variant: Uses the same encryption and decryption algorithms as Mprime RSA, allowing code reuse and portability for PKCS#1-compliant implementations; Achieves excellent decryption performance (gain of 7,83 on QC RSA for n = 2048); Shows performance increases with larger moduli (if s is fixed); Is not recommended for moduli of up to 768 bits (to prevent factorization by ECM [Paixão 2003]); Has low encryption performance due to large public exponent e (similar to the decryption performance of plain RSA) [Paixão 2003]. The idea of trading off encryption for decryption performance, used by Rebalanced RSA and Rprime RSA, may not be seen as an advantage in practice. However, there are applications where it is desirable. A bank, for instance, has to digitally sign documents for all of its customers, whereas each customer only has to check their own signature. In this situation, it is reasonable to offset some of the computional effort demanded in generating signatures to the verifier. A second scenario are applications running on handheld devices such as PDAs, which generally possess limited computational resources. If the handheld device is performing private-key operations while communicating with more powerful devices (such as servers, or when docking to notebooks or desktops), then RPrime RSA will achieve better overall performance, as the computational effort is more evenly distributed according to resources available to each party. An even better alternative would be to choose between Mprime and RPrime RSA keys according to the type of communication being performed and the devices involved. 6. Certification of ordinary and multiprime RSA moduli The security of multiprime RSA variants is threatened by insecure parameter choices. Since only the private key owner is aware of how many primes were employed and how large they are, it may be tempting to trade off security for performance in a dangerous fashion, relying on the adversary s supposed inability to tell whether a given RSA modulus is comprised of many small primes or a few large primes. If this practice becomes commonplace, then the perceived security of multiprime RSA variants will be reduced. In this section we propose a technique that can provide a lower bound on the size of the factors in an RSA modulus. As a side effect, the maximum number of prime factors is provided as well 3. It applies equally well to ordinary RSA and multiprime variants. 3 While the exact number of factors is not provided, this is of little consequence to the difficulty of factoring the modulus.
8 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 21 Speedup (S QC ) Theoretical Experimental Modulus Variant Batch ,47 2,78 3,42 Mprime 2,25 2,25 2,25 1,95 1,89 1,97 Mpower 3,37 3,37 3,37 2,49 2,54 2,79 Rebalanced 2,40 3,20 6,40 2,52 3,02 5,98 Rprime 3,60 4,80 9,60 3,00 3,88 7,83 Table 1. Theoretical and Pratical speedup related to the decryption exponentiations - For b = 4, k = 3 e s = 160. on an AMD Athlon XP platform, with 256 MB of RAM and using the GNU MP library [Granlund 2005] for integer arithmetic. Our methodology consisted of generating 1000 messages and 20 keys for each moduli size, and computing the arithmetic mean of the time spent to decrypt each message. For more details (standard deviations, etc.) see [Paixão 2003]. Experimental results differ from the theoretical results mainly because the observed times include not only exponentiations but some overhead (including CRT computations) that was neglected in our theoretical analyses. Batch RSA had the most noticeable decrease from expected results to experimental measurements. The small exponentiations and multiplications, which weren t taken into account in our analysis, are significant for the actual performance of this variant. The remaining variants showed only a slight decrease from expected results. Another fact to consider is that speed up of Rebalanced and Rprime variants significantly increases with larger moduli while the others variants remains stable. This is because we consider s fixed and equal 160 bits (recall that s is the size of the exponent used in decryption algorithm), while this exponent increases with moduli size for all other variants. Overall, the best performing variant was RPrime RSA, showing a 30% improvement over Rebalanced RSA and 783% improvement over QC RSA, both for 2048 bits moduli. Compared to the plain RSA system, this represents a gain of approximately 2720% or 27 times [Paixão 2003]. Analyzing the variants described in [Boneh and Shacham 2002], we note that some other combinations might be attempted. One possibility would be a mix of Mprime RSA or QC RSA with Batch RSA [Fiat 1989]. That is, reduce each C i (from Batch RSA) modulo p i, 1 i k, later reconstructing these results by the CRT 1. Unfortunately, as the decryption process of Batch RSA requires the execution of small exponentiations for each prime employed 2, it is more advantageous to implement this method with parameter k = 2, that is, using QC RSA instead of Mprime RSA. One could also consider combining Rebalanced RSA and Mpower RSA. Unfortunately, this variant has bad performance for both encryption and decryption. The reason 1 If Batch RSA is combined with QC RSA, we have k = 2. 2 Hence, the larger the parameter k, the more trees will be used and consequently more small exponentiations will be necessary, reducing the gain obtained in the exponentiation phase [Paixão 2003].
9 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 22 p = u 2 + v 2. The theory of complex multiplication states that elliptic curves E(Z/pZ) exist such that #E(Z/pZ) = p + 1 ± 2u or p + 1 ± 2v [Atkin and Morain 1993]. It is readily seen that these curve orders can be factored as #E(Z/pZ) = (u ± 1) 2 + v 2 or u 2 + (v ± 1) 2. The result is more naturally interpreted in terms of Gaussian integers: to each prime p = u + iv, we associate four curves with complex multiplication by Z[i], whose orders are given by the Gaussian integers adjacent to p in the Gaussian plane. In Section 6.3., the reciprocal of this statement will prove useful: if a Gaussian integer r is adjacent to a Gaussian prime, then r is the order of an elliptic curve modulo p with complex multiplication by Z[i]. Furthermore, these curves can be constructed in a straightforward manner [Atkin and Morain 1993]. If required, the decomposition p = u 2 + v 2 is efficiently produced by the algorithm of Cornacchia, with cost less than that of a square root modulo p and a gcd with arguments the size of p. Next a quadratic non-residue g modulo p must be found. Since (p 1)/2 integers modulo p are quadratic non-residues, and Jacobi testing by quadratic reciprocity is quite efficient, this step is of little consequence to the overall running time. Then the curves y 2 = x 3 g k x, k = 0, 1, 2, 3 have complex multiplication by Z[i] and distinct group orders The certification method We rely on the following result, which is a direct modification of the Goldwasser-Kilian ECPP theorem [Goldwasser and Kilian 1986] and was stated and proved by David Broadhurst in [Broadhurst 2005a]. Throughout this section, n is a composite that is not a power, and has k factors. Theorem Let S be a prime. Suppose there exists an elliptic pseudocurve 6 E(Z/nZ) and a point P = (x, y) on E, such that SP = O. Given e such that S > (n e + 1) 2, then the prime factors of n are lower bounded by n 2e. Proof. Let p be any prime factor of n. Then S #E(Z/pZ). By Hasse s theorem, #E(Z/pZ) < ( p+1) 2. It follows that S < ( p+1) 2, but S > (n e +1) 2 by hypothesis. Then ( p + 1) 2 > (n e + 1) 2, so that p > n e and finally p > n 2e. The following corollary bounds the number of prime factors of n. Corollary If e > 1/(2j) in Theorem 6..1, then n has at most j 1 prime factors. 6 An elliptic pseudocurve is an elliptic curve modulo a composite integer n, which doesn t give rise to a valid group of points over the curve (this only happens if the modulus n is prime), but still retains many of the properties of an actual elliptic curve. See [Cohen 1996] and [Crandall and Pomerance 2000] for more information on pseudocurves.
10 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 23 Proof. Let p i denote the i-th of k prime factors of n. If e > 1/(2j), then p i > n 1/j for all p i. We have k k n = p i > n 1/j = ( n 1/j) k i=1 and this leads to a contradiction if k j. i=1 Note that Theorem 6..1 requires the point P = (x, y) to have order S when considered modulo each of the prime factors of n = p i indeed, if SP = O (mod p) i but SP O (mod p) j for some i, j, then x 0 (mod p) i but x 0 (mod p) j, so gcd(x, n) = p i provides a factor of the composite. Recall that S #E(Z/p i Z), 1 i k. To find p i s that satisfy this relationship, it s easier to devise a search procedure that begins by constructing valid curve orders with shared factor S, then seeks primes p i such that there exist elliptic curves modulo each p i with the desired orders. Note that this search procedure is performed backwards in comparison to the ECPP algorithm, which is given a prime p and seeks an elliptic curve with certain properties. At first, it s not clear how to produce curve orders divisible by S from the defining equations #E(Z/p i Z) = (u±1) 2 +v 2, u 2 +(v±1) 2 and p i = u 2 +v 2. In principle, one can pick v at random and compute u such that u 2 (v ± 1) 2 (mod S), until p i = u 2 + v 2 is prime; then S #E(Z/p i Z) by construction. (Clearly this argument is symmetric in u and v.) Doing this for each p i, the composite n can be constructed. However, since the square root u 2 (mod S) is typically as large as S itself, the constructed composite will be too large to fulfill the conditions of Theorem The key insight is to work over Z[i]: choose a rational prime S 1 (mod 4) and factor it over Z[i] as S = u S + iv S. Then pick Gaussian integers g = u g + iv g at random (subject to size restrictions, as will be clear) and compute Sg until an integer adjacent to Sg in the Gaussian plane is prime; we ll call it p 1. (When considered as a rational prime, we ll employ the square of its norm.) Then an elliptic curve y 2 = x 3 + a p1 x (mod p) 1 exists such that #E(Z/p 1 Z) = Sg 2. Construct a point P p1 E(Z/p 1 Z) of order S by generating a random point P 0, computing P p1 = (#E(Z/p 1 Z)/S)P 0 and checking that P p1 O (which will almost always be the case). Repeat this procedure for i = 2,..., k to find other primes p i with #E(Z/p i Z) divisible by S and a point P pi E(Z/p i Z) of order S. Apply the Chinese Remainder Theorem to the parameters a p1,..., a pk of the constructed elliptic curves, and coordinatewise to the points P p1,..., P pk, to construct an elliptic pseudocurve E(Z/nZ) : y 2 = x 3 + a n x (mod n) and a point P n on E(Z/nZ) of order S. The witness S, the composite n, the pseudocurve E(Z/nZ) and the point P n E(Z/nZ) thus obtained satisfy the conditions of Theorem We formalize this search procedure in the following algorithm: Algorithm Given l, k and prime S, S 1 (mod 4), this algorithm generates an l-bit k-prime RSA modulus n and a certificate that n s factors are lower-bounded by S. 1. [Factor S over Z[i]] Apply Cornacchia s algorithm to S to obtain u 2 S + v2 S = S; for (1 j k) {
11 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais [Find suitable curve orders] forever{ Generate random u j, v j of size (l/k lg S 2)/2 bits each; Compute a candidate order #E j = 2S(u j + iv j ) = u + iv; if (one of {(u ± 1) 2 + v 2, u 2 + (v ± 1) 2 } is prime) { Set p j to the prime value; break; } } 3. [Construct CM curves with desired orders] Find a quadratic non-residue g modulo p j ; for (0 k 3) { Let E(Z/p j Z) be the curve y 2 = x 3 g k (mod p j ); Find a point P 0 on E(Z/p j Z); if ((#E j )P 0 = O) { a j = g k ; break; } } 4. [Find points of order S] while ((#E j /S)P 0 = O) Find another point P 0 on E(Z/p j Z); P j = (x j, y j ) = (#E j /S)P 0 ; } 5. [Lift parameters to Z/nZ] Using the Chinese Remainder Theorem: Compute a n such that a n a j (mod p j ) for 1 j k; Compute P n = (x n, y n ) such that x n x j (mod p j ) and y n y j (mod p j ) for 1 j k; 6. [Return results] return {{p 1,..., p k }, E(Z/nZ), P n }; An explanation is in order concerning the factor 2 in the candidate group orders. In the equation #E = u 2 + v 2 = 2S(u j + iv j ), the factor 2 guarantees that u v 0 (mod 2), so that the integers {(u ± 1) 2 + v 2, u 2 + (v ± 1) 2 } being tested for primality are always odd (being the sum of an even and an odd integer), thus twice as likely to be prime as random integers of the same size. The attentive reader may question the need for CM curves, as it appears that supersingular curves could be used instead. Unfortunately, the simple relationship between a prime p and the curve order p+1 of a supersingular curve modulo p works against the goal of hiding the factor p inside a composite n. In fact, given a witness S p+1, then trivially p 1 (mod S). If S > n 1/4, which will often be the case, one can apply Coppersmith s improvement of Lenstra s divisors in residue classes algorithm [Coppersmith et al. 2004], which finds the factors of n in polynomial time with the information provided. On the other hand, for an elliptic curve E(Z/pZ) with CM by Z[i], the relationship between p and #E(Z/pZ) is trivial if the decomposition of p as a Gaussian prime is known, but hard to deduce otherwise. Since factorization into Gaussian primes can be no
12 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 25 easier than integer factorization, this provides an argument for the difficulty of factoring a composite given the information provided by a semiprimality certificate. It is desirable to compress the size of semiprimality certificates. Our first strategy is to reduce the representation of S by picking a prime of special form, say S = r s + e for small r, s, e. A second strategy is to reduce the size of the curve parameter a. For instance, one could fix a = ±1. Although a valid curve would eventually be found by trial and error, after looking at 4 k curves on average, it s possible to do better. If p 5 (mod 8) and p = u 2 + v 2, then one can take u 1 (mod 8) and v 4 (mod 8). It s known [Morain 1998] that the curves E : y 2 = x 3 + x (mod p) and E : y 2 = x 3 x (mod p) have orders (u 1) 2 + v 2 and (u + 1) 2 + v 2, respectively. By considering candidate orders of these two forms only, the pigeonhole principle states that at most 2k 1 candidates are required before two of them share the same a (either 1 or -1) Parameter selection for certificates The only remaining question is the size of S relative to n. Recall that n has k prime factors. Then obviously S < n 1/k, by the argument in the proof of Corollary One shouldn t take S too close to this bound, though, since n can be factored with effort O(n 1/k /S) by a simple brute-force attack: choose a random Gaussian integer g of size (lg(n)/k lg S 2)/2 bits, compute candidate factors p = 2Sg + i j 2, 0 j 3 and test if p n. To deflect this attack, one must choose S small enough in comparison to n 1/2 that generic factorization algorithms are easier to apply than this brute-force method. With this in mind, we suggest the following choice for S: given the rough complexity c of factoring n, obtained by plugging in n or its factors p i into the complexity estimates of NFS or ECM, choose S such that c < n 1/k /S (or equivalently S < n 1/k /c). It is also prudent to add a small safety factor to S (by reducing its size, we stress), to ensure that factoring n by NFS or ECM is easier than an exhaustive search of factors using the method above. 7. Conclusion Considering the comments and recommendations of Section 4.1., we suggest the following guidelines for deploying these algorithms: For good encryption and decryption performance, and interoperability with systems that already implement PKCS#1, we recommend the use of MPrime RSA. Although Mpower and Batch RSA achieve better performance than MPrime, they are not specified in PKCS#1. Moreover, we emphasize the fragility of keys that must be employed to obtain good performance out of Batch RSA, and the use of an agglomerate of messages, which will certainly affect the performance. For applications that demand high decryption and signing performance, the best choice is RPrime RSA, which for 2048-bits moduli showed an improvement of 30% over Rebalanced RSA, being therefore about 27 times faster than plain RSA and about 8 times faster than QC RSA (Table 1). Besides, this variant can interoperate with systems that implement PKCS #1. Also, systems that implement Mprime RSA can be easily modified to implement RPrime RSA as well; it suffices to modify the key generation procedure or create a hybrid key system.
13 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 26 We also presented a certification method that lower-bounds the size of prime factors of a multi-prime RSA modulus. The method is practical and easy to implement if an elliptic curve arithmetic library is available, and provides third-parties with an assurance of the security level of a given multi-prime RSA modulus against factoring attacks. 8. Acknowledgements The first author would like to thank Paulo Barreto and Arthur Wongtschowski for their comments during the development of this work. The second author would also like to thank Paulo Barreto for his assistance and for putting the two authors in touch in the first place. He is also thoroughly indebted to David Broadhurst, which pioneered the certification method for semiprimes, provided some proofs and optimizations, and was infinitely patient as he investigated many deadends, before finally arriving at the present algorithm. Lastly, David holds the current semiprimality certificate record, having produced a certified semiprime of 35 thousand decimal digits [Broadhurst 2005a]. References Atkin, A. O. L. and Morain, F. (1993). Elliptic curves and primality proving. Mathematics of Computation, 61: Boneh, D. (1999). Twenty years of attacks on the RSA. Notices of the American Mathematical Society, 46(2): Boneh, D. and Shacham, H. (2002). Fast variants of RSA. RSA Laboratories. Broadhurst, D. (2005a). A proof of semiprimality at digits. http: //listserv.nodak.edu/cgi-bin/wa.exe?a2=ind0503&l= nmbrthry&p=1303. Broadhurst, D. (2005b). Proven hard-to-factor semiprime. com/group/primeform/message/5449. Cohen, H. (1996). A Course in Computational Algebraic Number Theory, volume 138 of Graduate Texts in Mathematics. Springer, second edition. Collins, T., Hopkins, D., Langford, S., and Sabin, M. (1997). Public key cryptographic apparatus and method. US Patent #5,848,159. Coppersmith, D., Howgrave-Graham, N., and Nagaraj, S. V. (2004). Divisors in residue classes, constructively. Cryptology eprint Archive, Report 2004/339. Crandall, R. and Pomerance, C. (2000). Prime Numbers: A Computational Perspective. Springer-Verlag, New York. Fiat, A. (1989). Batch RSA. In Advances in Cryptology: Proceedings of CRYPTO 89, volume 435 of Lecture Notes in Computer Science, pages Gazzoni Filho, D. L. (2005). Re: Proven hard-to-factor semiprime. yahoo.com/group/primeform/message/5481. Goldwasser, S. and Kilian, J. (1986). Almost all primes can be quickly certified. In Proc. 18th Annual ACM Symp. Theory of Computing, pages
14 V Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 27 Granlund, T. (2005). GNU MP arithmetic library. Hinek, M. J. (2002). Low public exponent partial key and low private exponent attacks on multi-prime RSA. Master s thesis, Waterloo University. Jones, G. A. and Jones, J. M. (1998). Elementary Number Theory. Springer Undergraduate Mathematics Series. Springer-Verlag, New York. Lenstra Jr., H. W. (1987). Factoring integers with elliptic curves. Ann. Math., 2: Morain, F. (1998). Primality proving using elliptic curves: an update. In Alg. Number Theory: Proc. ANTS-III, volume 1423 of LNCS, pages Springer-Verlag. Paixão, C. A. M. (2003). Implementação e análise comparativa de variações do criptossistema RSA. Master s thesis, Inst. de Matemática e Estatística, Univ. de São Paulo. Quisquater, J.-J. and Couvreur, C. (1982). Fast decipherment algorithm for RSA publickey cryptosystem. Eletronic Letters, 18: Reble, D. (2005). Untitled mailing list post. isp.txt. Rivest, R., Shamir, A., and Adleman, L. (1978). A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM, 21: Takagi, T. (1998). Fast RSA-type cryptosystem modulo p k q. In Proceedings of CRYPTO 98, volume 1462 of Lecture Notes in Computer Science, pages Wiener, M. (1990). Cryptanalysis of short RSA secret exponents. IEEE Transactions on Information Theory, 36(3):
Klaus Hansen, Troels Larsen and Kim Olsen Department of Computer Science University of Copenhagen Copenhagen, Denmark
On the Efficiency of Fast RSA Variants in Modern Mobile Phones Klaus Hansen, Troels Larsen and Kim Olsen Department of Computer Science University of Copenhagen Copenhagen, Denmark Abstract Modern mobile
RSA Attacks. By Abdulaziz Alrasheed and Fatima
RSA Attacks By Abdulaziz Alrasheed and Fatima 1 Introduction Invented by Ron Rivest, Adi Shamir, and Len Adleman [1], the RSA cryptosystem was first revealed in the August 1977 issue of Scientific American.
International Journal of Information Technology, Modeling and Computing (IJITMC) Vol.1, No.3,August 2013
FACTORING CRYPTOSYSTEM MODULI WHEN THE CO-FACTORS DIFFERENCE IS BOUNDED Omar Akchiche 1 and Omar Khadir 2 1,2 Laboratory of Mathematics, Cryptography and Mechanics, Fstm, University of Hassan II Mohammedia-Casablanca,
Primality - Factorization
Primality - Factorization Christophe Ritzenthaler November 9, 2009 1 Prime and factorization Definition 1.1. An integer p > 1 is called a prime number (nombre premier) if it has only 1 and p as divisors.
MATH 168: FINAL PROJECT Troels Eriksen. 1 Introduction
MATH 168: FINAL PROJECT Troels Eriksen 1 Introduction In the later years cryptosystems using elliptic curves have shown up and are claimed to be just as secure as a system like RSA with much smaller key
The Mathematics of the RSA Public-Key Cryptosystem
The Mathematics of the RSA Public-Key Cryptosystem Burt Kaliski RSA Laboratories ABOUT THE AUTHOR: Dr Burt Kaliski is a computer scientist whose involvement with the security industry has been through
Faster deterministic integer factorisation
David Harvey (joint work with Edgar Costa, NYU) University of New South Wales 25th October 2011 The obvious mathematical breakthrough would be the development of an easy way to factor large prime numbers
Integer Factorization using the Quadratic Sieve
Integer Factorization using the Quadratic Sieve Chad Seibert* Division of Science and Mathematics University of Minnesota, Morris Morris, MN 56567 [email protected] March 16, 2011 Abstract We give
Cryptography and Network Security Chapter 9
Cryptography and Network Security Chapter 9 Fifth Edition by William Stallings Lecture slides by Lawrie Brown (with edits by RHB) Chapter 9 Public Key Cryptography and RSA Every Egyptian received two names,
A Factoring and Discrete Logarithm based Cryptosystem
Int. J. Contemp. Math. Sciences, Vol. 8, 2013, no. 11, 511-517 HIKARI Ltd, www.m-hikari.com A Factoring and Discrete Logarithm based Cryptosystem Abdoul Aziz Ciss and Ahmed Youssef Ecole doctorale de Mathematiques
U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009. Notes on Algebra
U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009 Notes on Algebra These notes contain as little theory as possible, and most results are stated without proof. Any introductory
Advanced Cryptography
Family Name:... First Name:... Section:... Advanced Cryptography Final Exam July 18 th, 2006 Start at 9:15, End at 12:00 This document consists of 12 pages. Instructions Electronic devices are not allowed.
CIS 5371 Cryptography. 8. Encryption --
CIS 5371 Cryptography p y 8. Encryption -- Asymmetric Techniques Textbook encryption algorithms In this chapter, security (confidentiality) is considered in the following sense: All-or-nothing secrecy.
Public Key Cryptography: RSA and Lots of Number Theory
Public Key Cryptography: RSA and Lots of Number Theory Public vs. Private-Key Cryptography We have just discussed traditional symmetric cryptography: Uses a single key shared between sender and receiver
Primality Testing and Factorization Methods
Primality Testing and Factorization Methods Eli Howey May 27, 2014 Abstract Since the days of Euclid and Eratosthenes, mathematicians have taken a keen interest in finding the nontrivial factors of integers,
Discrete Mathematics, Chapter 4: Number Theory and Cryptography
Discrete Mathematics, Chapter 4: Number Theory and Cryptography Richard Mayr University of Edinburgh, UK Richard Mayr (University of Edinburgh, UK) Discrete Mathematics. Chapter 4 1 / 35 Outline 1 Divisibility
Elements of Applied Cryptography Public key encryption
Network Security Elements of Applied Cryptography Public key encryption Public key cryptosystem RSA and the factorization problem RSA in practice Other asymmetric ciphers Asymmetric Encryption Scheme Let
Lecture 13 - Basic Number Theory.
Lecture 13 - Basic Number Theory. Boaz Barak March 22, 2010 Divisibility and primes Unless mentioned otherwise throughout this lecture all numbers are non-negative integers. We say that A divides B, denoted
Software Tool for Implementing RSA Algorithm
Software Tool for Implementing RSA Algorithm Adriana Borodzhieva, Plamen Manoilov Rousse University Angel Kanchev, Rousse, Bulgaria Abstract: RSA is one of the most-common used algorithms for public-key
On Generalized Fermat Numbers 3 2n +1
Applied Mathematics & Information Sciences 4(3) (010), 307 313 An International Journal c 010 Dixie W Publishing Corporation, U. S. A. On Generalized Fermat Numbers 3 n +1 Amin Witno Department of Basic
Breaking The Code. Ryan Lowe. Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and
Breaking The Code Ryan Lowe Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and a minor in Applied Physics. As a sophomore, he took an independent study
Notes on Network Security Prof. Hemant K. Soni
Chapter 9 Public Key Cryptography and RSA Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared by both sender and receiver if this key is disclosed communications
SECURITY IMPROVMENTS TO THE DIFFIE-HELLMAN SCHEMES
www.arpapress.com/volumes/vol8issue1/ijrras_8_1_10.pdf SECURITY IMPROVMENTS TO THE DIFFIE-HELLMAN SCHEMES Malek Jakob Kakish Amman Arab University, Department of Computer Information Systems, P.O.Box 2234,
Number Theory. Proof. Suppose otherwise. Then there would be a finite number n of primes, which we may
Number Theory Divisibility and Primes Definition. If a and b are integers and there is some integer c such that a = b c, then we say that b divides a or is a factor or divisor of a and write b a. Definition
Computer and Network Security
MIT 6.857 Computer and Networ Security Class Notes 1 File: http://theory.lcs.mit.edu/ rivest/notes/notes.pdf Revision: December 2, 2002 Computer and Networ Security MIT 6.857 Class Notes by Ronald L. Rivest
Overview of Public-Key Cryptography
CS 361S Overview of Public-Key Cryptography Vitaly Shmatikov slide 1 Reading Assignment Kaufman 6.1-6 slide 2 Public-Key Cryptography public key public key? private key Alice Bob Given: Everybody knows
Cryptography and Network Security
Cryptography and Network Security Fifth Edition by William Stallings Chapter 9 Public Key Cryptography and RSA Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared
The application of prime numbers to RSA encryption
The application of prime numbers to RSA encryption Prime number definition: Let us begin with the definition of a prime number p The number p, which is a member of the set of natural numbers N, is considered
Factoring N = p r q for Large r
Factoring N = p r q for Large r Dan Boneh 1,GlennDurfee 1, and Nick Howgrave-Graham 2 1 Computer Science Department, Stanford University, Stanford, CA 94305-9045 {dabo,gdurf}@cs.stanford.edu 2 Mathematical
Number Theory and Cryptography using PARI/GP
Number Theory and Cryptography using Minh Van Nguyen [email protected] 25 November 2008 This article uses to study elementary number theory and the RSA public key cryptosystem. Various commands will
NEW DIGITAL SIGNATURE PROTOCOL BASED ON ELLIPTIC CURVES
NEW DIGITAL SIGNATURE PROTOCOL BASED ON ELLIPTIC CURVES Ounasser Abid 1, Jaouad Ettanfouhi 2 and Omar Khadir 3 1,2,3 Laboratory of Mathematics, Cryptography and Mechanics, Department of Mathematics, Fstm,
Runtime and Implementation of Factoring Algorithms: A Comparison
Runtime and Implementation of Factoring Algorithms: A Comparison Justin Moore CSC290 Cryptology December 20, 2003 Abstract Factoring composite numbers is not an easy task. It is classified as a hard algorithm,
How To Know If A Message Is From A Person Or A Machine
The RSA Algorithm Evgeny Milanov 3 June 2009 In 1978, Ron Rivest, Adi Shamir, and Leonard Adleman introduced a cryptographic algorithm, which was essentially to replace the less secure National Bureau
Notes on Factoring. MA 206 Kurt Bryan
The General Approach Notes on Factoring MA 26 Kurt Bryan Suppose I hand you n, a 2 digit integer and tell you that n is composite, with smallest prime factor around 5 digits. Finding a nontrivial factor
Basic Algorithms In Computer Algebra
Basic Algorithms In Computer Algebra Kaiserslautern SS 2011 Prof. Dr. Wolfram Decker 2. Mai 2011 References Cohen, H.: A Course in Computational Algebraic Number Theory. Springer, 1993. Cox, D.; Little,
Lecture 13: Factoring Integers
CS 880: Quantum Information Processing 0/4/0 Lecture 3: Factoring Integers Instructor: Dieter van Melkebeek Scribe: Mark Wellons In this lecture, we review order finding and use this to develop a method
Lecture Note 5 PUBLIC-KEY CRYPTOGRAPHY. Sourav Mukhopadhyay
Lecture Note 5 PUBLIC-KEY CRYPTOGRAPHY Sourav Mukhopadhyay Cryptography and Network Security - MA61027 Modern/Public-key cryptography started in 1976 with the publication of the following paper. W. Diffie
Factoring Algorithms
Factoring Algorithms The p 1 Method and Quadratic Sieve November 17, 2008 () Factoring Algorithms November 17, 2008 1 / 12 Fermat s factoring method Fermat made the observation that if n has two factors
2 Primality and Compositeness Tests
Int. J. Contemp. Math. Sciences, Vol. 3, 2008, no. 33, 1635-1642 On Factoring R. A. Mollin Department of Mathematics and Statistics University of Calgary, Calgary, Alberta, Canada, T2N 1N4 http://www.math.ucalgary.ca/
Arithmetic algorithms for cryptology 5 October 2015, Paris. Sieves. Razvan Barbulescu CNRS and IMJ-PRG. R. Barbulescu Sieves 0 / 28
Arithmetic algorithms for cryptology 5 October 2015, Paris Sieves Razvan Barbulescu CNRS and IMJ-PRG R. Barbulescu Sieves 0 / 28 Starting point Notations q prime g a generator of (F q ) X a (secret) integer
1720 - Forward Secrecy: How to Secure SSL from Attacks by Government Agencies
1720 - Forward Secrecy: How to Secure SSL from Attacks by Government Agencies Dave Corbett Technical Product Manager Implementing Forward Secrecy 1 Agenda Part 1: Introduction Why is Forward Secrecy important?
Factoring & Primality
Factoring & Primality Lecturer: Dimitris Papadopoulos In this lecture we will discuss the problem of integer factorization and primality testing, two problems that have been the focus of a great amount
Cryptography: Authentication, Blind Signatures, and Digital Cash
Cryptography: Authentication, Blind Signatures, and Digital Cash Rebecca Bellovin 1 Introduction One of the most exciting ideas in cryptography in the past few decades, with the widest array of applications,
Mathematics of Internet Security. Keeping Eve The Eavesdropper Away From Your Credit Card Information
The : Keeping Eve The Eavesdropper Away From Your Credit Card Information Department of Mathematics North Dakota State University 16 September 2010 Science Cafe Introduction Disclaimer: is not an internet
FACTORING. n = 2 25 + 1. fall in the arithmetic sequence
FACTORING The claim that factorization is harder than primality testing (or primality certification) is not currently substantiated rigorously. As some sort of backward evidence that factoring is hard,
Factoring Algorithms
Institutionen för Informationsteknologi Lunds Tekniska Högskola Department of Information Technology Lund University Cryptology - Project 1 Factoring Algorithms The purpose of this project is to understand
1 Digital Signatures. 1.1 The RSA Function: The eth Power Map on Z n. Crypto: Primitives and Protocols Lecture 6.
1 Digital Signatures A digital signature is a fundamental cryptographic primitive, technologically equivalent to a handwritten signature. In many applications, digital signatures are used as building blocks
A SOFTWARE COMPARISON OF RSA AND ECC
International Journal Of Computer Science And Applications Vol. 2, No. 1, April / May 29 ISSN: 974-13 A SOFTWARE COMPARISON OF RSA AND ECC Vivek B. Kute Lecturer. CSE Department, SVPCET, Nagpur 9975549138
Evaluation of Digital Signature Process
Evaluation of Digital Signature Process Emil SIMION, Ph. D. email: [email protected] Agenda Evaluation of digital signatures schemes: evaluation criteria; security evaluation; security of hash functions;
Factoring a semiprime n by estimating φ(n)
Factoring a semiprime n by estimating φ(n) Kyle Kloster May 7, 2010 Abstract A factoring algorithm, called the Phi-Finder algorithm, is presented that factors a product of two primes, n = pq, by determining
Factorization Methods: Very Quick Overview
Factorization Methods: Very Quick Overview Yuval Filmus October 17, 2012 1 Introduction In this lecture we introduce modern factorization methods. We will assume several facts from analytic number theory.
Public Key Cryptography and RSA. Review: Number Theory Basics
Public Key Cryptography and RSA Murat Kantarcioglu Based on Prof. Ninghui Li s Slides Review: Number Theory Basics Definition An integer n > 1 is called a prime number if its positive divisors are 1 and
SECURITY EVALUATION OF EMAIL ENCRYPTION USING RANDOM NOISE GENERATED BY LCG
SECURITY EVALUATION OF EMAIL ENCRYPTION USING RANDOM NOISE GENERATED BY LCG Chung-Chih Li, Hema Sagar R. Kandati, Bo Sun Dept. of Computer Science, Lamar University, Beaumont, Texas, USA 409-880-8748,
Revised Version of Chapter 23. We learned long ago how to solve linear congruences. ax c (mod m)
Chapter 23 Squares Modulo p Revised Version of Chapter 23 We learned long ago how to solve linear congruences ax c (mod m) (see Chapter 8). It s now time to take the plunge and move on to quadratic equations.
Public Key (asymmetric) Cryptography
Public-Key Cryptography UNIVERSITA DEGLI STUDI DI PARMA Dipartimento di Ingegneria dell Informazione Public Key (asymmetric) Cryptography Luca Veltri (mail.to: [email protected]) Course of Network Security,
Is n a Prime Number? Manindra Agrawal. March 27, 2006, Delft. IIT Kanpur
Is n a Prime Number? Manindra Agrawal IIT Kanpur March 27, 2006, Delft Manindra Agrawal (IIT Kanpur) Is n a Prime Number? March 27, 2006, Delft 1 / 47 Overview 1 The Problem 2 Two Simple, and Slow, Methods
Study of algorithms for factoring integers and computing discrete logarithms
Study of algorithms for factoring integers and computing discrete logarithms First Indo-French Workshop on Cryptography and Related Topics (IFW 2007) June 11 13, 2007 Paris, France Dr. Abhijit Das Department
The Mathematical Cryptography of the RSA Cryptosystem
The Mathematical Cryptography of the RSA Cryptosystem Abderrahmane Nitaj Laboratoire de Mathématiques Nicolas Oresme Université de Caen, France abderrahmanenitaj@unicaenfr http://wwwmathunicaenfr/~nitaj
Cryptography and Network Security Department of Computer Science and Engineering Indian Institute of Technology Kharagpur
Cryptography and Network Security Department of Computer Science and Engineering Indian Institute of Technology Kharagpur Module No. # 01 Lecture No. # 05 Classic Cryptosystems (Refer Slide Time: 00:42)
Secure Network Communication Part II II Public Key Cryptography. Public Key Cryptography
Kommunikationssysteme (KSy) - Block 8 Secure Network Communication Part II II Public Key Cryptography Dr. Andreas Steffen 2000-2001 A. Steffen, 28.03.2001, KSy_RSA.ppt 1 Secure Key Distribution Problem
Cryptography and Network Security
Cryptography and Network Security Spring 2012 http://users.abo.fi/ipetre/crypto/ Lecture 7: Public-key cryptography and RSA Ion Petre Department of IT, Åbo Akademi University 1 Some unanswered questions
The science of encryption: prime numbers and mod n arithmetic
The science of encryption: prime numbers and mod n arithmetic Go check your e-mail. You ll notice that the webpage address starts with https://. The s at the end stands for secure meaning that a process
CSCE 465 Computer & Network Security
CSCE 465 Computer & Network Security Instructor: Dr. Guofei Gu http://courses.cse.tamu.edu/guofei/csce465/ Public Key Cryptogrophy 1 Roadmap Introduction RSA Diffie-Hellman Key Exchange Public key and
LUC: A New Public Key System
LUC: A New Public Key System Peter J. Smith a and Michael J. J. Lennon b a LUC Partners, Auckland UniServices Ltd, The University of Auckland, Private Bag 92019, Auckland, New Zealand. b Department of
Outline. Computer Science 418. Digital Signatures: Observations. Digital Signatures: Definition. Definition 1 (Digital signature) Digital Signatures
Outline Computer Science 418 Digital Signatures Mike Jacobson Department of Computer Science University of Calgary Week 12 1 Digital Signatures 2 Signatures via Public Key Cryptosystems 3 Provable 4 Mike
Lecture 3: One-Way Encryption, RSA Example
ICS 180: Introduction to Cryptography April 13, 2004 Lecturer: Stanislaw Jarecki Lecture 3: One-Way Encryption, RSA Example 1 LECTURE SUMMARY We look at a different security property one might require
Breaking Generalized Diffie-Hellman Modulo a Composite is no Easier than Factoring
Breaking Generalized Diffie-Hellman Modulo a Composite is no Easier than Factoring Eli Biham Dan Boneh Omer Reingold Abstract The Diffie-Hellman key-exchange protocol may naturally be extended to k > 2
Applied Cryptography Public Key Algorithms
Applied Cryptography Public Key Algorithms Sape J. Mullender Huygens Systems Research Laboratory Universiteit Twente Enschede 1 Public Key Cryptography Independently invented by Whitfield Diffie & Martin
Efficient and Robust Secure Aggregation of Encrypted Data in Wireless Sensor Networks
Efficient and Robust Secure Aggregation of Encrypted Data in Wireless Sensor Networks J. M. BAHI, C. GUYEUX, and A. MAKHOUL Computer Science Laboratory LIFC University of Franche-Comté Journée thématique
The Quadratic Sieve Factoring Algorithm
The Quadratic Sieve Factoring Algorithm Eric Landquist MATH 488: Cryptographic Algorithms December 14, 2001 1 Introduction Mathematicians have been attempting to find better and faster ways to factor composite
Capture Resilient ElGamal Signature Protocols
Capture Resilient ElGamal Signature Protocols Hüseyin Acan 1, Kamer Kaya 2,, and Ali Aydın Selçuk 2 1 Bilkent University, Department of Mathematics [email protected] 2 Bilkent University, Department
QUANTUM COMPUTERS AND CRYPTOGRAPHY. Mark Zhandry Stanford University
QUANTUM COMPUTERS AND CRYPTOGRAPHY Mark Zhandry Stanford University Classical Encryption pk m c = E(pk,m) sk m = D(sk,c) m??? Quantum Computing Attack pk m aka Post-quantum Crypto c = E(pk,m) sk m = D(sk,c)
Public-Key Cryptanalysis 1: Introduction and Factoring
Public-Key Cryptanalysis 1: Introduction and Factoring Nadia Heninger University of Pennsylvania July 21, 2013 Adventures in Cryptanalysis Part 1: Introduction and Factoring. What is public-key crypto
Factoring. Factoring 1
Factoring Factoring 1 Factoring Security of RSA algorithm depends on (presumed) difficulty of factoring o Given N = pq, find p or q and RSA is broken o Rabin cipher also based on factoring Factoring like
A New Generic Digital Signature Algorithm
Groups Complex. Cryptol.? (????), 1 16 DOI 10.1515/GCC.????.??? de Gruyter???? A New Generic Digital Signature Algorithm Jennifer Seberry, Vinhbuu To and Dongvu Tonien Abstract. In this paper, we study
Index Calculation Attacks on RSA Signature and Encryption
Index Calculation Attacks on RSA Signature and Encryption Jean-Sébastien Coron 1, Yvo Desmedt 2, David Naccache 1, Andrew Odlyzko 3, and Julien P. Stern 4 1 Gemplus Card International {jean-sebastien.coron,david.naccache}@gemplus.com
Number Theory and the RSA Public Key Cryptosystem
Number Theory and the RSA Public Key Cryptosystem Minh Van Nguyen [email protected] 05 November 2008 This tutorial uses to study elementary number theory and the RSA public key cryptosystem. A number
Elementary factoring algorithms
Math 5330 Spring 013 Elementary factoring algorithms The RSA cryptosystem is founded on the idea that, in general, factoring is hard. Where as with Fermat s Little Theorem and some related ideas, one can
Determining the Optimal Combination of Trial Division and Fermat s Factorization Method
Determining the Optimal Combination of Trial Division and Fermat s Factorization Method Joseph C. Woodson Home School P. O. Box 55005 Tulsa, OK 74155 Abstract The process of finding the prime factorization
Public-key cryptography RSA
Public-key cryptography RSA NGUYEN Tuong Lan LIU Yi Master Informatique University Lyon 1 Objective: Our goal in the study is to understand the algorithm RSA, some existence attacks and implement in Java.
ELLIPTIC CURVES AND LENSTRA S FACTORIZATION ALGORITHM
ELLIPTIC CURVES AND LENSTRA S FACTORIZATION ALGORITHM DANIEL PARKER Abstract. This paper provides a foundation for understanding Lenstra s Elliptic Curve Algorithm for factoring large numbers. We give
FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z
FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z DANIEL BIRMAJER, JUAN B GIL, AND MICHAEL WEINER Abstract We consider polynomials with integer coefficients and discuss their factorization
Associate Prof. Dr. Victor Onomza Waziri
BIG DATA ANALYTICS AND DATA SECURITY IN THE CLOUD VIA FULLY HOMOMORPHIC ENCRYPTION Associate Prof. Dr. Victor Onomza Waziri Department of Cyber Security Science, School of ICT, Federal University of Technology,
FACTORING LARGE NUMBERS, A GREAT WAY TO SPEND A BIRTHDAY
FACTORING LARGE NUMBERS, A GREAT WAY TO SPEND A BIRTHDAY LINDSEY R. BOSKO I would like to acknowledge the assistance of Dr. Michael Singer. His guidance and feedback were instrumental in completing this
MOP 2007 Black Group Integer Polynomials Yufei Zhao. Integer Polynomials. June 29, 2007 Yufei Zhao [email protected]
Integer Polynomials June 9, 007 Yufei Zhao [email protected] We will use Z[x] to denote the ring of polynomials with integer coefficients. We begin by summarizing some of the common approaches used in dealing
CHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY
January 10, 2010 CHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY The set of polynomials over a field F is a ring, whose structure shares with the ring of integers many characteristics.
Lukasz Pater CMMS Administrator and Developer
Lukasz Pater CMMS Administrator and Developer EDMS 1373428 Agenda Introduction Why do we need asymmetric ciphers? One-way functions RSA Cipher Message Integrity Examples Secure Socket Layer Single Sign
STUDY ON ELLIPTIC AND HYPERELLIPTIC CURVE METHODS FOR INTEGER FACTORIZATION. Takayuki Yato. A Senior Thesis. Submitted to
STUDY ON ELLIPTIC AND HYPERELLIPTIC CURVE METHODS FOR INTEGER FACTORIZATION by Takayuki Yato A Senior Thesis Submitted to Department of Information Science Faculty of Science The University of Tokyo on
CRYPTOGRAPHY IN NETWORK SECURITY
ELE548 Research Essays CRYPTOGRAPHY IN NETWORK SECURITY AUTHOR: SHENGLI LI INSTRUCTOR: DR. JIEN-CHUNG LO Date: March 5, 1999 Computer network brings lots of great benefits and convenience to us. We can
Lecture 2: Complexity Theory Review and Interactive Proofs
600.641 Special Topics in Theoretical Cryptography January 23, 2007 Lecture 2: Complexity Theory Review and Interactive Proofs Instructor: Susan Hohenberger Scribe: Karyn Benson 1 Introduction to Cryptography
An Overview of Integer Factoring Algorithms. The Problem
An Overview of Integer Factoring Algorithms Manindra Agrawal IITK / NUS The Problem Given an integer n, find all its prime divisors as efficiently as possible. 1 A Difficult Problem No efficient algorithm
Alex, I will take congruent numbers for one million dollars please
Alex, I will take congruent numbers for one million dollars please Jim L. Brown The Ohio State University Columbus, OH 4310 [email protected] One of the most alluring aspectives of number theory
RSA and Primality Testing
and Primality Testing Joan Boyar, IMADA, University of Southern Denmark Studieretningsprojekter 2010 1 / 81 Correctness of cryptography cryptography Introduction to number theory Correctness of with 2
ANALYSIS OF RSA ALGORITHM USING GPU PROGRAMMING
ANALYSIS OF RSA ALGORITHM USING GPU PROGRAMMING Sonam Mahajan 1 and Maninder Singh 2 1 Department of Computer Science Engineering, Thapar University, Patiala, India 2 Department of Computer Science Engineering,
Constructing Pairing-Friendly Elliptic Curves with Embedding Degree 10
with Embedding Degree 10 University of California, Berkeley, USA ANTS-VII, 2006 Outline 1 Introduction 2 The CM Method: The Basic Construction The CM Method: Generating Families of Curves 3 Outline 1 Introduction
Data Grid Privacy and Secure Storage Service in Cloud Computing
Data Grid Privacy and Secure Storage Service in Cloud Computing L.Revathi 1, S.Karthikeyan 2 1 Research Scholar, Department of Computer Applications, Dr. M.G.R. Educational and Research Institute University,
On the largest prime factor of x 2 1
On the largest prime factor of x 2 1 Florian Luca and Filip Najman Abstract In this paper, we find all integers x such that x 2 1 has only prime factors smaller than 100. This gives some interesting numerical
Factoring integers, Producing primes and the RSA cryptosystem Harish-Chandra Research Institute
RSA cryptosystem HRI, Allahabad, February, 2005 0 Factoring integers, Producing primes and the RSA cryptosystem Harish-Chandra Research Institute Allahabad (UP), INDIA February, 2005 RSA cryptosystem HRI,
