poster print size: public exchange of values change color...

1
How Secure is RSA: Mathematical Approach By: Rana Khalil, Undergraduate Supervisor: Dr. Monica Nevins, Professor and Chair University of Ottawa, Faculty of Science Rana Khalil University of Ottawa, Undergraduate Research Opportunity Program (UROP) [email protected] Contact References: 1. Hoffstein, J. , Pipher, J. , Silverman, J. H. , (2008). An Introduction to Mathematical Cryptography. New York, NY: Springer Science+Business Media. 2. Mironov, I. (2012, May 15) . Factoring RSA Moduli. Part I. . Retrieved from windowsontheory.org/2012/05/15/979/ 3. Mironov, I. (2012, May 17) . Factoring RSA Moduli. Part II. . Retrieved from windowsontheory.org/2012/05/17/factoring-rsa-moduli-part-ii/ 4. Lenstra, A. K., Hughes J. P., Augier, M., Bos, J. W., Kleinjung T. & Wacher, C. (2012). Ron was wrong, Whit is right, 064. Retrieved from eprint.iacr.org/2012/064.pdf 5. Survivability and Information Assurance (n.d.). Retrieved March 16, 2014, from http://people.ubuntu.com/~duanedesign/SurvivabilityandInformationAssuranceCurriculum/02everything/02everything.html#AEN379 References Introduction Cryptography is the art and science of writing in secret code. With the advent of the Computer Age, cryptography has become essential in today's economy. Public key cryptography is based on mathematical problems that currently admit to no efficient solution. This in turn has allowed individuals to share secret communication over insecure channels, such as the internet, which begs the question: How secure are public key algorithms? Recently, it was revealed that the National Security Agency (NSA) has obtained access to RSA protected information by exploiting some unknown flaws. In this research we analyze a paper by Lenstra et al. called "Ron was wrong, Whit is right" which identifies some of these potential flaws. Our project is to understand the mathematical theory behind two major algorithms: RSA and Diffie Hellman, with the probability of these flaws occurring. Chart 1. Distributions of discrete logarithms for g = 641 modulo p = 941 10941738641570527421809707322040357612003732945449205990913842131476349984288934784717997257891267332497625752899781833797076537244027146743531593354333897 1 0 2 6 3 9 5 9 2 8 2 9 7 4 1 1 0 5 7 7 2 0 5 4 1 9 6 5 7 3 9 9 1 6 7 5 9 0 0 7 1 6 5 6 7 8 0 8 0 3 8 0 6 6 8 0 3 3 4 1 9 3 3 5 2 1 7 9 0 7 1 1 3 0 7 7 7 9 1 0 6 6 0 3 4 8 8 3 8 0 1 6 8 4 5 4 8 2 0 9 2 7 2 2 0 3 6 0 0 1 2 8 7 8 6 7 9 2 0 7 9 5 8 5 7 5 9 8 9 2 9 1 5 2 2 2 7 0 6 0 8 2 3 7 1 9 3 0 6 2 8 0 8 6 4 3 Prime Numbers There are infinitely many prime numbers which are randomly distributed. The prime number theorem states that for a randomly chosen number N, the probability that it is prime is 1/ ln (N), i.e. prime numbers are “easy” to find. -- - - - - - Methods and Materials (I) Symmetric Cryptography (II) Asymmetric Cryptography Results Flaw: In the Lenstra et al. paper it was mentioned that among 4.7 million 1024-bit RSA moduli collected, more than 12500 have a single prime factor in common! This flaw allows for easy factorization of n. Analysis: By the prime number theorem, there are approximately 2 504 primes that are less than 2 510 . Therefore, the odds that two people randomly choose at least one prime factor in common is P = 1− 2 504 −2 2 504 2 = 1 − 1− 1 2 503 2 1 2 502 However, if we sample M ( = 4.7 million) different N, then the odds that two of these N’s share at least one common factor is approximately, 1 − 1 − −1 2 −1 2 P 2 43 2 502 1 2 459 0 Symmetric encryption algorithms work on one basic principle- the same key that is used to encrypt the plaintext is used to decrypt the ciphertext. Asymmetric encryption and decryption uses separate keys. Decryption is done using the private (secret) key, while encryption is done using the public key. Table 1. Sieve of Eratosthenes from 1 to 100 Table 2. Diffie-Hellman key exchange Table 3. RSA key creation, encryption, and decryption Table 4. Key lengths and Security Levels Symmetric RSA, DL Comments 64 Bit 70 Bit Short term security 80 Bit 1024 Bit Medium security 256 Bit 3072 Bit High security 200 300 400 500 600 700 800 900 100 150 200 250 300 Powers 641 i mod 941 for i = 1, 2,......300 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 Figure 1. DLP example Public Parameter Creation A trusted party chooses and publishes a (large) prime p and an integer g (which is a primitive root for Z/pZ) having large prime order in Z/pZ*. Private Computations Alice Bob Compute A ≡ g a (mod p). Compute B ≡ g b (mod p). Public Exchange of Values Alice sends A to Bob A B Bob sends B to Alice Further Private Computations Alice Bob Compute the number B a (mod p). Compute the number A b (mod p). The shared secret key value is B a ≡ (g b ) a ≡ g ab ≡ (g a ) b ≡ A b (mod p). Alice Bob Key Creation Choose secret primes p and q. Choose encryption exponent e with gcd( e, (p – 1)(q – 1)) = 1 Publish N (= pq) and e. Encryption Choose plaintext m. Use Alice's public key (N, e) to compute c ≡ m e (mod N) Send ciphertext c to Bob. Decryption Compute d satisfying ed 1 (mod (p – 1)(q -1)). Compute m' ≡ c d (mod N). Then m' equals the plaintext m. Discrete Logarithm Problem Let g and h Z/pZ. The Discrete Logarithm Problem (DLP) is the problem of finding an exponent x such that g x ≡ h (mod p) The number x exists if g is a primitive root for Z/pZ. Note: Exponentiation mod p is random; see Chart 1 for an example with p=941. Conclusion In conclusion, the mathematics behind RSA is still very solid. The major flaw detected by Lenstra et al. seems to be an implementation error not a mathematical error. For further research refer to [2], [3] & [4]. Figure 2. Symmetric Key Cryptography Figure 3. Asymmetric Key Cryptography First and foremost, I would like to thank God for giving me the opportunity to participate in this research. I would also like to thank UROP for providing me with the funding and resources to complete my research. Lastly, special thanks to Dr. Monica Nevins for taking time out of her very busy schedule to teach me about the fascinating world of cryptography!

