Transcript Slide 1
1
Networks and Communication Department
NET 311 INFORMATION SECURITY
Lecture 4: Asymmetric Ciphers (RSA,ElGamal)
1
lecture contents:
o o o o
Public-Key Cryptography Why Public-Key Cryptography?
RSA Cryptography EIGamal Cryptography
30-Apr-20 Networks and Communication Department
Private-Key Cryptography
3
traditional private/secret/single key cryptography uses one key shared by both sender and receiver if this key is disclosed communications are compromised also is symmetric, parties are equal hence does not protect sender from receiver forging a message & claiming is sent by sender 30-Apr-20 Networks and Communication Department
4
Public-Key Cryptography
probably most significant advance in the 3000 year history of cryptography uses two keys – a public & a private key asymmetric since parties are not equal uses clever application of number theoretic concepts to function 30-Apr-20 Networks and Communication Department
5
Why Public-Key Cryptography?
Developed to address two key issues:
key distribution – how to have secure communications in general without having to trust a KDC with your key digital signatures – how to verify a message comes intact from the claimed sender 30-Apr-20 Networks and Communication Department
Public-Key Cryptography
public-key/two-key/asymmetric cryptography involves the use of two keys: a public-key, which may be known by anybody, and can be used to encrypt messages, and verify signatures a related private-key, known only to the recipient, used to decrypt messages, and sign (create) signatures Is asymmetric because those who encrypt messages or verify signatures cannot decrypt messages or create signatures
Public-Key Cryptography
Asymmetric-Key Cryptography
Asymmetric-key (public key cryptography) uses two keys: one private and one public.
There are two algorithms:
RSA
ELGAMAL
Public-Key Applications
can classify uses into 3 categories: encryption/decryption (provide secrecy) digital signatures (provide authentication) key exchange (of session keys) some algorithms are suitable for all uses, others are specific to one
Modular arithmetic
This example is modulo 7 The numbers allowed are 0 to 6 After 6, numbers “wrap around” 0 = 7 (mod 7) 3+3 = 6 (mod 7) 4+4 = 1 (mod 7) 5 4 6 3 0 2 1
RSA
The most common public key algorithm is RSA, named for its inventors Rivest, Shamir, and Adelman. It uses two numbers:
e
public key
d
private The two keys, e and d, have a special relationship to each other.
RSA
RSA – selecting keys
Bob uses the following steps to select the private and public keys: Bob chooses two very large prime numbers p and q Bob multiplies p and q to find n
n=p x q
Bob calculates another number
ф = (p -1) X (q -1)
Bob chooses a random number e, 1< e<
ф
. He then calculates d so that
d X e mod ф = 1
Bob announces e and n to the public; he keeps
ф
secret. and d
RSA – Encryption and Decryption
Encryption Decryption Restriction P < n , if not, the plaintext needs to be divided into blocks to make P less than n.
RSA Exercise
Encrypt the following message “NO” By Using RSA algorithm.
Assume that p=17, q =11, and e= 7 Hint, each character will be encoded according to this algorithm (A - Z)
(00 – 25)
Encrypt each character individually .
The solution
Step1: calculate n, where n= p x q = 17 x 11 = 187 Step2: calculate ɸ where ɸ = (p-1) x (q-1) = 16 X 10 =160 Step3: calculate d, where e is given e . d mod ɸ =1 7d mod 160 =1 d=23 This is because 23 X 7 = 161 = ( 1 X 160) + 1
The solution
Step5: encode the plaintext.
P=“NO”= 13 14 Step6: C= p
e mod n
C(N)= (13 ) 7 mod 187 = 106 C(O)=(14) 7 mod 187= 108 Step7: P= C
d mod n
P(106)= (106) 23 P(108)= (108) 23 mod 187 =13 mod 187 =14
RSA- Application
RSA is useful for short messages but not for long messages.
RSA is used in digital signature , and authentication algorithms.