Public Key Cryptography

Similar documents
Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2010

Cryptography and Network Security. Sixth Edition by William Stallings

Chapter 9. Public Key Cryptography, RSA And Key Management

Public Key Encryption. Modified by: Dr. Ramzi Saifan

Chapter 3 Public Key Cryptography

Public Key Cryptography and RSA

Public Key Algorithms

Chapter 7 Public Key Cryptography and Digital Signatures

Overview. Public Key Algorithms I

Lecture 6: Overview of Public-Key Cryptography and RSA

Chapter 9 Public Key Cryptography. WANG YANG

CSC 474/574 Information Systems Security

PUBLIC KEY CRYPTO. Anwitaman DATTA SCSE, NTU Singapore CX4024. CRYPTOGRAPHY & NETWORK SECURITY 2018, Anwitaman DATTA

Computer Security. 08. Cryptography Part II. Paul Krzyzanowski. Rutgers University. Spring 2018

10.1 Introduction 10.2 Asymmetric-Key Cryptography Asymmetric-Key Cryptography 10.3 RSA Cryptosystem

CS669 Network Security

Computer Security 3/23/18

Lecture 2 Applied Cryptography (Part 2)

Public Key Algorithms

CSCI 454/554 Computer and Network Security. Topic 5.2 Public Key Cryptography

Outline. CSCI 454/554 Computer and Network Security. Introduction. Topic 5.2 Public Key Cryptography. 1. Introduction 2. RSA

Distributed Systems. 26. Cryptographic Systems: An Introduction. Paul Krzyzanowski. Rutgers University. Fall 2015

Outline. Public Key Cryptography. Applications of Public Key Crypto. Applications (Cont d)

Introduction to Cryptography and Security Mechanisms: Unit 5. Public-Key Encryption

This chapter continues our overview of public-key cryptography systems (PKCSs), and begins with a description of one of the earliest and simplest

Public-key encipherment concept

Applied Cryptography and Computer Security CSE 664 Spring 2018

Public Key Algorithms

Public-Key Cryptography. Professor Yanmin Gong Week 3: Sep. 7

Public Key Cryptography

Public Key Cryptography and the RSA Cryptosystem