Upload: vuongkiet

Post on 19-Jun-2019

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Poster Print Size: Public Exchange of Values Change Color ...ruor.uottawa.ca/bitstream/10393/31003/1/Khalil_Rana.pdf · Poster Print Size: This poster template is 44 high by 44 wide

Poster Print Size: This poster template is 44” high by 44” wide. It can be used to print any poster with a 1:1 aspect ratio.

Placeholders: The various elements included in this poster are ones we often see in medical, research, and scientific posters. Feel free to edit, move, add, and delete items, or change the layout to suit your needs. Always check with your conference organizer for specific requirements.

Image Quality: You can place digital photos or logo art in your poster file by selecting the Insert, Picture command, or by using standard copy & paste. For best results, all graphic elements should be at least 150-200 pixels per inch in their final printed size. For instance, a 1600 x 1200 pixel photo will usually look fine up to 8“-10” wide on your printed poster.

To preview the print quality of images, select a magnification of 100% when previewing your poster. This will give you a good idea of what it will look like in print. If you are laying out a large poster and using half-scale dimensions, be sure to preview your graphics at 200% to see them at their final printed size.

Please note that graphics from websites (such as the logo on your hospital's or university's home page) will only be 72dpi and not suitable for printing.

[This sidebar area does not print.]

Change Color Theme: This template is designed to use the built-in color themes in the newer versions of PowerPoint.

To change the color theme, select the Design tab, then select the Colors drop-down list.

The default color theme for this template is “Office”, so you can always return to that after trying some of the alternatives.

Printing Your Poster: Once your poster file is ready, visit www.genigraphics.com to order a high-quality, affordable poster print. Every order receives a free design review and we can deliver as fast as next business day within the US and Canada.

Genigraphics® has been producing output from PowerPoint® longer than anyone in the industry; dating back to when we helped Microsoft® design the PowerPoint® software.

US and Canada: 1-800-790-4001

Email: [email protected]

[This sidebar area does not print.]

How Secure is RSA: Mathematical Approach By: Rana Khalil, Undergraduate

Supervisor: Dr. Monica Nevins, Professor and Chair University of Ottawa, Faculty of Science

Rana Khalil University of Ottawa, Undergraduate Research Opportunity Program (UROP) [email protected]

Contact References: 1. Hoffstein, J. , Pipher, J. , Silverman, J. H. , (2008). An Introduction to Mathematical Cryptography. New York, NY: Springer Science+Business

Media. 2. Mironov, I. (2012, May 15) . Factoring RSA Moduli. Part I. . Retrieved from windowsontheory.org/2012/05/15/979/ 3. Mironov, I. (2012, May 17) . Factoring RSA Moduli. Part II. . Retrieved from windowsontheory.org/2012/05/17/factoring-rsa-moduli-part-ii/ 4. Lenstra, A. K., Hughes J. P., Augier, M., Bos, J. W., Kleinjung T. & Wacher, C. (2012). Ron was wrong, Whit is right, 064. Retrieved from

eprint.iacr.org/2012/064.pdf

5. Survivability and Information Assurance (n.d.). Retrieved March 16, 2014, from http://people.ubuntu.com/~duanedesign/SurvivabilityandInformationAssuranceCurriculum/02everything/02everything.html#AEN379

References

Introduction

Cryptography is the art and science of writing in secret

code. With the advent of the Computer Age,

cryptography has become essential in today's economy.

Public key cryptography is based on mathematical

problems that currently admit to no efficient solution. This

in turn has allowed individuals to share secret

communication over insecure channels, such as the

internet, which begs the question: How secure are

public key algorithms? Recently, it was revealed that

the National Security Agency (NSA) has obtained access

