Hash Function JH and the NIST SHA3 Hash Competition



Similar documents
SHA3 WHERE WE VE BEEN WHERE WE RE GOING

Hash Function of Finalist SHA-3: Analysis Study

Cryptographic Algorithms and Key Size Issues. Çetin Kaya Koç Oregon State University, Professor

Grøstl a SHA-3 candidate

How encryption works to provide confidentiality. How hashing works to provide integrity. How digital signatures work to provide authenticity and

Cryptography Lecture 8. Digital signatures, hash functions

Introduction to Computer Security

Evaluation of Digital Signature Process

Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu

Length extension attack on narrow-pipe SHA-3 candidates

Message Authentication

Hash Functions. Integrity checks

Table of Contents. Bibliografische Informationen digitalisiert durch

Cryptographic Hash Functions Message Authentication Digital Signatures

Cryptography and Network Security Chapter 11

HASH CODE BASED SECURITY IN CLOUD COMPUTING

lundi 1 octobre 2012 In a set of N elements, by picking at random N elements, we have with high probability a collision two elements are equal

Cryptographic hash functions and MACs Solved Exercises for Cryptographic Hash Functions and MACs

Authentication requirement Authentication function MAC Hash function Security of

How To Attack Preimage On Hash Function 2.2 With A Preimage Attack On A Pre Image

A NEW HASH ALGORITHM: Khichidi-1

An Efficient Cryptographic Hash Algorithm (BSA)

A PPENDIX H RITERIA FOR AES E VALUATION C RITERIA FOR

Elliptic Curve Hash (and Sign)

Cryptography and Network Security

Network Security Part II: Standards

One-Way Encryption and Message Authentication

Overview Most of the documentation out there on the transition from SHA-1 certificates to SHA-2 certificates will tell you three things:

Cryptography and Network Security Prof. D. Mukhopadhyay Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

A Standards-based Approach to IP Protection for HDLs

Introduction to SHA-3 and Keccak

Network Security. Gaurav Naik Gus Anderson. College of Engineering. Drexel University, Philadelphia, PA. Drexel University. College of Engineering

CSCE 465 Computer & Network Security

Chapter 11 Security+ Guide to Network Security Fundamentals, Third Edition Basic Cryptography

Recommendation for Applications Using Approved Hash Algorithms

The Advanced Encryption Standard: Four Years On

AsicBoost A Speedup for Bitcoin Mining

CIS433/533 - Computer and Network Security Cryptography

Message Authentication Codes

Fundamentals of Computer Security

CSE/EE 461 Lecture 23

IT Networks & Security CERT Luncheon Series: Cryptography

Cryptography and Network Security Chapter 12

Secret File Sharing Techniques using AES algorithm. C. Navya Latha Garima Agarwal Anila Kumar GVN

The Future of Digital Signatures. Johannes Buchmann

Message Authentication Codes. Lecture Outline

1 Performance Comparison of SHA-3 Finalists

Side Channel Analysis and Embedded Systems Impact and Countermeasures

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

Network Security (2) CPSC 441 Department of Computer Science University of Calgary

Chapter 8: On the Use of Hash Functions in. Computer Forensics

Chapter 8. Network Security

Efficient Framework for Deploying Information in Cloud Virtual Datacenters with Cryptography Algorithms

Lecture 9: Application of Cryptography

Network Security. Chapter 3 Symmetric Cryptography. Symmetric Encryption. Modes of Encryption. Symmetric Block Ciphers - Modes of Encryption ECB (1)

INFORMATION SECURITY A MULTIDISCIPLINARY. Stig F. Mjolsnes INTRODUCTION TO. Norwegian University ofscience & Technology. CRC Press

CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives

Lecture 4 Data Encryption Standard (DES)

Announcing Approval of Federal Information Processing Standard (FIPS) 197, Advanced. National Institute of Standards and Technology (NIST), Commerce.

Secure Shell SSH provides support for secure remote login, secure file transfer, and secure TCP/IP and X11 forwarding. It can automatically encrypt,

Chapter 1 On the Secure Hash Algorithm family

Network Security. Security. Security Services. Crytographic algorithms. privacy authenticity Message integrity. Public key (RSA) Message digest (MD5)

Secure Sockets Layer (SSL ) / Transport Layer Security (TLS) Network Security Products S31213

FIPS Non- Proprietary Security Policy. McAfee SIEM Cryptographic Module, Version 1.0

Message authentication and. digital signatures

1 Data Encryption Algorithm

Lecture 9 - Network Security TDTS (ht1)

SENSE Security overview 2014

Designing a Secure Client-Server System Master of Science Thesis in the Programme Software Engineering & Technology

SECURITY IN NETWORKS

Overview of Symmetric Encryption

SeChat: An AES Encrypted Chat

Security Protocols/Standards

Enhancing Advanced Encryption Standard S-Box Generation Based on Round Key

