The Hash Function BLAKE (Information Security and Cryptography)
暫譯: 哈希函數 BLAKE(資訊安全與密碼學)
Jean-Philippe Aumasson, Willi Meier, Raphael C.-W. Phan, Luca Henzen
相關主題
商品描述
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.
商品描述(中文翻譯)
這是對加密雜湊函數 BLAKE 的全面描述,BLAKE 是 NIST SHA3 競賽中的五個最終候選者之一,以及 BLAKE2,這是一個在開發者中廣受歡迎的改進版本。本文描述了 BLAKE 的設計過程及其開發 BLAKE2 的原因,並提供了實現和使用 BLAKE 的指導,重點在於軟體實現。
在前兩章中,作者簡要介紹了加密雜湊、SHA3 競賽和 BLAKE。他們回顧了加密雜湊的應用,描述了一些基本概念,如安全性定義和最先進的碰撞搜尋方法,並介紹了 SHA1、SHA2 和 SHA3 的決賽選手。在接下來的章節中,作者對四個實例 BLAKE-256、BLAKE-512、BLAKE-224 和 BLAKE-384 進行了完整的描述;他們描述了 BLAKE 的應用,包括有無鹽的簡單雜湊以及 HMAC 和 PBKDF2 的構造;他們回顧了實現技術,從可攜式 C 和 Python 到 AVR 組合語言以及使用 SIMD CPU 指令的向量化代碼;他們描述了 BLAKE 在 ASIC 或 FPGA 硬體設計中的特性;他們詳細解釋了 BLAKE 的設計原則,從 NIST 的要求到內部參數的選擇;他們總結了 BLAKE 的已知安全性特性,並描述了對於簡化或修改變體的最佳攻擊;最後,他們介紹了 BLAKE 的繼任者 BLAKE2,從動機開始,還涵蓋了其性能和安全性方面。該書以詳細的測試向量、BLAKE 的可攜式 C 實現參考以及第三方 BLAKE 和 BLAKE2 實現的列表作結。
本書以實踐為導向——工程和工藝,而非理論。它適合從事 BLAKE 和一般加密雜湊的開發者、工程師和安全專業人士,以及需要綜合參考和設計過程詳細描述的應用密碼學研究者和學生,或是需要設計加密算法指導的人士。