Cryptography: RSA & DES Marcia Noel Ken Roe Jaime Buccheri.

Slides:



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

Digital Signatures Good properties of hand-written signatures: 1. Signature is authentic. 2. Signature is unforgeable. 3. Signature is not reusable (it.
Asymmetric-Key Cryptography
Authentication and Digital Signatures CSCI 5857: Encoding and Encryption.
Session 5 Hash functions and digital signatures. Contents Hash functions – Definition – Requirements – Construction – Security – Applications 2/44.
Abdullah Sheneamer CS591-F2010 Project of semester Presentation University of Colorado, Colorado Springs Dr. Edward RSA Problem and Inside PK Cryptography.
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.
RSA ( Rivest, Shamir, Adleman) Public Key Cryptosystem
Dr Alejandra Flores-Mosri Message Authentication Internet Management & Security 06 Learning outcomes At the end of this session, you should be able to:
Public Key Crytography1 From: Introduction to Algorithms Cormen, Leiserson and Rivest.
Overview of Cryptography Oct. 29, 2002 Su San Im CS Dept. EWU.
ITIS 3200: Introduction to Information Security and Privacy Dr. Weichao Wang.
1 Lecture #10 Public Key Algorithms HAIT Summer 2005 Shimrit Tzur-David.
Public Encryption: RSA
RSA Exponentiation cipher
WS Algorithmentheorie 03 – Randomized Algorithms (Public Key Cryptosystems) Prof. Dr. Th. Ottmann.
Cryptography1 CPSC 3730 Cryptography Chapter 9 Public Key Cryptography and RSA.
Theory I Algorithm Design and Analysis (9 – Randomized algorithms) Prof. Dr. Th. Ottmann.
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.
Public Key Algorithms 4/17/2017 M. Chatterjee.
1 Pertemuan 08 Public Key Cryptography Matakuliah: H0242 / Keamanan Jaringan Tahun: 2006 Versi: 1.
Computer Science CSC 474Dr. Peng Ning1 CSC 474 Information Systems Security Topic 2.5 Public Key Algorithms.
Chapter 8.  Cryptography is the science of keeping information secure in terms of confidentiality and integrity.  Cryptography is also referred to as.
Encryption. Introduction Computer security is the prevention of or protection against –access to information by unauthorized recipients –intentional but.
Codes, Ciphers, and Cryptography-RSA Encryption
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.
Information Security and Management 13. Digital Signatures and Authentication Protocols Chih-Hung Wang Fall
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.
Digital Signatures Good properties of hand-written signatures: 1. Signature is authentic. 2. Signature is unforgeable. 3. Signature is not reusable (it.
RSA Public Key Algorithm. RSA Algorithm history  Invented in 1977 at MIT  Named for Ron Rivest, Adi Shamir, and Len Adleman  Based on 2 keys, 1 public.
Problems with symmetric (private-key) encryption 1) secure distribution of keys 2) large number of keys Solution to both problems: Public-key (asymmetric)
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.
Extended Euclidean Algorithm Presented by Lidia Abrams Anne Cheng.
Encryption Coursepak little bit in chap 10 of reed.
1 Lecture 9 Public Key Cryptography Public Key Algorithms CIS CIS 5357 Network Security.
Public-Key Cryptography CS110 Fall Conventional Encryption.
Networks Management and Security Lecture 3.
Modular Arithmetic with Applications to Cryptography Lecture 47 Section 10.4 Wed, Apr 13, 2005.
Section 4.4: The RSA Cryptosystem Practice HW Handwritten and Maple Exercises p at end of class notes.
Darci Miyashiro Math 480 April 29, 2013
Public Key Cryptography. symmetric key crypto requires sender, receiver know shared secret key Q: how to agree on key in first place (particularly if.
RSA Public Key Crypto System. About RSA Announced in 1977 by Ronald Rivest, Adi Shamir, and Leonard Adleman Relies on the relative ease of finding large.
1 Public-Key Cryptography and Message Authentication.
Cryptography and Network Security Chapter 9 - Public-Key Cryptography
Presented by Katherine Heller COSC 4765 University of Wyoming April 26, 2011 Image source: PC Dynamics, Inc.
The RSA Algorithm. Content Review of Encryption RSA An RSA example.
Lecture 8 Overview. Analysis of Algorithms Algorithms – Time Complexity – Space Complexity An algorithm whose time complexity is bounded by a polynomial.
Chapter 3 – Public Key Cryptography and RSA (A). Private-Key Cryptography traditional private/secret/single-key cryptography uses one key shared by both.
Public Key Cryptosystems RSA Diffie-Hellman Department of Computer Engineering Sharif University of Technology 3/8/2006.
RSA The algorithm was publicly described in 1977 by Ron Rivest, Adi Shamir, and Leonard Adleman at MIT Partly used for PGP (Pretty Good Privacy) to encrypt.
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.
CS 4803 Fall 04 Public Key Algorithms. Modular Arithmetic n Public key algorithms are based on modular arithmetic. n Modular addition. n Modular multiplication.
1 Cryptography Troy Latchman Byungchil Kim. 2 Fundamentals We know that the medium we use to transmit data is insecure, e.g. can be sniffed. We know that.
Introduction to Elliptic Curve Cryptography CSCI 5857: Encoding and Encryption.
RSA Pubic Key Encryption CSCI 5857: Encoding and Encryption.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
CSEN 1001 Computer and Network Security Amr El Mougy Mouaz ElAbsawi.
1 The RSA Algorithm Rocky K. C. Chang February 23, 2007.
Public Key Cryptography
Public-key Cryptography
Presentation transcript:

Cryptography: RSA & DES Marcia Noel Ken Roe Jaime Buccheri

RSA Background RSA was invented by three MIT researchers: Ronald Rivest, Adi Shamir, Leonard Adleman Searching for a more complete Public Key Cryptography approach than Diffie-Hellman. First published in 1977 in Scientific American. NSA asked them to stop distributing their report detailing RSA, but had no legal reason for them to stop distribution. Patented until September 2000.

RSA Overview RSA is a public key, or asymetric cryptography system. Two sets of keys, one public and one private. The public key pair is published, while the private is not. Strength of RSA comes from the difficulty of factoring large prime numbers. A message encrypted with the public key pair, can only be decrypted using the private key pair. A message encrypted using the private key pair can only be decrypted using the public key pair.

RSA Concepts We have two functions, P(M) using the public key pair (e, n) and S(M) using the private key pair (d, n).  The two functions are inverse functions. EXAMPLE – Function: X 2 Inverse Function:sqrt (X)  Either of the functions can be used to encrypt a message, but the opposite must be used to decrypt. EncryptP(M)  C Decrypt S(C)  M Encrypt S(M)  CDecrypt P(C)  M M is the message to be encrypted C is the ciphertext (encrypted message)

RSA Concepts – Key Generation Properly generating keys is essential to the strength of RSA We are trying to generate two pairs of keys, the public key pair and the private key pair. They will be denoted as follows: Public: (e, n) Private: (d, n) e is the public exponent d is the private exponent n, the modulus, is common to both pairs.

RSA Concepts – Steps to Generate RSA Keys 1.) Select two prime numbers: p, q. 2.) Find the modulus n = pq. This will be the n in our public and private key pairs. 3.) Find e, the public exponent. e must be relatively prime to (p-1)(q-1). 4.) Find d, the private exponent. d must be chosen so (ed-1)/(p-1)(q-1) is an integer. If d satisfies this equation, then d will be the multiplicative inverse of e. 5.) Discard p and q, only the public key (e, n) and private key (d, n) pairs are needed now.

