15-499Page 1 15-499:Algorithms and Applications Cryptography I – Introduction – Terminology – Some primitives – Some protocols.

Slides:



Advertisements
Similar presentations
Public Key Cryptography INFSCI 1075: Network Security – Spring 2013 Amir Masoumzadeh.
Advertisements

15-853Page 1 CPS 214 Computer Networks and Distributed Systems Cryptography Basics RSA SSL SSH Kerberos.
CPS 290 Computer Security Network Tools Cryptography Basics CPS 290Page 1.
Digital Signatures Good properties of hand-written signatures: 1. Signature is authentic. 2. Signature is unforgeable. 3. Signature is not reusable (it.
CS 6262 Spring 02 - Lecture #7 (Tuesday, 1/29/2002) Introduction to Cryptography.
Digital Signatures and Hash Functions. Digital Signatures.
1 Introduction CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell.
Session 4 Asymmetric ciphers.
Session 5 Hash functions and digital signatures. Contents Hash functions – Definition – Requirements – Construction – Security – Applications 2/44.
Public Key Algorithms …….. RAIT M. Chatterjee.
UCB Security Jean Walrand EECS. UCB Outline Threats Cryptography Basic Mechanisms Secret Key Public Key Hashing Security Systems Integrity Key Management.
Public-key Cryptography Montclair State University CMPT 109 J.W. Benham Spring, 1998.
ECOMMERCE TECHNOLOGY SUMMER 2002 COPYRIGHT © 2002 MICHAEL I. SHAMOS Cryptographic Security.
Chapter 5 Cryptography Protecting principals communication in systems.
ECOMMERCE TECHNOLOGY FALL 2003 COPYRIGHT © 2003 MICHAEL I. SHAMOS Cryptography.
Secure Hashing and DSS Sultan Almuhammadi ICS 454 Principles of Cryptography.
Cryptography (continued). Enabling Alice and Bob to Communicate Securely m m m Alice Eve Bob m.
ITIS 3200: Introduction to Information Security and Privacy Dr. Weichao Wang.
Csci5233 Computer Security & Integrity 1 Cryptography: Basics (2)
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
15-853:Algorithms in the Real World
Public Key Cryptography RSA Diffie Hellman Key Management Based on slides by Dr. Lawrie Brown of the Australian Defence Force Academy, University College,
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.
Sorting Out Digital Certificates Bill blog.codingoutloud.com ··· Boston Azure ··· 13·Dec·2012 ···
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.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
Pretty Good Privacy by Philip Zimmerman presented by: Chris Ward.
The RSA Algorithm Rocky K. C. Chang, March
Elgamal Public Key Encryption CSCI 5857: Encoding and Encryption.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Network Security (A Very Brief Introduction)
Digital Signatures Good properties of hand-written signatures: 1. Signature is authentic. 2. Signature is unforgeable. 3. Signature is not reusable (it.
296.3:Algorithms in the Real World
Cryptography Lecture 1: Introduction Piotr Faliszewski.
I-4 security.
10/1/2015 9:38:06 AM1AIIS. OUTLINE Introduction Goals In Cryptography Secrete Key Cryptography Public Key Cryptograpgy Digital Signatures 2 10/1/2015.
Public-Key Cryptography CS110 Fall Conventional Encryption.
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
Midterm Review Cryptography & Network Security
CS526: Information Security Prof. Sam Wagstaff September 16, 2003 Cryptography Basics.
Cryptography Lecture 9 Stefan Dziembowski
Basic Cryptography 1. What is cryptography? Cryptography is a mathematical method of protecting information –Cryptography is part of, but not equal to,
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.
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.
CPS 290 Computer Security Network Tools Cryptography Basics CPS 290Page 1.
Cryptography 1 Crypto Cryptography 2 Crypto  Cryptology  The art and science of making and breaking “secret codes”  Cryptography  making “secret.
NEW DIRECTIONS IN CRYPTOGRAPHY Made Harta Dwijaksara, Yi Jae Park.
A A E E D D C C B B # Symmetric Keys = n*(n-1)/2 F F
Public Key Algorithms Lesson Introduction ●Modular arithmetic ●RSA ●Diffie-Hellman.
PUBLIC-KEY CRYPTOGRAPHY AND RSA – Chapter 9 PUBLIC-KEY CRYPTOGRAPHY AND RSA – Chapter 9 Principles Applications Requirements RSA Algorithm Description.
15-853Page :Algorithms in the Real World Cryptography.
Computer Security Lecture 5 Ch.9 Public-Key Cryptography And RSA Prepared by Dr. Lamiaa Elshenawy.
15-499Page :Algorithms and Applications Cryptography II – Number theory (groups and fields)
Introduction to Pubic Key Encryption CSCI 5857: Encoding and Encryption.
IT 221: Introduction to Information Security Principles Lecture 5: Message Authentications, Hash Functions and Hash/Mac Algorithms For Educational Purposes.
Elgamal Public Key Encryption CSCI 5857: Encoding and Encryption.
Cryptographic Security Aveek Chakraborty CS5204 – Operating Systems1.
1 The RSA Algorithm Rocky K. C. Chang February 23, 2007.
Cryptography and Network Security Chapter 13
Cryptography Page Page 2 Cryptography Outline Introduction: terminology, cryptanalysis, security Primitives: one-way functions, trapdoors, …
Asymmetric-Key Cryptography
CPS 512 Distributed Systems
Network Tools Cryptography Basics
Network Tools Cryptography Basics
Presentation transcript:

15-499Page :Algorithms and Applications Cryptography I – Introduction – Terminology – Some primitives – Some protocols

15-499Page 2 Cryptography Outline Introduction: terminology and background Primitives: one-way hash functions, trapdoors, … Protocols: digital signatures, key exchange,.. Number Theory: groups, fields, … Private-Key Algorithms: DES, Rijndael, RC4 Cryptanalysis: Differential, Linear Public-Key Algorithms: Knapsack, RSA, El-Gamal, Blum-Goldwasser Case Studies: Kerberos, Digital Cash

15-499Page 3 Some Terminology Cryptography – the general term Cryptology – the mathematics Encryption – encoding but sometimes used as general term) Cryptanalysis – breaking codes Steganography – hiding message Cipher – a method or algorithm for encrypting or decrypting

15-499Page 4 More Definitions Private Key or Symmetric: Key 1 = Key 2 Public Key or Asymmetric: Key 1  Key 2 Key 1 or Key 2 is public depending on the protocol Encryption Decryption Key 1 Key 2 Cyphertext E k (M) = C D k (C) = M Original Plaintext Plaintext

15-499Page 5 Cryptanalytic Attacks C = ciphertext messages M = plaintext messages Ciphertext Only:Attacker has multiple Cs but does not know the corresponding Ms Known Plaintext: Attacker knows some number of (C,M) pairs. Chosen Plaintext: Attacker gets to choose M and generate C. Chosen Ciphertext: Attacker gets to choose C and generate M.

15-499Page 6 What does it mean to be secure? Unconditionally Secure: Encrypted message cannot be decoded without the key Shannon showed in 1943 that key must be as long as the message to be unconditionally secure – this is based on information theory A one time pad – xor a random key with a message (Used in 2 nd world war) Security based on computational cost: it is computationally “infeasible” to decode a message without the key. No (probabilistic) polynomial time algorithm can decode the message.

15-499Page 7 The Cast Alice – initiates a message or protocol Bob - second participant Trent – trusted middleman Eve – eavesdropper Mallory – malicious active attacker

15-499Page 8 Primitives One-way functions One-way trapdoor functions One-way hash functions One-way permutations

15-499Page 9 Primitives: One-Way Functions A function Y = f(x) is one-way if it is easy to compute y from x but “hard” to compute x from y Building block of most cryptographic protocols And, the security of most protocols rely on their existence. Unfortunately, not known to exist. This is true even if we assume P  NP.

15-499Page 10 One-way functions: possible definition 1.F(x) is polynomial time 2.F -1 (x) is NP-hard It is not hard to come up with such functions. But, what is wrong with this?

15-499Page 11 One-way functions: better definition For most y no single PPT (probabilistic polynomial time) algorithm can compute x Roughly: at most a fraction 1/|x| k instances x are easy for any k and as |x| ->  This definition can be used to make the probability of hitting an easy instance arbitrarily small.

15-499Page 12 Some examples (conjectures) Factoring: x = (u,v) y = f(u,v) = u*v If u and v are prime it is hard to generate them from y. Discrete Log: y = g x mod p where p is prime and g is a “generator” (i.e., g 1, g 2, g 3, … generates all values < p). DES with fixed message: y = DES x (m) This would assume a family of DES functions of increasing size

15-499Page 13 One-way functions in private-key protocols y = ciphertext m = plaintext x = key y = f(x) = E x (m) In a known-plaintext attack we know a (y,m) pair. The m along with E defines f(x) f(x) needs to be easy f -1 (y) should be hard Otherwise we could extract the key x.

15-499Page 14 One-way functions in public-key protocols y = ciphertext x = plaintext k = public key y = f(x) = E k (x) We know k and thus f(x) f(x) needs to be easy f -1 (y) should be hard Otherwise we could decrypt y. But what about the intended recipient, who should be able to decrypt y? Note the change of role of the key and plaintext from the previous example

15-499Page 15 One-Way Trapdoor Functions A one-way function with a “trapdoor” The trapdoor is a key that makes it easy to invert the function y = f(x) Example: RSA (conjecture) y = x e mod n Where n = pq (p, q, e are prime) p or q or d (where ed = (p-1)(q-1) mod n) can be used as trapdoors In public-key algorithms f(x) = public key (e.g., e and n in RSA) Trapdoor = private key (e.g., d in RSA)

15-499Page 16 One-way Hash Functions Y = h(x) where –y is a fixed length independent of the size of x. In general this means h is not invertible since it is many to one. –Calculating y from x is easy –Calculating any x such that y = h(x) give y is hard Used in digital signatures and some other protocols.

15-499Page 17 Protocols Built out of the primitives. Often the weakest point in terms of security –Digital signatures –Authentication –Key exchange –Secret sharing –Timestamping services –Zero-knowledge proofs –Blind-signatures –Key-escrow –Secure elections –Digital cash

15-499Page 18 Protocols: Digital Signatures Goals: 1.Convince recipient that message was actually sent by a trusted source 2.Do not allow repudiation, i.e., that’s not my signature. 3.Do not allow tampering with the message without invalidating the signature Item 2 turns out to be really hard to do

15-499Page 19 Using private keys –ka is a secret key shared by Alice and Trent –kb is a secret key shared by Bob and Trent Sig is a note from Trent saying that Alice “signed” it. To prevent repudation Trent needs to keep m or at least h(m) in a database Trent AliceBob E ka (m)E kb (m + sig)

15-499Page 20 Using Public Keys More Efficiently AliceBob D k1 (m) AliceBob D k1 (h(m)) + m K1 = Alice’s private key Bob decrypts it with her public key h(m) is a one-way hash of m

15-499Page 21 Key Exchange Private Key method Public Key method Trent AliceBob E ka (k)E kb (k) Generates k Alice Bob Generates k E k1 (k) k1 = Bob’s public key