Glossary

Blake-256

Hard

Used in Decred, Blake-256 is a hash algorithm designed by Jean-Philippe Aumasson, Luca Henzen, Willi Meier, and Raphael C.-W. Phan.

What Is Blake-256?

Used in Decred, Blake-256 is a hash algorithm designed by Jean-Philippe Aumasson, Luca Henzen, Willi Meier and Raphael C.-W. Phan. It was developed to run at least as fast as MD5 on 32-bit processors and at least as fast as SHA-1 on 64-bit processors.

Blake is based on ChaCha, a variant of the Salsa20 stream cipher, but its internal state is larger than that of Salsa20 (1600 bits vs. 256 bits). The message is first partitioned into blocks that are hashed independently; the last block is padded out to a full block length. Each block is fed into an internal compression function which operates on a 512-bit internal state (32 rows and 16 columns). The output from the compression function is added to the starting state using XOR and then permuted using a linear transformation. The final state is then split into two 512-bit halves and XORed together, producing the final version.

Blake hashing algorithm is one of the five finalists in the NIST hash function competition. 

A method of reducing a hash value is to XOR it with a constant value, which can allow for more efficient computation on some architectures. The Blake hashing algorithm uses this concept extensively. Although this does not result in any significant reduction in security, it does result in a faster processing time for the algorithm.

The Blake hashing algorithm constructs two independent hash functions that are hashed together to produce a final hash value of 512 bits (64 bytes).

Blake is an iterative hash function that uses randomization to increase security against collisions and preimage attacks while using almost the same amount of resources as SHA-2 (though less than MD5).

Blake has the following features:

Security: Blake is more secure than SHA-2 because it has a larger internal state (1024 bits compared to SHA-2’s 512 bits).

Fast hashing: Blake is one of the fastest cryptographic hash functions around. It surpasses the industry’s leading cryptographic hash function Whirlpool in terms of speed. Speed is essential to many applications, such as password protection.

Stream cipher: This allows an application to hash any amount of data without having to wait until all data has been read. This feature enables applications such as file hashing utilities.