to RSA protected information by exploiting some

unknown flaws. In this research we analyze a paper by

Lenstra et al. called "Ron was wrong, Whit is right" which

identifies some of these potential flaws. Our project is to

understand the mathematical theory behind two major

algorithms: RSA and Diffie Hellman, with the probability

of these flaws occurring.

Chart 1. Distributions of discrete logarithms for g = 641 modulo p = 941

10941738641570527421809707322040357612003732945449205990913842131476349984288934784717997257891267332497625752899781833797076537244027146743531593354333897

102639592829741105772054196573991675900716567808038066803341933521790711307779

106603488380168454820927220360012878679207958575989291522270608237193062808643

Prime Numbers

There are infinitely many prime numbers which are

randomly distributed. The prime number theorem states

that for a randomly chosen number N, the probability that

it is prime is 1/ ln (N), i.e. prime numbers are “easy” to

find.

--

-

-

-

-

-

Methods and Materials

(I) Symmetric Cryptography

(II) Asymmetric Cryptography

Results

Flaw: In the Lenstra et al. paper it was mentioned that

among 4.7 million 1024-bit RSA moduli collected, more

than 12500 have a single prime factor in common! This

flaw allows for easy factorization of n.

Analysis: By the prime number theorem, there are

approximately 2504 primes that are less than 2510.

Therefore, the odds that two people randomly choose at

least one prime factor in common is

P = 1 −2504−2

2504 2

= 1 − 1 − 1

2503

2 ≈

1

2502

However, if we sample M ( = 4.7 million) different N, then

the odds that two of these N’s share at least one common

factor is approximately,

1 − 1 − 𝑃𝑀 𝑀 −1

2 ≈𝑀 𝑀 −1

2P ≈

243

2502 ≈ 1

2459 ≈ 0

Symmetric encryption

algorithms work on one

basic principle- the

same key that is used to

encrypt the plaintext is

used to decrypt the ciphertext.

Asymmetric encryption

and decryption uses

separate keys.

Decryption is done

using the private

(secret) key, while

encryption is done using

the public key.

Table 1. Sieve of Eratosthenes from 1 to 100

Table 2. Diffie-Hellman key exchange

Table 3. RSA key creation, encryption, and decryption

Table 4. Key lengths and Security Levels

Symmetric RSA, DL Comments

64 Bit 70 Bit Short term security

80 Bit 1024 Bit Medium security

256 Bit 3072 Bit High security

0

100

200

300

400

500

600

700

800

900

0 50 100 150 200 250 300Powers 641i mod 941 for i = 1, 2,......300

1 2 3 4 5 6 7 8 9 10

11 12 13 14 15 16 17 18 19 20

21 22 23 24 25 26 27 28 29 30

31 32 33 34 35 36 37 38 39 40

41 42 43 44 45 46 47 48 49 50

51 52 53 54 55 56 57 58 59 60

61 62 63 64 65 66 67 68 69 70

71 72 73 74 75 76 77 78 79 80

81 82 83 84 85 86 87 88 89 90

91 92 93 94 95 96 97 98 99 100

Figure 1. DLP example

Public Parameter Creation

A trusted party chooses and publishes a (large) prime p and an integer g (which is a primitive root for Z/pZ) having large prime order in Z/pZ*.

Private Computations Alice Bob

Choose a secret integer a. Compute A ≡ ga (mod p).

Choose a secret integer b. Compute B ≡ gb (mod p).

Public Exchange of Values Alice sends A to Bob A B Bob sends B to Alice

Further Private Computations Alice Bob

Compute the number Ba (mod p).

Compute the number Ab (mod p).

The shared secret key value is Ba ≡ (gb)a ≡ gab ≡ (ga)b ≡ Ab (mod p).

Alice Bob

Key Creation

Choose secret primes p and q.

Choose encryption exponent e with

gcd( e, (p – 1)(q – 1)) = 1

Publish N (= pq) and e.

Encryption

Choose plaintext m.

Use Alice's public key (N, e) to

compute c ≡ me (mod N)

Send ciphertext c to Bob.

Decryption

Compute d satisfying

ed ≡ 1 (mod (p – 1)(q -1)).

Compute m' ≡ cd (mod N).

Then m' equals the plaintext m.

Discrete Logarithm Problem Let g and h ∈ Z/pZ. The Discrete Logarithm Problem (DLP) is the problem of finding an exponent x such that gx ≡ h (mod p) The number x exists if g is a primitive root for Z/pZ.

Note: Exponentiation mod p is random; see Chart 1 for an example with p=941.

Conclusion

In conclusion, the mathematics behind RSA is still very solid.

The major flaw detected by Lenstra et al. seems to be an

implementation error not a mathematical error. For further research refer to [2], [3] & [4].

Figure 2. Symmetric Key Cryptography

Figure 3. Asymmetric Key Cryptography

First and foremost, I would like to thank God for giving me the

opportunity to participate in this research. I would also like to

thank UROP for providing me with the funding and resources

to complete my research. Lastly, special thanks to Dr. Monica

Nevins for taking time out of her very busy schedule to teach

me about the fascinating world of cryptography!