Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .ci/coverage_more.sh
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ done > hashsum_tv.txt
pdiv "Compare hashsum_tv.txt"
difftroubles=$(diff -i -w -B hashsum_tv.txt notes/hashsum_tv.txt | grep '^<') || true
if [ -n "$difftroubles" ]; then
echo "FAILURE: hashsum_tv.tx"
echo "FAILURE: hashsum_tv.txt" >&2
echo "$difftroubles" >&2
diff -i -w -B hashsum_tv.txt notes/hashsum_tv.txt
echo "hashsum failed"
exit 1
Expand Down
75 changes: 75 additions & 0 deletions doc/crypt.tex
Original file line number Diff line number Diff line change
Expand Up @@ -2998,6 +2998,7 @@ \subsection{Hash Registration}
\hline RIPEMD-256 & rmd160\_desc & 32 & 13 \\
\hline BLAKE2S-256 & blake2s\_256\_desc & 32 & 24 \\
\hline BLAKE2B-256 & blake2b\_256\_desc & 32 & 26 \\
\hline BLAKE3 & blake3\_desc & 32 & 34 \\
\hline SHA-512/224 & sha512\_224\_desc & 28 & 15 \\
\hline Keccak224 & keccak\_224\_desc & 28 & 29 \\
\hline SHA3-224 & sha3\_224\_desc & 28 & 17 \\
Expand Down Expand Up @@ -3075,6 +3076,80 @@ \subsection{Hash Registration}
}
\end{verbatim}

\mysection{BLAKE3}
\index{BLAKE3}
BLAKE3 is a cryptographic hash function that also supports keyed hashing (MAC/PRF) and key derivation.
The standard unkeyed hash uses the normal hash descriptor interface:

\begin{verbatim}
int blake3_init(hash_state *md);
int blake3_process(hash_state *md, const unsigned char *in,
unsigned long inlen);
int blake3_done(hash_state *md, unsigned char *out);
\end{verbatim}

The default output is 32 bytes (256 bits).
To enable BLAKE3, define \texttt{LTC\_BLAKE3} in \textit{tomcrypt\_custom.h}.

\subsection{BLAKE3 Keyed Hash}
\index{blake3\_keyed\_init()}
BLAKE3 keyed hashing can be used as a MAC or PRF with a 32-byte key. It replaces the need for a
separate HMAC construction.

\begin{verbatim}
int blake3_keyed_init(hash_state *md, const unsigned char *key,
unsigned long keylen);
\end{verbatim}

The \textit{keylen} parameter must be exactly 32. After initialization, use the standard
\texttt{blake3\_process()} and \texttt{blake3\_done()} to hash data and obtain the tag.

\subsection{BLAKE3 Key Derivation}
\index{blake3\_derive\_key\_init()}
BLAKE3 key derivation uses a two-pass construction: first the application-specific context string is
hashed internally, then the resulting context key is used to hash the input key material.

\begin{verbatim}
int blake3_derive_key_init(hash_state *md,
const unsigned char *context,
unsigned long contextlen);
\end{verbatim}

The \textit{context} should be a globally unique, application-specific string (e.g.\
\texttt{"myapp 2024-01-01 session-key"}). After initialization, feed the input key material via
\texttt{blake3\_process()} and retrieve the derived key via \texttt{blake3\_done()}.

\begin{small}
\begin{verbatim}
#include <tomcrypt.h>
int main(void)
{
hash_state md;
unsigned char out[32];
const unsigned char key[32] = "whats the Elvish word for friend";
const unsigned char msg[] = "hello";

/* Unkeyed hash */
blake3_init(&md);
blake3_process(&md, msg, 5);
blake3_done(&md, out);

/* Keyed hash (MAC) */
blake3_keyed_init(&md, key, 32);
blake3_process(&md, msg, 5);
blake3_done(&md, out);

/* Key derivation */
blake3_derive_key_init(&md,
(const unsigned char *)"myapp 2024-01-01 session-key", 28);
blake3_process(&md, key, 32); /* input key material */
blake3_done(&md, out); /* derived key */

return 0;
}
\end{verbatim}
\end{small}

