1 Randomized Hashing: Secure Digital Signatures without Collision Resistance Shai Halevi and Hugo Krawczyk IBM Research

Slides:



Advertisements
Similar presentations
Web security: SSL and TLS
Advertisements

Hash Function. What are hash functions? Just a method of compressing strings – E.g., H : {0,1}*  {0,1} 160 – Input is called “message”, output is “digest”
Digital Signatures Good properties of hand-written signatures: 1. Signature is authentic. 2. Signature is unforgeable. 3. Signature is not reusable (it.
Digital Signatures and Hash Functions. Digital Signatures.
Information Security Principles & Applications Topic 4: Message Authentication 虞慧群
Apr 2, 2002Mårten Trolin1 Previous lecture On the assignment Certificates and key management –Obtaining a certificate –Verifying a certificate –Certificate.
Session 5 Hash functions and digital signatures. Contents Hash functions – Definition – Requirements – Construction – Security – Applications 2/44.
CNS2010handout 10 :: digital signatures1 computer and network security matt barrie.
CMSC 414 Computer and Network Security Lecture 7 Jonathan Katz.
Hash functions a hash function produces a fingerprint of some file/message/data h = H(M)  condenses a variable-length message M  to a fixed-sized fingerprint.
By: Matthew Ng. SHA stands for Secure Hash Algorithm It is based off the Merkle-Dangard hash function There are 3 versions of it with one coming in 2012.
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.
Secure Hashing and DSS Sultan Almuhammadi ICS 454 Principles of Cryptography.
Cryptography and Network Security Chapter 12 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
1 Pertemuan 09 Hash and Message Digest Matakuliah: H0242 / Keamanan Jaringan Tahun: 2006 Versi: 1.
Hash Functions Nathanael Paul Oct. 9, Hash Functions: Introduction Cryptographic hash functions –Input – any length –Output – fixed length –H(x)
Cryptography and Network Security Chapter 11 Fourth Edition by William Stallings Lecture slides by Lawrie Brown/Mod. & S. Kondakci.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Cryptography1 CPSC 3730 Cryptography Chapter 11, 12 Message Authentication and Hash Functions.
Cryptography and Network Security Chapter 11 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
1 Cryptography and Network Security (Various Hash Algorithms) Fourth Edition by William Stallings Lecture slides by Lawrie Brown (Changed by Somesh Jha)
Lecture 8 Digital Signatures. This lecture considers techniques designed to provide the digital counterpart to a handwritten signature. A digital signature.
Lecture slides prepared for “Computer Security: Principles and Practice”, 2/e, by William Stallings and Lawrie Brown, Chapter 21 “Public-Key Cryptography.
HASH Functions.
Message Authentication  message authentication is concerned with: protecting the integrity of a message protecting the integrity of a message validating.
Hash Functions A hash function H accepts a variable-length block of data M as input and produces a fixed-size hash value h = H(M) Principal object is.
Key Management Workshop November 1-2, Cryptographic Algorithms, Keys, and other Keying Material  Approved cryptographic algorithms  Security.
IS 302: Information Security and Trust Week 5: Integrity 2012.
EE515/IS523 Think Like an Adversary Lecture 4 Crypto in a Nutshell Yongdae Kim.
Message Authentication Code July Message Authentication Problem  Message Authentication is concerned with:  protecting the integrity of a message.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Introduction1-1 Data Communications and Computer Networks Chapter 6 CS 3830 Lecture 31 Omar Meqdadi Department of Computer Science and Software Engineering.
Lect : Hash Functions and MAC. 2 1.Introduction - Hash Function vs. MAC 2.Hash Functions  Security Requirements  Finding collisions – birthday.
Basic Cryptography 1. What is cryptography? Cryptography is a mathematical method of protecting information –Cryptography is part of, but not equal to,
Chapter 21 Public-Key Cryptography and Message Authentication.
The School of Electrical Engineering and Computer Science (EECS) CS/ECE Network Security Dr. Attila Altay Yavuz Cryptographic Hash Functions Credit: Prof.
Chapter 2 Advanced Cryptography (Part C)
1 Number Theory and Advanced Cryptography 6. Digital Signature Chih-Hung Wang Sept Part I: Introduction to Number Theory Part II: Advanced Cryptography.
1 Strengthening Digital Signatures via Randomized Hashing Shai Halevi and Hugo Krawczyk IBM Research.
CIT 380: Securing Computer SystemsSlide #1 CIT 380: Securing Computer Systems Modern Cryptography.
Cryptographic Hash Functions Prepared by Dr. Lamiaa Elshenawy
Giuseppe Bianchi Message Authentication: hash functions and hash-based constructions.
PKCS #5: Password-Based Cryptography Standard
Hash Functions Ramki Thurimella. 2 What is a hash function? Also known as message digest or fingerprint Compression: A function that maps arbitrarily.
Computer Science and Engineering Computer System Security CSE 5339/7339 Lecture 11 September 23, 2004.
ANSI X9.44 and IETF TLS Russ Housley and Burt Kaliski RSA Laboratories November 2002.
Lecture 11 Overview. Digital Signature Properties CS 450/650 Lecture 11: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
CS426Fall 2010/Lecture 51 Computer Security CS 426 Lecture 5 Cryptography: Cryptographic Hash Function.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Hashes Lesson Introduction ●The birthday paradox and length of hash ●Secure hash function ●HMAC.
Lecture 9 Overview. Digital Signature Properties CS 450/650 Lecture 9: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
IT 221: Introduction to Information Security Principles Lecture 5: Message Authentications, Hash Functions and Hash/Mac Algorithms For Educational Purposes.
Hash Algorithms Ch 12 of Cryptography and Network Security - Third Edition by William Stallings Modified from lecture slides by Lawrie Brown CIM3681 :
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
@Yuan Xue CS 285 Network Security Secure Socket Layer Yuan Xue Fall 2013.
Data Integrity / Data Authentication. Definition Authentication (Signature) algorithm - A Verification algorithm - V Authentication key – k Verification.
Understanding Cryptography by Christof Paar and Jan Pelzl These slides were prepared by Christof Paar and Jan Pelzl Chapter 12.
CS/ECE 578 Cyber Security Dr. Attila Altay Yavuz
Information Security message M one-way hash fingerprint f = H(M)
Introduction Used for communication to verify
Information Security message M one-way hash fingerprint f = H(M)
Cryptographic Hash Functions Part I
ICS 454 Principles of Cryptography
Introduction to Symmetric-key and Public-key Cryptography
CS/ECE 478 Introduction to Network Security Dr. Attila Altay Yavuz
Information Security message M one-way hash fingerprint f = H(M)
ICS 454 Principles of Cryptography
CIS 4930/6930 – Privacy-Preserving and Trustworthy Cyber-Systems Dr
Presentation transcript:

1 Randomized Hashing: Secure Digital Signatures without Collision Resistance Shai Halevi and Hugo Krawczyk IBM Research

2 The Problem Broken/Injured Hash Functions (MD5, SHA-1)  Applications affected in different ways and to different degrees of severity One main application: Digital signatures  Rely on collision resistance of hash function: hash-then-sign (where one signs a hash value not the data itself)  Critical for non-repudiation and certificates (many other uses where adversary can control part of the signed msg) It applies also to ephemeral authentication scenarios (e.g. IKE) but in a less critical way

3 Saving Our Signatures Short-term patches: per-application (e.g., randomize s/n), algorithmic (e.g. hash(M||M) ), pragmatic (e.g., “ don ’ t care ” ) We are interested in long-term structural solutions  Search for the best next-generation hash function (NIST)  At the same time, develop smarter ways to use hash functions in digital signatures  “ smarter ” : rely as little as possible on collision resistance Designing collision resistance is HARD and our knowledge limited An insurance policy against collisions (present and future)  Much like what HMAC did for MAC and PRF functions

4 Our Proposal: Randomized Hashing Simple * randomization of a message before hash & sign * simple but careful: not all randomizations work! Dispenses of collision resistance (for digital signatures)  Signatures remain secure even if off-line collision attacks against the hash function are successful  Raises the bar for the attacker: “ second preimage ” attacks much harder to mount (formal proof) We call our randomization technique RMX … (see next)

5 HASH SIGN r HASH SIGN RMX M =(m 1, …,m L ) (r, m 1  r,, …,m L  r( M =(m 1, …,m L ) RMX: Preserving Hash-then-Sign signature( signature, r )

6 RMX What ’ s good?  Preserves the hash-then-sign paradigm  Preserves signature algorithms (RSA, DSA)  Applicable to existing and future hash functions  Preserves existing “ machinery ” (algorithms, hardware, security libraries, object code, applications) What ’ s the price?  Generation and transmission of a random string by the signer What ’ s the prize?  Signatures without collision resistance

7 RMX in Signatures: SIGN( Hash( RMX(r,M) )) Message M=(m 1, …,m L ) set (with partial or total control by attacker) Signer: chooses unpredictable r, Computes h = RMX(r,M) = H(r, m 1  r,m 2  r, …,m L  r) Produces signature σ = Sign(h) Transmits σ and r Verifier: receives M, σ, and r, Computes h = RMX(r,M) = H(r, m 1  r,m 2  r, …,m L  r) Verifies signature σ

8 Note on randomness Only signer chooses randomness (verifier receives it)  For example: CA chooses r but certificate verifiers receive r with certificate: do not need a source of randomness r is the length of a block (or any established size) – does not need to be fully random just unpredictable *  For example: can set r = r ’ ||r ’ ||r ’ ||r ’ where r ’ is of length 128 thus only need to transmit r ’ * Unpredictable means unguessable by the attacker until the msg is fixed Randomness from signature (e.g., DSA) can be reused  As long as it remains unknown until the signature is issued

9 RMX: simple front-end to existing hash-then-sign modules  No change to hash functions or signature algorithms  Compatible with block-wise processing of M-D functions  Random generation by signer only (short randomness) Transporting r: application level (like IV in CBC) but some standardization desirable  E.g., X.509: r as a parameter under AlgorithmIdentifier  SHOULD be considered as part of “ hash agility ” support For example: Accommodate specification of SHA-256-RMX Implementation

10 Security Substantial security increase for digital signatures  From collision resistance to second-preimage resistance  Much harder cryptanalytical task  Security proof for M-D hash functions A fundamental shift in attack scenario: Off-line vs. On-line  No off-line birthday attacks, no use for off-line collisions Likely extension of useful life of hash functions, may prevent or mitigate catastrophic failure, more planning time upon weaknesses A SAFETY NET for digital signatures  Much like HMAC for MAC functions

11 “ Hope for the Best, Plan for the Worst ”

12 Towards Standardization Everyone should support “ hash agility ” and this should include support for randomization (note: SHA3 requirement)  Necessary with any randomization technique  Provision for randomness advisable even in WG ’ s (e.g., TLS) where randomized hashing is less crucial Consider support for randomized hashing in specific Working Groups (e.g., PKIX, S/MIME, DKIM, PGP, … ) Note: NIST ’ s SP draft documents RMX  Also: randomization as a requirement for SHA3 competition

13 More information Detailed paper (including analysis and proofs) Implementation experience  Certificate signing and XML signatures  Openssl, NSS/Firefox [Boneh-Shao], XML (McIntosh) Expired Internet Draft (cfrg) ready to be resurrected  Welcome volunteers to define scheme at the “ format level ” (e.g. X.509 identifiers) Feedback, suggestions, comments, all welcome