RSA Concepts - Encryption If Bob wanted to send Alice a message that only Alice can read, he would do the following:  Obtain Alice’s public key pair (e, n)  Encrypt a message using Alice’s public key to create the ciphertext. Symbolic Function:P(M)  C Mathematical Function:C = M e mod n  Bob sends this ciphertext to Alice. The original message is protected during transmission.

RSA Concepts - Decryption Now that Alice has received the Ciphertext, she needs to decrypt it to get the original message back:  Use the secret key pair (d, n) known only to Alice to convert the Ciphertext back to the original message. Symbolic Function:S(C)  M Mathematical Function: M = C d mod n  Now Alice has retrieved the original message.

RSA Example – Key Generation 1.) Select two primes p, q: p = 3, q = 5 2.) Find modulus n = pq: n = 15 3.) Find e relatively prime to (p-1)(q-1): (3-1)(5-1) = 8. Factors of 8 are 8, 4, 2, 1. Let e be 3 – gcd(8, 3) = 1, so this works. 4.) Find d where the equation (ed-1)/(p-1)(q-1) is an integer: (3d-1)/8. Let d = 11 since (3*11-1)/8 = 4. 5.) Discard p, q. Our pairs are: Public: (3, 15) Private: (11, 15)

RSA Example – Encryption If Alice wants to send a message to Bob that can only be viewed by Bob, she needs to encrypt the message using Bob’s public key. This message can only be decrypted using Bob’s private key, so he will be the only one able to view it. Public: (3, 15) The message she wants to encrypt is “GO”. We take this one character at a time representing each as a number based on it’s position in the alphabet. M = 7, since the letter ‘G’ is mapped to the number 7 Using the equation C = M e mod n we create the ciphertext C. C = 7 3 mod 15 C = 13 Alice sends C to Bob without worrying about it being intercepted.