\mysection{Extendable Output Functions (XOF)}
Some algorithms provide a special XOF (Extendable Output Functions) mode which allow to generate message digests of an arbitrary length.

Expand Down
4 changes: 4 additions & 0 deletions libtomcrypt_VS2008.vcproj
Original file line number Diff line number Diff line change
Expand Up @@ -855,6 +855,10 @@
RelativePath="src\hashes\blake2s.c"
>
</File>
<File
RelativePath="src\hashes\blake3.c"
>
</File>
<File
RelativePath="src\hashes\md2.c"
>
Expand Down
4 changes: 2 additions & 2 deletions makefile.mingw
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,8 @@ src/encauth/ocb3/ocb3_decrypt_verify_memory.o src/encauth/ocb3/ocb3_done.o \
src/encauth/ocb3/ocb3_encrypt.o src/encauth/ocb3/ocb3_encrypt_authenticate_memory.o \
src/encauth/ocb3/ocb3_encrypt_last.o src/encauth/ocb3/ocb3_init.o src/encauth/ocb3/ocb3_int_ntz.o \
src/encauth/ocb3/ocb3_int_xor_blocks.o src/encauth/ocb3/ocb3_test.o src/encauth/siv/siv.o \
src/hashes/blake2b.o src/hashes/blake2s.o src/hashes/chc/chc.o src/hashes/helper/hash_file.o \
src/hashes/helper/hash_filehandle.o src/hashes/helper/hash_memory.o \
src/hashes/blake2b.o src/hashes/blake2s.o src/hashes/blake3.o src/hashes/chc/chc.o \
src/hashes/helper/hash_file.o src/hashes/helper/hash_filehandle.o src/hashes/helper/hash_memory.o \
src/hashes/helper/hash_memory_multi.o src/hashes/md2.o src/hashes/md4.o src/hashes/md5.o \
src/hashes/rmd128.o src/hashes/rmd160.o src/hashes/rmd256.o src/hashes/rmd320.o src/hashes/sha1.o \
src/hashes/sha1_desc.o src/hashes/sha1_x86.o src/hashes/sha2/sha224.o src/hashes/sha2/sha224_desc.o \
Expand Down
4 changes: 2 additions & 2 deletions makefile.msvc
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@ src/encauth/ocb3/ocb3_decrypt_verify_memory.obj src/encauth/ocb3/ocb3_done.obj \
src/encauth/ocb3/ocb3_encrypt.obj src/encauth/ocb3/ocb3_encrypt_authenticate_memory.obj \
src/encauth/ocb3/ocb3_encrypt_last.obj src/encauth/ocb3/ocb3_init.obj src/encauth/ocb3/ocb3_int_ntz.obj \
src/encauth/ocb3/ocb3_int_xor_blocks.obj src/encauth/ocb3/ocb3_test.obj src/encauth/siv/siv.obj \
src/hashes/blake2b.obj src/hashes/blake2s.obj src/hashes/chc/chc.obj src/hashes/helper/hash_file.obj \
src/hashes/helper/hash_filehandle.obj src/hashes/helper/hash_memory.obj \
src/hashes/blake2b.obj src/hashes/blake2s.obj src/hashes/blake3.obj src/hashes/chc/chc.obj \
src/hashes/helper/hash_file.obj src/hashes/helper/hash_filehandle.obj src/hashes/helper/hash_memory.obj \
src/hashes/helper/hash_memory_multi.obj src/hashes/md2.obj src/hashes/md4.obj src/hashes/md5.obj \
src/hashes/rmd128.obj src/hashes/rmd160.obj src/hashes/rmd256.obj src/hashes/rmd320.obj src/hashes/sha1.obj \
src/hashes/sha1_desc.obj src/hashes/sha1_x86.obj src/hashes/sha2/sha224.obj src/hashes/sha2/sha224_desc.obj \
Expand Down
4 changes: 2 additions & 2 deletions makefile.unix
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,8 @@ src/encauth/ocb3/ocb3_decrypt_verify_memory.o src/encauth/ocb3/ocb3_done.o \
src/encauth/ocb3/ocb3_encrypt.o src/encauth/ocb3/ocb3_encrypt_authenticate_memory.o \
src/encauth/ocb3/ocb3_encrypt_last.o src/encauth/ocb3/ocb3_init.o src/encauth/ocb3/ocb3_int_ntz.o \
src/encauth/ocb3/ocb3_int_xor_blocks.o src/encauth/ocb3/ocb3_test.o src/encauth/siv/siv.o \
src/hashes/blake2b.o src/hashes/blake2s.o src/hashes/chc/chc.o src/hashes/helper/hash_file.o \
src/hashes/helper/hash_filehandle.o src/hashes/helper/hash_memory.o \
src/hashes/blake2b.o src/hashes/blake2s.o src/hashes/blake3.o src/hashes/chc/chc.o \
src/hashes/helper/hash_file.o src/hashes/helper/hash_filehandle.o src/hashes/helper/hash_memory.o \
src/hashes/helper/hash_memory_multi.o src/hashes/md2.o src/hashes/md4.o src/hashes/md5.o \
src/hashes/rmd128.o src/hashes/rmd160.o src/hashes/rmd256.o src/hashes/rmd320.o src/hashes/sha1.o \
src/hashes/sha1_desc.o src/hashes/sha1_x86.o src/hashes/sha2/sha224.o src/hashes/sha2/sha224_desc.o \
Expand Down
4 changes: 2 additions & 2 deletions makefile_include.mk
Original file line number Diff line number Diff line change
Expand Up @@ -250,8 +250,8 @@ src/encauth/ocb3/ocb3_decrypt_verify_memory.o src/encauth/ocb3/ocb3_done.o \
src/encauth/ocb3/ocb3_encrypt.o src/encauth/ocb3/ocb3_encrypt_authenticate_memory.o \
src/encauth/ocb3/ocb3_encrypt_last.o src/encauth/ocb3/ocb3_init.o src/encauth/ocb3/ocb3_int_ntz.o \
src/encauth/ocb3/ocb3_int_xor_blocks.o src/encauth/ocb3/ocb3_test.o src/encauth/siv/siv.o \
src/hashes/blake2b.o src/hashes/blake2s.o src/hashes/chc/chc.o src/hashes/helper/hash_file.o \
src/hashes/helper/hash_filehandle.o src/hashes/helper/hash_memory.o \
src/hashes/blake2b.o src/hashes/blake2s.o src/hashes/blake3.o src/hashes/chc/chc.o \
src/hashes/helper/hash_file.o src/hashes/helper/hash_filehandle.o src/hashes/helper/hash_memory.o \
src/hashes/helper/hash_memory_multi.o src/hashes/md2.o src/hashes/md4.o src/hashes/md5.o \
src/hashes/rmd128.o src/hashes/rmd160.o src/hashes/rmd256.o src/hashes/rmd320.o src/hashes/sha1.o \
src/hashes/sha1_desc.o src/hashes/sha1_x86.o src/hashes/sha2/sha224.o src/hashes/sha2/sha224_desc.o \
Expand Down
131 changes: 131 additions & 0 deletions notes/hash_tv.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4046,6 +4046,137 @@ Hash: blake2b-512
255: 5B21C5FD8868367612474FA2E70E9CFA2201FFEEE8FAFAB5797AD58FEFA17C9B5B107DA4A3DB6320BAAF2C8617D5A51DF914AE88DA3867C2D41F0CC14FA67928
256: 1ECC896F34D3F9CAC484C73F75F6A5FB58EE6784BE41B35F46067B9C65C63A6794D3D744112C653F73DD7DEB6666204C5A9BFA5B46081FC10FDBE7884FA5CBF8

