Reminder: Public Key Cryptosystem Invented in the late 1970's, with help from the development of complexity theory around that time. Based on a problem.

Slides:



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

Chapter 10 Encryption: A Matter of Trust. Awad –Electronic Commerce 1/e © 2002 Prentice Hall 2 OBJECTIVES What is Encryption? Basic Cryptographic Algorithm.
Public Key Cryptography INFSCI 1075: Network Security – Spring 2013 Amir Masoumzadeh.
Spring 2000CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
7. Asymmetric encryption-
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 6 Wenbing Zhao Department of Electrical and Computer Engineering.
OOP/Java1 Public Key Crytography From: Introduction to Algorithms Cormen, Leiserson and Rivest.
Public-key Cryptography Montclair State University CMPT 109 J.W. Benham Spring, 1998.
BY MUKTADIUR RAHMAN MAY 06, 2010 INTERODUCTION TO CRYPTOGRAPHY.
Public Key Crytography1 From: Introduction to Algorithms Cormen, Leiserson and Rivest.
ECOMMERCE TECHNOLOGY FALL 2003 COPYRIGHT © 2003 MICHAEL I. SHAMOS Cryptography.
WS Algorithmentheorie 03 – Randomized Algorithms (Public Key Cryptosystems) Prof. Dr. Th. Ottmann.
Public Key Cryptography and the RSA Algorithm
Cryptography1 CPSC 3730 Cryptography Chapter 9 Public Key Cryptography and RSA.
Theory I Algorithm Design and Analysis (9 – Randomized algorithms) Prof. Dr. Th. Ottmann.
Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared by both sender and receiver if this key is disclosed communications.
WS Algorithmentheorie 03 – Randomized Algorithms (Public Key Cryptosystems) Prof. Dr. Th. Ottmann.
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.
Chapter 9 – Public Key Cryptography and RSA Private-Key Cryptography  traditional private/secret/single key cryptography uses one key  shared by both.
Public Key Cryptography RSA Diffie Hellman Key Management Based on slides by Dr. Lawrie Brown of the Australian Defence Force Academy, University College,
ASYMMETRIC CIPHERS.
Lecture 6: Public Key Cryptography
Introduction to Public Key Cryptography
Public Key Model 8. Cryptography part 2.
Public Key Encryption and the RSA Public Key Algorithm CSCI 5857: Encoding and Encryption.
Andreas Steffen, , 4-PublicKey.pptx 1 Internet Security 1 (IntSi1) Prof. Dr. Andreas Steffen Institute for Internet Technologies and Applications.
1 Fluency with Information Technology Lawrence Snyder Chapter 17 Privacy & Digital Security Encryption.
CS5204 – Fall Cryptographic Security Presenter: Hamid Al-Hamadi October 13, 2009.
Page 1 Secure Communication Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation.
Chapter 14 Encryption: A Matter Of Trust. Awad –Electronic Commerce 2/e © 2004 Pearson Prentice Hall 2 OBJECTIVES What is Encryption? Basic Cryptographic.
Network and Communications Network Security Department of Computer Science Virginia Commonwealth University.
RSA Implementation. What is Encryption ? Encryption is the transformation of data into a form that is as close to impossible as possible to read without.
RSA Ramki Thurimella.
10/1/2015 9:38:06 AM1AIIS. OUTLINE Introduction Goals In Cryptography Secrete Key Cryptography Public Key Cryptograpgy Digital Signatures 2 10/1/2015.
RSA By: Abhishek Naik Viswanath Chennuru CPSC 624.
Prelude to Public-Key Cryptography Rocky K. C. Chang, February
Cryptography Dec 29. This Lecture In this last lecture for number theory, we will see probably the most important application of number theory in computer.
Network Security Lecture 17 Presented by: Dr. Munam Ali Shah.
By Yernar.  Background  Key generation  Encryption  Decryption  Preset Bits  Example.
Public-Key Encryption
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
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.
What is RSA RSA is a system employed to create the encrypted message in which the key used for encryption is different from that used to decrypt. It is.
Computer and Network Security Rabie A. Ramadan Lecture 6.
Cryptography and Network Security Chapter 9 - Public-Key Cryptography
CS461/ECE422 Spring 2012 Nikita Borisov — UIUC1.  Text Chapters 2 and 21  Handbook of Applied Cryptography, Chapter 8 
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
PUBLIC-KEY CRYPTOGRAPH IT 352 : Lecture 2- part3 Najwa AlGhamdi, MSc – 2012 /1433.
Cryptography 1 Crypto Cryptography 2 Crypto  Cryptology  The art and science of making and breaking “secret codes”  Cryptography  making “secret.
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.
The First Ten Years of Public-Key Cryptography Paper by: Whitfield Diffie Presentation by Taotao Zhao.
1 Chapter 10: Key Management in Public key cryptosystems Fourth Edition by William Stallings Lecture slides by Lawrie Brown (Modified by Prof. M. Singhal,
Public Key Algorithms Lesson Introduction ●Modular arithmetic ●RSA ●Diffie-Hellman.
POON TENG HIN.  RSA  Shamir’s Three-Pass Protocol  Other issues.
Fall, Privacy&Security - Virginia Tech – Computer Science Click to edit Master title style Cryptographic Security Identity-Based Encryption.
Group 9 Chapter 8.3 – 8.6. Public Key Algorithms  Symmetric Key Algorithms face an inherent problem  Keys must be distributed to all parties but kept.
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 9 Overview. Digital Signature Properties CS 450/650 Lecture 9: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
EE 122: Lecture 24 (Security) Ion Stoica December 4, 2001.
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.
Public Key Cryptography. Asymmetric encryption is a form of cryptosystem in which Encryption and decryption are performed using the different keys—one.
Public Key Encryption and the RSA Algorithm
Presentation transcript:

Reminder: Public Key Cryptosystem Invented in the late 1970's, with help from the development of complexity theory around that time. Based on a problem so difficult that it unrealistic computer time to solve Has two keys, a public key [(e,n) for RSA] and a private key [d or n=pq for RSA] Public key  encrypt messages: anyone/system knowing the public key could send them in privacy. decrypt  private key. owner of the private key would be the only one who could decrypt the messages Important idea  Application to generate key exchange in a two-party communication: common secret key for bulk encryption using a private/symmetric key cryptosystem Whitfield Diffie and Martin Hellman started the era of public key cryptosystems  ideas from number theory to construct a key exchange protocol Shortly after Ron Rivest, Adi Shamir and Leonard Adleman developed RSA: first real public key cryptosystem capable of encryption and digital signatures. Later several public cryptosystems followed using many different underlying ideas (e.g. knapsack problems, different groups on finite fields and lattices). Many of them were soon proven to be insecure. However, the Diffie-Hellman protocol and RSA appear to have remained two of the strongest up to now.

8.6 Cryptographic Protocols and Applications Protocols = Algorithms used between two or more parties to achieve a specific goal Cryptographic Protocol = performs a security-related function via a cryptosystem. Widely used for secure application-level data transport, ex. Key Exchange. Signature with RSA Digital cash, signature, credentials secure web (HTTP) connections, Online Poker, bid on auctions, Sharing secrets that could only be recovered by a LARGE group of people For more see [Meva Va97] “Menzes, Van Oorschot, Vanstone; Handbook of Applied Cryptography, CRC press, Boca Raton, Florida”

Advanced cryptographic protocols wide variety of cryptographic protocols go beyond the traditional goals of data confidentiality, integrity, and authentication to also secure a variety of other desired characteristics of computer-mediated collaboration. Blind signatures can be used for digital cash and digital credentials to prove that a person holds an attribute or right without revealing that person's identity or the identities of parties that person transacted with. Secure digital time-stamping can be used to prove that data (even if confidential) existed at a certain time. Secure multiparty computation can be used to compute answers (such as determining the highest bid in an auction) based on confidential data (such as private bids), so that when the protocol is complete the participants know only their own input and the answer. Undeniable signatures include interactive protocols that allow the signer to prove a forgery and limit who can verify the signature. Deniable encryption augments standard encryption by making it impossible for an attacker to mathematically prove the existence of a plaintext message. Digital mixes create hard-to-trace communications. (Wikipedia)Blind signaturesdigital cashdigital credentialsSecure digital time-stampingSecure multiparty computationUndeniable signaturesDeniable encryption Digital mixes

Diffie-Hellman Key Exchange (1976) Popular public-key technique for establishing secret keys over an insecure channel (to use for symmetric/private Cryptosystem). Example: exchange of keys between A & B over insecure communication links without previously shared information! Should not be discover by others in a feasible computer time. Public information: (p,r) p=large prime r=primitive root of p: {r k, k in N} ≡ {1,2,…,p-1} (mod p)

Private keys: A picks a private #k from {1,2,…,p-2}  private key k B picks a private #h from {1,2,…,p-2}  private key h Common Public Key K From A  B: y 1 ≡ r k (mod p) B  common key K ≡ y 1 h ≡ r kh (mod p) From B  A: y 2 ≡ r h (mod p) A  common key K ≡ y 2 k ≡ r hk (mod p)

Cryptanalysis Given the residues of r h & r k modulo p find the key K ≡ r hk (mod p) ? computationally difficult problem (see chapter 9) Example: r=2, p=53, k=7,h=8 2 7 ≡22 (mod 53), 2 8 ≡44 (mod 53), K=2 8*7 ≡16 (mod 53) However, if only 22 and 44 are given, how to find K? Increased complexity for a group of n individuals: K= r k1k2…kn (mod p)

8.6.2.Digital Signature Make sure that a msg came for the supposed sender? Only the supposed sender is the source of that msg! RSA (e, n=pq)  to send a “signed” msg Applications: , E-banking, E-transactions… A  public key (e 1,n 1 ) & private key (d 1,n 1 )  X≡X e1d1 (mod n 1 ) B  public key (e 2,n 2 ) & private key (d 2,n 2 )  X≡X e2d2 (mod n 2 ) P= Plaintext Signature S=Encrypted Signature by A that only B can decrypt without knowing private key d 1 of A.

Encryption by A P  S ≡ P d1 (mod n 1 )  C ≡ S e2 (mod n 2 ) C is sent to B by A. Decryption by B C  S ≡ C d2 (mod n 2 )  P ≡ S e1 (mod n 1 ) Intermediate step: If n 2 > n 1 direct Transformation S  C If n 2 ≤ n 1, split S into blocks of size < n 2 then the transformation S  C for each block.

Example: Romeo + Juliet A= Romeo: (e,n)=(5,1273)=(5, 19*67)  Φ(n) =18*66= 1188  d= ē Φ [Φ(n)]-1 (mod Φ(n))= = 713 B= Juliet: (e,n)=(3,781)=(3, 11*71)  Φ(n) =10*70= 700  d= ē Φ [Φ(n)]-1 (mod Φ(n))= = 107 P= goodbye sweet love = Form blocks of four, then for each block compute: S ≡ P d1 (mod n 1 ) = P 713 (mod 1273) = since n 2 ≤ n 1, split each block of S in two to get blocks of size < n 2 Transformation S  C for each new block: C ≡ S e2 (mod n 2 )= S 3 (mod 781) = Sent to Juliet. She decrypts: C  S ≡ C d2 (mod n 2 ) then  P ≡ S e1 (mod n 1 )

Electronic Poker A & B wish to play Poker Online p= large prime Jointly choosing A  secret exponents keys e a  d a = inverse (mod p) B  secret exponents keys e b  d b = inverse (mod p) Exponent Encryptions & decryptions: C=E (P)=P e & P=D(C)= C d  E(D(P))= P (mod p) E a, E b, D a, D b are commutative under compositions M 1,…,M 52  the deck of cards

B applies E b  E b (M 1 ),…, E b (M 52 ) B  shuffles (Permutation)  sends to A A  selects 5 cards E b (M)  sends to B = B’s hand B applies D b ( to see the hand M)  D b [ E b (M)]=M A  selects 5 cards C=E b (N) with N in M 1,…,M 52 A applies E a ( unable to see the hand N )  E a (C)  sends to B B applies D b ( unable to see the hand N )  D b [E a (C)]  sends to A D b [ E a (C)] = D b [ E a (E b (N))]= E a ( D b [E b (N)])= E a (N) A applies D a ( to see his hand N )  D a [ E a (N)]=N The same steps are followed for the rest of the game Test for No Cheating: The Keys are revealed so each player (or the system) can verify that the cards claimed by each.

8.6.4.Secret Sharing P rotect an extremely sensitive information from: loss  share its components with several individuals exposure  but no small group can retrieve the information Example: Master key K for access to the password file Solution: (s,r)- threshold Schemes r individuals Shadows k 1,…,k r = keys, each given to an individual K= master key To recover K  least s of any of these shadows! but not less that s shadows!

p = prime larger than K p & m 1 <…<m r pairwise relatively prime M= m 1 …m s > p m r-1 …m r-s+2 t integer with 0< t< M/p K 0 = K + t p with K 0 in {0,…,M-1} The shadows: k j = K 0 (mod m j ) Find K from any s individuals with shadows: k * 1, …, k * s ? M * = m * 1 …m * s Chinese remainder (theorem 4.12) for k * j = K 0 (mod m * j )  solves K 0 (mod M * ) where 0 ≤ K 0 < M ≤ M * Determine K 0 and then: K = K 0 – t p