RSA Example – Decryption Bob has received this ciphertext and wishes to decrypt it. He applies the RSA function to the Ciphertext C using his private keys to get the original message back. Private: (11, 15) C = 13 M = mod 15 M = 7 = “G” In reality, we would use ASCII values to represent characters in the message, but this would require much larger primes since the largest value a message can have is the value of n, the modulus, minus 1 (in this case 14 is the max value).

RSA Concepts – Digital Signatures Alice wants to send Bob a message in a way that Bob can be certain that M came from Alice and is authentic.  Alice takes the message M, and creates a signature S by encrypting the message using her secret key pair. S(M)  S  She then sends Bob S and M (note M is not encrypted).  Bob uses Alice’s public key pair to decrypt the signature S and verifies that this matches M. P(S)  M  If the decrypted signature matches the message, it must have come from Alice and be unaltered, since only Alice could have created S using her secret key pair.

RSA - Efficiency To maximize efficiency, public exponent e chosen should be small to make computing the ciphertext easier. This makes encryption faster than decryption, and verification faster than signing in the case of digital signatures. Using typical modular exponentiation algorithms, here are the efficiencies (where k = the number of bits in the modulus n): Public Key Operations: O(k 2 ) steps Private Key Operations: O(k 3 ) steps Key generation: O(k 4 ) steps

RSA – Advantages/Disadvantages Advantages:  Increased security – Keys never need to be transferred. Transferring keys is a security risk.  Digital Signatures – RSA can be used for authentication and verification of message integrity. Disadvantages:  Speed – Most secret key (symetric) encryption methods are faster than public key cryptosystems. In software, DES is generally 100 times faster than RSA, in hardware DES is between 1,000 and 10,000 times as fast.

RSA – Breaking RSA General Methods – ways of finding the secret key d  Method 1: Factor modulus, n, into prime factors to find p, q - Integrity of RSA depends on factoring n being difficult. - Protect against by using proper key lengths. - Improvements in hardware will not make this easier if long keys are used. - It is much easier to multiply two numbers than to determine which numbers create a given product. EXAMPLE - 6 x 4 = 24 What are the two numbers multiplied together that gave you 24? 1 x 24 = 24 2 x 12 = 24 3 x 8 = 24 4 x 6 = 24

RSA – Breaking RSA General Methods – ways of finding the secret key d  Method 2: Compute the eth roots mod n. - Since C = M e mod n, the e th root of c mod n is the message. - There is no algorithm to accomplish this. Key lengths are critical to strength of RSA - In 1997 it was estimated that 512-bit RSA keys could be factored for less than $1,000,000 in cost and eight months of effort. - RSA Laboratories reccoments 1024 bit key length for corporate use, and 2048 bit key length for extremely important uses.

RSA – Breaking RSA Single Message Attacks – finds the contents of a particular message but does not expose keys.  Guessed plaintext attack -The attacker guesses the contents of the message, and encrypts it using the public key. If it matches the intercepted cyphertext, the attacker knows he is right. - Can be defended against by appending some random bits to the message.