public key encryption

30
PUBLIC KEY ENCRYPTION Bronson Jastrow

Upload: kirk

Post on 22-Jan-2016

62 views

Category:

Documents


0 download

DESCRIPTION

Bronson Jastrow. Public Key Encryption. Outline. What is cryptography? Symmetric Key Cryptography Public Key Cryptography How Public Key Cryptography Works Authenticating sources Hybrid Cryptosystems Perfect Forward Secrecy Attacks on Public Key Systems. What is Cryptography?. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Public Key  Encryption

PUBLIC KEY ENCRYPTION

Bronson Jastrow

Page 2: Public Key  Encryption

Outline

What is cryptography? Symmetric Key Cryptography Public Key Cryptography How Public Key Cryptography Works Authenticating sources Hybrid Cryptosystems Perfect Forward Secrecy Attacks on Public Key Systems

Page 3: Public Key  Encryption

What is Cryptography? The securing of communications between

parties.

Many ways to implement cryptography

Four basic goals of cryptography:ConfidentialityIntegrityAuthenticationNon-repudiation

Page 4: Public Key  Encryption

Goals of Cryptography

Confidentiality:Ensure only intended recipients have the means to read data.

Integrity:Ensure intended recipients have received data unaltered by a third party.

Page 5: Public Key  Encryption

Goals of Cryptography

Authentication:Ensure subsequent messages from a source can be verified as originating from that source.

Non-Repudiaton:Ensure messages are traceable back to only the originator for when disputes arise.

Page 6: Public Key  Encryption

Symmetric Key Cryptography

The same key is used for both encrypting and decrypting data.

Shared Secret (One key shared by all).

Known as Private Key Cryptography.

Not ideal for exchange over unsecured networks.

Page 7: Public Key  Encryption

Public Key Cryptography Different keys are

used for encryption and decryption.

Encrypt with public key.

Decrypt with private key.

Known as Asymmetric Key Cryptography.

Page 8: Public Key  Encryption

Public Key Cryptography Public keys may be shared. Private keys must be kept secret.

Public keys may be exchanged over unsecured networks.

The keys are mathematically linked. Computationally infeasible to compute the private

key from the public key.

Disadvantage: Encryption and decryption are slow.

Page 9: Public Key  Encryption

Trap Door Function A function which is easy to compute in one

direction, but difficult in the opposite direction. Integer FactorizationDiscrete LogarithmElliptic Curve

Used for implementation of public key cryptography.

Example: RSA is based on Integer Factorization

Page 10: Public Key  Encryption

Integer Factorization

Hard to decompose an integer into its prime factorized form.

Easy to compute an integer from its prime factorized form.

Ex: What is the prime factorization of 247? 13*19

Page 11: Public Key  Encryption

Integer Factorization

No efficient way to determine prime factorization.

Even more difficult to determine a semiprime (a product of two primes).

Page 12: Public Key  Encryption

RSA-768 Factorization

2009 – A 768 bit (232 decimal) semiprime generated by the RSA algorithm was factored.

Estimated 1,500 years of 2.2Ghz AMD Opteron processing.

RSA-1024 is considered 1,000 harder to crack

Page 13: Public Key  Encryption

RSA-768 Perspective RSA-768 =

12301866845301177551304949583849627207728535695953347921973224521517264005 07263657518745202199786469389956474942774063845925192557326303453731548268 50791702612214291346167042921431160222124047927473779408066535141959745985 6902143413

RSA-768 = 33478071698956898786044169848212690817704794983713768568912431388982883793 878002287614711652531743087737814467999489 * 36746043666799590428244633799627952632279158164343087642676032283815739666 511279233373417143396810270092798736308917

Page 14: Public Key  Encryption

Digital Signatures Messages may be signed with the sender’s private

key.

Signatures can be verified by the matching public key.

Verification means the message is from the owner of the private key

Verification also means the message has not been tampered with.

Signer cannot deny having signed message.

Page 15: Public Key  Encryption

Public Key vs. Symmetric Key Cryptography Public Key Cryptography

Keys can be exchanged safely over the internet.

Slow encryption and decryption times.Signatures to verify identity.

Symmetric Key CryptographyKey exchange over internet is insecureFast encryption and decryption compared to

public key cryptography.

Page 16: Public Key  Encryption

Hybrid Cryptosystems

Combining of Symmetric Key and Public Key algorithms.

Exchange public keys. Encrypt symmetric key to use for

