Generating a hash sum
The Credits platform uses the BLAKE2b data encryption algorithm. This algorithm is not sensitive to the size of the hashed data and is protected from attacks associated with the occurrence of collisions in the process of hashing. BLAKE2b is used to embed a BFT consensus when checking the functionality of a node with a checksum. BLAKE2b is a modification of the version of the BLAKE2 algorithm optimized for 64-bit platforms, including ARMs with NEON support, and produces digests of any size from 1 to 64 bytes.
The BLAKE2b algorithm is based on a stream cipher known as ChaCha, developed by Daniel J. Bernstein, and is aimed at the maximum possible protection of the hash function.
BLAKE2 includes 4-way parallel BLAKE2bp and 8-way parallel BLAKE2sp, designed to improve performance on multi-core or SIMD-processors.
Using BLAKE2b provides the following security benefits:
Improved compression function
BLAKE2b introduces the completion identifiers as auxiliary inputs for the compression function, increasing its security. And the use of "salt processing" protects against attacks with dictionaries with rainbow tables.
Decrease in the number of constants
The BLAKE2b function uses a total of 8 word constants instead of 24. This saves 64 bytes of ROM and 64 RAM.
A block of parameters, which consists of the initialization vectors
Implementing parameter encoding, key length, and reference table for a safe hash tree.
Accelerate data transfer
BLAKE2b is faster and safer than all functions of the SHA family, including its latest generation - SHA-3.
Data transfer with a number of rounds is reduced from 16 to 12 for the BLAKE2b function (similar to BLAKE-512). As a result, the number of clock cycles per bit decreased from 5.64 for BLAKE-512 to 3.32 for BLAKE2b.
The hash function of BLAKE2b has the same performance as MD5 on a 64 bit platform, requiring at least 33% less RAM than SHA-2 or SHA-3 on lower-level systems.
This changes the acceleration results by approximately 29% to transfer large amounts of data. Improved data transfer speed.