Public Key Encryption ● Diffie and Hellman – 1976 Famous Paper: New Directions In Cryptography - 1976 New Directions In Cryptography ● First revolutionary.

Slides:



Advertisements
Similar presentations
Chapter 3 Public Key Cryptography and Message authentication.
Advertisements

Public Key Cryptography INFSCI 1075: Network Security – Spring 2013 Amir Masoumzadeh.
Public Key Cryptography & Message Authentication By Tahaei Fall 2012.
Dr. Lo’ai Tawalbeh Summer 2007 Chapter 9 – Public Key Cryptography and RSA Dr. Lo’ai Tawalbeh New York Institute of Technology (NYIT) Jordan’s Campus INCS.
Henric Johnson1 Chapter3 Public-Key Cryptography and Message Authentication Henric Johnson Blekinge Institute of Technology, Sweden
Public Key Cryptography and the RSA Algorithm
Cryptography1 CPSC 3730 Cryptography 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.
Chapter3 Public-Key Cryptography and Message Authentication.
Fall 2010/Lecture 311 CS 426 (Fall 2010) Public Key Encryption and Digital Signatures.
Dr.Saleem Al_Zoubi1 Cryptography and Network Security Third Edition by William Stallings Public Key Cryptography and RSA.
1 Pertemuan 08 Public Key Cryptography Matakuliah: H0242 / Keamanan Jaringan Tahun: 2006 Versi: 1.
Public Key Cryptography RSA Diffie Hellman Key Management Based on slides by Dr. Lawrie Brown of the Australian Defence Force Academy, University College,
Computer Science CSC 474Dr. Peng Ning1 CSC 474 Information Systems Security Topic 2.5 Public Key Algorithms.
PULIC –KEY CRYPTOGRAPHY AND MESSAGE AUTHENTICATION.
Introduction to Public Key Cryptography
Public Key Model 8. Cryptography part 2.
 Introduction  Requirements for RSA  Ingredients for RSA  RSA Algorithm  RSA Example  Problems on RSA.