RSA (material drawn from Avi Kak Lecture 12, Lecture Notes on "Computer and Network Security" Used in asymmetric crypto.

Some Stuff About Crypto

Introduction to Cryptography and Security Mechanisms. Abdul Hameed

Key Exchange. Secure Software Systems

The Application of Elliptic Curves Cryptography in Embedded Systems

Public Key (asymmetric) Cryptography

Cryptography MIS

Cryptography Symmetric Cryptography Asymmetric Cryptography Internet Communication. Telling Secrets. Secret Writing Through the Ages.

Computer Security: Principles and Practice

Channel Coding and Cryptography Part II: Introduction to Cryptography

(a) Symmetric model (b) Cryptography (c) Cryptanalysis (d) Steganography

Cryptography and Network Security

Cryptography and Network Security Chapter 10. Fourth Edition by William Stallings

LECTURE 4: Cryptography

Great Theoretical Ideas in Computer Science. Lecture 27: Cryptography

ISA 662 Internet Security Protocols. Outline. Prime Numbers (I) Beauty of Mathematics. Division (II) Division (I)

Cryptography Intro and RSA

Key Management and Distribution

Chapter 3. Principles of Public-Key Cryptosystems

Chair for Network Architectures and Services Department of Informatics TU München Prof. Carle. Network Security

Public Key Cryptography, OpenPGP, and Enigmail. 31/5/ Geek Girls Carrffots GVA

Part VI. Public-key cryptography

Introduction to Cryptography Lecture 7

Lecture 6 - Cryptography

PROTECTING CONVERSATIONS

RSA. Public Key CryptoSystem

ASYMMETRIC CRYPTOGRAPHY

Cryptographic Techniques. Information Technologies for IPR Protections 2003/11/12 R107, CSIE Building

LECTURE NOTES ON PUBLIC- KEY CRYPTOGRAPHY. (One-Way Functions and ElGamal System)

Encryption Details COMP620

Cryptography and Network Security

Public-Key Cryptography

CSC 474/574 Information Systems Security

Lecture IV : Cryptography, Fundamentals

Cryptographic Concepts

UNIT III 3.1DISCRETE LOGARITHMS

Crypto Basics. Recent block cipher: AES Public Key Cryptography Public key exchange: Diffie-Hellmann Homework suggestion

Public-Key Cryptography

CSE 127: Computer Security Cryptography. Kirill Levchenko

Public Key Encryption

The Beta Cryptosystem

CS 6324: Information Security More Info on Key Establishment: RSA, DH & QKD

1. Diffie-Hellman Key Exchange

Study Guide to Mideterm Exam

Encryption. INST 346, Section 0201 April 3, 2018

1.264 Lecture 28. Cryptography: Asymmetric keys

Network Security. Chapter 4 Public Key Cryptography. Public Key Cryptography (4) Public Key Cryptography

Introduction. CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell

Tuesday, January 17, 17. Crypto - mini lecture 1

KALASALINGAM UNIVERSITY

Uzzah and the Ark of the Covenant

Math236 Discrete Maths with Applications

A nice outline of the RSA algorithm and implementation can be found at:

Crypto CS 485/ECE 440/CS 585 Fall 2017

APNIC elearning: Cryptography Basics

Cryptography Basics. IT443 Network Security Administration Slides courtesy of Bo Sheng

Cryptography (Overview)

CSC/ECE 774 Advanced Network Security

9/30/2016. Cryptography Basics. Outline. Encryption/Decryption. Cryptanalysis. Caesar Cipher. Mono-Alphabetic Ciphers

CRYPTOLOGY KEY MANAGEMENT CRYPTOGRAPHY CRYPTANALYSIS. Cryptanalytic. Brute-Force. Ciphertext-only Known-plaintext Chosen-plaintext Chosen-ciphertext

Elliptic Curve Public Key Cryptography

Other Uses of Cryptography. Cryptography Goals. Basic Problem and Terminology. Other Uses of Cryptography. What Can Go Wrong? Why Do We Need a Key?

CPSC 467b: Cryptography and Computer Security

Side-Channel Attacks on RSA with CRT. Weakness of RSA Alexander Kozak Jared Vanderbeck

CSE 3461/5461: Introduction to Computer Networking and Internet Technologies. Network Security. Presentation L

Other Topics in Cryptography. Truong Tuan Anh

Security. Communication security. System Security

More on Cryptography CS 136 Computer Security Peter Reiher January 19, 2017

INTERNATIONAL JOURNAL OF ELECTRONICS AND COMMUNICATION ENGINEERING & TECHNOLOGY (IJECET)

Transcription:

graphy CSS322: Security and Cryptography Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 29 December 2011 CSS322Y11S2L07, Steve/Courses/2011/S2/CSS322/Lectures/rsa.tex, r2070

Contents of Public-Key Cryptosystems The Algorithm Key Exchange Other Public-Key Cryptosystems

Birth of Public-Key Cryptosystems Beginning to 1960 s: permutations and substitutions (Caesar, rotor machines, DES,... ) 1960 s: NSA secretly discovered public-key cryptography 1970: first known (secret) report on public-key cryptography by CESG, UK 1976: Diffie and Hellman public introduction to public-key cryptography Avoid reliance on third-parties for key distribution Allow digital signatures

of Public-Key Cryptosystems Symmetric algorithms used same secret key for encryption and decryption Asymmetric algorithms in public-key cryptography use one key for encryption and different but related key for decryption Characteristics of asymmetric algorithms: Require: Computationally infeasible to determine decryption key given only algorithm and encryption key Optional: Either of two related keys can be used for encryption, with other used for decryption

Public and Private Keys Public Key For secrecy: used in encryption For authentication: used in decryption Available to anyone Private Key For secrecy: used in decryption For authentication: used in decryption Secrect, known only by owner Public-Private Key Pair User A has pair of related keys, public and private: (PU a, PR a )

Encryption with Public Key

Encryption with Private Key

Conventional vs Public-Key Encryption

Secrecy in a system

Authentication in a system

Secrecy and Authentication in a Public Key Cryptosystem

Applications of systems Secrecy, encryption/decryption of messages Digital signature, sign message with private key Key exchange, share secret session keys

Requirements of Public-Key Cryptography 1. Computationally easy for B to generate pair (PU b,pr b ) 2. Computationally easy for A, knowing PU b and message M, to generate ciphertext: C = E(PU b, M) 3. Computationally easy for B to decrypt ciphertext using PR b : M = D(PR b, C) = D[PR b, E(PU b, M)] 4. Computationally infeasible for attacker, knowing PU b and C, to determine PR b 5. Computationally infeasible for attacher, knowing PU b and C, to determine M 6. (Optional) Two keys can be applied in either order: M = D[PU b, E(PR b, M)] = D[PR b, E(PU b, M)]

Requirements of Public-Key Cryptography 6 requirements lead to need for trap-door one-way function Every function value has unique inverse Calculation of function is easy Calculation of inverse is infeasible, unless certain information is known Y = f k (X ) easy, if k and Y are known X = f 1 k (Y ) easy, if k and Y are known X = f 1 k (Y ) infeasible, if Y is known but k is not What is easy? What is infeasible? Computational complexity of algorithm gives an indication Easy if can be solved in polynomial time as function of input

Public-Key Cryptanalysis Brute Force Attacks Use large key to avoid brute force attacks Public key algorithms less efficient with larger keys Public-key cryptography mainly used for key management and signatures Compute Private Key from Public Key No known feasible methods using standard computing Probable-Message Attack Encrypt all possible M using PU b for the C that matches C, attacker knows M Only feasible of M is short Solution for short messages: append random bits to make it longer

Contents of Public-Key Cryptosystems The Algorithm Key Exchange Other Public-Key Cryptosystems

Ron Rivest, Adi Shamir and Len Adleman Created in 1978; Security sells related products Most widely used public-key algorithm Block cipher: plaintext and ciphertext are integers

The Algorithm Plaintext encrypted in blocks, each block binary value less than n In practice, block size i bits where 2 i < n 2 i+1 ; n is 1024 bits Encryption of plaintext M: Decryption of ciphertext C: C = M e mod n M = C d mod n = (M e ) d mod n = M ed mod n Sender A and receiver B know n; Sender A knows e; Receiver B knows d PU b = {e, n}, PR b = {d, n}

Requirements of the Algorithm 1. Possible to find values of e, d, n such that M ed mod n = M for all M < n 2. Easy to calculate M e mod n and C d mod n for all values of M < n 3. Infeasible to determine d given e and n Requirement 1 met if e and d are relatively prime Choose primes p and q, and calculate: n = pq 1 < e < φ(n) ed 1 (mod φ(n)) or d e 1 (mod φ(n)) n and e are public; p, q and d are private

The Algorithm

Example of Algorithm

Processing of Multiple Blocks

Example of Processing of Multiple Blocks

Computational Efficiency of Encryption and decryption require exponentiation Very large numbers; using properties of modular arithmetic makes it easier: [(a mod n) (b mod n)] mod n = (a b) mod n Choosing e Values such as 3, 17 and 65537 are popular: make exponentiation faster Small e vulnerable to attack: add random padding to each M Choosing d Small d vulnerable to attack Decryption using large d made faster using Chinese Remainder Theorem and Fermat s Theorem Choosing p and q p and q must be very large primes Choose random odd number and test if its prime (probabilistic test)

Security of Brute-Force attack: choose large d (but makes algorithm slower) Mathematical attacks: 1. Factor n into its two prime factors 2. Determine φ(n) directly, without determining p or q 3. Determine d directly, without determining φ(n) Factoring n is considered fastest approach; hence used as measure of security Timing attacks: practical, but countermeasures easy to add (e.g. random delay). 2 to 10% performance penalty Chosen ciphertext attack: countermeasure is to use padding (Optimal Asymmetric Encryption Padding)

MIPS-Years Needed To Factor

Progress in Factorization See http://www.rsa.com/rsalabs/node.asp?id=2092 for update. -768 has been solved.

Contents of Public-Key Cryptosystems The Algorithm Key Exchange Other Public-Key Cryptosystems

Key Exchange Diffie and Hellman proposed public key cryptosystem in 1976 Algorithm for exchanging secret key (not for secrecy of data) Based on discrete logarithms Easy to calculate exponentials modulo a prime Infeasible to calculate inverse, i.e. discrete logarithm

Key Exchange Algorithm

Key Exchange

Security of Key Exchange Insecure against man-in-the-middle-attack Countermeasure is to use digital signatures and public-key certificates

Contents of Public-Key Cryptosystems The Algorithm Key Exchange Other Public-Key Cryptosystems

Other Public-Key Cryptosystems ElGamal Cryptosystem Similar concepts to Used in Digital Signature Standard and secure email Elliptic Curve Cryptography Uses elliptic curve arithmetic (instead of modular arithmetic in ) Equivalent security to with smaller keys (better performance) Used for key exchange and digital signatures