Hash Function Requirements

Slides:



Advertisements
Similar presentations
Message Authentication and Hash functions
Advertisements

First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown and edited by Archana Chidanandan Cryptographic Tools.
Chapter 4  Hash Functions 1 Overview  Cryptographic hash functions are functions that: o Map an arbitrary-length (but finite) input to a fixed-size output.
Secure Hashing and DSS Sultan Almuhammadi ICS 454 Principles of Cryptography.
Cryptography and Network Security Chapter 11 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Lecture 4 Cryptographic Tools (cont) modified from slides of Lawrie Brown.
1 Message Authentication and Hash Functions Authentication Requirements Authentication Functions Message Authentication Codes Hash Functions Security of.
Network Security Essentials Fifth Edition by William Stallings Fifth Edition by William Stallings.
Cryptography and Network Security Chapter 11 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Lecture 15 Lecture’s outline Public algorithms (usually) that are each other’s inverse.
© Neeraj Suri EU-NSF ICT March 2006 DEWSNet Dependable Embedded Wired/Wireless Networks MUET Jamshoro Computer Security: Principles and Practice Slides.
Acknowledgements: William Stallings.William Stallings All rights Reserved Session 4 Public Key Cryptography (Part 2) Network Security Essentials Application.
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.
Dan Johnson. What is a hashing function? Fingerprint for a given piece of data Typically generated by a mathematical algorithm Produces a fixed length.
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 2 – Cryptographic.
1 Number Theory and Advanced Cryptography 6. Digital Signature Chih-Hung Wang Sept Part I: Introduction to Number Theory Part II: Advanced Cryptography.
Cryptographic Hash Functions and Protocol Analysis
Authentication. Goal: Bob wants Alice to “prove” her identity to him Protocol ap1.0: Alice says “I am Alice” Failure scenario?? “I am Alice”
MESSAGE AUTHENTICATION and HASH FUNCTIONS - Chapter 11 MESSAGE AUTHENTICATION and HASH FUNCTIONS - Chapter 11 Masquerade – message insertion, fraud, ACK.
Cryptographic Hash Functions Prepared by Dr. Lamiaa Elshenawy
Hash Functions Ramki Thurimella. 2 What is a hash function? Also known as message digest or fingerprint Compression: A function that maps arbitrarily.
Cryptography and Network Security
CS426Fall 2010/Lecture 51 Computer Security CS 426 Lecture 5 Cryptography: Cryptographic Hash Function.
Hashes Lesson Introduction ●The birthday paradox and length of hash ●Secure hash function ●HMAC.
Information Security and Management 11. Cryptographic Hash Functions Chih-Hung Wang Fall
IT 221: Introduction to Information Security Principles Lecture 5: Message Authentications, Hash Functions and Hash/Mac Algorithms For Educational Purposes.
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.
@Yuan Xue 285: Network Security CS 285 Network Security Hash Algorithm Yuan Xue Fall 2012.
CS457 Introduction to Information Security Systems
Cryptographic Hash Functions & Digital Signatures
Cryptographic Hash Functions
Cryptographic Hash Function
Message Authentication and Hash Functions
Cryptographic Hash Functions
Presented by: Dr. Munam Ali Shah
Cryptographic Hash Functions Part I
Cryptography and Network Security Chapter 11
Cryptography Lecture 13.
Cryptographic Hash Functions
ICS 454 Principles of Cryptography
Cryptography and Network Security Chapter 11
Cryptographic Hash Functions
Message Authentication and Hash Functions
Chapter 11 – Message Authentication and Hash Functions
ICS 454 Principles of Cryptography
Lecture 4.1: Hash Functions: Introduction
Cryptographic Hash Functions Part I
Chapter -7 CRYPTOGRAPHIC HASH FUNCTIONS
Chapter -8 Digital Signatures
Lecture 4.1: Hash Functions, and Message Authentication Codes
Chapter 3 - Public-Key Cryptography & Authentication
Cryptography Lecture 14.
Hashing Hash are the auxiliary values that are used in cryptography.
Introduction to Cryptography
Cryptography Lecture 13.
Cryptography Lecture 13.
Lecture 4: Hash Functions
Cryptanalysis Network Security.
Pseudorandom Numbers Network Security.
One-way Hash Function Network Security.
HMAC and its Design Objectives
CRYPTOGRAPHY & NETWORK SECURITY
The RSA Public-Key Encryption Algorithm
Digital Signature Standard (DSS)
Digital Signatures Network Security.
Stream Cipher Structure
Feistel Cipher Structure
Message Authentication
Simple Hash Functions Network Security.
Presentation transcript:

Hash Function Requirements Network Security

Hash Function Requirements Objectives of the Topic After completing this topic, a student will be able to explain hash function requirements.

Hash Function Requirements Figures and material in this topic have been adapted from “Network Security Essentials : Applications and Standards”, 2014, by William Stallings.

Hash Function Requirements The purpose of a hash function is to produce a “fingerprint” of a file, message, or other block of data. It accepts a variable-length block of data M as input and produces a fixed-size hash value h = H(M).

Hash Function Requirements A “good” hash function has the property that the results of applying the function to a large set of inputs will produce outputs that are evenly distributed and apparently random.

Hash Function Requirements A change to any bit or bits in M results, with high probability, in a change to the hash code. The principal object of a hash function is data integrity.

Hash Function Requirements For a hash value h = H(x), we say that x is the preimage of h. In other words, x is a data block whose hash function, using the function H, is h.

Hash Function Requirements Because H is a many-to-one mapping, for any given hash value h, there will in general be multiple preimages.

Hash Function Requirements A collision occurs if we have x ≠ y and H(x) = H(y). Because we are using hash functions for data integrity, collisions are clearly undesirable.

Hash Function Requirements To be useful for message authentication, a hash function H must have the following properties: 1. H can be applied to a block of data of any size. 2. H produces a fixed-length output.

Hash Function Requirements 3. H(x) is relatively easy to compute for any given x, making both hardware and software implementations practical.

Hash Function Requirements 4. For any given code h, it is computationally infeasible to find x such that H(x) = h. A hash function with this property is referred to as one-way or preimage resistant.

Hash Function Requirements 5. For any given block x, it is computationally infeasible to find y ≠ x with H(y) = H(x). A hash function with this property is referred to as second preimage resistant. This is also referred to as weak collision resistant.

Hash Function Requirements 6. It is computationally infeasible to find any pair (x, y) such that H(x) = H(y). Such a hash function is referred to as collision resistant. This is sometimes referred to as strong collision resistant.

Hash Function Requirements First three properties are requirements for the practical application of a hash function to message authentication. The 4th property is important if the authentication technique involves the use of a secret value.

Hash Function Requirements The fourth property, preimage resistant, is the “one-way” property: It is easy to generate a code given a message, but virtually impossible to generate a message given a code.

Hash Function Requirements The 5th property prevents forgery when an encrypted hash code is used.

Hash Function Requirements A hash function that satisfies the first five properties in the preceding list is referred to as a weak hash function. If the sixth property is also satisfied, then it is referred to as a strong hash function.

Hash Function Requirements Security of Hash Functions: Two approaches to attacking a secure hash function are: Cryptanalysis, and brute-force attack

Hash Function Requirements Cryptanalysis of a hash function involves exploiting logical weaknesses in the algorithm. The strength of a hash function against brute-force attacks depends on length of hash code produced by algorithm.

Hash Function Requirements For a hash code of length n, the level of effort required is proportional to the following: End