session. Send encrypted symmetric key. Exchange messages using symmetric

key.

Page 17: Public Key  Encryption

Hybrid Cryptosystems

SSL/TLS uses hybrid cryptosystems to secure internet transactions.Ex. Email, Banking

Problem: How to protect users from man-in-the-middle attacks

Page 18: Public Key  Encryption

Key Exchange

How does a user know that the party they exchange keys with is legitimate?

Answer: Certificate Authorities.

Certificate Authority is a trusted third party.

Certificate from website is sent to user. Certificate contains public key, and a copy

signed by a certificate authority.

Page 19: Public Key  Encryption

Key Revocation

Key Compromise

Affiliation Change

Key Superseded

Page 20: Public Key  Encryption

Key Revocation

What happens when a key is compromised?

Certificate Revocation List (CRL)

Keep a list of revoked public keys

When revoked, list a new public key

Page 21: Public Key  Encryption

Key Revocation

How to handle revocation requests?

Depends on setupOwner of private keyCompound Principals

Page 22: Public Key  Encryption

Notifying Users

Push from server to clientSusceptible to DOS attack

Download by user from centralized server.

Set a short expiration date on updated list

Page 23: Public Key  Encryption

Perfect Forward Secrecy All past communication is safe even if a private

key is compromised.

Session keys must not be derived if long term keys are lost.

Problem: Private keys decrypt symmetric keys and verify identity.

Solution: Use private keys only to verify identity.

Page 24: Public Key  Encryption

Diffie-Hellman Key Exchange

D-H key exchange can be used to achieve perfect forward secrecy

Allows two hosts to create symmetric keys through an insecure network.

Works between hosts which have never communicated.

Page 25: Public Key  Encryption

Diffie-Hellman Key Exchange

Alice Bob

Secret Public Calculate Sends Calculate Public Secret

a p,g p,g -> b

a p,g,A ga mod p = A A -> p,g b

a p,g,A <- B gb mod p = B p,g,A,B b

a, s p,g,A,B Ba mod p = s Ab mod p = s p,g,A,B b, s

p is prime g is a primitive root mod p

Page 26: Public Key  Encryption
Page 27: Public Key  Encryption

Diffie-Hellman In Practice

Typically uses elliptic curve instead of discrete logarithm

Browser support is lackingFirefoxChrome

Performance issues for TLS handshakes

Page 28: Public Key  Encryption

Attacks on Public Key Systems

Easiest way is to break people, not break encryption.

Broken algorithm: Messages can be decrypted without private key.

Totally broken algorithm: Private key can be recovered from public key.

Current systems are considered secure if key length is long.

Page 29: Public Key  Encryption

Public Key Cryptography Conclusion Secures communication over unsecured

networks.

Allows authentication, integrity checks, and non-repudiation.

Used in conjunction with symmetric key encryption in TLS/SSL.

Page 30: Public Key  Encryption

Sources [1] Bernat, V. (2011). SSL/TLS & Perfect Forward Secrecy. Retrieved 10 2, 2013, from

Vincent Bernat Blog: http://vincent.bernat.im/en/blog/2011-ssl-perfect-forward-secrecy.html

[2] Cooper, A. D. (1998). A closer Look at Revocation and Key Compromise in Public Key Infrastructures. Gaithersburg: National Institute of Standards and Technology.

[3] Dev-NJITWILL. Crypto. [4] Diffie, W., & Hellman, M. E. (1976). New Directions in Cryptography. IEEE. [5] Göthberg, D. Public Key Encryption. Sweden, Sweden. [6] Kleinjung, T. (2010). Factorization of a 768-bit RSA modulus. [7] Menezes, A. J., van Oorschot, P. C., & Vanstone, S. A. (1996). Handbook of Applied

Cryptography. CRC Press. [8] Rescorla, E. (2006). Diffie-Hellman Key Exchange - A Non-Mathematician's

Explanation. ISSA Journal , 7. [9] Ristic, I. (2013, June 25). SSL Labs: Deploying Forward Secrecy. Retrieved 10 10,

2013, from Qualys Community: https://community.qualys.com/blogs/securitylabs/2013/06/25/ssl-labs-deploying-forward-secrecy

[10] Vinck, A. H. (2012, May 12). Introduction to Public Key Cryptography. Duisburg-Essen, Germany. Retrieved from http://www.exp-math.uni-essen.de/~vinck/crypto/script-crypto-pdf/add-to-3.pdf