1 Public-Key Cryptography and Message Authentication Ola Flygt Växjö University, Sweden
Behzad Akbari Spring In the Name of the Most High.
Network and Communications Network Security Department of Computer Science Virginia Commonwealth University.
10/1/2015 9:38:06 AM1AIIS. OUTLINE Introduction Goals In Cryptography Secrete Key Cryptography Public Key Cryptograpgy Digital Signatures 2 10/1/2015.
Network Security Lecture 17 Presented by: Dr. Munam Ali Shah.
1 Lecture 9 Public Key Cryptography Public Key Algorithms CIS CIS 5357 Network Security.
Public-Key Cryptography CS110 Fall Conventional Encryption.
4 th lecture.  Message to be encrypted: HELLO  Key: XMCKL H E L L O message 7 (H) 4 (E) 11 (L) 11 (L) 14 (O) message + 23 (X) 12 (M) 2 (C) 10 (K) 11.
BASIC CRYPTOGRAPHIC CONCEPTS. Public Key Cryptography  Uses two keys for every simplex logical communication link.  Public key  Private key  The use.
Chapter 21 Public-Key Cryptography and Message Authentication.
Information Security -- Part II Public-Key Encryption and Hash Functions Frank Yeong-Sung Lin Information Management Department National Taiwan University.
Public Key Cryptography. symmetric key crypto requires sender, receiver know shared secret key Q: how to agree on key in first place (particularly if.
1 Public-Key Cryptography and Message Authentication.
Computer and Network Security Rabie A. Ramadan Lecture 6.
Cryptography and Network Security Chapter 9 - Public-Key Cryptography
PUBLIC-KEY CRYPTOGRAPH IT 352 : Lecture 2- part3 Najwa AlGhamdi, MSc – 2012 /1433.
Advanced Database Course (ESED5204) Eng. Hanan Alyazji University of Palestine Software Engineering Department.
PUBLIC KEY CRYPTOGRAPHY ALGORITHM Concept and Example 1IT352 | Network Security |Najwa AlGhamdi.
Cryptography and Network Security Public Key Cryptography and RSA.
Chapter 3 – Public Key Cryptography and RSA (A). Private-Key Cryptography traditional private/secret/single-key cryptography uses one key shared by both.
Chapter 9 Public Key Cryptography and RSA. Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared by both sender.
Public Key Algorithms Lesson Introduction ●Modular arithmetic ●RSA ●Diffie-Hellman.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Computer Security Lecture 5 Ch.9 Public-Key Cryptography And RSA Prepared by Dr. Lamiaa Elshenawy.
Lecture 3 (Chapter 9) Public-Key Cryptography and RSA Prepared by Dr. Lamiaa M. Elshenawy 1.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
CSEN 1001 Computer and Network Security Amr El Mougy Mouaz ElAbsawi.
1 Public Key Cryptography. 2 Public Key Cryptography Agenda: Message authentication – authentication codes and hash functions Public key encryption –
Public Key Cryptography. Asymmetric encryption is a form of cryptosystem in which Encryption and decryption are performed using the different keys—one.
Lecture 5 Asymmetric Cryptography. Private-Key Cryptography Traditional private/secret/single key cryptography uses one key Shared by both sender and.
@Yuan Xue CS 285 Network Security Public-Key Cryptography Yuan Xue Fall 2012.
CS480 Cryptography and Information Security Huiping Guo Department of Computer Science California State University, Los Angeles 14. Digital signature.
CS480 Cryptography and Information Security
Public Key Encryption.
Basics of Cryptography
Asymmetric-Key Cryptography
1. Public Key Encryption (A Simple Case)
Public-Key Cryptography and Message Authentication
Public Key Encryption and Digital Signatures
Public-key Cryptography
Private-Key Cryptography
ICS 353: Design and Analysis of Algorithms
NET 311 Information Security
Public-Key Cryptography and Message Authentication
NET 311 Information Security
Public Key Cryptography
Chapter 3 - Public-Key Cryptography & Authentication
PUBLIC-KEY CRYPTOGRAPHY AND RSA – Chapter 9
Introduction to Cryptography
Fluency with Information Technology Lawrence Snyder
The RSA Public-Key Encryption Algorithm
Presentation transcript:

Public Key Encryption ● Diffie and Hellman – 1976 Famous Paper: New Directions In Cryptography New Directions In Cryptography ● First revolutionary advance in cryptography in thousands of years ● Based on mathematical functions not bit manipulation ● Asymmetric, two separate key ● Profound effect on confidentiality, key distribution and authentication

Public Key Structure Plaintext: message input into the algorithm Encryption algorithm: transformations on plaintext Public & Private Key: pair of keys, one for encryption; one for decryption Ciphertext: scrambled message Decryption algorithm: produces original plaintext

Public Key Encryption

The Basic Steps ● Each user generates a pair of keys ● The public key goes in a public register ● The private key is kept private ● If Bob wishes to send a private message to Alice, Bob encrypts the message using Alice’s public key ● When Alice receives the message, she decrypts using her private key

Public Key Authentication

Public Key Applications Encryption/decryption – encrypts a message with the recipient’s public key Digital signature – sender signs a message with private key Key Exchange – two sides cooperate to exchange a session key

Requirements For Public Key Easy for party B to generate pairs: public key KU b ; private key Kr b Easy for sender A to generate ciphertext using public key: C = E Kub (M) Easy for receiver B to decrypt using the private key to recover original message M = D KRb (C) = D KRb [E KUb (M)] PUBLIC PRIVATE HINT:

Requirements For Public Key It is computationally infeasible for an opponent, knowing the public key KUb to determine the private key KRr b It is computationally infeasible for an opponent, knowing the public key KUb and a ciphertext, C, to recover the original message, M Either of the two related keys can be used for encryption, with the other used for decryption M = D KRb [E KUb (M)]= D KUb [E KRb (M)]

RSA Algorithm Ron Rivest, Adi Shamir, Len Adleman – 1978 Most widely accepted and implemented approach to public key encryption M and C are integers between 0 and n-1 for some n: C = M e mod n M = C d mod n = (M e ) d mod n = M ed mod n

RSA Algorithm Sender and receiver know the values of n and e, but only the receiver knows the value of d Public key: KU = {e,n} Private key: KR = {d,n}

RSA Requirements It is possible to find values of e, d, n such that M ed = M mod n for all M<n It is relatively easy to calculate M e and C for all values of M<n It is infeasible to determine d given e and n

RSA Algorithm

RSA Example Select two prime numbers, p=7 and q=17 Calculate n = pq = 7 x 17 = 119 Calculate Φ (n) = (p-1)(q-1) = 96 Select e such that e is relatively prime to Φ (n) = 96 and less than Φ (n) ; in this case, e= 5 Determine d such that de = 1 mod 96 and d<96. The correct value is d = 77, because 77 x 5 = 385 = 4 x this is the modulus Euler totient multiplicative inverse of e See also “a very simple example of RSA encryption”:

RSA Example M e C d M

RSA Strength ● Brute force attack: try all possible keys – the larger e and d the more secure ● The larger the key, the slower the system ● For large n with large prime factors, factoring is a hard problem ● Cracked in 1994 a 428 bit key; $100 ● As of 2008, the largest (known) number factored by a general-purpose factoring algorithm was 663 bits long (see RSA-200), using a state-of-the-art distributed implementation (Wikipedia) ● It was estimated that the factoring for 512-bit RSA can be completed in 10 minutes by a $ device and 1024-bit RSA in less than 1 year with a $10 million device (2003). ● RSA keys are typically 1024–2048 bits long. Some experts believe that 1024-bit keys may become breakable in the near term ● Currently recommended that n be at least 2048 bits long

A primitive root of the prime number p A primitive root of the prime number p, namely a is positive integer less than p and its powers (from 1 to p-1) generates all the integers from 1 to p-1, that is S = { a 1 mod p, a 2 mod p,...., a p-1 mod p} = { 1,2,...,p-1} (Here the first set is a permutation on the integers from 1 to p-1). Note that a i not equivalent to a j mod p when i is different than j, where 0<i<j<p.

Diffie-Hellman Key Exchange Enables two users to exchange a secret key (of a block cipher or a stream cipher) for securely.

Diffie-Hellman Key Exchange Visualization of "Diffie Hellman Key Exchange Protocol" Use Cryptool Software ( and choose Menu --> Indv. Procedures -->Protocols --> Diffie-Hellman Demonstration

Security of Diffie-Hellman Key Exchange It is relatively easy to calculate exponentials modulo a prime but very difficult to calculate discrete logarithms (for large prime q, the latter task is computationally infeasible). The adversary (opponent such as Darth or Oscar) has only α,q, and Y A and Y B and he should calculate the following discrete logarithm in order to find the private key of part A, X A (respectively X B ): X A = dlog α,q (Y A )

Other Public Key Algorithms ● Digital Signature Standard (DSS) – makes use of SHA-1 and presents a new digital signature algorithm (DSA) ● Only used for digital signatures not encryption or key exchange

Digital Signatures (See Figure 3.2b ) ●

● Digital signatures are equivalent to traditional handwritten signatures in many respects; properly implemented digital signatures are more difficult to forge than the handwritten type. ● Digital signatures can also provide non-repudiation ● Digitally signed messages may be anything representable as a bitstring: examples include electronic mail, contracts, or a message sent via some other cryptographic protocol.

Digital Signatures (See Figure 3.2b ) ● A digital signature scheme typically consists of three algorithms: – A key generation algorithm that selects a private key uniformly at random from a set of possible private keys. The algorithm outputs the private key and a corresponding public key. – A signing algorithm which, given a message and a private key, produces a signature. – A signature verifying algorithm which given a message, public key and a signature, either accepts or rejects.

Public Key Authentication

Key Management Digital Certificate ● Certificate consists of a public key plus a user ID of the key owner (other user information may also be added), with the whole block signed by a trusted third party, the certificate authority (CA) (trusted by user community such as a government or a financial institution) ● CA has public key (and associated certificate also) and private key pair. ● User publishes his/her certificate and public key can be obtained from this certificate(trusted in a sense that CA signature verified by using CA's public key) ● Hash code of unsigned user certificate signed by the CA's private key to obtain signature (See Figure 3.12)

Key Management Digital Certificate ● Certificate Fundamental and important object in X.509 standard. ● X.509 public-key certificates universally accepted. ● X.509 public-key certificates are used in most network security applications: IP Security, SSL, SET and S/MIME ● Verisign is primary vendor ● In Turkey, legally valid user certificates are delivered by (see ) – Tübitak Kamu Sertifikasyon Merkezi ( – TurkTrust Elektronik Sertifika Sağlayıcısı ( – E-Güven Elektronik İmza (e-imza) ve Elektronik Sertifika Hizmetleri – E-Tugra (

Figure 3.12 Public Key Certificate Use