NAME blakesum - Checksum utilities for the BLAKE-family of hashing functions SYNOPSIS bsum [-l bits] [-S salt] [-c | -B | -L | -U] [-xz] [file] ... b224sum [-S salt] [-c | -B | -L | -U] [-xz] [file] ... b256sum [-S salt] [-c | -B | -L | -U] [-xz] [file] ... b384sum [-S salt] [-c | -B | -L | -U] [-xz] [file] ... b512sum [-S salt] [-c | -B | -L | -U] [-xz] [file] ... b2sum [-l bits | -X bits] [-K key] [-P pepper] [-S salt] \ [-c | -B | -L | -U] [-sxz] [file] ... DESCRIPTION Print or check BLAKE, BLAKE2, or BLAKE2X checksums. bsum is used for BLAKE2 checksums, and b2sum is used for BLAKE2 and BLAKE2X checksums. b224sum is an alias for bsum -l 224. b256sum is an alias for bsum -l 256. b384sum is an alias for bsum -l 384. b512sum is an alias for bsum -l 512. OPTIONS The following options are supported: -B Output checksums in binary representation. This suppresses the filenames and checksum delimiters. Only the checksums are printed. -c Read checksums from the file and check them against the files on your systems. The input files files should be formatted as the output of the program, or similarly. This is not going to work if any of the filenames in the input files starts with <space> or <tab>, or if they contain a <newline>, unless the -z option is also used. -K key (Only available in b2sum) Specify a key (which is used for MAC and PRF), that is up to 32 bytes (if the -s option is used) or 64 bytes (otherwise) long, that the algorithm shall use. The key shall be expressed in hexadecimal: each byte in the key shall be expressed, from left to right, as a pairs of hexadecimal digits where highest bits in each byte is stored in the left digit in its pair and the lowest bits in each byte is stored in the right digit in its pair. No delimiters are used, so for a 4 byte key where each byte's value is its index, the key is expessed as 00010203, however each letter may be either small or capital. The key may not be empty. -L Output checksums in lower-case hexadecimal representation. (Default) -l bits For bsum: Select version of the BLAKE algorithm. Valid values are 224 (default), 256, 384, and 512. For b2sum: Select output size, valid values are multiples of 8 between 8 and 512, inclusively, or if the -s option is used between 8 and 256, inclusively. (Default is maximum.) -P pepper (Only available in b2sum) Specify an 8-byte (if the -s option is used) or 16-byte pepper ("personalisation") (otherwise) that the algorithm shall use. This pepper shall be expressed in full length hexadecimal: 16 (for 8-byte) or 32 (for 16-byte) hexadecimal digits, or rather 8 or 16 pairs of hexadecimal digits, ordered from left to right to specify the values from index 0 to the last byte. In each pair, the left digit stores the high bits of the byte, and the right digit stores the low bits of the byte. For example, the digit pair 80 represents a byte with the decimal value 128, whereas the digit pair 08 represents a byte with the decimal value 8. The pairs are joined without any delimiters, and no byte may be omitted. So, for a 8 byte pepper where each byte's value is its index, the pepper is expressed as 0001020304050607, however each letter may be either small or capital. If no pepper is specified, an all-zeroes pepper is used. -S salt Specify a salt that the algorithm shall use. The size of the salt depends on which algorithm used. This salt shall be expressed in full length hexadecimal. The decimal digits are logically groupped in pairs that are ordered from left to right to specify the values from index 0 to the last byte. In each pair, the left digit stores the high bits of the byte, and the right digit stores the low bits of the byte. For example, the digit pair 80 represents a byte with the decimal value 128, whereas the digit pair 08 represents a byte with the decimal value 8. The pairs are joined without any delimiters, and no byte may be omitted. So, for a 16 byte salt where each byte's value is its index, the salt is expressed as 000102030405060708090a0b0c0d0e0f, however each letter may be either small or capital. If no salt is specified, an all-zeroes salt is used. -s (Only available in b2sum) Use BLAKE2s instead of BLAKE2b. -U Output checksums in upper-case hexadecimal representation. -X bits (Only available in b2sum) Use BLAKE2Xb instead of BLAKE2b or BLAKE2Xs instead of BLAKE2s, and select the extended output function output length, in bits; must be a non-zero multiple of 8, and no greater than 34359738360 or (if the -s option is used) 524280. -x Convert input files from hexadecimal form to binary form before calculating the checksums. -z Lines end with NUL instead of LF. If used with -c, this applies to read files (not the output), but it will also apply more strict parsing and allow any whitespace in file names. OPERANDS The following operands are supported: file File to read. The standard input will be used - or no file is specified. EXIT STATUS 0 Successful completion. 1 Checksums did not match or a file did not exist. 2 An error occurred. NOTES BLAKE2X has not been finalised as of 2022-02-20. SEE ALSO sha3sum, sha256sum(1), sha512sum(1)