The Hash Function BLAKE

  • Jean-Philippe Aumasson
  • Willi Meier
  • Raphael C.-W. Phan
  • Luca Henzen

Part of the Information Security and Cryptography book series (ISC)

Table of contents

  1. Front Matter
    Pages i-xviii
  2. Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
    Pages 1-7
  3. Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
    Pages 9-35
  4. Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
    Pages 37-44
  5. Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
    Pages 45-54
  6. Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
    Pages 55-95
  7. Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
    Pages 97-105
  8. Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
    Pages 107-129
  9. Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
    Pages 131-163
  10. Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
    Pages 165-183
  11. Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
    Pages 185-185
  12. Back Matter
    Pages 187-228

About this book

Introduction

This is a comprehensive description of the cryptographic hash function BLAKE, one of the five final contenders in the NIST SHA3 competition, and of BLAKE2, an improved version popular among developers. It describes how BLAKE was designed and why BLAKE2 was developed, and it offers guidelines on implementing and using BLAKE, with a focus on software implementation.

 

In the first two chapters, the authors offer a short introduction to cryptographic hashing, the SHA3 competition, and BLAKE. They review applications of cryptographic hashing, they describe some basic notions such as security definitions and state-of-the-art collision search methods, and they present SHA1, SHA2, and the SHA3 finalists. In the chapters that follow, the authors give a complete description of the four instances BLAKE-256, BLAKE-512, BLAKE-224, and BLAKE-384; they describe applications of BLAKE, including simple hashing with or without a salt, and HMAC and PBKDF2 constructions; they review implementation techniques, from portable C and Python to AVR assembly and vectorized code using SIMD CPU instructions; they describe BLAKE’s properties with respect to hardware design for implementation in ASICs or FPGAs; they explain BLAKE's design rationale in detail, from NIST’s requirements to the choice of internal parameters; they summarize the known security properties of BLAKE and describe the best attacks on reduced or modified variants; and they present BLAKE2, the successor of BLAKE, starting with motivations and also covering its performance and security aspects. The book concludes with detailed test vectors, a reference portable C implementation of BLAKE, and a list of third-party software implementations of BLAKE and BLAKE2.

 

The book is oriented towards practice – engineering and craftsmanship – rather than theory. It is suitable for developers, engineers, and security professionals engaged with BLAKE and cryptographic hashing in general, and for applied cryptography researchers and students who need a consolidated reference and a detailed description of the design process, or guidelines on how to design a cryptographic algorithm.

Keywords

BLAKE Cryptographic hashing Hash functions NIST SHA3 Competition

Authors and affiliations

  • Jean-Philippe Aumasson
    • 1
  • Willi Meier
    • 2
  • Raphael C.-W. Phan
    • 3
  • Luca Henzen
    • 4
  1. 1.Nagravision SAKudelski SecurityCheseaux-sur-LausanneSwitzerland
  2. 2.Hochschule für TechnikFachhochschule NordwestschweizWindischSwitzerland
  3. 3.Faculty of EngineeringMultimedia UniversityCyberjayaMalaysia
  4. 4.Dept. of IT SecurityUBS AGZürichSwitzerland

Bibliographic information

  • DOI https://doi.org/10.1007/978-3-662-44757-4
  • Copyright Information Springer-Verlag Berlin Heidelberg 2014
  • Publisher Name Springer, Berlin, Heidelberg
  • eBook Packages Computer Science
  • Print ISBN 978-3-662-44756-7
  • Online ISBN 978-3-662-44757-4
  • Series Print ISSN 1619-7100
  • About this book