This repository has been archived by the owner on Oct 6, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
152 lines (122 loc) · 5.34 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
This repo has been moved to Codeberg and may be out of date on GitHub.
Canonical repo: https://codeberg.org/maandree/blakesum
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)