Hash: blake3
0: AF1349B9F5F9A1A6A0404DEA36DCC9499BCB25C9ADC112B7CC9A93CAE41F3262
1: 2D3ADEDFF11B61F14C886E35AFA036736DCD87A74D27B5C1510225D0F592E213
2: 7B7015BB92CF0B318037702A6CDD81DEE41224F734684C2C122CD6359CB1EE63
3: E1BE4D7A8AB5560AA4199EEA339849BA8E293D55CA0A81006726D184519E647F
4: F30F5AB28FE047904037F77B6DA4FEA1E27241C5D132638D8BEDCE9D40494F32
5: B40B44DFD97E7A84A996A91AF8B85188C66C126940BA7AAD2E7AE6B385402AA2
6: 06C4E8FFB6872FAD96F9AACA5EEE1553EB62AED0AD7198CEF42E87F6A616C844
7: 3F8770F387FAAD08FAA9D8414E9F449AC68E6FF0417F673F602A646A891419FE
8: 2351207D04FC16ADE43CCAB08600939C7C1FA70A5C0AACA76063D04C3228EAEB
9: A0FC27E5D7318B723207637BDEEBA4F7DCB22F7F9EC3E8B6F3588DDCD4FDF861
10: 87FCF07CAC5BE3C91735B34E535C67286E4E7A63BF152D95F2CF4CD1A244758B
11: 02662E12EA8B243F0A8E970EFE19D8955FCC71EA7DC10F7FDA89492D07CD9730
12: 46771FD4C72C26DE414671D8C8634B327FD12BA240E3739E011B4E64BFBB898C
13: E1C0BBB02CB1622397CED750A9F712A2D5EF5B1E17E7CC01A3DABCF448613A51
14: CBFA77A4531D0D07800518C49CAD65E7130CB2C225AFC718BECFEA56904870D1
15: 163475FC98871015D19097D29536653BDEAC6A9C3A18AD4B3A629CFAA1BBF32E
16: A6A492965517A830CB75FDB713465AA465F2F098233896FEA44C1D98268BF9E3
17: 8462AA7BE93B09FDA7B93CF9F9CDDB703F6DD2CC0C8EDD5F9EEE092EDF8ABF0C
18: 66A671E4FB354B7FA37D12B506D557F9170C8247494DF4591B6A38C4C1ED8CD2
19: 9F9CC8084631848151B09AA51B05A96A5CF674DB8BE5D1C5E8054BAA87A3B3F8
20: A418FAEC67BAAEB5177880C3673A125F1C1123AA18370B007C3E707EF9A7946C
21: 7FE1802DDAC5BBAFE5BA26848B95252590EECC4937CCFB9C55F3B6EAD2DC56B7
22: 2E4D3DCDF0702C936D4E90BA664DED539B53190006CA17A010744B4AD97CA4F5
23: 3F3123529EB4B83D3D38A4E79C7A1B6F4176F7A9B435254D402162EFBE74DB47
24: 0B3AB94011D18786D51ED60C6B3FA6CE1B10B14D66D594836B2CC38451F7A8D6
25: EDF54F99CAD804C52DFC45C54524982D9F0F16A3E193143EF7AF1A3105CB78DE
26: 2B001B01373DB4C2E8F790CB1CA9372FB53A2818C391224CE9A24B3428025EB6
27: 630AF0542832B93F6F9C9A4299C04E06CC89F0609796CBAD0714CEC5B97A21B7
28: 4D7694418F33D099AD643D743D98FC1E5BF71EA979B7DCAE3E19BC2AE8732436
29: 0A8B04B4686B2D211E13F630B22CB2846D38610B9668619B8C94948DE6A86075
30: 4A370926EFD1807A3D7699EFDE168C9A4D128AC5367B95755DB2BE230A085D00
31: BDA80C7FE2DB38BE6387B35C870BD7728D67B7B6CC5EB9B0E5C7DCB21EA754C2
32: E528E95798037DF410543D9F31E396ECDD458D71B157D6014398BAE32FB56C65
33: 4F4E6C1DFFD3A6C9959876D15AA96B5FB0DA8632B995F6CA2E30503F2829FA29
34: 0DBEFE45C10F3E35DCA05C85DE406E1DAD035B28A1C70E8476D2FCFCA744CE96
35: B1153AB473AFB31831AC2CD78167ED9B49C4EA1AE05A16D4CEFC111CA1D40885
36: 02B34DC75E6E7DFB3B020188C7A5C277C7171417B75F91540F34E112B7F3552C
37: B86799BC285A4A9FF30B36425FA164DEC196DC403A0C62C27EBDDDB6DC4FA40A
38: D78545492EFD467E227662AA5BFDFBE4327D1C9DC18116CD493F157BE42BDE1C
39: 6742AD3231B1D91EC920D04F911F8B2CD10AEDADBCB13EF1FD24B7DB4761027F
40: 9563A50F070B26EEAA1EE0A6AC95B8BA9168C32B1AF71AF2FE55A8B4E268CE5E
41: F0DBD489DFB0FB6A9206F1F7B9D6FBB6C81350DA461E88812CD4F15C93853ED5
42: B4CDEEB0E5B83AD41753011E1B56D497B3CA9785AA0A606610E91B97172A7928
43: 051978D4083545DBA07983654DB5C3C82A7A982A53B6005304A1BACBF0684ADB
44: 062C1BCE7948A70DB0D55355F0E74F13E54A022E8FFFCEAB06FE71041D0AAD47
45: 304ACD11CA45BEFA2B9CD55D2AB9C7CF0A75C4301BB8813728F180E31D25696F
46: F420058BEF32C43E2090BD112A2379FEDFAB0B2BD12737374391A3FC44BFE91E
47: 39DA10BF36C8498FA071067532BE53492CAE29F6CCAFDCB7E77552E0406A1A60
48: 5E9902524B30F4F4CFD5D2180FD357BBF881221A603C84C119580E8BC422911E
49: B78309B3D5FC5765EA4F02A6DC1DFB63370190470011F1025362DC691E178895
50: 475438FC7B1BFBEEBFFC69882E18C7D0C6B505312484EA2B9ADD451ACEF2D743
51: C98AAD8B112985E7D532D6F48F93FB0B26BFE90DF5A161FB3CE4FED674991911
52: D9B171EEE2809CF0A020E7367FC83413EC7C2A2E46A400D81297D98EBCA3464D
53: 0F4245901611D426CA9BA9700E64F267DBCD36221CA20C3B9643F5DFE38C8EDE
54: 6FE71231259609F9D0A6F799F983DF408A6104A1510E69D0050C6E4DBF63980C
55: D04EC5F6F5E7DAF5CED7A1671FBE912580A56576C8BF6A2ED4B80E35548F9C13
56: 60F238116F2936698A88CDA03D8DF79D7431249373B048EE7A063849FE6E9742
57: AE097943D385BC9B2CD9369D91ED13A97C59B9B654B04514CD87C74BF4B9A80C
58: CA204CEB059EA73A688A2C7D485418C3BB3BE97756E5FA1583D3A0FB582AB966
59: 4F174ACAFF29FF88AAA4DDE9404634FDCAE5A895F90DD5D610F91595C042D751
60: FE59BA0025B061E837DB84910371240D9B417DB56C14DDFF68D4AFE36DC39658
61: 86A2CF17CE886A3BE084862AE3C2AACF64F50E88B7334E675AFB34365CB9A5BF
62: 1F5EBF4B2ABEA4E78C2AB709D5AB298E13F494F9237F6DD19C8B90B3B7C83A13
63: E9BC37A594DAAD83BE9470DF7F7B3798297C3D834CE80BA85D6E207627B7DB7B
64: 4EED7141EA4A5CD4B788606BD23F46E212AF9CACEBACDC7D1F4C6DC7F2511B98
65: DE1E5FA0BE70DF6D2BE8FFFD0E99CEAA8EB6E8C93A63F2D8D1C30ECB6B263DEE
66: 191625E0BE4C2B741C2FEDABF54031AAA6E1991C95ACF95DECA48B925110F7E4
67: 810943751089482736CA4A0E7E04D4CE0244008F7ED6332D82AAB40AA1976EA2
68: 8720B909015D7A29AF3DD7A06F78729449F07BBCB56DF6954C032C0920491406
69: 0F0DB3C00DA61EAE613F02881890C3B896C5EEBFD94CD0DC385CE4002D4349E0
70: B0AE0E326C4BE7A0E1306C6C24DDAB88D01611863BCD6780B39D932227AC8510
71: 1E8633CB3FBA5DEDC5D22549E27CFAB03C8AC37884305EF25E9937A6F5F52E93
72: 028EB97D80291FC1F4AB846657FB2277CAE9D7EDA639C09BD220A9C869F0E9E6
73: EF0DE8AF9F7EB55976C1E97C2B5B2B61BD449BAD7B4D2F6C0C1D395DB1B0F247
74: C5BBC18015106771C91226EF36B7B1BC3849F92BB3D007F5AF78862677A27FD5
75: C730688E8971293A5F824E3B33AE03CC93A8790599C195F613FDF2124AC35520
76: CFCC0C08E078C3A7932293976A901A95C8CB0F2F75112D1C0BC45AC7ACBFAD9C
77: 5EF9C11ABD40A9FEB17F524FC574F1834C009841FEFCD75086970CC7B812BD34
78: FC6AB94E91AC711546E915926ACB19C1B2E12A60FABFA99B4AA375A28301F3E1
79: 28B11E5D82FD3FB24CADD8110715134DDA8485E0314C163558A30A81C665D67B
80: 4A6847EF66BCE6C14CA05EC8F8AD7383BF2931F4BCFD0373C18E059E93F9DEF6
81: B17155C79EE1E856F9264C526C7E2BC7EE4CB29AC0F4EEEA5F5351D7EA571C0C
82: B96458DAF30EE72C5140B45774A981A13E847AF40DB3217EE2998773F3587EDC
83: 0B7AD6C45101C2146728C4419691CDC8AFCADD7B2BD76F38818AB136BADE4224
84: A377584849A6890B585DDA9E9DC594DFCC91FB60FD4D00808D34AE379DCDB456
85: 3D173931FD3D576785D9FD8FA7179AB4C0768E2C2D264E193B1EC9EB9B01EE0E
86: 34B9CC80478E5665EF5BF79B7DAC4B85F74E8768CADEC19AEAE6323DE332FE2A
87: 672D2D2E6E995CFF226475999449BE91A43DF70F7CDEFF4CD39B6CAE60ACFD67
88: 87D03D704A84FFC46F5BB2A8000BD15743FAA303D2C59E2CEC61F3F7CC9EC2E5
89: D90E8853272707ABF2A7C7CF54233085D8D05140E433F94F27BDA873EF265F31
90: 2A9770A82D76F371336FD4FBE9999216F2B3C28C90FA25B1D42323691BC7F3EC
91: 27D3BF094C5083D31AE11F855239116D6220AE1C113FA74AEE4560C4888598F6
92: 6C883E2335A2F69DF61B92046069BF5D8FE0EB5DD255F2BAA5FC230F7EC37968
93: B9A19A0E32E5D04C7110F0771C652D0406ED152C3474AAAC198ABD3EC7C8BCA2
94: 00F92A5B63E1FB1B3D3ED08CA14389C8BCACEE494B1F80FA839A7CD64339E7B0
95: 45376CE6418ED3454D301CC373671D35BFF7447860D86C545D380C8ACEB8B65B
96: FD3748482969397A57DC96FA5646AF44BB4928DCBEBB795BE6D61975C3766BD6
97: 8A06220CAED39C22D8889B73351488D6550C43D4B4A777BFFA9FAB4F2074A4AF
98: C0828951F49A694C8D807B2997BF0BF2D0123BE7D10B3DF23FA3D642DD67AEE8
99: A2C85460E965626580E9CFA7A8AEF6047720EE48EFDD0EF27613ED358425E57A
100: 8E2EB1BBA3040B8F611A1240A0E111C74B45CFC9CAED10B95F6372DB1C40B8B5
101: 8F5BA69BF1882498FA92515D3105FC580EF070D2A4213580F0279D70B7406D38
102: 9DB10F45A5CA40F4502316DAB6ACC63A4C5F8A1B95BF76B05C3E7896368AE24F
103: 7BF6852F77BC98DC83DAFCC4165933C9D600669406415653501D2C32E4CBE395
104: 49F7F1D30B977E3F9D07C54B2A0DAD64513045B5942B634374B05365BBF4AF1D
105: 04FA0B7C1592B3F19E1D4981871E5E69DA3CAECFB07F11929ECC0CFAC34146E5
106: 4E57D05348408846A3EA0D5C3D189CAD70FDD7DCCAC390CB52CAB05508E22E90
107: E539064D0DE3B8698A336FBDEFA2B6E534AF90B37D7C8D8CB7054F2EB6403290
108: 5F13A0F0307C6000C5AE6C5FEF866E4952517DD3BB824CB1D41E4326898E987E
109: E26DEA917FE9AB2CB7AD7FE19092160A630976EF0BBD809B5FCBE63609DF5978
110: 5A2464499E08A48FCAE32B408B8BB608254E19A5758C66D9F77BA63CCAF81005
111: 929DCDAF9B6A6E500A34978B5C9206D0258BC190F38C9E8E42FB19A4820B2171
112: C881A3C5BA84905A418F3DA19726541B5BACD9E3438A741FFD980E00865FE13C
113: A2B62D6E7C7314E92E01DE6C10643B7B0BFC2C780670D243E676763D7C41E390
114: 6D543DD890F0694C149B0E974730F05BADCAE792D50865744FAAB9005FF36DBC
115: 028C05BFF2A54FD6F85427EDB0CFFD878105602F7F72075E7DD60C3A252C1691
116: 957DB4F3CED7164C7F23081A8B332C2C3738D292732D2D5809CD8DB522E2C4C2
117: 2CDDF24AA6075E12E81AD2E5FE81F6A1DAB64660B5821B441E4F6A35C45DB8F5
118: 4F3EC99446A61A12091364F8F542CB4940120A44B4448E13E696C5FE7583439D
119: 82878AA8005C85F2B3E847DA4B825891409A00D2950AAFE87D39BF07F8FA1077
120: 1C5F22834AD113CFBCA3CFDB2884327061DBC873924AB2A35C8EE470594F074B
121: B94206155D4D699CC65E1D81D67F26CB50DB0170127FBFB6D300E2B521CC1C6A
122: A1DC94BFB2389377402CC7DE5AEEC1CE0B306265B57C0BD145255CE1DBAFB758
123: 790451D31FF33EB38F077906A26D5A6C096814E8BDA984291E57315D1BBDA82C
124: AD8129C5BDF91F2B8932311CA036558EEBA072C70255D8917B13527E0C6BB6CF
125: B3FDB34BF7F8B89DC3031ED06310EFB3D92CE11749F7B4601684D7AC5B857CB6
126: 67CB8BF7A00ADDC70A4947D055558A500802F9A2CF685CAA1A38A577CD308325
127: D81293FDA863F008C09E92FC382A81F5A0B4A1251CBA1634016A0F86A6BD640D
128: F17E570564B26578C33BB7F44643F539624B05DF1A76C81F30ACD548C44B45EF

