Overview of Cryptography Anupam Datta CMU Fall 2007-08 18739A: Foundations of Security and Privacy.

Slides:



Advertisements
Similar presentations
Rennes, 24/10/2014 Cristina Onete CIDRE/ INRIA Privacy in signatures. Hiding in rings, hiding in groups.
Advertisements

Spring 2000CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
Cryptography and Network Security
Digital Signatures Good properties of hand-written signatures: 1. Signature is authentic. 2. Signature is unforgeable. 3. Signature is not reusable (it.
Security Definitions in Computational Cryptography
11 Provable Security. 22 Given a ciphertext, find the corresponding plaintext.
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.
Rennes, 23/10/2014 Cristina Onete Putting it all together: using multiple primitives together.
CS 395T Computational Soundness of Formal Models.
Session 5 Hash functions and digital signatures. Contents Hash functions – Definition – Requirements – Construction – Security – Applications 2/44.
First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown and edited by Archana Chidanandan Cryptographic Tools.
CMSC 414 Computer (and Network) Security Lecture 2 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 7 Jonathan Katz.
Kemal AkkayaWireless & Network Security 1 Department of Computer Science Southern Illinois University Carbondale CS 591 – Wireless & Network Security Lecture.
CMSC 414 Computer and Network Security Lecture 9 Jonathan Katz.
Fall 2010/Lecture 311 CS 426 (Fall 2010) Public Key Encryption and Digital Signatures.
1 CIS 5371 Cryptography 9. Data Integrity Techniques.
CSE 597E Fall 2001 PennState University1 Digital Signature Schemes Presented By: Munaiza Matin.
Cryptography and Network Security Chapter 11 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
8. Data Integrity Techniques
CS5204 – Fall Cryptographic Security Presenter: Hamid Al-Hamadi October 13, 2009.
Rennes, 15/10/2014 Cristina Onete Message authenticity: Digital Signatures.
Digital Signatures Slides by Kent Seamons and Tim van der Horst Last Updated: Oct 7, 2013.
The RSA Algorithm Rocky K. C. Chang, March
CS555Topic 211 Cryptography CS 555 Topic 21: Digital Schemes (1)
Digital signature in automatic analyses for confidentiality against active adversaries Ilja Tšahhirov, Peeter Laud.
Digital Signatures Good properties of hand-written signatures: 1. Signature is authentic. 2. Signature is unforgeable. 3. Signature is not reusable (it.
©The McGraw-Hill Companies, Inc., 2000© Adapted for use at JMU by Mohamed Aboutabl, 2003Mohamed Aboutabl1 1 Chapter 29 Internet Security.
Lecture 3.4: Public Key Cryptography IV CS 436/636/736 Spring 2013 Nitesh Saxena.
EE515/IS523 Think Like an Adversary Lecture 4 Crypto in a Nutshell Yongdae Kim.
Lecture 4.1: Hash Functions, and Message Authentication Codes CS 436/636/736 Spring 2015 Nitesh Saxena.
4 th lecture.  Message to be encrypted: HELLO  Key: XMCKL H E L L O message 7 (H) 4 (E) 11 (L) 11 (L) 14 (O) message + 23 (X) 12 (M) 2 (C) 10 (K) 11.
Basic Cryptography 1. What is cryptography? Cryptography is a mathematical method of protecting information –Cryptography is part of, but not equal to,
Cryptography Wei Wu. Internet Threat Model Client Network Not trusted!!
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 2 – Cryptographic.
1 Information Security Practice I Lab 5. 2 Cryptography and security Cryptography is the science of using mathematics to encrypt and decrypt data.
CSCI 172/283 Fall 2010 Hash Functions, HMACs, and Digital Signatures.
IND-CPA and IND-CCA Concepts Summary  Basic Encryption Security Definition: IND-CPA  Strong Encryption Security Definition: IND-CCA  IND-CPA, IND-CCA.
Integrity via Encryption with Redundancy  Question: Encryption is not ideal for authentication. But, can we gain security advantages if we add recognizable.
1 Reasoning about Concrete Security in Protocol Proofs A. Datta, J.Y. Halpern, J.C. Mitchell, R. Pucella, A. Roy.
A Quick Tour of Cryptographic Primitives Anupam Datta CMU Fall A: Foundations of Security and Privacy.
CPS 290 Computer Security Network Tools Cryptography Basics CPS 290Page 1.
Lecture 2: Introduction to Cryptography
Cryptography 1 Crypto Cryptography 2 Crypto  Cryptology  The art and science of making and breaking “secret codes”  Cryptography  making “secret.
Lecture 5.1: Message Authentication Codes, and Key Distribution
Dan Boneh Introduction Course Overview Online Cryptography Course Dan Boneh.
Ryan Henry I 538 /B 609 : Introduction to Cryptography.
IT 221: Introduction to Information Security Principles Lecture 5: Message Authentications, Hash Functions and Hash/Mac Algorithms For Educational Purposes.
CS555Spring 2012/Topic 151 Cryptography CS 555 Topic 15: HMAC, Combining Encryption & Authentication.
1 The RSA Algorithm Rocky K. C. Chang February 23, 2007.
Data Integrity / Data Authentication. Definition Authentication (Signature) algorithm - A Verification algorithm - V Authentication key – k Verification.
Cryptographic Hash Function. A hash function H accepts a variable-length block of data as input and produces a fixed-size hash value h = H(M). The principal.
The Secure Sockets Layer (SSL) Protocol
Boneh-Franklin Identity Based Encryption Scheme
Modern symmetric-key Encryption
Digital signatures.
Cryptographic Hash Functions Part I
Security through Encryption
The Secure Sockets Layer (SSL) Protocol
Lecture 10: Network Security.
Cryptography Lecture 14.
Cryptography Lecture 13.
Cryptography Lecture 13.
Cryptography Lecture 26.
Presentation transcript:

Overview of Cryptography Anupam Datta CMU Fall A: Foundations of Security and Privacy

Cryptography  Is A tremendous tool The basis for many security mechanisms  Is not The solution to all security problems Reliable unless implemented properly Reliable unless used properly Something you should try to invent yourself unless  you spend a lot of time becoming an expert  you subject your design to outside review

 Encryption scheme: functions to encrypt, decrypt data key generation algorithm symmetric key vs. asymmetric (public) key  Symmetric key: more efficient, generally key = key -1  Public key: publishing key does not reveal key -1  Signature scheme Functions to sign data, verify signature  Hash function, MAC Map input to short hash; ideally, no collisions MAC (keyed hash) used for message integrity Basic Cryptographic Concepts All of these primitives are used in SSL/TLS

Our Approach  Analyze systems and protocols that use cryptographic primitives such as SSL, assuming that the primitives are themselves secure  How is security of cryptographic primitives defined? Today’s lecture  How are primitives constructed that satisfy these definitions? : Applied Cryptography : Introduction to Theoretical Cryptography Will put up additional slides for optional reading

We will cover  Symbolic model Modeling “perfect” cryptography – always secure Abstraction enables mechanized analysis  Complexity-theoretic model Security definitions given by “games” Security properties guaranteed with high probability (almost always) against probabilistic polynomial time adversaries

Symmetric encryption  Can compute message m and key k from set S of messages implies can compute encryption {m} k from the same set S (1)S |- m  S |-k  S |- {m} k  Can compute encrypted message (cipher-text) {m} k and key k implies can recover message m (2) S |- {m} k  S |- k  S |- m Formally, messages are terms of a term algebra

Asymmetric encryption  Can compute message m and public key K implies can compute encryption {m} K (3) S |- m  S |-K  S |- {m} K  Can compute encrypted message (cipher-text) {m} K and inverse key K -1 implies can recover message m (4) S |- {m} K  S |- K -1  S |- m Each principal has a public-private encryption key pair

Digital signature  Can compute message m and signing key s -1 implies can compute signature sig(s -1, m) (5) S |- {m}  S |- s -1  S |- sig(s -1, m)  Given signature sig(s -1, m) and inverse key s, can verify signature Usually modeled using pattern matching

Hash function  Can compute message m implies can compute hash h(m) (6) S |- m   S |- h(m)  Given message m and key k, can compute keyed hash h(k,m) (7) S |- m  S |- k  S |- h(k,m) (7) Is a special case of (6) in the symbolic model

We will cover  Symbolic model Modeling “perfect” cryptography – always secure Abstraction enables mechanized analysis  Complexity-theoretic model Security definitions given by “games” Security properties guaranteed with high probability (almost always) against probabilistic polynomial time adversaries

Digital signatures A Sig(S -1,mi) mi Attacker wins if m ≠mi Messages are bit-strings Signature scheme Attacker is a PPT Turing Machine UF-CMA security:  PPT attackers A  negligible function f  n0  security parameters n ≥ n0 Prob [m ≠mi | A plays by the rules] <= f(n) Intuition: Signatures should be unforgeable with high probability C Sig(S -1,m)

Keyed Hash (MAC) A h(k,mi) mi Attacker wins if m ≠mi Messages are bit-strings Attacker is a PPT Turing Machine CMA security:  PPT attackers A  negligible function f  n0  security parameters n ≥ n0 Prob [m ≠mi | A plays by the rules] <= f(n) Intuition: MACs should be unforgeable with high probability C h(k,m)

Asymmetric encryption C A m {m} K m {mb} K m0, m1 d Attacker wins if d = b Messages are bit-strings Attacker is a PPT Turing Machine IND-CCA2 security:  PPT attackers A  negligible function f  n0  security parameters n ≥ n0 Prob [d = b | A plays by the rules] <= ½ + f(n) Intuition: Encryption reveals no information about message

Hash functions  Preimage resistant  Second preimage resistant  Collision resistant Given hash function h: X  Y Find: x, x’  X s.t x ≠ x’ and h(x) = h(x’) Should be difficult!  PPT attackers A  negligible function f  n0  security parameters n ≥ n0 Prob [A finds x, x’  X s.t x ≠ x’ and h(x) = h(x’)] <= f(n)

Putting it together: SSL/TLS C N1, Version1 N2, Version2, sig(CA -1, S, Ks) S Sig(CA -1, C, Kc), Sig(Kc, handshake1), {secret} Ks, h(secret, handshake1, “client”) h(secret, handshake2, “server”)

Questions?