Tiger: a fast hash Eric Seidel CS 257: Security Engineering.

Slides:



Advertisements
Similar presentations
Hash Functions A hash function takes data of arbitrary size and returns a value in a fixed range. If you compute the hash of the same data at different.
Advertisements

Lecture 5: Cryptographic Hashes
Lecture 7 Overview. Advanced Encryption Standard 10, 12, 14 rounds for 128, 192, 256 bit keys – Regular Rounds (9, 11, 13) – Final Round is different.
“Advanced Encryption Standard” & “Modes of Operation”
CS 483 – SD SECTION BY DR. DANIYAL ALGHAZZAWI (3) Information Security.
By: Matthew Ng. AND, XOR, OR, Complement, Circular Left shift, and Addition Modulo Circular Left Shift is done with s positions (0 ≤ s ≤ 31) – Denoted.
ECE454/CS594 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2011.
1 Lecture 3: Secret Key Cryptography Outline concepts DES IDEA AES.
Cryptography and Network Security Chapter 5 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Cryptography and Network Security Chapter 5
Cryptography and Network Security Chapter 3
Computer Science 654 Lecture 1 : Hash Functions Professor Wayne Patterson Howard University Spring 2010 (Stamp Chapter 5)
Cryptography and Network Security Chapter 12 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
MD5 Generation Auto-Generated Slides To Visualize MD5 Hash Generation by Chris Fremgen.
MD5 Generation Auto-Generated Slides To Visualize MD5 Hash Generation by Chris Fremgen.
MD5 Generation Auto-Generated Slides To Visualize MD5 Hash Generation by Chris Fremgen.
MD5 Generation Auto-Generated Slides To Visualize MD5 Hash Generation by Chris Fremgen.
HASH ALGORITHMS - Chapter 12
1 The AES block cipher Niels Ferguson. 2 What is it? Block cipher: encrypts fixed-size blocks. Design by two Belgians. Chosen from 15 entries in a competition.
Announcements: 1. HW7 due next Tuesday. 2. Inauguration today! Questions? This week: Discrete Logs, Diffie-Hellman, ElGamal Discrete Logs, Diffie-Hellman,
Cryptography1 CPSC 3730 Cryptography Chapter 3 DES.
Announcements:Questions? This week: Discrete Logs, Diffie-Hellman, ElGamal Discrete Logs, Diffie-Hellman, ElGamal Hash Functions and SHA-1 Hash Functions.
MD5 Message Digest Algorithm CS265 Spring 2003 Jerry Li Computer Science Department San Jose State University.
Cryptography and Network Security Chapter 12
Akelarre 1 Akelarre Akelarre 2 Akelarre  Block cipher  Combines features of 2 strong ciphers o IDEA — “mixed mode” arithmetic o RC5 — keyed rotations.
AES clear a replacement for DES was needed
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.
Cryptography and Network Security (CS435) Part Ten (Hash and MAC algorithms)
DES 1 Data Encryption Standard DES 2 Data Encryption Standard  DES developed in 1970’s  Based on IBM Lucifer cipher  U.S. government standard  DES.
Cryptography and Network Security (AES) Dr. Monther Aldwairi New York Institute of Technology- Amman Campus 10/18/2009 INCS 741: Cryptography 10/18/20091Dr.
Cryptography and Network Security Chapter 5. Chapter 5 –Advanced Encryption Standard "It seems very simple." "It is very simple. But if you don't know.
Cryptography and Network Security Chapter 5 Fourth Edition by William Stallings.
Lecture 23 Symmetric Encryption
Chapter 8.  Cryptography is the science of keeping information secure in terms of confidentiality and integrity.  Cryptography is also referred to as.
CSCI 6962: Server-side Design and Programming
Secure Embedded Processing through Hardware-assisted Run-time Monitoring Zubin Kumar.
Calculating Discrete Logarithms John Hawley Nicolette Nicolosi Ryan Rivard.
Chapter 5 –Advanced Encryption Standard "It seems very simple." "It is very simple. But if you don't know what the key is it's virtually indecipherable."
Hash and MAC Algorithms Dr. Monther Aldwairi New York Institute of Technology- Amman Campus 12/3/2009 INCS 741: Cryptography 12/3/20091Dr. Monther Aldwairi.
AES Background and Mathematics CSCI 5857: Encoding and Encryption.
Hashing Algorithms: Basic Concepts and SHA-2 CSCI 5857: Encoding and Encryption.
13. Other Block Ciphers 13.1 LUCIFER 13.2 MADRYGA 13.3 NEWDES 13.4 FEAL 13.5 REDOC 13.6 LOKI.
Hash and MAC Functions CS427 – Computer Security
1 Network Security Lecture 5 Hashes and Message Digests Waleed Ejaz
6.375 Final Presentation Jeff Simpson, Jingwen Ouyang, Kyle Fritz FPGA Implementation of Whirlpool and FSB Hash Algorithms.
6fb52297e004844aa81be d50cc3545bc Hashing!. Hashing  Group Activity 1:  Take the message you were given, and create your own version of hashing.  You.
Description of a New Variable-Length Key, 64-Bit Block Cipher (BLOWFISH) Bruce Schneier BY Sunitha Thodupunuri.
AES Advanced Encryption Standard. Requirements for AES AES had to be a private key algorithm. It had to use a shared secret key. It had to support the.
Le Trong Ngoc Security Fundamentals (2) Encryption mechanisms 4/2011.
Chapter 18: One-Way Hash Functions Based on Schneier.
SUNY Oneonta Data Structures and Algorithms Visualization Group MD5 Generation Auto-Generated Slides To Visualize MD5 Hash Generation by Chris Fremgen.
Lecture 23 Symmetric Encryption
Cracking the DES Encryption
Cryptographic Hash Functions Prepared by Dr. Lamiaa Elshenawy
Advanced Encryption Standard Dr. Shengli Liu Tel: (O) Cryptography and Information Security Lab. Dept. of Computer.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
DES Analysis and Attacks CSCI 5857: Encoding and Encryption.
Chapter 5 Hash Functions
1 Chapter 12: Hash and MAC Algorithms Fourth Edition by William Stallings Lecture slides by Lawrie Brown (modified by Prof. M. Singhal, U of Kentucky)
1 The Data Encryption Standard. 2 Outline 4.1 Introduction 4.4 DES 4.5 Modes of Operation 4.6 Breaking DES 4.7 Meet-in-the-Middle Attacks.
Computer Science and Engineering Computer System Security CSE 5339/7339 Lecture 10 September 21, 2004.
Module :MA3036NI Symmetric Encryption -3 Lecture Week 4.
Block Ciphers and the Data Encryption Standard. Modern Block Ciphers  One of the most widely used types of cryptographic algorithms  Used in symmetric.
Understanding Cryptography by Christof Paar and Jan Pelzl Chapter 4 – The Advanced Encryption Standard (AES) ver. October 28, 2009.
Message Authentication Codes CSCI 5857: Encoding and Encryption.
Chapter 12 – Hash Algorithms
If the hash algorithm is properly designed and distributes the hashes uniformly over the output space, "finding a hash collision" by random guessing is.
If the hash algorithm is properly designed and distributes the hashes uniformly over the output space, "finding a hash collision" by random guessing is.
Presentation transcript:

