Artifact
1888d3a9e6c0bf7ccbe3b4574211fc44cb90eb548961f88df7483b67e24ce3ab:
0000: 23 20 41 75 74 6f 20 67 65 6e 65 72 61 74 65 64 # Auto generated
0010: 20 66 72 6f 6d 20 22 53 48 41 35 31 32 2e 74 78 from "SHA512.tx
0020: 74 22 0a 70 61 63 6b 61 67 65 20 72 65 71 75 69 t".package requi
0030: 72 65 20 74 6c 73 0a 70 61 63 6b 61 67 65 20 72 re tls.package r
0040: 65 71 75 69 72 65 20 74 63 6c 74 65 73 74 0a 0a equire tcltest..
0050: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 43 6f 6e tcltest::testCon
0060: 73 74 72 61 69 6e 74 20 53 48 41 35 31 32 20 5b straint SHA512 [
0070: 65 78 70 72 20 7b 5b 6c 73 65 61 72 63 68 20 2d expr {[lsearch -
0080: 6e 6f 63 61 73 65 20 5b 74 6c 73 3a 3a 64 69 67 nocase [tls::dig
0090: 65 73 74 73 5d 20 53 48 41 35 31 32 5d 20 3e 20 ests] SHA512] >
00a0: 2d 31 7d 5d 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 -1}]..tcltest::t
00b0: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d est Hash_SHA512-
00c0: 31 2e 31 20 7b 53 48 41 35 31 32 7d 20 5c 0a 09 1.1 {SHA512} \..
00d0: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 -constraints SHA
00e0: 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 512 \..-setup {s
00f0: 65 74 20 64 61 74 61 20 22 22 7d 20 5c 0a 09 2d et data ""} \..-
0100: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 body {tls::diges
0110: 74 20 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 t -digest SHA512
0120: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a -data $data} \.
0130: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 .-match exact -r
0140: 65 73 75 6c 74 20 63 66 38 33 65 31 33 35 37 65 esult cf83e1357e
0150: 65 66 62 38 62 64 66 31 35 34 32 38 35 30 64 36 efb8bdf1542850d6
0160: 36 64 38 30 30 37 64 36 32 30 65 34 30 35 30 62 6d8007d620e4050b
0170: 35 37 31 35 64 63 38 33 66 34 61 39 32 31 64 33 5715dc83f4a921d3
0180: 36 63 65 39 63 65 34 37 64 30 64 31 33 63 35 64 6ce9ce47d0d13c5d
0190: 38 35 66 32 62 30 66 66 38 33 31 38 64 32 38 37 85f2b0ff8318d287
01a0: 37 65 65 63 32 66 36 33 62 39 33 31 62 64 34 37 7eec2f63b931bd47
01b0: 34 31 37 61 38 31 61 35 33 38 33 32 37 61 66 39 417a81a538327af9
01c0: 32 37 64 61 33 65 0a 0a 74 63 6c 74 65 73 74 3a 27da3e..tcltest:
01d0: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 :test Hash_SHA51
01e0: 32 2d 31 2e 32 20 7b 53 48 41 35 31 32 7d 20 5c 2-1.2 {SHA512} \
01f0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 ..-constraints S
0200: 48 41 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 HA512 \..-setup
0210: 7b 73 65 74 20 64 61 74 61 20 22 61 62 63 22 7d {set data "abc"}
0220: 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a \..-body {tls::
0230: 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 digest -digest S
0240: 48 41 35 31 32 20 2d 64 61 74 61 20 24 64 61 74 HA512 -data $dat
0250: 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 a} \..-match exa
0260: 63 74 20 2d 72 65 73 75 6c 74 20 64 64 61 66 33 ct -result ddaf3
0270: 35 61 31 39 33 36 31 37 61 62 61 63 63 34 31 37 5a193617abacc417
0280: 33 34 39 61 65 32 30 34 31 33 31 31 32 65 36 66 349ae20413112e6f
0290: 61 34 65 38 39 61 39 37 65 61 32 30 61 39 65 65 a4e89a97ea20a9ee
02a0: 65 65 36 34 62 35 35 64 33 39 61 32 31 39 32 39 ee64b55d39a21929
02b0: 39 32 61 32 37 34 66 63 31 61 38 33 36 62 61 33 92a274fc1a836ba3
02c0: 63 32 33 61 33 66 65 65 62 62 64 34 35 34 64 34 c23a3feebbd454d4
02d0: 34 32 33 36 34 33 63 65 38 30 65 32 61 39 61 63 423643ce80e2a9ac
02e0: 39 34 66 61 35 34 63 61 34 39 66 0a 0a 74 63 6c 94fa54ca49f..tcl
02f0: 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f test::test Hash_
0300: 53 48 41 35 31 32 2d 31 2e 33 20 7b 53 48 41 35 SHA512-1.3 {SHA5
0310: 31 32 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 12} \..-constrai
0320: 6e 74 73 20 53 48 41 35 31 32 20 5c 0a 09 2d 73 nts SHA512 \..-s
0330: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 22 etup {set data "
0340: 61 62 63 64 62 63 64 65 63 64 65 66 64 65 66 67 abcdbcdecdefdefg
0350: 65 66 67 68 66 67 68 69 67 68 69 6a 68 69 6a 6b efghfghighijhijk
0360: 69 6a 6b 6c 6a 6b 6c 6d 6b 6c 6d 6e 6c 6d 6e 6f ijkljklmklmnlmno
0370: 6d 6e 6f 70 6e 6f 70 71 22 7d 20 5c 0a 09 2d 62 mnopnopq"} \..-b
0380: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 ody {tls::digest
0390: 20 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 20 -digest SHA512
03a0: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 -data $data} \..
03b0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 -match exact -re
03c0: 73 75 6c 74 20 32 30 34 61 38 66 63 36 64 64 61 sult 204a8fc6dda
03d0: 38 32 66 30 61 30 63 65 64 37 62 65 62 38 65 30 82f0a0ced7beb8e0
03e0: 38 61 34 31 36 35 37 63 31 36 65 66 34 36 38 62 8a41657c16ef468b
03f0: 32 32 38 61 38 32 37 39 62 65 33 33 31 61 37 30 228a8279be331a70
0400: 33 63 33 33 35 39 36 66 64 31 35 63 31 33 62 31 3c33596fd15c13b1
0410: 62 30 37 66 39 61 61 31 64 33 62 65 61 35 37 37 b07f9aa1d3bea577
0420: 38 39 63 61 30 33 31 61 64 38 35 63 37 61 37 31 89ca031ad85c7a71
0430: 64 64 37 30 33 35 34 65 63 36 33 31 32 33 38 63 dd70354ec631238c
0440: 61 33 34 34 35 0a 0a 74 63 6c 74 65 73 74 3a 3a a3445..tcltest::
0450: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 test Hash_SHA512
0460: 2d 31 2e 34 20 7b 53 48 41 35 31 32 7d 20 5c 0a -1.4 {SHA512} \.
0470: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 .-constraints SH
0480: 41 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b A512 \..-setup {
0490: 73 65 74 20 64 61 74 61 20 22 61 62 63 64 65 66 set data "abcdef
04a0: 67 68 62 63 64 65 66 67 68 69 63 64 65 66 67 68 ghbcdefghicdefgh
04b0: 69 6a 64 65 66 67 68 69 6a 6b 65 66 67 68 69 6a ijdefghijkefghij
04c0: 6b 6c 66 67 68 69 6a 6b 6c 6d 67 68 69 6a 6b 6c klfghijklmghijkl
04d0: 6d 6e 68 69 6a 6b 6c 6d 6e 6f 69 6a 6b 6c 6d 6e mnhijklmnoijklmn
04e0: 6f 70 6a 6b 6c 6d 6e 6f 70 71 6b 6c 6d 6e 6f 70 opjklmnopqklmnop
04f0: 71 72 6c 6d 6e 6f 70 71 72 73 6d 6e 6f 70 71 72 qrlmnopqrsmnopqr
0500: 73 74 6e 6f 70 71 72 73 74 75 22 7d 20 5c 0a 09 stnopqrstu"} \..
0510: 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 -body {tls::dige
0520: 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 35 31 st -digest SHA51
0530: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 2 -data $data} \
0540: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d ..-match exact -
0550: 72 65 73 75 6c 74 20 38 65 39 35 39 62 37 35 64 result 8e959b75d
0560: 61 65 33 31 33 64 61 38 63 66 34 66 37 32 38 31 ae313da8cf4f7281
0570: 34 66 63 31 34 33 66 38 66 37 37 37 39 63 36 65 4fc143f8f7779c6e
0580: 62 39 66 37 66 61 31 37 32 39 39 61 65 61 64 62 b9f7fa17299aeadb
0590: 36 38 38 39 30 31 38 35 30 31 64 32 38 39 65 34 6889018501d289e4
05a0: 39 30 30 66 37 65 34 33 33 31 62 39 39 64 65 63 900f7e4331b99dec
05b0: 34 62 35 34 33 33 61 63 37 64 33 32 39 65 65 62 4b5433ac7d329eeb
05c0: 36 64 64 32 36 35 34 35 65 39 36 65 35 35 62 38 6dd26545e96e55b8
05d0: 37 34 62 65 39 30 39 0a 0a 74 63 6c 74 65 73 74 74be909..tcltest
05e0: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 ::test Hash_SHA5
05f0: 31 32 2d 31 2e 35 20 7b 53 48 41 35 31 32 7d 20 12-1.5 {SHA512}
0600: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 \..-constraints
0610: 53 48 41 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 SHA512 \..-setup
0620: 20 7b 73 65 74 20 64 61 74 61 20 5b 73 74 72 69 {set data [stri
0630: 6e 67 20 72 65 70 65 61 74 20 22 61 22 20 31 30 ng repeat "a" 10
0640: 30 30 30 30 30 5d 7d 20 5c 0a 09 2d 62 6f 64 79 00000]} \..-body
0650: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 {tls::digest -d
0660: 69 67 65 73 74 20 53 48 41 35 31 32 20 2d 64 61 igest SHA512 -da
0670: 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 ta $data} \..-ma
0680: 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c tch exact -resul
0690: 74 20 65 37 31 38 34 38 33 64 30 63 65 37 36 39 t e718483d0ce769
06a0: 36 34 34 65 32 65 34 32 63 37 62 63 31 35 62 34 644e2e42c7bc15b4
06b0: 36 33 38 65 31 66 39 38 62 31 33 62 32 30 34 34 638e1f98b13b2044
06c0: 32 38 35 36 33 32 61 38 30 33 61 66 61 39 37 33 285632a803afa973
06d0: 65 62 64 65 30 66 66 32 34 34 38 37 37 65 61 36 ebde0ff244877ea6
06e0: 30 61 34 63 62 30 34 33 32 63 65 35 37 37 63 33 0a4cb0432ce577c3
06f0: 31 62 65 62 30 30 39 63 35 63 32 63 34 39 61 61 1beb009c5c2c49aa
0700: 32 65 34 65 61 64 62 32 31 37 61 64 38 63 63 30 2e4eadb217ad8cc0
0710: 39 62 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 9b..tcltest::tes
0720: 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d 31 2e t Hash_SHA512-1.
0730: 36 20 7b 53 48 41 35 31 32 7d 20 5c 0a 09 2d 63 6 {SHA512} \..-c
0740: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35 31 onstraints SHA51
0750: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 2 \..-setup {set
0760: 20 64 61 74 61 20 5b 73 74 72 69 6e 67 20 72 65 data [string re
0770: 70 65 61 74 20 22 61 62 63 64 65 66 67 68 62 63 peat "abcdefghbc
0780: 64 65 66 67 68 69 63 64 65 66 67 68 69 6a 64 65 defghicdefghijde
0790: 66 67 68 69 6a 6b 65 66 67 68 69 6a 6b 6c 66 67 fghijkefghijklfg
07a0: 68 69 6a 6b 6c 6d 67 68 69 6a 6b 6c 6d 6e 68 69 hijklmghijklmnhi
07b0: 6a 6b 6c 6d 6e 6f 22 20 31 36 37 37 37 32 31 36 jklmno" 16777216
07c0: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 ]} \..-body {tls
07d0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 ::digest -digest
07e0: 20 53 48 41 35 31 32 20 2d 64 61 74 61 20 24 64 SHA512 -data $d
07f0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 ata} \..-match e
0800: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 62 34 37 xact -result b47
0810: 63 39 33 33 34 32 31 65 61 32 64 62 31 34 39 61 c933421ea2db149a
0820: 64 36 65 31 30 66 63 65 36 63 37 66 39 33 64 30 d6e10fce6c7f93d0
0830: 37 35 32 33 38 30 31 38 30 66 66 64 37 66 34 36 752380180ffd7f46
0840: 32 39 61 37 31 32 31 33 34 38 33 31 64 37 37 62 29a712134831d77b
0850: 65 36 30 39 31 62 38 31 39 65 64 33 35 32 63 32 e6091b819ed352c2
0860: 39 36 37 61 32 65 32 64 34 66 61 35 30 35 30 37 967a2e2d4fa50507
0870: 32 33 63 39 36 33 30 36 39 31 66 31 61 30 35 61 23c9630691f1a05a
0880: 37 32 38 31 64 62 65 36 63 31 30 38 36 0a 0a 74 7281dbe6c1086..t
0890: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 cltest::test Has
08a0: 68 5f 53 48 41 35 31 32 2d 31 2e 37 20 7b 53 48 h_SHA512-1.7 {SH
08b0: 41 35 31 32 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 A512} \..-constr
08c0: 61 69 6e 74 73 20 53 48 41 35 31 32 20 5c 0a 09 aints SHA512 \..
08d0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 -setup {set data
08e0: 20 22 22 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 ""} \..-body {t
08f0: 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 ls::digest -dige
0900: 73 74 20 53 48 41 35 31 32 20 2d 64 61 74 61 20 st SHA512 -data
0910: 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 $data} \..-match
0920: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 63 exact -result c
0930: 66 38 33 65 31 33 35 37 65 65 66 62 38 62 64 66 f83e1357eefb8bdf
0940: 31 35 34 32 38 35 30 64 36 36 64 38 30 30 37 64 1542850d66d8007d
0950: 36 32 30 65 34 30 35 30 62 35 37 31 35 64 63 38 620e4050b5715dc8
0960: 33 66 34 61 39 32 31 64 33 36 63 65 39 63 65 34 3f4a921d36ce9ce4
0970: 37 64 30 64 31 33 63 35 64 38 35 66 32 62 30 66 7d0d13c5d85f2b0f
0980: 66 38 33 31 38 64 32 38 37 37 65 65 63 32 66 36 f8318d2877eec2f6
0990: 33 62 39 33 31 62 64 34 37 34 31 37 61 38 31 61 3b931bd47417a81a
09a0: 35 33 38 33 32 37 61 66 39 32 37 64 61 33 65 0a 538327af927da3e.
09b0: 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 .tcltest::test H
09c0: 61 73 68 5f 53 48 41 35 31 32 2d 31 2e 38 20 7b ash_SHA512-1.8 {
09d0: 53 48 41 35 31 32 7d 20 5c 0a 09 2d 63 6f 6e 73 SHA512} \..-cons
09e0: 74 72 61 69 6e 74 73 20 53 48 41 35 31 32 20 5c traints SHA512 \
09f0: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 ..-setup {set da
0a00: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 ta [binary decod
0a10: 65 20 68 65 78 20 5b 73 74 72 69 6e 67 20 72 65 e hex [string re
0a20: 70 65 61 74 20 30 30 20 31 31 31 5d 5d 7d 20 5c peat 00 111]]} \
0a30: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 ..-body {tls::di
0a40: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 gest -digest SHA
0a50: 35 31 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 512 -data $data}
0a60: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 \..-match exact
0a70: 20 2d 72 65 73 75 6c 74 20 37 37 64 64 64 33 61 -result 77ddd3a
0a80: 35 34 32 65 35 33 30 66 64 30 34 37 62 38 39 37 542e530fd047b897
0a90: 37 63 36 35 37 62 61 36 63 65 37 32 66 31 34 39 7c657ba6ce72f149
0aa0: 32 65 33 36 30 62 32 62 32 32 31 32 63 64 32 36 2e360b2b2212cd26
0ab0: 34 65 37 35 65 63 30 33 38 38 32 65 34 66 66 30 4e75ec03882e4ff0
0ac0: 35 32 35 35 31 37 61 62 34 32 30 37 64 31 34 63 525517ab4207d14c
0ad0: 37 30 63 32 32 35 39 62 61 38 38 64 34 64 33 33 70c2259ba88d4d33
0ae0: 35 65 65 30 65 37 65 32 30 35 34 33 64 32 32 31 5ee0e7e20543d221
0af0: 30 32 61 62 31 37 38 38 63 0a 0a 74 63 6c 74 65 02ab1788c..tclte
0b00: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 st::test Hash_SH
0b10: 41 35 31 32 2d 31 2e 39 20 7b 53 48 41 35 31 32 A512-1.9 {SHA512
0b20: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 } \..-constraint
0b30: 73 20 53 48 41 35 31 32 20 5c 0a 09 2d 73 65 74 s SHA512 \..-set
0b40: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 up {set data [bi
0b50: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 nary decode hex
0b60: 5b 73 74 72 69 6e 67 20 72 65 70 65 61 74 20 30 [string repeat 0
0b70: 30 20 31 31 32 5d 5d 7d 20 5c 0a 09 2d 62 6f 64 0 112]]} \..-bod
0b80: 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d y {tls::digest -
0b90: 64 69 67 65 73 74 20 53 48 41 35 31 32 20 2d 64 digest SHA512 -d
0ba0: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d ata $data} \..-m
0bb0: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 atch exact -resu
0bc0: 6c 74 20 32 62 65 32 65 37 38 38 63 38 61 38 61 lt 2be2e788c8a8a
0bd0: 64 65 61 61 39 63 38 39 61 37 66 37 38 39 30 34 deaa9c89a7f78904
0be0: 63 61 63 65 61 36 65 33 39 32 39 37 64 37 35 65 cacea6e39297d75e
0bf0: 30 35 37 33 61 37 33 63 37 35 36 32 33 34 35 33 0573a73c75623453
0c00: 34 64 36 36 32 37 61 62 34 31 35 36 62 34 38 61 4d6627ab4156b48a
0c10: 36 36 35 37 62 32 39 61 62 38 62 65 62 37 33 33 6657b29ab8beb733
0c20: 33 34 30 34 30 61 64 33 39 65 61 64 38 31 34 34 34040ad39ead8144
0c30: 36 62 62 30 39 63 37 30 37 30 34 65 63 37 30 37 6bb09c70704ec707
0c40: 39 35 32 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 952..tcltest::te
0c50: 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d 31 st Hash_SHA512-1
0c60: 2e 31 30 20 7b 53 48 41 35 31 32 7d 20 5c 0a 09 .10 {SHA512} \..
0c70: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 -constraints SHA
0c80: 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 512 \..-setup {s
0c90: 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 et data [binary
0ca0: 64 65 63 6f 64 65 20 68 65 78 20 5b 73 74 72 69 decode hex [stri
0cb0: 6e 67 20 72 65 70 65 61 74 20 30 30 20 31 31 33 ng repeat 00 113
0cc0: 5d 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c ]]} \..-body {tl
0cd0: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 s::digest -diges
0ce0: 74 20 53 48 41 35 31 32 20 2d 64 61 74 61 20 24 t SHA512 -data $
0cf0: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 data} \..-match
0d00: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 30 65 exact -result 0e
0d10: 36 37 39 31 30 62 63 66 30 66 39 63 63 64 65 35 67910bcf0f9ccde5
0d20: 34 36 34 63 36 33 62 39 63 38 35 30 61 31 32 61 464c63b9c850a12a
0d30: 37 35 39 32 32 37 64 31 36 62 30 34 30 64 39 38 759227d16b040d98
0d40: 39 38 36 64 35 34 32 35 33 66 39 66 33 34 33 32 986d54253f9f3432
0d50: 32 33 31 38 65 35 36 62 38 66 65 62 38 36 63 35 2318e56b8feb86c5
0d60: 66 62 32 32 37 30 65 64 38 37 66 33 31 32 35 32 fb2270ed87f31252
0d70: 66 37 66 36 38 34 39 33 65 65 37 35 39 37 34 33 f7f68493ee759743
0d80: 39 30 39 62 64 37 35 65 34 62 62 35 34 34 0a 0a 909bd75e4bb544..
0d90: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 tcltest::test Ha
0da0: 73 68 5f 53 48 41 35 31 32 2d 31 2e 31 31 20 7b sh_SHA512-1.11 {
0db0: 53 48 41 35 31 32 7d 20 5c 0a 09 2d 63 6f 6e 73 SHA512} \..-cons
0dc0: 74 72 61 69 6e 74 73 20 53 48 41 35 31 32 20 5c traints SHA512 \
0dd0: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 ..-setup {set da
0de0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 ta [binary decod
0df0: 65 20 68 65 78 20 5b 73 74 72 69 6e 67 20 72 65 e hex [string re
0e00: 70 65 61 74 20 30 30 20 31 32 32 5d 5d 7d 20 5c peat 00 122]]} \
0e10: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 ..-body {tls::di
0e20: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 gest -digest SHA
0e30: 35 31 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 512 -data $data}
0e40: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 \..-match exact
0e50: 20 2d 72 65 73 75 6c 74 20 34 66 33 66 30 39 35 -result 4f3f095
0e60: 64 30 31 35 62 65 34 61 37 61 37 63 63 30 62 38 d015be4a7a7cc0b8
0e70: 63 30 34 64 61 34 61 61 30 39 65 37 34 33 35 31 c04da4aa09e74351
0e80: 65 33 61 39 37 36 35 31 66 37 34 34 63 32 33 37 e3a97651f744c237
0e90: 31 36 65 62 64 39 62 33 65 38 32 32 65 35 30 37 16ebd9b3e822e507
0ea0: 37 61 30 31 62 61 61 35 63 63 30 65 64 34 35 62 7a01baa5cc0ed45b
0eb0: 39 32 34 39 65 38 38 61 62 33 34 33 64 34 33 33 9249e88ab343d433
0ec0: 33 35 33 39 64 66 32 31 65 64 32 32 39 64 61 36 3539df21ed229da6
0ed0: 66 34 61 35 31 34 65 30 66 0a 0a 74 63 6c 74 65 f4a514e0f..tclte
0ee0: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 st::test Hash_SH
0ef0: 41 35 31 32 2d 31 2e 31 32 20 7b 53 48 41 35 31 A512-1.12 {SHA51
0f00: 32 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 2} \..-constrain
0f10: 74 73 20 53 48 41 35 31 32 20 5c 0a 09 2d 73 65 ts SHA512 \..-se
0f20: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 tup {set data [b
0f30: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 inary decode hex
0f40: 20 5b 73 74 72 69 6e 67 20 72 65 70 65 61 74 20 [string repeat
0f50: 30 30 20 31 30 30 30 5d 5d 7d 20 5c 0a 09 2d 62 00 1000]]} \..-b
0f60: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 ody {tls::digest
0f70: 20 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 20 -digest SHA512
0f80: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 -data $data} \..
0f90: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 -match exact -re
0fa0: 73 75 6c 74 20 63 61 33 64 66 66 36 31 62 62 32 sult ca3dff61bb2
0fb0: 33 34 37 37 61 61 36 30 38 37 62 32 37 35 30 38 3477aa6087b27508
0fc0: 32 36 34 61 36 66 39 31 32 36 65 65 33 61 30 30 264a6f9126ee3a00
0fd0: 34 66 35 33 63 62 38 64 62 39 34 32 65 64 33 34 4f53cb8db942ed34
0fe0: 35 66 32 66 32 64 32 32 39 62 34 62 35 39 63 38 5f2f2d229b4b59c8
0ff0: 35 39 32 32 30 61 31 63 66 31 39 31 33 66 33 34 59220a1cf1913f34
1000: 32 34 38 65 33 38 30 33 62 61 62 36 35 30 65 38 248e3803bab650e8
1010: 34 39 61 33 64 39 61 37 30 39 65 64 63 30 39 61 49a3d9a709edc09a
1020: 65 34 61 37 36 0a 0a 74 63 6c 74 65 73 74 3a 3a e4a76..tcltest::
1030: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 test Hash_SHA512
1040: 2d 31 2e 31 33 20 7b 53 48 41 35 31 32 7d 20 5c -1.13 {SHA512} \
1050: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 ..-constraints S
1060: 48 41 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 HA512 \..-setup
1070: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 {set data [binar
1080: 79 20 64 65 63 6f 64 65 20 68 65 78 20 5b 73 74 y decode hex [st
1090: 72 69 6e 67 20 72 65 70 65 61 74 20 34 31 20 31 ring repeat 41 1
10a0: 30 30 30 5d 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 000]]} \..-body
10b0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 {tls::digest -di
10c0: 67 65 73 74 20 53 48 41 35 31 32 20 2d 64 61 74 gest SHA512 -dat
10d0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 a $data} \..-mat
10e0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 ch exact -result
10f0: 20 33 32 39 63 35 32 61 63 36 32 64 31 66 65 37 329c52ac62d1fe7
1100: 33 31 31 35 31 66 32 62 38 39 35 61 30 30 34 37 31151f2b895a0047
1110: 35 34 34 35 65 66 37 34 66 35 30 62 39 37 39 63 5445ef74f50b979c
1120: 36 66 37 62 62 37 63 61 65 33 34 39 33 32 38 63 6f7bb7cae349328c
1130: 31 64 34 63 62 34 66 37 32 36 31 61 30 61 62 34 1d4cb4f7261a0ab4
1140: 33 66 39 33 36 61 32 34 62 30 30 30 36 35 31 64 3f936a24b000651d
1150: 34 61 38 32 34 66 63 64 64 35 37 37 66 32 31 31 4a824fcdd577f211
1160: 61 65 66 38 66 38 30 36 62 31 36 61 66 65 38 61 aef8f806b16afe8a
1170: 66 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 f..tcltest::test
1180: 20 48 61 73 68 5f 53 48 41 35 31 32 2d 31 2e 31 Hash_SHA512-1.1
1190: 34 20 7b 53 48 41 35 31 32 7d 20 5c 0a 09 2d 63 4 {SHA512} \..-c
11a0: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35 31 onstraints SHA51
11b0: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 2 \..-setup {set
11c0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 data [binary de
11d0: 63 6f 64 65 20 68 65 78 20 5b 73 74 72 69 6e 67 code hex [string
11e0: 20 72 65 70 65 61 74 20 35 35 20 31 30 30 35 5d repeat 55 1005]
11f0: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 ]} \..-body {tls
1200: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 ::digest -digest
1210: 20 53 48 41 35 31 32 20 2d 64 61 74 61 20 24 64 SHA512 -data $d
1220: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 ata} \..-match e
1230: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 35 39 66 xact -result 59f
1240: 35 65 35 34 66 65 32 39 39 63 36 61 38 37 36 34 5e54fe299c6a8764
1250: 63 36 62 31 39 39 65 34 34 39 32 34 61 33 37 66 c6b199e44924a37f
1260: 35 39 65 32 62 35 36 63 33 65 62 61 64 39 33 39 59e2b56c3ebad939
1270: 62 37 32 38 39 32 31 30 64 63 38 65 34 63 32 31 b7289210dc8e4c21
1280: 62 39 37 32 30 31 36 35 62 30 66 34 64 34 33 37 b9720165b0f4d437
1290: 34 63 39 30 66 31 62 66 34 66 62 34 61 35 61 63 4c90f1bf4fb4a5ac
12a0: 65 31 37 61 31 31 36 31 37 39 38 30 31 35 30 35 e17a116179801505
12b0: 32 38 39 33 61 34 38 63 33 64 31 36 31 0a 0a 74 2893a48c3d161..t
12c0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 cltest::test Has
12d0: 68 5f 53 48 41 35 31 32 2d 31 2e 31 35 20 7b 53 h_SHA512-1.15 {S
12e0: 48 41 35 31 32 7d 20 5c 0a 09 2d 63 6f 6e 73 74 HA512} \..-const
12f0: 72 61 69 6e 74 73 20 53 48 41 35 31 32 20 5c 0a raints SHA512 \.
1300: 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 .-setup {set dat
1310: 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 a [binary decode
1320: 20 68 65 78 20 5b 73 74 72 69 6e 67 20 72 65 70 hex [string rep
1330: 65 61 74 20 30 30 20 31 30 30 30 30 30 30 5d 5d eat 00 1000000]]
1340: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a } \..-body {tls:
1350: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 :digest -digest
1360: 53 48 41 35 31 32 20 2d 64 61 74 61 20 24 64 61 SHA512 -data $da
1370: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 ta} \..-match ex
1380: 61 63 74 20 2d 72 65 73 75 6c 74 20 63 65 30 34 act -result ce04
1390: 34 62 63 39 66 64 34 33 32 36 39 64 35 62 62 63 4bc9fd43269d5bbc
13a0: 39 34 36 63 62 65 62 63 33 62 62 37 31 31 33 34 946cbebc3bb71134
13b0: 31 31 31 35 63 63 34 61 62 64 66 32 65 64 62 63 1115cc4abdf2edbc
13c0: 33 66 66 32 63 35 37 61 64 34 62 31 35 64 65 62 3ff2c57ad4b15deb
13d0: 36 39 39 62 64 61 32 35 37 66 65 61 35 61 65 66 699bda257fea5aef
13e0: 39 63 36 65 35 35 66 63 66 34 63 66 39 64 63 32 9c6e55fcf4cf9dc2
13f0: 35 61 38 63 33 63 65 32 35 66 32 65 66 65 39 30 5a8c3ce25f2efe90
1400: 39 30 38 33 37 39 62 66 66 37 65 64 0a 0a 74 63 908379bff7ed..tc
1410: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 ltest::test Hash
1420: 5f 53 48 41 35 31 32 2d 31 2e 31 36 20 7b 53 48 _SHA512-1.16 {SH
1430: 41 35 31 32 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 A512} \..-constr
1440: 61 69 6e 74 73 20 53 48 41 35 31 32 20 5c 0a 09 aints SHA512 \..
1450: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 -setup {set data
1460: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 [binary decode
1470: 68 65 78 20 5b 73 74 72 69 6e 67 20 72 65 70 65 hex [string repe
1480: 61 74 20 35 61 20 35 33 36 38 37 30 39 31 32 5d at 5a 536870912]
1490: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 ]} \..-body {tls
14a0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 ::digest -digest
14b0: 20 53 48 41 35 31 32 20 2d 64 61 74 61 20 24 64 SHA512 -data $d
14c0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 ata} \..-match e
14d0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 64 61 31 xact -result da1
14e0: 37 32 32 37 39 66 33 65 62 62 64 61 39 35 66 36 72279f3ebbda95f6
14f0: 62 36 65 31 65 35 66 30 65 62 65 63 36 38 32 63 b6e1e5f0ebec682c
1500: 32 35 64 33 64 39 33 35 36 31 61 31 36 32 34 63 25d3d93561a1624c
1510: 32 66 61 39 30 30 39 64 36 34 63 37 65 39 39 32 2fa9009d64c7e992
1520: 33 66 33 62 34 36 62 63 61 66 31 31 64 33 39 61 3f3b46bcaf11d39a
1530: 35 33 31 66 34 33 32 39 37 39 39 32 62 61 34 31 531f43297992ba41
1540: 35 35 63 37 65 38 32 37 62 64 30 66 31 65 31 39 55c7e827bd0f1e19
1550: 34 61 65 37 65 64 36 64 65 34 63 61 63 0a 0a 74 4ae7ed6de4cac..t
1560: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 cltest::test Has
1570: 68 5f 53 48 41 35 31 32 2d 31 2e 31 37 20 7b 53 h_SHA512-1.17 {S
1580: 48 41 35 31 32 7d 20 5c 0a 09 2d 63 6f 6e 73 74 HA512} \..-const
1590: 72 61 69 6e 74 73 20 53 48 41 35 31 32 20 5c 0a raints SHA512 \.
15a0: 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 .-setup {set dat
15b0: 61 20 22 54 68 65 20 71 75 69 63 6b 20 62 72 6f a "The quick bro
15c0: 77 6e 20 66 6f 78 20 6a 75 6d 70 73 20 6f 76 65 wn fox jumps ove
15d0: 72 20 74 68 65 20 6c 61 7a 79 20 64 6f 67 22 7d r the lazy dog"}
15e0: 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a \..-body {tls::
15f0: 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 digest -digest S
1600: 48 41 35 31 32 20 2d 64 61 74 61 20 24 64 61 74 HA512 -data $dat
1610: 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 a} \..-match exa
1620: 63 74 20 2d 72 65 73 75 6c 74 20 30 37 65 35 34 ct -result 07e54
1630: 37 64 39 35 38 36 66 36 61 37 33 66 37 33 66 62 7d9586f6a73f73fb
1640: 61 63 30 34 33 35 65 64 37 36 39 35 31 32 31 38 ac0435ed76951218
1650: 66 62 37 64 30 63 38 64 37 38 38 61 33 30 39 64 fb7d0c8d788a309d
1660: 37 38 35 34 33 36 62 62 62 36 34 32 65 39 33 61 785436bbb642e93a
1670: 32 35 32 61 39 35 34 66 32 33 39 31 32 35 34 37 252a954f23912547
1680: 64 31 65 38 61 33 62 35 65 64 36 65 31 62 66 64 d1e8a3b5ed6e1bfd
1690: 37 30 39 37 38 32 31 32 33 33 66 61 30 35 33 38 7097821233fa0538
16a0: 66 33 64 62 38 35 34 66 65 65 36 0a 0a 74 63 6c f3db854fee6..tcl
16b0: 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f test::test Hash_
16c0: 53 48 41 35 31 32 2d 31 2e 31 38 20 7b 53 48 41 SHA512-1.18 {SHA
16d0: 35 31 32 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 512} \..-constra
16e0: 69 6e 74 73 20 53 48 41 35 31 32 20 5c 0a 09 2d ints SHA512 \..-
16f0: 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 setup {set data
1700: 22 61 62 63 22 7d 20 5c 0a 09 2d 62 6f 64 79 20 "abc"} \..-body
1710: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 {tls::digest -di
1720: 67 65 73 74 20 53 48 41 35 31 32 20 2d 64 61 74 gest SHA512 -dat
1730: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 a $data} \..-mat
1740: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 ch exact -result
1750: 20 64 64 61 66 33 35 61 31 39 33 36 31 37 61 62 ddaf35a193617ab
1760: 61 63 63 34 31 37 33 34 39 61 65 32 30 34 31 33 acc417349ae20413
1770: 31 31 32 65 36 66 61 34 65 38 39 61 39 37 65 61 112e6fa4e89a97ea
1780: 32 30 61 39 65 65 65 65 36 34 62 35 35 64 33 39 20a9eeee64b55d39
1790: 61 32 31 39 32 39 39 32 61 32 37 34 66 63 31 61 a2192992a274fc1a
17a0: 38 33 36 62 61 33 63 32 33 61 33 66 65 65 62 62 836ba3c23a3feebb
17b0: 64 34 35 34 64 34 34 32 33 36 34 33 63 65 38 30 d454d4423643ce80
17c0: 65 32 61 39 61 63 39 34 66 61 35 34 63 61 34 39 e2a9ac94fa54ca49
17d0: 66 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 f..tcltest::test
17e0: 20 48 61 73 68 5f 53 48 41 35 31 32 2d 31 2e 31 Hash_SHA512-1.1
17f0: 39 20 7b 53 48 41 35 31 32 7d 20 5c 0a 09 2d 63 9 {SHA512} \..-c
1800: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35 31 onstraints SHA51
1810: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 2 \..-setup {set
1820: 20 64 61 74 61 20 22 61 62 63 64 65 66 67 68 62 data "abcdefghb
1830: 63 64 65 66 67 68 69 63 64 65 66 67 68 69 6a 64 cdefghicdefghijd
1840: 65 66 67 68 69 6a 6b 65 66 67 68 69 6a 6b 6c 66 efghijkefghijklf
1850: 67 68 69 6a 6b 6c 6d 67 68 69 6a 6b 6c 6d 6e 68 ghijklmghijklmnh
1860: 69 6a 6b 6c 6d 6e 6f 69 6a 6b 6c 6d 6e 6f 70 6a ijklmnoijklmnopj
1870: 6b 6c 6d 6e 6f 70 71 6b 6c 6d 6e 6f 70 71 72 6c klmnopqklmnopqrl
1880: 6d 6e 6f 70 71 72 73 6d 6e 6f 70 71 72 73 74 6e mnopqrsmnopqrstn
1890: 6f 70 71 72 73 74 75 22 7d 20 5c 0a 09 2d 62 6f opqrstu"} \..-bo
18a0: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 dy {tls::digest
18b0: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 20 2d -digest SHA512 -
18c0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d data $data} \..-
18d0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 match exact -res
18e0: 75 6c 74 20 38 65 39 35 39 62 37 35 64 61 65 33 ult 8e959b75dae3
18f0: 31 33 64 61 38 63 66 34 66 37 32 38 31 34 66 63 13da8cf4f72814fc
1900: 31 34 33 66 38 66 37 37 37 39 63 36 65 62 39 66 143f8f7779c6eb9f
1910: 37 66 61 31 37 32 39 39 61 65 61 64 62 36 38 38 7fa17299aeadb688
1920: 39 30 31 38 35 30 31 64 32 38 39 65 34 39 30 30 9018501d289e4900
1930: 66 37 65 34 33 33 31 62 39 39 64 65 63 34 62 35 f7e4331b99dec4b5
1940: 34 33 33 61 63 37 64 33 32 39 65 65 62 36 64 64 433ac7d329eeb6dd
1950: 32 36 35 34 35 65 39 36 65 35 35 62 38 37 34 62 26545e96e55b874b
1960: 65 39 30 39 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 e909..tcltest::t
1970: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d est Hash_SHA512-
1980: 31 2e 32 30 20 7b 53 48 41 35 31 32 7d 20 5c 0a 1.20 {SHA512} \.
1990: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 .-constraints SH
19a0: 41 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b A512 \..-setup {
19b0: 73 65 74 20 64 61 74 61 20 5b 73 74 72 69 6e 67 set data [string
19c0: 20 72 65 70 65 61 74 20 22 61 22 20 31 30 30 30 repeat "a" 1000
19d0: 30 30 30 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 000]} \..-body {
19e0: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 tls::digest -dig
19f0: 65 73 74 20 53 48 41 35 31 32 20 2d 64 61 74 61 est SHA512 -data
1a00: 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 $data} \..-matc
1a10: 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 h exact -result
1a20: 65 37 31 38 34 38 33 64 30 63 65 37 36 39 36 34 e718483d0ce76964
1a30: 34 65 32 65 34 32 63 37 62 63 31 35 62 34 36 33 4e2e42c7bc15b463
1a40: 38 65 31 66 39 38 62 31 33 62 32 30 34 34 32 38 8e1f98b13b204428
1a50: 35 36 33 32 61 38 30 33 61 66 61 39 37 33 65 62 5632a803afa973eb
1a60: 64 65 30 66 66 32 34 34 38 37 37 65 61 36 30 61 de0ff244877ea60a
1a70: 34 63 62 30 34 33 32 63 65 35 37 37 63 33 31 62 4cb0432ce577c31b
1a80: 65 62 30 30 39 63 35 63 32 63 34 39 61 61 32 65 eb009c5c2c49aa2e
1a90: 34 65 61 64 62 32 31 37 61 64 38 63 63 30 39 62 4eadb217ad8cc09b
1aa0: 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 ..tcltest::test
1ab0: 48 61 73 68 5f 53 48 41 35 31 32 2d 31 2e 32 31 Hash_SHA512-1.21
1ac0: 20 7b 53 48 41 35 31 32 7d 20 5c 0a 09 2d 63 6f {SHA512} \..-co
1ad0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35 31 32 nstraints SHA512
1ae0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 \..-setup {set
1af0: 64 61 74 61 20 5b 73 74 72 69 6e 67 20 72 65 70 data [string rep
1b00: 65 61 74 20 22 30 31 32 33 34 35 36 37 30 31 32 eat "01234567012
1b10: 33 34 35 36 37 30 31 32 33 34 35 36 37 30 31 32 3456701234567012
1b20: 33 34 35 36 37 30 31 32 33 34 35 36 37 30 31 32 3456701234567012
1b30: 33 34 35 36 37 30 31 32 33 34 35 36 37 30 31 32 3456701234567012
1b40: 33 34 35 36 37 22 20 31 30 5d 7d 20 5c 0a 09 2d 34567" 10]} \..-
1b50: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 body {tls::diges
1b60: 74 20 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 t -digest SHA512
1b70: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a -data $data} \.
1b80: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 .-match exact -r
1b90: 65 73 75 6c 74 20 38 39 64 30 35 62 61 36 33 32 esult 89d05ba632
1ba0: 63 36 39 39 63 33 31 32 33 31 64 65 64 34 66 66 c699c31231ded4ff
1bb0: 63 31 32 37 64 35 61 38 39 34 64 61 64 34 31 32 c127d5a894dad412
1bc0: 63 30 65 30 32 34 64 62 38 37 32 64 31 61 62 64 c0e024db872d1abd
1bd0: 32 62 61 38 31 34 31 61 30 66 38 35 30 37 32 61 2ba8141a0f85072a
1be0: 39 62 65 31 65 32 61 61 30 34 63 66 33 33 63 37 9be1e2aa04cf33c7
1bf0: 36 35 63 62 35 31 30 38 31 33 61 33 39 63 64 35 65cb510813a39cd5
1c00: 61 38 34 63 34 61 63 61 61 36 34 64 33 66 33 66 a84c4acaa64d3f3f
1c10: 62 37 62 61 65 39 0a 0a 74 63 6c 74 65 73 74 3a b7bae9..tcltest:
1c20: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 :test Hash_SHA51
1c30: 32 2d 31 2e 32 32 20 7b 53 48 41 35 31 32 7d 20 2-1.22 {SHA512}
1c40: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 \..-constraints
1c50: 53 48 41 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 SHA512 \..-setup
1c60: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 {set data [bina
1c70: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 44 30 ry decode hex D0
1c80: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 ]} \..-body {tls
1c90: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 ::digest -digest
1ca0: 20 53 48 41 35 31 32 20 2d 64 61 74 61 20 24 64 SHA512 -data $d
1cb0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 ata} \..-match e
1cc0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 39 39 39 xact -result 999
1cd0: 32 32 30 32 39 33 38 65 38 38 32 65 37 33 65 32 2202938e882e73e2
1ce0: 30 66 36 62 36 39 65 36 38 61 30 61 37 31 34 39 0f6b69e68a0a7149
1cf0: 30 39 30 34 32 33 64 39 33 63 38 31 62 61 62 33 090423d93c81bab3
1d00: 66 32 31 36 37 38 64 34 61 63 65 65 65 65 35 30 f21678d4aceeee50
1d10: 65 34 65 38 63 61 66 61 64 61 34 63 38 35 61 35 e4e8cafada4c85a5
1d20: 34 65 61 38 33 30 36 38 32 36 63 34 61 64 36 65 4ea8306826c4ad6e
1d30: 37 34 63 65 63 65 39 36 33 31 62 66 61 38 61 35 74cece9631bfa8a5
1d40: 34 39 62 34 61 62 33 66 62 62 61 31 35 0a 0a 74 49b4ab3fbba15..t
1d50: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 cltest::test Has
1d60: 68 5f 53 48 41 35 31 32 2d 31 2e 32 33 20 7b 53 h_SHA512-1.23 {S
1d70: 48 41 35 31 32 7d 20 5c 0a 09 2d 63 6f 6e 73 74 HA512} \..-const
1d80: 72 61 69 6e 74 73 20 53 48 41 35 31 32 20 5c 0a raints SHA512 \.
1d90: 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 .-setup {set dat
1da0: 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 a [binary decode
1db0: 20 68 65 78 20 38 64 34 65 33 63 30 65 33 38 38 hex 8d4e3c0e388
1dc0: 39 31 39 31 34 39 31 38 31 36 65 39 64 39 38 62 9191491816e9d98b
1dd0: 66 66 30 61 30 5d 7d 20 5c 0a 09 2d 62 6f 64 79 ff0a0]} \..-body
1de0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 {tls::digest -d
1df0: 69 67 65 73 74 20 53 48 41 35 31 32 20 2d 64 61 igest SHA512 -da
1e00: 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 ta $data} \..-ma
1e10: 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c tch exact -resul
1e20: 74 20 63 62 30 62 36 37 61 34 62 38 37 31 32 63 t cb0b67a4b8712c
1e30: 64 37 33 63 39 61 61 62 63 30 62 31 39 39 65 39 d73c9aabc0b199e9
1e40: 32 36 39 62 32 30 38 34 34 61 66 62 37 35 61 63 269b20844afb75ac
1e50: 62 64 64 31 63 31 35 33 63 39 38 32 38 39 32 34 bdd1c153c9828924
1e60: 63 33 64 64 65 64 61 61 66 65 36 36 39 63 35 66 c3ddedaafe669c5f
1e70: 64 64 30 62 63 36 36 66 36 33 30 66 36 37 37 33 dd0bc66f630f6773
1e80: 39 38 38 32 31 33 65 62 31 62 31 36 66 35 31 37 988213eb1b16f517
1e90: 61 64 30 64 65 34 62 32 66 30 63 39 35 63 39 30 ad0de4b2f0c95c90
1ea0: 66 38 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 f8..tcltest::tes
1eb0: 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d 31 2e t Hash_SHA512-1.
1ec0: 32 34 20 7b 53 48 41 35 31 32 7d 20 5c 0a 09 2d 24 {SHA512} \..-
1ed0: 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35 constraints SHA5
1ee0: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 12 \..-setup {se
1ef0: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 t data [binary d
1f00: 65 63 6f 64 65 20 68 65 78 20 61 35 35 66 32 30 ecode hex a55f20
1f10: 63 34 31 31 61 61 64 31 33 32 38 30 37 61 35 30 c411aad132807a50
1f20: 32 64 36 35 38 32 34 65 33 31 61 32 33 30 35 34 2d65824e31a23054
1f30: 33 32 61 61 33 64 30 36 64 33 65 32 38 32 61 38 32aa3d06d3e282a8
1f40: 64 38 34 65 30 64 65 31 64 65 36 39 37 34 62 66 d84e0de1de6974bf
1f50: 34 39 35 34 36 39 66 63 37 66 33 33 38 66 38 30 495469fc7f338f80
1f60: 35 34 64 35 38 63 32 36 63 34 39 33 36 30 63 33 54d58c26c49360c3
1f70: 65 38 37 61 66 35 36 35 32 33 61 63 66 36 64 38 e87af56523acf6d8
1f80: 39 64 30 33 65 35 36 66 66 32 66 38 36 38 30 30 9d03e56ff2f86800
1f90: 32 62 63 33 65 34 33 31 65 64 63 34 34 64 66 32 2bc3e431edc44df2
1fa0: 66 30 32 32 33 64 34 62 62 33 62 32 34 33 35 38 f0223d4bb3b24358
1fb0: 36 65 31 61 37 64 39 32 34 39 33 36 36 39 34 66 6e1a7d924936694f
1fc0: 63 62 62 61 66 38 38 64 39 35 31 39 65 34 65 62 cbbaf88d9519e4eb
1fd0: 35 30 61 36 34 34 66 38 65 34 66 39 35 65 62 30 50a644f8e4f95eb0
1fe0: 65 61 39 35 62 63 34 34 36 35 63 38 38 32 31 61 ea95bc4465c8821a
1ff0: 61 63 64 32 66 65 31 35 61 62 34 39 38 31 31 36 acd2fe15ab498116
2000: 34 62 62 62 36 64 63 33 32 66 39 36 39 30 38 37 4bbb6dc32f969087
2010: 61 31 34 35 62 30 64 39 63 63 39 63 36 37 63 32 a145b0d9cc9c67c2
2020: 32 62 37 36 33 32 39 39 34 31 39 63 63 34 31 32 2b763299419cc412
2030: 38 62 65 39 61 30 37 37 62 33 61 63 65 36 33 34 8be9a077b3ace634
2040: 30 36 34 65 36 64 39 39 32 38 33 35 31 33 64 63 064e6d99283513dc
2050: 30 36 65 37 35 31 35 64 30 64 37 33 31 33 32 65 06e7515d0d73132e
2060: 39 61 30 64 63 36 64 33 62 31 66 38 62 32 34 36 9a0dc6d3b1f8b246
2070: 66 31 61 39 38 61 33 66 63 37 32 39 34 31 62 31 f1a98a3fc72941b1
2080: 65 33 62 62 32 30 39 38 65 38 62 66 31 36 66 32 e3bb2098e8bf16f2
2090: 36 38 64 36 34 66 30 62 30 66 34 37 30 37 66 65 68d64f0b0f4707fe
20a0: 31 65 61 31 61 31 37 39 31 62 61 32 66 33 63 30 1ea1a1791ba2f3c0
20b0: 63 37 35 38 65 35 66 35 35 31 38 36 33 61 39 36 c758e5f551863a96
20c0: 63 39 34 39 61 64 34 37 64 37 66 62 34 30 64 32 c949ad47d7fb40d2
20d0: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 ]} \..-body {tls
20e0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 ::digest -digest
20f0: 20 53 48 41 35 31 32 20 2d 64 61 74 61 20 24 64 SHA512 -data $d
2100: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 ata} \..-match e
2110: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 63 36 36 xact -result c66
2120: 35 62 65 66 62 33 36 64 61 31 38 39 64 37 38 38 5befb36da189d788
2130: 32 32 64 31 30 35 32 38 63 62 66 33 62 31 32 62 22d10528cbf3b12b
2140: 33 65 65 66 37 32 36 30 33 39 39 30 39 63 31 61 3eef726039909c1a
2150: 31 36 61 32 37 30 64 34 38 37 31 39 33 37 37 39 16a270d487193779
2160: 36 36 62 39 35 37 61 38 37 38 65 37 32 30 35 38 66b957a878e72058
2170: 34 37 37 39 61 36 32 38 32 35 63 31 38 64 61 32 4779a62825c18da2
2180: 36 34 31 35 65 34 39 61 37 31 37 36 61 38 39 34 6415e49a7176a894
2190: 65 37 35 31 30 66 64 31 34 35 31 66 35 0a 0a 23 e7510fd1451f5..#
21a0: 20 43 6c 65 61 6e 75 70 0a 3a 3a 74 63 6c 74 65 Cleanup.::tclte
21b0: 73 74 3a 3a 63 6c 65 61 6e 75 70 54 65 73 74 73 st::cleanupTests
21c0: 0a 72 65 74 75 72 6e 0a .return.