CS155. Cryptography Overview

Secure Network Communications FIPS Non Proprietary Security Policy

Outline. CSc 466/566. Computer Security. 8 : Cryptography Digital Signatures. Digital Signatures. Digital Signatures... Christian Collberg

Public Key Cryptography Overview

How To Encrypt With A 64 Bit Block Cipher

Randomized Hashing for Digital Signatures

Computer Security: Principles and Practice

The Impact of Cryptography on Platform Security

Authentication, digital signatures, PRNG

M.S. Project Proposal. SAT Based Attacks on SipHash

Network Security - ISA 656 Introduction to Cryptography

Cryptography & Digital Signatures

ChaCha, a variant of Salsa20

Bounds for Balanced and Generalized Feistel Constructions

Fast Implementations of AES on Various Platforms

Pre-silicon Characterization of NIST SHA-3 Final Round Candidates

A Comparative Study Of Two Symmetric Encryption Algorithms Across Different Platforms.

Monitoring Data Integrity while using TPA in Cloud Environment

The Stream Cipher HC-128

Network Security Technology Network Management

Transcription:

Hash Function JH and the NIST SHA3 Hash Competition Hongjun Wu Nanyang Technological University Presented at ACNS 2012 1

Introduction to Hash Function Hash Function Design Basics Hash function JH Design Security Performance Conclusion 2

Hash Function Compress an arbitrary message into an output with fixed length (checksum) Being used since 1950s Mostly used to accelerate table lookup or data comparison 3

Cryptographic Hash Function Each output of a cryptographic hash function represents only one input message Invented for digital signature signing the short message digests (wikipedia) 4

Cryptographic Hash Function How to ensure that each output represents only one input message? The message space size is much larger than the size of output space impossible for each output to represent only one message Solution: we try to ensure that it is computationally impossible to find two messages with the same output => computationally possible for each output to represent only one input message 5

Cryptographic Hash Function A strong cryptographic hash function has the following three properties: Preimage Resistance Given an output, difficult to find an input Second-Preimage Resistance Given an input, difficult to find another input with the same output Collision Resistance Difficult to find two inputs with the same output 6

Cryptographic Hash Function Applications digital signature (collision resistance) data integrity (collision or pre-image resistance) Example: Checksum for downloading software Random number generator Compression: entropy amplification One-way: protect the seed Security token One-way 7

Cryptographic Hash Function MD4 (1990) 128-bit message digest MD5 (1991) 128-bit message digest MD5 broken by Wang Xiaoyun et. al. in 2005 8

Cryptographic Hash Function Hash function standard of NIST SHA Secure Hash Algorithm SHA-0 (1993) 160-bit message digest size Insecure withdrawn shortly, replaced by SHA-1 SHA-1 (1995) 160-bit message digest size Insecure (2 69, Wang Xiaoyun et. al., 2005) but so far not broken on computer SHA-2 (2001) SHA-256, SHA-224 SHA-512, SHA-384 9

Cryptographic Hash Function NIST SHA-3 competition (2008 2012) Due to the fear that the attacks against MD5 and SHA-1 may be extended to break SHA-2 64 submissions 51 candidates in round 1 14 candidates in round 2 Now 5 finalists in round 3 (final round): Blake, Grostl, JH, Keccak, Skein 10

Cryptographic Hash Function Hash function and the recent cyber attack Flame Detected by Iran CERT in May 2012 Advanced espionage malware MD5 collision is exploited in Flame: (wikipedia) Microsoft Terminal Server Licensing Service certificate still uses the MD5 Produce a counterfeit certificate that was used to sign some components of the malware to make them appear to have originated from Microsoft 11

Hash Function Design Basics A typical cryptographic hash functions involve three components: Operation mode Compression function structure Confusion-diffusion operations 12

Hash Function Design Basics Operation mode: Iterated structure Divide a message into many message blocks m = m 1 m 2 m 3. Hash each message block iteratively: H 0 = IV (here IV is a fixed constant) H i = f(h i-1, m i ) (f is called compression function) i i-1 i (the size of H i must be at least as large as the size of the message digest) 13

Hash Function Design Basics Operation mode: Merkle-Damgard structure (iterated) Strengthen the iterated structure with padding pad bit 1 to the end of the message pad some zeros pad the message length (in bits) After padding, the overall length should be multiple of the block size Finalization stage: process the output from the last message block, then to generate the message digest The most widely used hash function overall structure 14

Hash Function Design Basics Merkle-Damgard structure (wikipedia) 15

Hash Function Design Basics Compression function structure: Two popular structures: Davies-Meyer (MD5, SHA-1, SHA-2, ) Matyas-Meyer-Oseas 16

Hash Function Design Basics Davies-Meyer Matyas-Meyer-Oseas 17

Hash Function Design Basics Confusion-diffusion operations confusion: Sbox, addition, ADD, OR, diffusion: MDS code, rotation, permutation 18

