Course Cryptographic Hash Functions

Lecturer: Prof. Dr. Stefan Lucks

On the one hand, cryptographic hash functions are unusual cryptographic algorithms. In comparison with block ciphers or MACs they work without a key. On the other hand, they are the beasts of burden (i.e., the eager beavers) in many applications. These hash functions mainly appear in cryptographic protocols, such as SSH, SSL, and RSA-OAEP.

Since 2000, cryptographers have found some crucial weaknesses in common cryptographic hash functions, e.g., MD5 and SHA-1. Only the SHA-2 family seems to be resistent against published attacks. As the structure of SHA-2 is similar to the structure of SHA-1, the National Institute of Standards and Technlogy (NIST) introduced a public hash function challenge (SHA-3 contest) to find a new standard, 64 first round candidates were submitted, including two candidates designed by the chair of Media Security in Weimar. One of them (Skein) is one out of the five finalists.

The first part of this course introduces cryptographic hash functions and their application in practice. The second part will show generic attacks and their impact in practice.  Furthermore, this course will teach you approaches used for the design of a cryptographic hash function. The third part is about the finalists of the SHA-3 competition.

Class Meeting:

Wednesday 11:00 am - 12:30 pm in lecture room IT-AP.  Karl-Haußknecht-Straße 7; Start: April 2, 2011.

Slides:

  • Welcome
  • Introduction
  • Iterated Cryptographic Hash Functions
  • Generic Attacks (additional slides)
  • Block Cipher Based Compression Functions
  • Dedicated Compression Functions
  • Tree Hashing and Hash Trees
  • SHA-3 Competition
  • Password Hashing
  • Catena

Grading:

Oral examination (Admission due to a successful take out of the problem session)

Target audience:

Computer Science and Media, M.Sc.

Material:

  • Articles Full-Domain Hash and Simulator Approach, Random Oracle Model (do not distribute),
  • Bellare, Rogaway: Random Oracles are Practical: A Paradigm for Designing Efficient Protocols. ACM Conference on Computer and Communications Security 1993:62-73.