Tiger: a fast hash Eric Seidel CS 257: Security Engineering

Overview Hashing: a quick review Tiger Why Tiger? How it works Q & A

Hashing: A review Non-linear, (generally) non-reversable function Purpose: smaller, unique representation of data. (Integrity) Important to have high avalanche Important to be fast.

Tiger Designed for 64-bit processors Produces larger 192-bit hash (128 compat.) Designed by Ross Anderson, Eli Biham Drop-in for MD5

Why Tiger? Hashing should be fast. 32-bit hashing on 64-bit machine runs at half efficiency. Uses s-box concept for better non- linearity. Faster than SHA-1, MD5 on 64-bit Possibly more secure than SHA-1 or MD5

How Tiger Works...

Overview Tiger operates on 512-bit blocks Each block is broken into 8, 64-bit words Tiger returns 3 (or 2) 64-bit words

Overview Diagram Message Pad Length 512-bit Blocks 64-bit Words 192-bit Hash

Stages Save ABC Pass 1, Key Schedule 1 Pass 2, Key Schedule 2 Pass 3 feed-forward ABC

Save ABC ABC are initially salted with speical values. At the beginning of each successive round ABC are saved for later use with feed- forward. 64_bit_word aa = a, bb = b, cc = c;

Pass 1, detail 1 pass = 8 rounds, 1 for each 64-bit word 64-bit words (keys) referred to as x0 - x7 Each pass uses a multiplier (5,7,9) to redistribute bits between s-box lookups. round(a,b,c,x0, mul);

Round function round(a,b,c,x, multiplier): c = c ^ x a = a – (s1[c1] ^ s2[c3] ^ s3[c5] ^ s4[c7]) b = b + (s4[c2] ^ s3[c4] ^ s2[c6] ^ s1[c8]) b = b * multiplier ^ denotes XOR

S-Boxes s-boxes compose a non-linear function map from 8 bits into 64. Available on the author’s site:

Key Schedule Key-Schedule re-distributes input bits. Introduces further algorithm complexity. Rotates words within block. Each block is only looked at 3 times in the passes, this further distributes the bits.

Feed-Forward Generates new carry values from previous a = a ^ aa ; b = b - bb ; c = c + cc ;

Java Demo

Further Thoughts...

Final thoughts Security Complexity Popularity Performance

Security Good Avalanche Long hash (large keyspace) Little literature

Complexity More complex than either MD5 or SHA-1 Potential barrier to entry

Popularity Complexity disadvantage Relatively new (MDx, and SHA much older) No pressing need

Performance Better than SHA-1, MD5 on 64-bit Comparable on 32-bit Makes (relatively) large TMTO Slow (and large!) in hardware

Q & A