Hash Function Design Basics What can we learn from the attacks on MD5 & SHA-1? MD5, SHA-1: Compression function: Davies-Meyer structure Confusion-diffusion: Addition-rotation-xor (ARX) 19

Hash Function Design Basics Why MDx and SHA-1 are weak? Main reason: large differential probability MD5: 2-43 for 17--64 steps (2004) SHA-1: 2-83 for 17--80 steps (2005) Why large differential probability? Main reason: weak differential propagation due to local collision Why local collision? Davies-Meyer structure => structure of compression function is important for security! 20

Hash Function Design Basics Why it took around 10 years to apply differential attacks to break MD5 and SHA-1? Main reason: it is extremely difficult to find the optimal differential path in MD5 and SHA-1 Reason 1: Davies-Meyer structure Difficult to analyze the interaction between message schedule & step functions (such as local collisions) => structure of compression function is important for simplifying security evaluation Reason 2: ARX operations Difficult to analyze the differential propagations in ARX (such as carry bits) => Confusion-diffusion methods are important for simplifying security evaluation 21

Hash Function Design Basics What can we learn from the attacks on MD5 & SHA-1? Try to find the best compression function structure & confusion-diffusion methods To simplify security evaluation difficult to analyze => usually bad for security It is better to design a cipher that can be analyzed by the designer To achieve efficient differential propagation 22

Design of JH New compression function structure Confusion & diffusion: Combining the best of AES and Serpent 23

Design of JH: compression function structure M (i) : m bits H (i) : 2m bits 24

Each finalist uses a different compression function structure: diversification Blake Davies-Meyer difficult to analyze: need to consider the interaction between differential paths in two functions Groestl JH New (based on two parallel permutations) Not that difficult to analyze, but need to consider the interaction between those two permutations New (based on single permutation) Easy to analyze Keccak Skein Sponge Easy to analyze MMO Difficult to analyze: need to consider the interaction between differential paths in two functions 25

Design of JH: Diffusion & Confusion The generalized AES design method: SPN + MDS code (to a multi-dimensional array) => A simple and flexible approach to design a large permutation (block cipher) from small components by increasing dimension Examples: AES (2D, 128 bits) => 3D (512 bits) => 4D (2048 bits); JH (8D, 1024 bits) bit-slice 26

Design of JH: Diffusion & Confusion Combining the best of AES and Serpent: AES Serpent SPN + MDS code Bit-slice fast software implementation Security analysis is easy JH Table lookup is avoided to prevent cache timing attack 27

Comparison of diffusion & confusion: Sbox+MDS Groestl, JH Easy to analyze Sbox+permutation Keccak Difficult to analyze ARX Blake, Skein Difficult to analyze 28

Design of JH JH with the lowest security evaluation cost among the five finalists Compression function structure Easy to analyze Confusion & diffusion Easy to analyze I was able to finish the security analysis against differential attack before the submission in 2008 29

Security of JH The generalized AES design: SPN + MDS (to a multi-dimensional array) Advantages Analyze small functions to find the best attack Verify the attack on small functions 30

Security of JH: Large Security Margin Truncated differential attack is the most powerful attack against JH JH has large security margin against truncated differential attack that can be easily verified: Assume that message modification can remove 16 rounds, the complexity of the truncated collision attack is more than 2 512 Assume that message modification can remove 24 rounds, the complexity of the truncated collision attack is more than 2 400 31

Security comparison None of the finalist is broken Grostol & JH The best differential trail can be found Blake, Keccak, Skein Currently the best differential trail cannot be found 32

Performance: Fast software Bit-slice; suitable for the 128-bit SIMD instruction set (available on many platforms): compute 128 Sboxes in parallel compute 128 MDS codes in parallel less than 20 cycles/byte on the common Intel & AMD processors; 33

Software Implementation (Bernstein, Lange, the 3 rd SHA-3 conference) 34

Efficient Implementation: Hardware (Gaj, The 3 rd SHA-3 Conference) 35

Efficient Implementation: Hardware (Gaj, The 3 rd SHA-3 Conference) 36

Efficient Implementation Flexible design If we need a light-weight hash function Just use the 6-dimensional array in JH 4 times smaller than JH Achieve about 128-bit security for collision, preimage and second-preimage, no resistance against lengthextension The other finalists do not have such flexibility 37

Conclusion JH is a finalist of SHA-3 competition Low security evaluation cost Large security margin Efficient & flexible 38

Conclusion SHA-3 hash function competition (2008-2012) Finish soon (maybe in this August) The decision would be affected by the following factors: Software performance Hardware performance Security Completeness of security evaluation Novelty.. Whether NIST likes it or not 39

Conclusion Open problem remains How to design a hash function that is Extremely efficient in software, and easy to analyze None of the 64 submissions solves this problem 40

Thank you! Q & A 41