Hash: keccak224
0: F71837502BA8E10837BDD8D365ADB85591895602FC552B48B7390ABD
1: B7E52D015AFB9BB56C19955720964F1A68B1ABA96A7A9454472927BE
Expand Down
1 change: 1 addition & 0 deletions notes/hashsum_tv.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ blake2s-128: 7e1f9b6de11a3c597308f9d8aacd7321 *tests/test.key
blake2s-160: 3d1c9ae1a0afe8a6ef8b61d5380de7b061cd353c *tests/test.key
blake2s-224: 95dacd83d0421b2d69a52d92ee54143bb97c91a61450d917a88d4388 *tests/test.key
blake2s-256: 92ac6dc88b9ce4a75b2a54783435a37919303f713396db0e9ccd976d8c55f1cf *tests/test.key
blake3: 634ba3ee0627293fe3ef89fe7200434fdbf2c40b08266e0fd09708bfd486af0c *tests/test.key
chc_hash: d50da1ea9b53c0b891c8bcb0a4c6e5e0 *tests/test.key
keccak224: c056b64ec1d8066aeb148d38aded0ff96cdb1e17eecaaca407b3bf66 *tests/test.key
keccak256: af91c0982f5f79d51df0f6ccb28c7f0075ef330e09371cbefa660119a74f28c3 *tests/test.key
Expand Down
Loading
Loading