Hex Artifact Content

Artifact 364a0e00c94cd78fd2c90773c8228f16025e33559a8f3351a879dd2d9c448205:


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 33 5f 35 31 32 53   from "SHA3_512S
0020: 68 6f 72 74 4d 73 67 2e 72 73 70 22 0a 70 61 63  hortMsg.rsp".pac
0030: 6b 61 67 65 20 72 65 71 75 69 72 65 20 74 6c 73  kage require tls
0040: 0a 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65  .package require
0050: 20 74 63 6c 74 65 73 74 0a 0a 74 63 6c 74 65 73   tcltest..tcltes
0060: 74 3a 3a 74 65 73 74 43 6f 6e 73 74 72 61 69 6e  t::testConstrain
0070: 74 20 53 48 41 33 5f 35 31 32 20 5b 65 78 70 72  t SHA3_512 [expr
0080: 20 7b 5b 6c 73 65 61 72 63 68 20 2d 6e 6f 63 61   {[lsearch -noca
0090: 73 65 20 5b 74 6c 73 3a 3a 64 69 67 65 73 74 73  se [tls::digests
00a0: 5d 20 53 48 41 33 2d 35 31 32 5d 20 3e 20 2d 31  ] SHA3-512] > -1
00b0: 7d 5d 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73  }]..tcltest::tes
00c0: 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32 2d  t Hash_SHA3-512-
00d0: 32 2e 31 20 7b 53 48 41 33 5f 35 31 32 53 68 6f  2.1 {SHA3_512Sho
00e0: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
00f0: 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31 32 20  raints SHA3_512 
0100: 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64  \..-setup {set d
0110: 61 74 61 20 22 22 7d 20 5c 0a 09 2d 62 6f 64 79  ata ""} \..-body
0120: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
0130: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
0140: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
0150: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
0160: 75 6c 74 20 61 36 39 66 37 33 63 63 61 32 33 61  ult a69f73cca23a
0170: 39 61 63 35 63 38 62 35 36 37 64 63 31 38 35 61  9ac5c8b567dc185a
0180: 37 35 36 65 39 37 63 39 38 32 31 36 34 66 65 32  756e97c982164fe2
0190: 35 38 35 39 65 30 64 31 64 63 63 31 34 37 35 63  5859e0d1dcc1475c
01a0: 38 30 61 36 31 35 62 32 31 32 33 61 66 31 66 35  80a615b2123af1f5
01b0: 66 39 34 63 31 31 65 33 65 39 34 30 32 63 33 61  f94c11e3e9402c3a
01c0: 63 35 35 38 66 35 30 30 31 39 39 64 39 35 62 36  c558f500199d95b6
01d0: 64 33 65 33 30 31 37 35 38 35 38 36 32 38 31 64  d3e301758586281d
01e0: 63 64 32 36 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  cd26..tcltest::t
01f0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
0200: 32 2d 32 2e 32 20 7b 53 48 41 33 5f 35 31 32 53  2-2.2 {SHA3_512S
0210: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
0220: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
0230: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
0240: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
0250: 63 6f 64 65 20 68 65 78 20 65 35 5d 7d 20 5c 0a  code hex e5]} \.
0260: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
0270: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 33  est -digest SHA3
0280: 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61 74 61  -512 -data $data
0290: 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63  } \..-match exac
02a0: 74 20 2d 72 65 73 75 6c 74 20 31 35 30 32 34 30  t -result 150240
02b0: 62 61 66 39 35 66 62 33 36 66 38 63 63 62 38 37  baf95fb36f8ccb87
02c0: 61 31 39 61 34 31 37 36 37 65 37 61 65 64 39 35  a19a41767e7aed95
02d0: 31 32 35 30 37 35 61 32 62 32 64 62 62 61 36 65  125075a2b2dbba6e
02e0: 35 36 35 65 31 63 65 38 35 37 35 66 32 62 30 34  565e1ce8575f2b04
02f0: 32 62 36 32 65 32 39 61 30 34 65 39 34 34 30 33  2b62e29a04e94403
0300: 31 34 61 38 32 31 63 36 32 32 34 31 38 32 39 36  14a821c622418296
0310: 34 64 38 62 35 35 37 62 31 36 61 34 39 32 62 33  4d8b557b16a492b3
0320: 38 30 36 66 34 63 33 39 63 31 0a 0a 74 63 6c 74  806f4c39c1..tclt
0330: 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53  est::test Hash_S
0340: 48 41 33 2d 35 31 32 2d 32 2e 33 20 7b 53 48 41  HA3-512-2.3 {SHA
0350: 33 5f 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c  3_512ShortMsg} \
0360: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
0370: 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75  HA3_512 \..-setu
0380: 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e  p {set data [bin
0390: 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 65  ary decode hex e
03a0: 66 32 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  f26]} \..-body {
03b0: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
03c0: 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64 61  est SHA3-512 -da
03d0: 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61  ta $data} \..-ma
03e0: 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c  tch exact -resul
03f0: 74 20 38 30 39 62 34 31 32 34 64 32 62 31 37 34  t 809b4124d2b174
0400: 37 33 31 64 62 31 34 35 38 35 63 32 35 33 31 39  731db14585c25319
0410: 34 63 38 36 31 39 61 36 38 32 39 34 63 38 63 34  4c8619a68294c8c4
0420: 38 39 34 37 38 37 39 33 31 36 66 65 66 32 34 39  8947879316fef249
0430: 62 31 35 37 35 64 61 38 31 61 62 37 32 61 61 64  b1575da81ab72aad
0440: 38 66 61 65 30 38 64 32 34 65 63 65 37 35 63 61  8fae08d24ece75ca
0450: 31 62 65 34 36 64 30 36 33 34 31 34 33 37 30 35  1be46d0634143705
0460: 64 37 39 64 32 66 35 31 37 37 38 35 36 61 30 34  d79d2f5177856a04
0470: 33 37 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73  37..tcltest::tes
0480: 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32 2d  t Hash_SHA3-512-
0490: 32 2e 34 20 7b 53 48 41 33 5f 35 31 32 53 68 6f  2.4 {SHA3_512Sho
04a0: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
04b0: 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31 32 20  raints SHA3_512 
04c0: 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64  \..-setup {set d
04d0: 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f  ata [binary deco
04e0: 64 65 20 68 65 78 20 33 37 64 35 31 38 5d 7d 20  de hex 37d518]} 
04f0: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
0500: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
0510: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
0520: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
0530: 61 63 74 20 2d 72 65 73 75 6c 74 20 34 61 61 39  act -result 4aa9
0540: 36 62 31 35 34 37 65 36 34 30 32 63 30 65 65 65  6b1547e6402c0eee
0550: 37 38 31 61 63 61 61 36 36 30 37 39 37 65 66 65  781acaa660797efe
0560: 32 36 65 63 30 30 62 34 66 32 65 30 61 65 63 34  26ec00b4f2e0aec4
0570: 61 36 64 31 30 36 38 38 64 64 36 34 63 62 64 37  a6d10688dd64cbd7
0580: 66 31 32 62 33 62 36 63 37 66 38 30 32 65 32 30  f12b3b6c7f802e20
0590: 39 36 63 30 34 31 32 30 38 62 39 32 38 39 61 65  96c041208b9289ae
05a0: 63 33 38 30 64 31 61 37 34 38 66 64 66 63 64 34  c380d1a748fdfcd4
05b0: 31 32 38 35 35 33 64 37 38 31 65 33 0a 0a 74 63  128553d781e3..tc
05c0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
05d0: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 35 20 7b 53  _SHA3-512-2.5 {S
05e0: 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67 7d  HA3_512ShortMsg}
05f0: 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73   \..-constraints
0600: 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73 65   SHA3_512 \..-se
0610: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
0620: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
0630: 20 66 63 37 62 38 63 64 61 5d 7d 20 5c 0a 09 2d   fc7b8cda]} \..-
0640: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
0650: 74 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35  t -digest SHA3-5
0660: 31 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  12 -data $data} 
0670: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
0680: 2d 72 65 73 75 6c 74 20 35 38 61 35 34 32 32 64  -result 58a5422d
0690: 36 62 31 35 65 62 31 66 32 32 33 65 62 65 34 66  6b15eb1f223ebe4f
06a0: 34 61 35 32 38 31 62 63 36 38 32 34 64 31 35 39  4a5281bc6824d159
06b0: 39 64 39 37 39 66 34 63 36 66 65 34 35 36 39 35  9d979f4c6fe45695
06c0: 63 61 38 39 30 31 34 32 36 30 62 38 35 39 61 32  ca89014260b859a2
06d0: 64 34 36 65 62 66 37 35 66 35 31 66 66 32 30 34  d46ebf75f51ff204
06e0: 39 32 37 39 33 32 63 37 39 32 37 30 64 64 37 61  927932c79270dd7a
06f0: 65 66 39 37 35 36 35 37 62 62 34 38 66 65 30 39  ef975657bb48fe09
0700: 64 38 65 61 30 30 38 65 0a 0a 74 63 6c 74 65 73  d8ea008e..tcltes
0710: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
0720: 33 2d 35 31 32 2d 32 2e 36 20 7b 53 48 41 33 5f  3-512-2.6 {SHA3_
0730: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
0740: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
0750: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
0760: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
0770: 79 20 64 65 63 6f 64 65 20 68 65 78 20 34 37 37  y decode hex 477
0780: 35 63 38 36 62 31 63 5d 7d 20 5c 0a 09 2d 62 6f  5c86b1c]} \..-bo
0790: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
07a0: 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31 32  -digest SHA3-512
07b0: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
07c0: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
07d0: 65 73 75 6c 74 20 63 65 39 36 64 61 38 62 63 64  esult ce96da8bcd
07e0: 36 62 63 39 64 38 31 34 31 39 66 30 64 64 33 33  6bc9d81419f0dd33
07f0: 30 38 65 33 65 66 35 34 31 62 63 37 62 30 33 30  08e3ef541bc7b030
0800: 65 65 65 31 33 33 39 63 66 38 62 33 63 34 65 38  eee1339cf8b3c4e8
0810: 34 32 30 63 64 33 30 33 31 38 30 66 38 64 61 37  420cd303180f8da7
0820: 37 30 33 37 63 38 63 31 61 65 33 37 35 63 61 62  7037c8c1ae375cab
0830: 38 31 65 65 34 37 35 37 31 30 39 32 33 62 39 35  81ee475710923b95
0840: 31 39 61 64 62 64 64 65 64 62 33 36 64 62 30 63  19adbddedb36db0c
0850: 31 39 39 66 37 30 0a 0a 74 63 6c 74 65 73 74 3a  199f70..tcltest:
0860: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d  :test Hash_SHA3-
0870: 35 31 32 2d 32 2e 37 20 7b 53 48 41 33 5f 35 31  512-2.7 {SHA3_51
0880: 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  2ShortMsg} \..-c
0890: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f  onstraints SHA3_
08a0: 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73  512 \..-setup {s
08b0: 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20  et data [binary 
08c0: 64 65 63 6f 64 65 20 68 65 78 20 37 31 61 39 38  decode hex 71a98
08d0: 36 64 32 66 36 36 32 5d 7d 20 5c 0a 09 2d 62 6f  6d2f662]} \..-bo
08e0: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
08f0: 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31 32  -digest SHA3-512
0900: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
0910: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
0920: 65 73 75 6c 74 20 64 65 66 36 61 61 63 32 62 30  esult def6aac2b0
0930: 38 63 39 38 64 35 36 61 30 35 30 31 61 38 63 62  8c98d56a0501a8cb
0940: 39 33 66 35 62 34 37 64 36 33 32 32 64 61 66 39  93f5b47d6322daf9
0950: 39 65 30 33 32 35 35 34 35 37 63 33 30 33 33 32  9e03255457c30332
0960: 36 33 39 35 66 37 36 35 35 37 36 39 33 30 66 38  6395f765576930f8
0970: 35 37 31 64 38 39 63 30 31 65 37 32 37 63 63 37  571d89c01e727cc7
0980: 39 63 32 64 34 34 39 37 66 38 35 63 34 35 36 39  9c2d4497f85c4569
0990: 31 62 35 35 34 65 32 30 64 61 38 31 30 63 32 62  1b554e20da810c2b
09a0: 63 38 36 35 65 66 0a 0a 74 63 6c 74 65 73 74 3a  c865ef..tcltest:
09b0: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d  :test Hash_SHA3-
09c0: 35 31 32 2d 32 2e 38 20 7b 53 48 41 33 5f 35 31  512-2.8 {SHA3_51
09d0: 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  2ShortMsg} \..-c
09e0: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f  onstraints SHA3_
09f0: 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73  512 \..-setup {s
0a00: 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20  et data [binary 
0a10: 64 65 63 6f 64 65 20 68 65 78 20 65 63 38 33 64  decode hex ec83d
0a20: 37 30 37 61 31 34 31 34 61 5d 7d 20 5c 0a 09 2d  707a1414a]} \..-
0a30: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
0a40: 74 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35  t -digest SHA3-5
0a50: 31 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  12 -data $data} 
0a60: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
0a70: 2d 72 65 73 75 6c 74 20 38 34 66 64 33 37 37 35  -result 84fd3775
0a80: 62 61 63 35 62 38 37 65 35 35 30 64 30 33 65 63  bac5b87e550d03ec
0a90: 36 66 65 34 39 30 35 63 63 36 30 65 38 35 31 61  6fe4905cc60e851a
0aa0: 34 63 33 33 61 36 31 38 35 38 64 34 65 37 64 38  4c33a61858d4e7d8
0ab0: 61 33 34 64 34 37 31 66 30 35 30 30 38 62 39 61  a34d471f05008b9a
0ac0: 31 64 36 33 30 34 34 34 34 35 64 66 35 61 39 66  1d63044445df5a9f
0ad0: 63 65 39 35 38 63 62 30 31 32 61 36 61 63 37 37  ce958cb012a6ac77
0ae0: 38 65 63 66 34 35 31 30 34 62 30 66 63 62 39 37  8ecf45104b0fcb97
0af0: 39 61 61 34 36 39 32 64 0a 0a 74 63 6c 74 65 73  9aa4692d..tcltes
0b00: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
0b10: 33 2d 35 31 32 2d 32 2e 39 20 7b 53 48 41 33 5f  3-512-2.9 {SHA3_
0b20: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
0b30: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
0b40: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
0b50: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
0b60: 79 20 64 65 63 6f 64 65 20 68 65 78 20 61 66 35  y decode hex af5
0b70: 33 66 61 33 66 66 38 61 33 63 66 62 32 5d 7d 20  3fa3ff8a3cfb2]} 
0b80: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
0b90: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
0ba0: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
0bb0: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
0bc0: 61 63 74 20 2d 72 65 73 75 6c 74 20 30 33 63 32  act -result 03c2
0bd0: 61 63 30 32 64 65 31 37 36 35 34 39 37 61 30 61  ac02de1765497a0a
0be0: 36 61 66 34 36 36 66 62 36 34 37 35 38 65 33 32  6af466fb64758e32
0bf0: 38 33 65 64 38 33 64 30 32 63 30 65 64 62 33 39  83ed83d02c0edb39
0c00: 30 34 66 64 33 63 66 32 39 36 34 34 32 65 37 39  04fd3cf296442e79
0c10: 30 30 31 38 64 34 62 66 34 63 65 35 35 62 63 38  0018d4bf4ce55bc8
0c20: 36 39 63 65 62 62 34 61 61 31 61 37 39 39 61 66  69cebb4aa1a799af
0c30: 63 39 64 39 38 37 65 37 37 36 66 65 66 35 64 66  c9d987e776fef5df
0c40: 65 36 36 32 38 65 32 34 64 65 39 37 0a 0a 74 63  e6628e24de97..tc
0c50: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
0c60: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 31 30 20 7b  _SHA3-512-2.10 {
0c70: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
0c80: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
0c90: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
0ca0: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
0cb0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
0cc0: 78 20 33 64 36 30 39 33 39 36 36 39 35 30 61 62  x 3d6093966950ab
0cd0: 64 38 34 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  d846]} \..-body 
0ce0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
0cf0: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
0d00: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
0d10: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
0d20: 6c 74 20 35 33 65 33 30 64 61 38 62 37 34 61 65  lt 53e30da8b74ae
0d30: 37 36 61 62 66 31 66 36 35 37 36 31 36 35 33 65  76abf1f65761653e
0d40: 62 66 62 65 38 37 38 38 32 65 39 65 61 30 65 61  bfbe87882e9ea0ea
0d50: 35 36 34 61 64 64 64 37 63 66 64 35 61 36 35 32  564addd7cfd5a652
0d60: 34 35 37 38 61 64 36 62 65 30 31 34 64 37 37 39  4578ad6be014d779
0d70: 39 37 39 39 65 66 35 65 31 35 63 36 37 39 35 38  9799ef5e15c67958
0d80: 32 62 37 39 31 31 35 39 61 64 64 38 32 33 62 39  2b791159add823b9
0d90: 35 63 39 31 65 32 36 64 65 36 32 64 63 62 37 34  5c91e26de62dcb74
0da0: 63 66 61 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  cfa..tcltest::te
0db0: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
0dc0: 2d 32 2e 31 31 20 7b 53 48 41 33 5f 35 31 32 53  -2.11 {SHA3_512S
0dd0: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
0de0: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
0df0: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
0e00: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
0e10: 63 6f 64 65 20 68 65 78 20 31 63 61 39 38 34 64  code hex 1ca984d
0e20: 63 63 39 31 33 33 34 34 33 37 30 63 66 5d 7d 20  cc913344370cf]} 
0e30: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
0e40: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
0e50: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
0e60: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
0e70: 61 63 74 20 2d 72 65 73 75 6c 74 20 36 39 31 35  act -result 6915
0e80: 65 61 30 65 65 66 66 62 39 39 62 39 62 32 34 36  ea0eeffb99b9b246
0e90: 61 30 65 33 34 64 61 66 33 39 34 37 38 35 32 36  a0e34daf39478526
0ea0: 38 34 63 33 64 36 31 38 32 36 30 31 31 39 61 32  84c3d618260119a2
0eb0: 32 38 33 35 36 35 39 65 34 66 32 33 64 34 65 62  2835659e4f23d4eb
0ec0: 36 36 61 31 35 64 30 61 66 66 62 38 65 39 33 37  66a15d0affb8e937
0ed0: 37 31 35 37 38 66 35 65 38 66 32 35 62 37 61 35  71578f5e8f25b7a5
0ee0: 66 32 61 35 35 66 35 31 31 66 62 38 62 39 36 33  f2a55f511fb8b963
0ef0: 32 35 62 61 32 63 64 31 34 38 31 36 0a 0a 74 63  25ba2cd14816..tc
0f00: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
0f10: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 31 32 20 7b  _SHA3-512-2.12 {
0f20: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
0f30: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
0f40: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
0f50: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
0f60: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
0f70: 78 20 66 63 37 62 38 63 64 61 64 65 62 65 34 38  x fc7b8cdadebe48
0f80: 35 38 38 66 36 38 35 31 5d 7d 20 5c 0a 09 2d 62  588f6851]} \..-b
0f90: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
0fa0: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
0fb0: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
0fc0: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
0fd0: 72 65 73 75 6c 74 20 63 38 34 33 39 62 62 31 32  result c8439bb12
0fe0: 38 35 31 32 30 62 33 63 34 33 36 33 31 61 30 30  85120b3c43631a00
0ff0: 61 33 62 35 61 63 30 62 61 64 62 34 31 31 33 35  a3b5ac0badb41135
1000: 38 36 61 33 64 64 34 66 37 63 36 36 63 35 64 38  86a3dd4f7c66c5d8
1010: 31 30 31 32 66 37 34 31 32 36 31 37 62 31 36 39  1012f7412617b169
1020: 66 61 36 64 37 30 66 38 65 30 61 31 39 65 35 65  fa6d70f8e0a19e5e
1030: 32 35 38 65 39 39 61 30 65 64 32 64 63 66 61 37  258e99a0ed2dcfa7
1040: 37 34 63 38 36 34 63 36 32 61 30 31 30 65 39 62  74c864c62a010e9b
1050: 39 30 63 61 30 30 64 0a 0a 74 63 6c 74 65 73 74  90ca00d..tcltest
1060: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
1070: 2d 35 31 32 2d 32 2e 31 33 20 7b 53 48 41 33 5f  -512-2.13 {SHA3_
1080: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
1090: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
10a0: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
10b0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
10c0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 65 63 62  y decode hex ecb
10d0: 39 30 37 61 64 66 62 38 35 66 39 31 35 34 61 33  907adfb85f9154a3
10e0: 63 32 33 65 38 5d 7d 20 5c 0a 09 2d 62 6f 64 79  c23e8]} \..-body
10f0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
1100: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
1110: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
1120: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
1130: 75 6c 74 20 39 34 61 65 33 34 66 65 64 32 65 66  ult 94ae34fed2ef
1140: 35 31 61 33 38 33 66 62 38 35 33 32 39 36 65 34  51a383fb853296e4
1150: 62 37 39 37 65 34 38 65 30 30 63 61 64 32 37 66  b797e48e00cad27f
1160: 30 39 34 64 32 66 34 31 31 63 34 30 30 63 34 39  094d2f411c400c49
1170: 36 30 63 61 34 63 36 31 30 62 66 33 64 63 34 30  60ca4c610bf3dc40
1180: 65 39 34 65 63 66 64 30 63 37 61 31 38 65 34 31  e94ecfd0c7a18e41
1190: 38 38 37 37 65 31 38 32 63 61 33 61 65 35 63 61  8877e182ca3ae5ca
11a0: 35 31 33 36 65 32 38 35 36 61 35 35 33 31 37 31  5136e2856a553171
11b0: 30 66 34 38 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  0f48..tcltest::t
11c0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
11d0: 32 2d 32 2e 31 34 20 7b 53 48 41 33 5f 35 31 32  2-2.14 {SHA3_512
11e0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
11f0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
1200: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
1210: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
1220: 65 63 6f 64 65 20 68 65 78 20 64 39 31 61 39 63  ecode hex d91a9c
1230: 33 32 34 65 63 65 38 34 62 30 37 32 64 30 37 35  324ece84b072d075
1240: 33 36 31 38 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  3618]} \..-body 
1250: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1260: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
1270: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
1280: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
1290: 6c 74 20 66 62 31 66 30 36 63 34 64 31 63 30 64  lt fb1f06c4d1c0d
12a0: 30 36 36 62 64 64 38 35 30 61 62 31 61 37 38 62  066bdd850ab1a78b
12b0: 38 33 32 39 36 65 62 61 30 63 61 34 32 33 62 62  83296eba0ca423bb
12c0: 31 37 34 64 37 34 32 38 33 66 34 36 36 32 38 65  174d74283f46628e
12d0: 36 30 39 35 35 33 39 32 31 34 61 64 66 64 38 32  6095539214adfd82
12e0: 62 34 36 32 65 38 65 39 32 30 34 61 33 39 37 61  b462e8e9204a397a
12f0: 38 33 63 36 38 34 32 62 37 32 31 61 33 32 65 38  83c6842b721a32e8
1300: 62 62 30 33 30 39 32 37 61 35 36 38 66 33 63 32  bb030927a568f3c2
1310: 39 65 36 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  9e6..tcltest::te
1320: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
1330: 2d 32 2e 31 35 20 7b 53 48 41 33 5f 35 31 32 53  -2.15 {SHA3_512S
1340: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
1350: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
1360: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
1370: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
1380: 63 6f 64 65 20 68 65 78 20 63 36 31 61 39 31 38  code hex c61a918
1390: 38 38 31 32 61 65 37 33 39 39 34 62 63 30 64 36  8812ae73994bc0d6
13a0: 64 34 30 32 31 5d 7d 20 5c 0a 09 2d 62 6f 64 79  d4021]} \..-body
13b0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
13c0: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
13d0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
13e0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
13f0: 75 6c 74 20 30 36 39 65 36 61 62 31 36 37 35 66  ult 069e6ab1675f
1400: 65 64 38 64 34 34 31 30 35 66 33 62 36 32 62 62  ed8d44105f3b62bb
1410: 66 35 62 38 66 66 37 61 65 38 30 34 30 39 38 39  f5b8ff7ae8040989
1420: 38 36 38 37 39 62 31 31 65 30 64 37 64 39 62 31  86879b11e0d7d9b1
1430: 62 34 63 62 37 62 63 34 37 61 65 62 37 34 32 30  b4cb7bc47aeb7420
1440: 31 66 35 30 39 64 64 63 39 32 65 35 36 33 33 61  1f509ddc92e5633a
1450: 62 64 32 63 62 65 30 64 64 63 61 32 34 38 30 65  bd2cbe0ddca2480e
1460: 39 39 30 38 61 66 61 36 33 32 63 38 63 38 64 35  9908afa632c8c8d5
1470: 61 66 32 61 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  af2a..tcltest::t
1480: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
1490: 32 2d 32 2e 31 36 20 7b 53 48 41 33 5f 35 31 32  2-2.16 {SHA3_512
14a0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
14b0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
14c0: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
14d0: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
14e0: 65 63 6f 64 65 20 68 65 78 20 61 36 65 37 62 32  ecode hex a6e7b2
14f0: 31 38 34 34 39 38 34 30 64 31 33 34 62 35 36 36  18449840d134b566
1500: 32 39 30 64 63 38 39 36 5d 7d 20 5c 0a 09 2d 62  290dc896]} \..-b
1510: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
1520: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
1530: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
1540: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
1550: 72 65 73 75 6c 74 20 33 36 30 35 61 32 31 63 65  result 3605a21ce
1560: 30 30 62 32 38 39 30 32 32 31 39 33 62 37 30 62  00b289022193b70b
1570: 35 33 35 65 36 36 32 36 66 33 32 34 37 33 39 35  535e6626f3247395
1580: 34 32 39 37 38 66 35 62 33 30 37 31 39 34 66 63  42978f5b307194fc
1590: 66 30 61 35 39 38 38 66 35 34 32 63 30 38 33 38  f0a5988f542c0838
15a0: 61 30 34 34 33 62 62 39 62 62 38 66 66 39 32 32  a0443bb9bb8ff922
15b0: 61 36 61 31 37 37 66 64 62 64 31 32 63 66 38 30  a6a177fdbd12cf80
15c0: 35 66 33 65 64 38 30 39 63 34 38 65 39 37 36 39  5f3ed809c48e9769
15d0: 63 38 62 62 64 39 31 0a 0a 74 63 6c 74 65 73 74  c8bbd91..tcltest
15e0: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
15f0: 2d 35 31 32 2d 32 2e 31 37 20 7b 53 48 41 33 5f  -512-2.17 {SHA3_
1600: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
1610: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
1620: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
1630: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
1640: 79 20 64 65 63 6f 64 65 20 68 65 78 20 30 35 34  y decode hex 054
1650: 30 39 35 62 61 35 33 31 65 65 63 32 32 31 31 33  095ba531eec22113
1660: 63 63 33 34 35 65 38 33 37 39 35 63 37 5d 7d 20  cc345e83795c7]} 
1670: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
1680: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
1690: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
16a0: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
16b0: 61 63 74 20 2d 72 65 73 75 6c 74 20 66 33 61 64  act -result f3ad
16c0: 66 35 63 63 66 32 38 33 30 63 64 36 32 31 39 35  f5ccf2830cd62195
16d0: 38 30 32 31 65 66 39 39 38 32 35 32 66 32 62 36  8021ef998252f2b6
16e0: 62 63 34 63 31 33 35 30 39 36 38 33 39 35 38 36  bc4c135096839586
16f0: 64 35 30 36 34 61 32 39 37 38 31 35 34 65 61 30  d5064a2978154ea0
1700: 37 36 63 36 30 30 61 39 37 33 36 34 62 63 65 30  76c600a97364bce0
1710: 65 39 61 61 62 34 33 62 37 66 31 66 32 64 61 39  e9aab43b7f1f2da9
1720: 33 35 33 37 30 38 39 64 65 39 35 30 35 35 37 36  3537089de9505576
1730: 37 34 61 65 36 32 35 31 63 61 34 64 0a 0a 74 63  74ae6251ca4d..tc
1740: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
1750: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 31 38 20 7b  _SHA3-512-2.18 {
1760: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
1770: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
1780: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
1790: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
17a0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
17b0: 78 20 35 62 31 65 63 31 63 34 65 39 32 30 66 35  x 5b1ec1c4e920f5
17c0: 62 39 39 35 62 36 61 37 38 38 62 36 65 39 38 39  b995b6a788b6e989
17d0: 61 63 32 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  ac29]} \..-body 
17e0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
17f0: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
1800: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
1810: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
1820: 6c 74 20 31 33 35 65 65 61 31 37 63 61 34 37 38  lt 135eea17ca478
1830: 35 34 38 32 63 31 39 63 64 36 36 38 62 38 64 64  5482c19cd668b8dd
1840: 32 39 31 33 32 31 36 39 30 33 33 31 31 66 61 32  2913216903311fa2
1850: 31 66 36 62 36 37 30 62 39 62 35 37 33 32 36 34  1f6b670b9b573264
1860: 66 38 38 37 35 62 35 64 33 63 30 37 31 64 39 32  f8875b5d3c071d92
1870: 64 36 33 35 35 36 35 34 39 65 35 32 33 62 32 61  d63556549e523b2a
1880: 66 31 66 31 61 35 30 38 62 64 31 66 31 30 35 64  f1f1a508bd1f105d
1890: 32 39 61 34 33 36 66 34 35 35 63 64 32 63 61 31  29a436f455cd2ca1
18a0: 36 30 34 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  604..tcltest::te
18b0: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
18c0: 2d 32 2e 31 39 20 7b 53 48 41 33 5f 35 31 32 53  -2.19 {SHA3_512S
18d0: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
18e0: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
18f0: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
1900: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
1910: 63 6f 64 65 20 68 65 78 20 31 33 33 62 34 39 37  code hex 133b497
1920: 62 30 30 39 33 32 37 37 33 61 35 33 62 61 39 62  b00932773a53ba9b
1930: 66 38 65 36 31 64 35 39 66 30 35 66 34 5d 7d 20  f8e61d59f05f4]} 
1940: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
1950: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
1960: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
1970: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
1980: 61 63 74 20 2d 72 65 73 75 6c 74 20 37 38 33 39  act -result 7839
1990: 36 34 61 31 63 66 34 31 64 36 64 32 31 30 61 38  64a1cf41d6d210a8
19a0: 64 37 63 38 31 63 65 36 39 37 30 61 61 36 32 63  d7c81ce6970aa62c
19b0: 39 30 35 33 63 62 38 39 65 31 35 66 38 38 30 35  9053cb89e15f8805
19c0: 33 39 35 37 65 63 66 36 30 37 66 34 32 61 66 30  3957ecf607f42af0
19d0: 38 38 30 34 65 37 36 66 32 66 62 64 62 62 33 31  8804e76f2fbdbb31
19e0: 38 30 39 63 39 65 65 66 63 36 30 65 32 33 33 64  809c9eefc60e233d
19f0: 36 36 32 34 33 36 37 61 33 62 39 63 33 30 66 38  6624367a3b9c30f8
1a00: 65 65 35 66 36 35 62 65 35 36 61 63 0a 0a 74 63  ee5f65be56ac..tc
1a10: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
1a20: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 32 30 20 7b  _SHA3-512-2.20 {
1a30: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
1a40: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
1a50: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
1a60: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
1a70: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
1a80: 78 20 38 38 63 30 35 30 65 61 36 62 36 36 62 30  x 88c050ea6b66b0
1a90: 31 32 35 36 62 64 61 32 39 39 66 33 39 39 33 39  1256bda299f39939
1aa0: 38 65 31 65 33 31 36 32 5d 7d 20 5c 0a 09 2d 62  8e1e3162]} \..-b
1ab0: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
1ac0: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
1ad0: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
1ae0: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
1af0: 72 65 73 75 6c 74 20 36 62 66 37 66 63 38 65 39  result 6bf7fc8e9
1b00: 30 31 34 66 33 35 63 34 62 64 65 36 61 32 63 37  014f35c4bde6a2c7
1b10: 63 65 31 39 36 35 64 39 63 31 37 39 33 66 32 35  ce1965d9c1793f25
1b20: 63 31 34 31 30 32 31 63 63 31 63 36 39 37 64 31  c141021cc1c697d1
1b30: 31 31 33 36 33 62 33 38 35 34 39 35 33 63 32 62  11363b3854953c2b
1b40: 34 30 30 39 64 66 34 31 38 37 38 62 35 35 35 38  4009df41878b5558
1b50: 65 37 38 61 39 61 39 30 39 32 63 32 32 62 38 62  e78a9a9092c22b8b
1b60: 61 61 30 65 64 36 62 61 63 61 30 30 35 34 35 35  aa0ed6baca005455
1b70: 63 36 63 63 61 37 30 0a 0a 74 63 6c 74 65 73 74  c6cca70..tcltest
1b80: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
1b90: 2d 35 31 32 2d 32 2e 32 31 20 7b 53 48 41 33 5f  -512-2.21 {SHA3_
1ba0: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
1bb0: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
1bc0: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
1bd0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
1be0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 64 37 64  y decode hex d7d
1bf0: 35 33 36 33 33 35 30 37 30 39 65 39 36 39 33 39  5363350709e96939
1c00: 65 36 62 36 38 62 33 62 62 64 65 66 36 39 39 39  e6b68b3bbdef6999
1c10: 61 63 38 64 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79  ac8d9]} \..-body
1c20: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
1c30: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
1c40: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
1c50: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
1c60: 75 6c 74 20 37 61 34 36 62 65 63 61 35 35 33 66  ult 7a46beca553f
1c70: 66 66 61 38 30 32 31 62 30 39 38 39 66 34 30 61  ffa8021b0989f40a
1c80: 36 35 36 33 61 38 61 66 62 36 34 31 65 38 31 33  6563a8afb641e813
1c90: 33 30 39 30 62 63 30 33 34 61 62 36 37 36 33 65  3090bc034ab6763e
1ca0: 39 36 64 37 62 37 61 30 64 61 34 64 65 33 61 62  96d7b7a0da4de3ab
1cb0: 64 35 61 36 37 64 38 30 38 35 66 37 63 32 38 62  d5a67d8085f7c28b
1cc0: 32 31 61 32 34 61 65 66 62 33 35 39 63 33 37 66  21a24aefb359c37f
1cd0: 61 63 36 31 64 33 61 35 33 37 34 62 34 62 31 66  ac61d3a5374b4b1f
1ce0: 62 36 62 62 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  b6bb..tcltest::t
1cf0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
1d00: 32 2d 32 2e 32 32 20 7b 53 48 41 33 5f 35 31 32  2-2.22 {SHA3_512
1d10: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
1d20: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
1d30: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
1d40: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
1d50: 65 63 6f 64 65 20 68 65 78 20 35 34 37 34 36 61  ecode hex 54746a
1d60: 37 62 61 32 38 62 35 66 32 36 33 64 32 34 39 36  7ba28b5f263d2496
1d70: 62 64 30 30 38 30 64 38 33 35 32 30 63 64 32 64  bd0080d83520cd2d
1d80: 63 35 30 33 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  c503]} \..-body 
1d90: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1da0: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
1db0: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
1dc0: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
1dd0: 6c 74 20 64 37 37 30 34 38 64 66 36 30 65 32 30  lt d77048df60e20
1de0: 64 30 33 64 33 33 36 62 66 61 36 33 34 62 63 39  d03d336bfa634bc9
1df0: 39 33 31 63 32 64 33 63 31 65 31 30 36 35 64 33  931c2d3c1e1065d3
1e00: 61 30 37 66 31 34 61 65 30 31 61 30 38 35 66 65  a07f14ae01a085fe
1e10: 37 65 37 66 65 36 61 38 39 64 63 34 63 37 38 38  7e7fe6a89dc4c788
1e20: 30 66 31 30 33 38 39 33 38 61 61 38 66 63 64 39  0f1038938aa8fcd9
1e30: 39 64 32 61 37 38 32 64 31 62 62 65 35 65 65 63  9d2a782d1bbe5eec
1e40: 37 39 30 38 35 38 31 37 33 63 37 38 33 30 63 38  790858173c7830c8
1e50: 37 61 32 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  7a2..tcltest::te
1e60: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
1e70: 2d 32 2e 32 33 20 7b 53 48 41 33 5f 35 31 32 53  -2.23 {SHA3_512S
1e80: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
1e90: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
1ea0: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
1eb0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
1ec0: 63 6f 64 65 20 68 65 78 20 37 33 64 66 37 38 38  code hex 73df788
1ed0: 35 38 33 30 36 33 33 66 63 36 36 63 39 65 62 31  5830633fc66c9eb1
1ee0: 36 39 34 30 62 30 31 37 65 39 63 36 66 39 66 38  6940b017e9c6f9f8
1ef0: 37 31 39 37 38 5d 7d 20 5c 0a 09 2d 62 6f 64 79  71978]} \..-body
1f00: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
1f10: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
1f20: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
1f30: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
1f40: 75 6c 74 20 30 65 64 65 65 31 65 61 30 31 39 61  ult 0edee1ea019a
1f50: 35 63 30 30 34 66 64 38 61 65 39 64 63 38 63 32  5c004fd8ae9dc8c2
1f60: 64 64 33 38 64 34 33 33 31 61 62 65 32 39 36 38  dd38d4331abe2968
1f70: 65 31 65 39 65 30 63 31 32 38 64 32 35 30 36 64  e1e9e0c128d2506d
1f80: 62 39 38 31 61 33 30 37 63 30 66 31 39 62 63 32  b981a307c0f19bc2
1f90: 65 36 32 34 38 37 61 39 32 39 39 32 61 66 37 37  e62487a92992af77
1fa0: 35 38 38 64 33 61 62 37 38 35 34 66 65 31 62 36  588d3ab7854fe1b6
1fb0: 38 33 30 32 66 37 39 36 62 39 64 63 64 39 66 33  8302f796b9dcd9f3
1fc0: 33 36 64 66 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  36df..tcltest::t
1fd0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
1fe0: 32 2d 32 2e 32 34 20 7b 53 48 41 33 5f 35 31 32  2-2.24 {SHA3_512
1ff0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
2000: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
2010: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
2020: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
2030: 65 63 6f 64 65 20 68 65 78 20 31 34 63 62 33 35  ecode hex 14cb35
2040: 66 61 39 33 33 65 34 39 62 30 64 30 61 34 30 30  fa933e49b0d0a400
2050: 31 38 33 63 62 62 65 61 30 39 39 63 34 34 39 39  183cbbea099c4499
2060: 35 66 61 65 31 31 36 33 5d 7d 20 5c 0a 09 2d 62  5fae1163]} \..-b
2070: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
2080: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
2090: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
20a0: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
20b0: 72 65 73 75 6c 74 20 61 66 32 65 66 34 62 30 63  result af2ef4b0c
20c0: 30 31 65 33 38 31 62 34 63 33 38 32 32 30 38 62  01e381b4c382208b
20d0: 36 36 61 64 39 35 64 37 35 39 65 63 39 31 65 33  66ad95d759ec91e3
20e0: 38 36 65 39 35 33 39 38 34 61 61 35 66 30 37 37  86e953984aa5f077
20f0: 37 34 36 33 32 64 35 33 62 35 38 31 65 62 61 33  74632d53b581eba3
2100: 32 65 64 31 64 33 36 39 63 34 36 62 30 61 35 37  2ed1d369c46b0a57
2110: 66 65 65 36 34 61 30 32 61 30 65 35 31 30 37 63  fee64a02a0e5107c
2120: 32 32 66 31 34 66 32 32 32 37 62 31 64 31 31 34  22f14f2227b1d114
2130: 32 34 62 65 63 62 35 0a 0a 74 63 6c 74 65 73 74  24becb5..tcltest
2140: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
2150: 2d 35 31 32 2d 32 2e 32 35 20 7b 53 48 41 33 5f  -512-2.25 {SHA3_
2160: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
2170: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
2180: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
2190: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
21a0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 37 35 61  y decode hex 75a
21b0: 30 36 38 36 39 63 61 32 61 36 65 61 38 35 37 65  06869ca2a6ea857e
21c0: 32 36 65 37 38 62 62 37 38 61 31 33 39 61 36 37  26e78bb78a139a67
21d0: 31 63 63 62 30 39 38 64 38 32 30 35 61 5d 7d 20  1ccb098d8205a]} 
21e0: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
21f0: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
2200: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
2210: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
2220: 61 63 74 20 2d 72 65 73 75 6c 74 20 38 38 62 65  act -result 88be
2230: 31 39 33 34 33 38 35 35 32 32 61 65 31 64 37 33  1934385522ae1d73
2240: 39 36 36 36 66 33 39 35 66 31 64 37 66 39 39 39  9666f395f1d7f999
2250: 37 38 64 36 32 38 38 33 61 32 36 31 61 64 66 35  78d62883a261adf5
2260: 64 36 31 38 64 30 31 32 64 66 61 62 35 32 32 34  d618d012dfab5224
2270: 35 37 35 36 33 34 34 34 36 38 37 36 62 38 36 62  575634446876b86b
2280: 33 65 35 66 37 36 30 39 64 33 39 37 64 33 33 38  3e5f7609d397d338
2290: 61 37 38 34 62 34 33 31 31 30 32 37 62 31 30 32  a784b4311027b102
22a0: 34 64 64 66 64 34 39 39 35 61 30 61 0a 0a 74 63  4ddfd4995a0a..tc
22b0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
22c0: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 32 36 20 7b  _SHA3-512-2.26 {
22d0: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
22e0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
22f0: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
2300: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
2310: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
2320: 78 20 62 34 31 33 61 62 33 36 34 64 64 34 31 30  x b413ab364dd410
2330: 35 37 33 62 35 33 66 34 63 32 66 32 38 39 38 32  573b53f4c2f28982
2340: 63 61 30 37 30 36 31 37 32 36 65 35 64 39 39 39  ca07061726e5d999
2350: 66 33 63 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  f3c2]} \..-body 
2360: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
2370: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
2380: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
2390: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
23a0: 6c 74 20 32 38 39 65 38 38 39 62 32 35 66 39 66  lt 289e889b25f9f
23b0: 33 38 66 61 63 66 63 63 66 33 62 64 62 63 65 65  38facfccf3bdbcee
23c0: 61 30 36 65 66 33 62 61 61 64 36 65 39 36 31 32  a06ef3baad6e9612
23d0: 62 37 32 33 32 63 64 35 35 33 66 34 38 38 34 61  b7232cd553f4884a
23e0: 37 61 36 34 32 66 36 35 38 33 61 31 61 35 38 39  7a642f6583a1a589
23f0: 64 34 64 63 62 32 64 63 37 37 31 66 31 66 66 36  d4dcb2dc771f1ff6
2400: 64 37 31 31 62 38 35 66 37 33 31 31 34 35 61 38  d711b85f731145a8
2410: 39 62 31 30 30 36 38 30 66 39 61 35 35 64 63 62  9b100680f9a55dcb
2420: 62 33 66 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  b3f..tcltest::te
2430: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
2440: 2d 32 2e 32 37 20 7b 53 48 41 33 5f 35 31 32 53  -2.27 {SHA3_512S
2450: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
2460: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
2470: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
2480: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
2490: 63 6f 64 65 20 68 65 78 20 64 37 66 39 30 35 33  code hex d7f9053
24a0: 39 38 34 32 31 33 65 62 61 62 63 38 34 32 66 64  984213ebabc842fd
24b0: 38 63 65 34 38 33 36 30 39 61 39 61 66 35 64 63  8ce483609a9af5dc
24c0: 31 34 30 65 63 64 62 65 36 33 33 33 36 5d 7d 20  140ecdbe63336]} 
24d0: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
24e0: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
24f0: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
2500: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
2510: 61 63 74 20 2d 72 65 73 75 6c 74 20 66 31 36 37  act -result f167
2520: 63 62 33 30 65 34 62 61 63 62 64 63 35 65 64 35  cb30e4bacbdc5ed5
2530: 33 62 63 36 31 35 66 38 63 39 65 61 31 39 61 64  3bc615f8c9ea19ad
2540: 34 66 36 62 64 38 35 63 61 30 66 66 35 66 62 31  4f6bd85ca0ff5fb1
2550: 66 31 63 62 65 35 62 35 37 36 62 64 61 34 39 32  f1cbe5b576bda492
2560: 37 36 61 61 35 38 31 34 32 39 31 61 37 65 33 32  76aa5814291a7e32
2570: 30 66 31 64 36 38 37 62 31 36 62 61 38 64 37 64  0f1d687b16ba8d7d
2580: 61 61 62 32 62 33 64 37 65 39 61 66 33 63 64 39  aab2b3d7e9af3cd9
2590: 66 38 34 61 31 65 39 39 37 39 61 31 0a 0a 74 63  f84a1e9979a1..tc
25a0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
25b0: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 32 38 20 7b  _SHA3-512-2.28 {
25c0: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
25d0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
25e0: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
25f0: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
2600: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
2610: 78 20 39 62 37 66 39 64 31 31 62 65 34 38 65 37  x 9b7f9d11be48e7
2620: 38 36 61 31 31 61 34 37 32 61 62 32 33 34 34 63  86a11a472ab2344c
2630: 35 37 61 64 66 36 32 66 37 63 31 64 34 65 36 64  57adf62f7c1d4e6d
2640: 32 38 32 30 37 34 62 36 5d 7d 20 5c 0a 09 2d 62  282074b6]} \..-b
2650: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
2660: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
2670: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
2680: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
2690: 72 65 73 75 6c 74 20 38 32 66 61 35 32 35 64 35  result 82fa525d5
26a0: 65 66 61 61 33 63 63 65 33 39 62 66 66 65 66 38  efaa3cce39bffef8
26b0: 65 65 65 30 31 61 66 62 35 32 30 36 37 30 39 37  eee01afb52067097
26c0: 66 38 39 36 35 63 64 65 37 31 37 30 33 33 34 35  f8965cde71703345
26d0: 33 32 32 36 34 35 65 61 65 35 39 64 62 61 65 62  322645eae59dbaeb
26e0: 65 64 30 38 30 35 36 39 33 31 30 34 64 66 62 30  ed0805693104dfb0
26f0: 63 35 38 31 31 63 35 38 32 38 64 61 39 61 37 35  c5811c5828da9a75
2700: 64 38 31 32 65 35 35 36 32 36 31 35 32 34 38 63  d812e5562615248c
2710: 30 33 66 66 38 38 30 0a 0a 74 63 6c 74 65 73 74  03ff880..tcltest
2720: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
2730: 2d 35 31 32 2d 32 2e 32 39 20 7b 53 48 41 33 5f  -512-2.29 {SHA3_
2740: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
2750: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
2760: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
2770: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
2780: 79 20 64 65 63 6f 64 65 20 68 65 78 20 31 31 35  y decode hex 115
2790: 37 38 34 62 31 66 63 63 66 61 62 63 61 34 35 37  784b1fccfabca457
27a0: 63 34 65 32 37 61 32 34 61 37 38 33 32 32 38 30  c4e27a24a7832280
27b0: 62 37 65 37 64 36 61 31 32 33 66 66 63 65 35 66  b7e7d6a123ffce5f
27c0: 64 61 62 37 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79  dab72]} \..-body
27d0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
27e0: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
27f0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
2800: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
2810: 75 6c 74 20 65 63 31 32 63 34 65 64 35 61 65 38  ult ec12c4ed5ae8
2820: 34 38 30 38 38 38 33 63 35 33 35 31 30 30 33 66  4808883c5351003f
2830: 37 65 32 36 65 31 65 61 66 35 30 39 63 38 36 36  7e26e1eaf509c866
2840: 62 33 35 37 66 39 37 34 37 32 65 35 65 31 39 63  b357f97472e5e19c
2850: 38 34 66 39 39 66 31 36 64 62 62 62 38 62 66 66  84f99f16dbbb8bff
2860: 66 30 36 30 64 36 63 30 66 65 30 63 61 39 63 33  f060d6c0fe0ca9c3
2870: 34 61 32 31 30 63 39 30 39 62 30 35 66 36 61 38  4a210c909b05f6a8
2880: 31 66 34 34 31 36 32 37 63 65 38 65 36 36 36 66  1f441627ce8e666f
2890: 36 64 63 37 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  6dc7..tcltest::t
28a0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
28b0: 32 2d 32 2e 33 30 20 7b 53 48 41 33 5f 35 31 32  2-2.30 {SHA3_512
28c0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
28d0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
28e0: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
28f0: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
2900: 65 63 6f 64 65 20 68 65 78 20 63 33 62 31 61 64  ecode hex c3b1ad
2910: 31 36 62 32 38 37 37 64 65 66 38 64 30 38 30 34  16b2877def8d0804
2920: 37 37 64 38 62 35 39 31 35 32 66 65 35 65 38 34  77d8b59152fe5e84
2930: 66 33 66 33 33 38 30 64 35 35 31 38 32 66 33 36  f3f3380d55182f36
2940: 65 62 35 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  eb5f]} \..-body 
2950: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
2960: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
2970: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
2980: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
2990: 6c 74 20 34 62 39 31 34 34 65 64 65 65 65 63 32  lt 4b9144edeeec2
29a0: 38 66 64 35 32 62 61 34 31 37 36 61 37 38 65 30  8fd52ba4176a78e0
29b0: 38 30 65 35 37 37 38 32 64 32 33 32 39 62 36 37  80e57782d2329b67
29c0: 64 38 61 63 38 37 38 30 62 62 36 65 38 63 32 30  d8ac8780bb6e8c20
29d0: 35 37 35 38 33 31 37 32 61 66 31 64 30 36 38 39  57583172af1d0689
29e0: 32 32 66 65 61 61 66 66 37 35 39 62 65 35 61 36  22feaaff759be5a6
29f0: 65 61 35 34 38 66 35 64 62 35 31 66 34 63 33 34  ea548f5db51f4c34
2a00: 64 66 65 37 32 33 36 63 61 30 39 61 36 37 39 32  dfe7236ca09a6792
2a10: 31 63 37 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  1c7..tcltest::te
2a20: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
2a30: 2d 32 2e 33 31 20 7b 53 48 41 33 5f 35 31 32 53  -2.31 {SHA3_512S
2a40: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
2a50: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
2a60: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
2a70: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
2a80: 63 6f 64 65 20 68 65 78 20 34 63 36 36 63 61 37  code hex 4c66ca7
2a90: 61 30 31 31 32 39 65 61 63 61 31 64 39 39 61 30  a01129eaca1d99a0
2aa0: 38 64 64 37 32 32 36 61 35 38 32 34 62 38 34 30  8dd7226a5824b840
2ab0: 64 30 36 64 30 30 35 39 63 36 30 65 39 37 64 32  d06d0059c60e97d2
2ac0: 39 31 64 63 34 5d 7d 20 5c 0a 09 2d 62 6f 64 79  91dc4]} \..-body
2ad0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
2ae0: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
2af0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
2b00: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
2b10: 75 6c 74 20 35 36 37 63 34 36 66 32 66 36 33 36  ult 567c46f2f636
2b20: 32 32 33 62 64 35 65 64 33 64 63 39 38 63 33 66  223bd5ed3dc98c3f
2b30: 37 61 37 33 39 62 34 32 38 39 38 65 37 30 38 38  7a739b42898e7088
2b40: 36 66 31 33 32 65 61 63 34 33 63 32 61 36 66 61  6f132eac43c2a6fa
2b50: 64 61 62 65 30 64 64 39 66 31 62 36 62 63 34 61  dabe0dd9f1b6bc4a
2b60: 39 33 36 35 65 35 32 33 32 32 39 35 61 63 31 61  9365e5232295ac1a
2b70: 63 33 34 37 30 31 62 30 66 62 31 38 31 64 32 66  c34701b0fb181d2f
2b80: 37 66 30 37 61 37 39 64 30 33 33 64 64 34 32 36  7f07a79d033dd426
2b90: 64 35 61 32 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  d5a2..tcltest::t
2ba0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
2bb0: 32 2d 32 2e 33 32 20 7b 53 48 41 33 5f 35 31 32  2-2.32 {SHA3_512
2bc0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
2bd0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
2be0: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
2bf0: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
2c00: 65 63 6f 64 65 20 68 65 78 20 34 38 31 30 34 31  ecode hex 481041
2c10: 63 32 66 35 36 36 36 32 33 31 36 65 65 38 35 61  c2f56662316ee85a
2c20: 31 30 62 39 38 65 31 30 33 63 38 64 34 38 38 30  10b98e103c8d4880
2c30: 34 66 36 66 39 35 30 32 63 66 31 62 35 31 63 66  4f6f9502cf1b51cf
2c40: 61 35 32 35 63 65 63 31 5d 7d 20 5c 0a 09 2d 62  a525cec1]} \..-b
2c50: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
2c60: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
2c70: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
2c80: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
2c90: 72 65 73 75 6c 74 20 34 36 66 30 30 35 38 61 62  result 46f0058ab
2ca0: 65 36 37 38 31 39 35 62 35 37 36 64 66 35 63 37  e678195b576df5c7
2cb0: 65 62 38 64 37 33 39 34 36 38 63 61 64 31 39 30  eb8d739468cad190
2cc0: 38 66 37 39 35 33 65 61 33 39 63 39 33 66 61 31  8f7953ea39c93fa1
2cd0: 64 39 36 38 34 35 63 33 38 61 32 39 33 34 64 32  d96845c38a2934d2
2ce0: 33 38 30 34 38 36 34 61 38 33 36 38 64 61 65 33  3804864a8368dae3
2cf0: 38 31 39 31 64 39 38 33 30 35 33 63 63 64 30 34  8191d983053ccd04
2d00: 35 61 39 61 62 38 37 65 66 32 36 31 39 65 39 64  5a9ab87ef2619e9d
2d10: 64 35 30 63 38 63 31 0a 0a 74 63 6c 74 65 73 74  d50c8c1..tcltest
2d20: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
2d30: 2d 35 31 32 2d 32 2e 33 33 20 7b 53 48 41 33 5f  -512-2.33 {SHA3_
2d40: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
2d50: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
2d60: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
2d70: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
2d80: 79 20 64 65 63 6f 64 65 20 68 65 78 20 37 63 31  y decode hex 7c1
2d90: 36 38 38 32 31 37 62 33 31 33 32 37 38 62 39 65  688217b313278b9e
2da0: 61 65 38 65 64 63 66 38 61 61 34 32 37 31 36 31  ae8edcf8aa427161
2db0: 34 32 39 36 64 30 63 31 65 38 39 31 36 66 39 65  4296d0c1e8916f9e
2dc0: 30 65 39 34 30 64 32 38 62 38 38 63 35 5d 7d 20  0e940d28b88c5]} 
2dd0: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
2de0: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
2df0: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
2e00: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
2e10: 61 63 74 20 2d 72 65 73 75 6c 74 20 36 32 37 62  act -result 627b
2e20: 61 34 64 65 37 34 64 30 35 62 62 36 64 66 38 39  a4de74d05bb6df89
2e30: 39 31 31 31 32 65 34 64 33 37 33 62 66 63 65 64  91112e4d373bfced
2e40: 33 37 61 63 64 65 31 33 30 34 65 30 66 36 36 34  37acde1304e0f664
2e50: 66 32 39 66 61 31 32 36 63 62 34 39 37 63 38 61  f29fa126cb497c8a
2e60: 31 62 37 31 37 62 39 39 32 39 31 32 30 38 38 33  1b717b9929120883
2e70: 65 63 38 38 39 38 39 36 38 65 34 36 34 39 30 31  ec8898968e464901
2e80: 33 62 37 36 30 61 32 31 38 30 61 39 64 63 30 66  3b760a2180a9dc0f
2e90: 63 39 62 32 37 66 35 62 37 66 33 62 0a 0a 74 63  c9b27f5b7f3b..tc
2ea0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
2eb0: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 33 34 20 7b  _SHA3-512-2.34 {
2ec0: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
2ed0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
2ee0: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
2ef0: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
2f00: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
2f10: 78 20 37 38 35 66 36 35 31 33 66 63 64 39 32 62  x 785f6513fcd92b
2f20: 36 37 34 63 34 35 30 65 38 35 64 61 32 32 32 35  674c450e85da2225
2f30: 37 62 38 65 38 35 62 66 61 36 35 65 35 64 39 62  7b8e85bfa65e5d9b
2f40: 31 62 31 66 66 63 35 63 34 36 39 61 64 33 33 37  1b1ffc5c469ad337
2f50: 64 31 65 33 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  d1e3]} \..-body 
2f60: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
2f70: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
2f80: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
2f90: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
2fa0: 6c 74 20 35 63 31 31 64 36 65 34 63 35 63 35 66  lt 5c11d6e4c5c5f
2fb0: 37 36 64 32 36 38 37 36 63 35 39 37 36 62 36 66  76d26876c5976b6f
2fc0: 35 35 35 63 32 35 35 63 37 38 35 62 32 66 32 38  555c255c785b2f28
2fd0: 62 36 37 30 30 63 61 32 64 38 62 33 62 33 66 61  b6700ca2d8b3b3fa
2fe0: 35 38 35 36 33 36 32 33 39 32 37 37 37 37 33 33  5856362392777733
2ff0: 33 30 66 34 63 66 38 63 35 64 35 32 30 33 62 63  30f4cf8c5d5203bc
3000: 63 30 39 31 62 38 64 34 37 65 37 37 34 33 62 62  c091b8d47e7743bb
3010: 63 30 62 35 61 32 63 35 34 34 34 34 65 65 32 61  c0b5a2c54444ee2a
3020: 63 63 65 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  cce..tcltest::te
3030: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
3040: 2d 32 2e 33 35 20 7b 53 48 41 33 5f 35 31 32 53  -2.35 {SHA3_512S
3050: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
3060: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
3070: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
3080: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
3090: 63 6f 64 65 20 68 65 78 20 33 34 66 34 34 36 38  code hex 34f4468
30a0: 65 32 64 35 36 37 62 31 65 33 32 36 63 30 39 34  e2d567b1e326c094
30b0: 32 39 37 30 65 66 61 33 32 63 35 63 61 32 65 39  2970efa32c5ca2e9
30c0: 35 64 34 32 63 39 38 65 62 35 64 33 63 61 62 32  5d42c98eb5d3cab2
30d0: 38 38 39 34 39 30 65 61 31 36 65 65 35 5d 7d 20  889490ea16ee5]} 
30e0: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
30f0: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
3100: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
3110: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
3120: 61 63 74 20 2d 72 65 73 75 6c 74 20 34 39 61 64  act -result 49ad
3130: 66 61 33 33 35 65 31 38 33 63 39 34 62 33 31 36  fa335e183c94b316
3140: 30 31 35 34 64 36 36 39 38 65 33 31 38 63 38 62  0154d6698e318c8b
3150: 35 64 64 31 30 30 62 30 32 32 37 65 33 65 33 34  5dd100b0227e3e34
3160: 63 61 62 65 61 31 66 65 30 66 37 34 35 33 32 36  cabea1fe0f745326
3170: 32 32 30 66 36 34 32 36 33 39 36 31 33 34 39 39  220f642639613499
3180: 39 36 62 62 65 31 61 61 65 39 30 35 34 64 65 36  96bbe1aae9054de6
3190: 34 30 36 65 38 62 33 35 30 34 30 38 61 62 30 62  406e8b350408ab0b
31a0: 39 66 36 35 36 62 62 38 64 61 66 37 0a 0a 74 63  9f656bb8daf7..tc
31b0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
31c0: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 33 36 20 7b  _SHA3-512-2.36 {
31d0: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
31e0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
31f0: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
3200: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
3210: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
3220: 78 20 35 33 61 30 31 32 31 63 38 39 39 33 62 36  x 53a0121c8993b6
3230: 66 36 65 65 63 39 32 31 64 32 34 34 35 30 33 35  f6eec921d2445035
3240: 64 64 39 30 36 35 34 61 64 64 31 32 39 38 63 36  dd90654add1298c6
3250: 37 32 37 61 32 61 65 64 39 62 35 39 62 61 66 62  727a2aed9b59bafb
3260: 37 64 64 36 32 30 37 30 5d 7d 20 5c 0a 09 2d 62  7dd62070]} \..-b
3270: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
3280: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
3290: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
32a0: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
32b0: 72 65 73 75 6c 74 20 39 31 38 62 34 64 39 32 65  result 918b4d92e
32c0: 31 66 63 62 36 35 61 34 63 31 66 61 30 62 64 37  1fcb65a4c1fa0bd7
32d0: 35 63 35 36 32 61 63 39 64 38 33 31 38 36 62 62  5c562ac9d83186bb
32e0: 32 66 62 66 61 65 35 63 34 37 38 34 64 65 33 31  2fbfae5c4784de31
32f0: 61 31 34 36 35 34 35 34 36 65 31 30 37 64 66 30  a14654546e107df0
3300: 65 37 39 30 37 36 62 38 36 38 37 62 62 33 38 34  e79076b8687bb384
3310: 31 63 38 33 62 61 39 31 38 31 66 39 39 35 36 63  1c83ba9181f9956c
3320: 64 34 33 34 32 38 62 61 37 32 66 36 30 33 38 38  d43428ba72f60388
3330: 31 62 33 33 61 37 31 0a 0a 74 63 6c 74 65 73 74  1b33a71..tcltest
3340: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
3350: 2d 35 31 32 2d 32 2e 33 37 20 7b 53 48 41 33 5f  -512-2.37 {SHA3_
3360: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
3370: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
3380: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
3390: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
33a0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 64 33 30  y decode hex d30
33b0: 66 61 34 62 34 30 63 39 66 38 34 61 63 39 62 63  fa4b40c9f84ac9bc
33c0: 62 62 35 33 35 65 38 36 39 38 39 65 63 36 64 31  bb535e86989ec6d1
33d0: 62 65 63 39 62 31 62 32 32 65 39 62 30 66 39 37  bec9b1b22e9b0f97
33e0: 33 37 30 65 64 30 66 30 64 35 36 36 30 38 32 38  370ed0f0d5660828
33f0: 39 39 64 39 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79  99d96]} \..-body
3400: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
3410: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
3420: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
3430: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
3440: 75 6c 74 20 33 39 66 31 30 34 63 31 64 61 34 61  ult 39f104c1da4a
3450: 66 33 31 34 64 36 62 63 65 62 33 34 65 63 61 31  f314d6bceb34eca1
3460: 64 66 65 34 65 36 37 34 38 34 35 31 39 65 62 37  dfe4e67484519eb7
3470: 36 62 61 33 38 65 34 37 30 31 65 31 31 33 65 36  6ba38e4701e113e6
3480: 63 62 63 30 32 30 30 64 66 38 36 65 34 34 33 39  cbc0200df86e4439
3490: 64 36 37 34 62 30 66 34 32 63 37 32 32 33 33 33  d674b0f42c722333
34a0: 36 30 34 37 38 62 61 35 32 34 34 33 38 34 64 32  60478ba5244384d2
34b0: 38 65 33 38 38 63 38 37 61 61 61 38 31 37 30 30  8e388c87aaa81700
34c0: 37 63 36 39 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  7c69..tcltest::t
34d0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
34e0: 32 2d 32 2e 33 38 20 7b 53 48 41 33 5f 35 31 32  2-2.38 {SHA3_512
34f0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
3500: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
3510: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
3520: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
3530: 65 63 6f 64 65 20 68 65 78 20 66 33 34 64 31 30  ecode hex f34d10
3540: 30 32 36 39 61 65 65 33 65 61 64 31 35 36 38 39  0269aee3ead15689
3550: 35 65 38 36 34 34 64 34 37 34 39 34 36 34 64 35  5e8644d4749464d5
3560: 39 32 31 64 36 31 35 37 64 66 66 63 62 62 61 64  921d6157dffcbbad
3570: 66 37 61 37 31 39 61 65 65 33 35 61 65 30 66 64  f7a719aee35ae0fd
3580: 34 38 37 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  4872]} \..-body 
3590: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
35a0: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
35b0: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
35c0: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
35d0: 6c 74 20 35 36 35 61 31 64 64 39 64 34 39 66 38  lt 565a1dd9d49f8
35e0: 64 64 65 66 62 37 39 61 33 63 37 61 32 30 39 66  ddefb79a3c7a209f
35f0: 35 33 66 30 62 63 39 66 35 33 39 36 32 36 39 62  53f0bc9f5396269b
3600: 31 63 65 32 61 32 62 32 38 33 61 33 63 62 34 35  1ce2a2b283a3cb45
3610: 65 65 33 61 65 36 35 32 65 34 63 61 31 30 62 32  ee3ae652e4ca10b2
3620: 36 63 65 64 37 65 35 32 33 36 32 32 37 30 30 36  6ced7e5236227006
3630: 63 39 34 61 33 37 35 35 33 64 62 31 62 36 66 65  c94a37553db1b6fe
3640: 35 63 30 63 32 65 64 65 64 37 35 36 63 38 39 36  5c0c2eded756c896
3650: 62 62 31 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  bb1..tcltest::te
3660: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
3670: 2d 32 2e 33 39 20 7b 53 48 41 33 5f 35 31 32 53  -2.39 {SHA3_512S
3680: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
3690: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
36a0: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
36b0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
36c0: 63 6f 64 65 20 68 65 78 20 31 32 35 32 39 37 36  code hex 1252976
36d0: 39 66 65 35 31 39 31 64 33 66 63 65 38 36 30 66  9fe5191d3fce860f
36e0: 34 33 34 61 62 31 31 33 30 63 65 33 38 39 64 33  434ab1130ce389d3
36f0: 34 30 66 63 61 32 33 32 63 63 35 30 62 37 35 33  40fca232cc50b753
3700: 36 65 36 32 61 64 36 31 37 37 34 32 65 30 32 32  6e62ad617742e022
3710: 65 61 33 38 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79  ea38a]} \..-body
3720: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
3730: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
3740: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
3750: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
3760: 75 6c 74 20 64 61 65 65 31 30 65 38 31 35 66 66  ult daee10e815ff
3770: 66 30 66 30 39 38 35 64 32 30 38 38 38 36 65 32  f0f0985d208886e2
3780: 32 66 39 62 66 32 30 61 33 36 34 33 65 62 39 61  2f9bf20a3643eb9a
3790: 32 39 66 64 61 34 36 39 62 36 61 37 64 63 64 35  29fda469b6a7dcd5
37a0: 34 62 35 32 31 33 63 38 35 31 64 36 66 31 39 33  4b5213c851d6f193
37b0: 33 38 64 36 33 36 38 38 66 65 31 66 30 32 39 33  38d63688fe1f0293
37c0: 36 63 35 64 61 65 31 62 37 63 36 64 35 39 30 36  6c5dae1b7c6d5906
37d0: 61 31 33 61 39 65 65 62 39 33 34 34 30 30 62 36  a13a9eeb934400b6
37e0: 66 65 38 63 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  fe8c..tcltest::t
37f0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
3800: 32 2d 32 2e 34 30 20 7b 53 48 41 33 5f 35 31 32  2-2.40 {SHA3_512
3810: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
3820: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
3830: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
3840: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
3850: 65 63 6f 64 65 20 68 65 78 20 62 32 65 33 61 30  ecode hex b2e3a0
3860: 65 62 33 36 62 66 31 36 61 66 62 36 31 38 62 66  eb36bf16afb618bf
3870: 64 34 32 61 35 36 37 38 39 31 37 39 31 34 37 65  d42a56789179147e
3880: 66 66 65 63 63 36 38 34 64 38 65 33 39 66 30 33  ffecc684d8e39f03
3890: 37 65 63 37 62 32 64 32 33 66 33 66 35 37 66 36  7ec7b2d23f3f57f6
38a0: 64 37 61 37 64 30 62 62 5d 7d 20 5c 0a 09 2d 62  d7a7d0bb]} \..-b
38b0: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
38c0: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
38d0: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
38e0: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
38f0: 72 65 73 75 6c 74 20 30 34 30 32 39 64 36 64 39  result 04029d6d9
3900: 65 38 65 33 39 34 61 66 61 33 38 37 66 31 64 30  e8e394afa387f1d0
3910: 33 61 62 36 62 38 61 30 61 36 63 62 61 62 34 62  3ab6b8a0a6cbab4b
3920: 36 62 33 63 38 36 65 66 36 32 66 37 31 34 32 61  6b3c86ef62f7142a
3930: 62 33 63 31 30 38 33 38 38 64 34 32 63 62 38 37  b3c108388d42cb87
3940: 32 35 38 62 39 65 36 64 33 36 65 35 38 31 34 64  258b9e6d36e5814d
3950: 38 61 36 36 32 36 35 37 63 66 37 31 37 62 33 35  8a662657cf717b35
3960: 61 35 37 30 38 33 36 35 65 38 65 63 30 33 39 36  a5708365e8ec0396
3970: 65 63 35 35 34 36 62 0a 0a 74 63 6c 74 65 73 74  ec5546b..tcltest
3980: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
3990: 2d 35 31 32 2d 32 2e 34 31 20 7b 53 48 41 33 5f  -512-2.41 {SHA3_
39a0: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
39b0: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
39c0: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
39d0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
39e0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 32 35 63  y decode hex 25c
39f0: 34 61 35 66 34 61 30 37 66 32 62 38 31 65 30 35  4a5f4a07f2b81e05
3a00: 33 33 33 31 33 36 36 34 62 66 36 31 35 63 37 33  33313664bf615c73
3a10: 32 35 37 65 36 62 32 39 33 30 65 37 35 32 66 65  257e6b2930e752fe
3a20: 35 30 35 30 65 32 35 66 66 30 32 37 33 31 66 64  5050e25ff02731fd
3a30: 32 38 37 32 66 34 66 35 36 66 37 32 37 5d 7d 20  2872f4f56f727]} 
3a40: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
3a50: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
3a60: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
3a70: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
3a80: 61 63 74 20 2d 72 65 73 75 6c 74 20 65 63 32 64  act -result ec2d
3a90: 33 38 65 35 62 62 35 64 37 62 31 38 34 33 38 64  38e5bb5d7b18438d
3aa0: 35 66 32 30 32 39 63 38 36 64 30 35 61 30 33 35  5f2029c86d05a035
3ab0: 31 30 64 62 30 65 36 36 61 61 32 39 39 63 32 38  10db0e66aa299c28
3ac0: 36 33 35 61 62 64 30 39 38 38 63 35 38 62 65 32  635abd0988c58be2
3ad0: 30 33 66 30 34 62 37 65 30 63 63 32 35 34 35 31  03f04b7e0cc25451
3ae0: 64 31 38 66 32 33 34 31 63 64 34 36 66 38 37 30  d18f2341cd46f870
3af0: 35 64 34 36 63 32 30 36 36 64 61 66 61 62 33 30  5d46c2066dafab30
3b00: 64 39 30 64 36 33 62 66 33 64 32 63 0a 0a 74 63  d90d63bf3d2c..tc
3b10: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
3b20: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 34 32 20 7b  _SHA3-512-2.42 {
3b30: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
3b40: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
3b50: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
3b60: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
3b70: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
3b80: 78 20 31 33 34 62 62 38 65 37 65 61 35 66 66 39  x 134bb8e7ea5ff9
3b90: 65 64 62 36 39 65 38 66 36 62 62 64 34 39 38 65  edb69e8f6bbd498e
3ba0: 62 34 35 33 37 35 38 30 62 37 66 62 61 37 61 64  b4537580b7fba7ad
3bb0: 33 31 64 30 61 30 39 39 32 31 32 33 37 61 63 64  31d0a09921237acd
3bc0: 37 64 36 36 66 34 64 61 32 33 34 38 30 62 39 63  7d66f4da23480b9c
3bd0: 31 32 32 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  1222]} \..-body 
3be0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
3bf0: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
3c00: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
3c10: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
3c20: 6c 74 20 38 66 39 36 36 61 65 66 39 36 38 33 31  lt 8f966aef96831
3c30: 61 31 34 39 39 64 36 33 35 36 30 62 32 35 37 38  a1499d63560b2578
3c40: 30 32 31 61 64 39 37 30 62 66 37 35 35 37 62 38  021ad970bf7557b8
3c50: 62 66 38 30 37 38 62 33 65 31 32 63 65 66 61 62  bf8078b3e12cefab
3c60: 31 32 32 66 65 37 31 62 31 32 31 32 64 63 37 30  122fe71b1212dc70
3c70: 34 66 37 30 39 34 61 34 30 62 33 36 62 37 31 64  4f7094a40b36b71d
3c80: 33 61 64 37 63 65 32 64 33 30 66 37 32 63 31 62  3ad7ce2d30f72c1b
3c90: 61 61 34 64 34 62 62 63 63 62 33 32 35 31 31 39  aa4d4bbccb325119
3ca0: 38 61 63 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  8ac..tcltest::te
3cb0: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
3cc0: 2d 32 2e 34 33 20 7b 53 48 41 33 5f 35 31 32 53  -2.43 {SHA3_512S
3cd0: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
3ce0: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
3cf0: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
3d00: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
3d10: 63 6f 64 65 20 68 65 78 20 66 37 39 33 32 35 36  code hex f793256
3d20: 66 30 33 39 66 61 64 31 31 61 66 32 34 63 65 65  f039fad11af24cee
3d30: 34 64 32 32 33 63 64 32 61 37 37 31 35 39 38 32  4d223cd2a7715982
3d40: 38 39 39 39 35 61 62 38 30 32 62 35 39 33 30 62  89995ab802b5930b
3d50: 61 35 63 36 36 36 61 32 34 31 38 38 34 35 33 64  a5c666a24188453d
3d60: 63 64 32 66 30 38 34 32 62 38 31 35 32 5d 7d 20  cd2f0842b8152]} 
3d70: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
3d80: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
3d90: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
3da0: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
3db0: 61 63 74 20 2d 72 65 73 75 6c 74 20 32 32 63 33  act -result 22c3
3dc0: 64 39 37 31 32 35 33 35 31 35 33 61 33 65 32 30  d9712535153a3e20
3dd0: 36 62 31 30 33 33 39 32 39 63 30 66 64 39 64 39  6b1033929c0fd9d9
3de0: 33 37 63 33 39 62 61 31 33 63 66 31 61 36 35 34  37c39ba13cf1a654
3df0: 34 64 66 62 64 36 38 65 62 63 39 34 38 36 37 62  4dfbd68ebc94867b
3e00: 31 35 66 64 61 33 66 31 64 33 30 62 30 30 62 66  15fda3f1d30b00bf
3e10: 34 37 66 32 63 34 62 66 34 31 64 61 62 64 65 61  47f2c4bf41dabdea
3e20: 61 35 63 33 39 37 64 61 65 39 30 31 63 35 37 64  a5c397dae901c57d
3e30: 62 39 63 64 37 37 64 64 62 63 63 30 0a 0a 74 63  b9cd77ddbcc0..tc
3e40: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
3e50: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 34 34 20 7b  _SHA3-512-2.44 {
3e60: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
3e70: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
3e80: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
3e90: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
3ea0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
3eb0: 78 20 32 33 63 63 37 66 39 30 35 32 64 35 65 32  x 23cc7f9052d5e2
3ec0: 32 65 36 37 31 32 66 61 62 38 38 65 38 64 66 61  2e6712fab88e8dfa
3ed0: 61 39 32 38 62 36 65 30 31 35 63 61 35 38 39 63  a928b6e015ca589c
3ee0: 33 62 38 39 63 62 37 34 35 62 37 35 36 63 61 37  3b89cb745b756ca7
3ef0: 63 37 36 33 34 61 35 30 33 62 66 30 32 32 38 65  c7634a503bf0228e
3f00: 37 31 63 32 38 65 65 32 5d 7d 20 5c 0a 09 2d 62  71c28ee2]} \..-b
3f10: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
3f20: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
3f30: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
3f40: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
3f50: 72 65 73 75 6c 74 20 36 65 63 66 33 61 64 36 30  result 6ecf3ad60
3f60: 36 34 32 31 38 65 65 31 30 31 61 35 35 35 64 32  64218ee101a555d2
3f70: 30 66 61 62 36 63 62 65 62 36 62 31 34 35 62 34  0fab6cbeb6b145b4
3f80: 65 65 62 39 63 38 63 39 37 31 66 63 37 63 65 30  eeb9c8c971fc7ce0
3f90: 35 35 38 31 61 33 34 62 33 63 35 32 31 37 39 35  5581a34b3c521795
3fa0: 39 30 65 38 61 31 33 34 62 65 32 65 38 38 63 37  90e8a134be2e88c7
3fb0: 65 35 34 39 38 37 35 66 34 66 66 38 39 62 39 36  e549875f4ff89b96
3fc0: 33 37 34 63 36 39 39 35 39 36 30 64 65 33 61 35  374c6995960de3a5
3fd0: 30 39 38 63 63 65 64 0a 0a 74 63 6c 74 65 73 74  098cced..tcltest
3fe0: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
3ff0: 2d 35 31 32 2d 32 2e 34 35 20 7b 53 48 41 33 5f  -512-2.45 {SHA3_
4000: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
4010: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
4020: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
4030: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
4040: 79 20 64 65 63 6f 64 65 20 68 65 78 20 61 36 30  y decode hex a60
4050: 62 37 62 33 64 66 31 35 62 33 66 31 62 31 39 64  b7b3df15b3f1b19d
4060: 62 31 35 64 34 38 30 33 38 38 62 30 66 33 62 30  b15d480388b0f3b0
4070: 30 38 33 37 33 36 39 61 61 32 63 63 37 63 33 64  0837369aa2cc7c3d
4080: 37 33 31 35 37 37 35 64 37 33 30 39 61 32 64 36  7315775d7309a2d6
4090: 66 36 64 31 33 37 31 64 39 63 38 37 35 33 35 30  f6d1371d9c875350
40a0: 64 65 63 30 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79  dec0a]} \..-body
40b0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
40c0: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
40d0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
40e0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
40f0: 75 6c 74 20 38 64 36 35 31 36 30 35 63 36 62 33  ult 8d651605c6b3
4100: 32 62 66 30 32 32 65 61 30 36 63 65 36 33 30 36  2bf022ea06ce6306
4110: 62 32 63 61 36 62 35 62 61 32 37 38 31 61 66 38  b2ca6b5ba2781af8
4120: 37 63 61 32 33 37 35 38 36 30 33 31 35 63 38 33  7ca2375860315c83
4130: 61 64 38 38 37 34 33 30 33 30 64 31 34 38 65 64  ad88743030d148ed
4140: 38 64 37 33 31 39 34 63 34 36 31 65 63 31 65 38  8d73194c461ec1e8
4150: 34 63 30 34 35 66 63 39 31 34 37 30 35 37 34 37  4c045fc914705747
4160: 36 31 34 63 30 34 63 38 38 36 35 62 35 31 64 61  614c04c8865b51da
4170: 39 34 66 37 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  94f7..tcltest::t
4180: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
4190: 32 2d 32 2e 34 36 20 7b 53 48 41 33 5f 35 31 32  2-2.46 {SHA3_512
41a0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
41b0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
41c0: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
41d0: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
41e0: 65 63 6f 64 65 20 68 65 78 20 32 37 34 35 64 64  ecode hex 2745dd
41f0: 32 66 31 62 32 31 35 65 61 35 30 39 61 39 31 32  2f1b215ea509a912
4200: 65 35 37 36 31 63 63 63 63 34 66 31 39 66 61 39  e5761cccc4f19fa9
4210: 33 62 61 33 38 34 34 35 63 35 32 38 63 62 32 66  3ba38445c528cb2f
4220: 30 39 39 64 65 39 39 61 62 39 66 61 63 39 35 35  099de99ab9fac955
4230: 62 61 61 32 31 31 66 64 38 35 33 39 61 36 37 31  baa211fd8539a671
4240: 63 64 62 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  cdb6]} \..-body 
4250: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
4260: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
4270: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
4280: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
4290: 6c 74 20 34 61 66 39 31 38 65 62 36 37 36 63 65  lt 4af918eb676ce
42a0: 32 37 38 63 37 33 30 32 31 32 65 66 37 39 64 38  278c730212ef79d8
42b0: 31 38 37 37 33 61 37 36 61 34 33 63 37 34 64 36  18773a76a43c74d6
42c0: 34 33 66 32 33 38 65 39 62 36 31 61 63 61 66 34  43f238e9b61acaf4
42d0: 30 33 30 63 36 31 37 63 34 64 36 62 33 62 37 35  030c617c4d6b3b75
42e0: 31 34 63 35 39 62 33 65 35 65 39 35 64 38 32 65  14c59b3e5e95d82e
42f0: 31 65 31 65 33 35 34 34 33 65 38 35 31 37 31 38  1e1e35443e851718
4300: 62 31 33 62 36 33 65 37 30 62 31 32 33 64 31 62  b13b63e70b123d1b
4310: 37 32 63 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  72c..tcltest::te
4320: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
4330: 2d 32 2e 34 37 20 7b 53 48 41 33 5f 35 31 32 53  -2.47 {SHA3_512S
4340: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
4350: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
4360: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
4370: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
4380: 63 6f 64 65 20 68 65 78 20 38 38 61 64 65 65 34  code hex 88adee4
4390: 62 34 36 64 32 61 31 30 39 63 33 36 66 63 66 62  b46d2a109c36fcfb
43a0: 36 36 30 66 31 37 66 34 38 30 36 32 66 37 61 37  660f17f48062f7a7
43b0: 34 36 37 39 66 62 30 37 65 38 36 63 61 64 38 34  4679fb07e86cad84
43c0: 66 37 39 66 64 35 37 63 38 36 64 34 32 36 33 35  f79fd57c86d42635
43d0: 36 65 63 38 65 36 38 63 36 35 62 33 63 61 61 35  6ec8e68c65b3caa5
43e0: 62 63 37 62 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79  bc7ba]} \..-body
43f0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
4400: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
4410: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
4420: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
4430: 75 6c 74 20 36 32 35 37 61 63 62 39 66 35 38 39  ult 6257acb9f589
4440: 63 39 31 39 63 39 33 63 30 61 64 63 34 65 39 30  c919c93c0adc4e90
4450: 37 66 65 30 31 31 62 65 66 36 30 31 38 66 62 62  7fe011bef6018fbb
4460: 31 38 65 36 31 38 62 61 36 66 63 63 38 63 62 63  18e618ba6fcc8cbc
4470: 35 65 34 30 36 34 31 62 65 35 38 39 65 38 36 64  5e40641be589e86d
4480: 62 62 30 63 66 37 64 37 64 36 62 66 33 33 62 39  bb0cf7d7d6bf33b9
4490: 38 64 38 34 35 38 63 63 65 30 61 66 37 38 35 37  8d8458cce0af7857
44a0: 66 35 61 37 63 37 36 34 37 63 66 33 35 30 65 32  f5a7c7647cf350e2
44b0: 35 61 66 30 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  5af0..tcltest::t
44c0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
44d0: 32 2d 32 2e 34 38 20 7b 53 48 41 33 5f 35 31 32  2-2.48 {SHA3_512
44e0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
44f0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
4500: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
4510: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
4520: 65 63 6f 64 65 20 68 65 78 20 37 64 34 30 66 32  ecode hex 7d40f2
4530: 64 63 34 61 66 33 63 66 61 31 32 62 30 30 64 36  dc4af3cfa12b00d6
4540: 34 39 34 30 64 63 33 32 61 32 32 64 36 36 64 38  4940dc32a22d66d8
4550: 31 63 62 36 32 38 62 65 32 62 38 64 64 61 34 37  1cb628be2b8dda47
4560: 65 64 36 37 32 38 30 32 30 64 35 35 62 36 39 35  ed6728020d55b695
4570: 65 37 35 32 36 30 66 34 65 63 31 38 63 36 64 37  e75260f4ec18c6d7
4580: 34 38 33 39 30 38 36 61 5d 7d 20 5c 0a 09 2d 62  4839086a]} \..-b
4590: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
45a0: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
45b0: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
45c0: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
45d0: 72 65 73 75 6c 74 20 35 63 34 36 63 38 34 61 30  result 5c46c84a0
45e0: 61 30 32 64 38 39 38 65 64 35 38 38 35 63 65 39  a02d898ed5885ce9
45f0: 39 63 34 37 63 37 37 61 66 64 32 39 61 65 30 31  9c47c77afd29ae01
4600: 35 64 30 32 37 66 32 34 38 35 64 36 33 30 66 39  5d027f2485d630f9
4610: 62 34 31 64 30 30 62 37 63 31 66 31 66 61 66 36  b41d00b7c1f1faf6
4620: 63 65 35 37 61 30 38 62 36 30 34 62 33 35 30 32  ce57a08b604b3502
4630: 31 66 37 66 37 39 36 30 30 33 38 31 39 39 34 62  1f7f79600381994b
4640: 37 33 31 62 64 38 65 36 61 35 62 30 31 30 61 65  731bd8e6a5b010ae
4650: 62 39 30 65 31 65 62 0a 0a 74 63 6c 74 65 73 74  b90e1eb..tcltest
4660: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
4670: 2d 35 31 32 2d 32 2e 34 39 20 7b 53 48 41 33 5f  -512-2.49 {SHA3_
4680: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
4690: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
46a0: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
46b0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
46c0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 33 36 38  y decode hex 368
46d0: 39 64 38 38 33 36 61 66 30 64 63 31 33 32 66 38  9d8836af0dc132f8
46e0: 35 62 32 31 32 65 62 36 37 30 62 34 31 65 63 66  5b212eb670b41ecf
46f0: 39 64 34 61 62 61 31 34 31 30 39 32 61 30 61 38  9d4aba141092a0a8
4700: 65 63 61 32 65 36 64 35 65 62 30 62 61 34 62 37  eca2e6d5eb0ba4b7
4710: 65 36 31 61 66 39 32 37 33 36 32 34 64 31 34 31  e61af9273624d141
4720: 39 32 64 66 37 33 38 38 61 38 34 33 36 5d 7d 20  92df7388a8436]} 
4730: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
4740: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
4750: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
4760: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
4770: 61 63 74 20 2d 72 65 73 75 6c 74 20 31 37 33 35  act -result 1735
4780: 35 65 36 31 64 36 36 65 34 30 66 37 35 30 64 30  5e61d66e40f750d0
4790: 61 39 61 38 65 38 61 38 38 63 64 36 66 39 62 66  a9a8e8a88cd6f9bf
47a0: 36 30 37 30 62 37 65 66 61 37 36 34 34 32 36 39  6070b7efa7644269
47b0: 38 37 34 30 62 34 34 38 37 65 61 36 63 36 34 34  8740b4487ea6c644
47c0: 64 31 36 35 34 65 66 31 36 61 32 36 35 32 30 34  d1654ef16a265204
47d0: 65 30 33 30 38 34 61 31 34 63 61 66 64 63 63 66  e03084a14cafdccf
47e0: 38 66 66 32 39 38 63 64 35 34 63 30 62 34 30 30  8ff298cd54c0b400
47f0: 39 39 36 37 62 36 64 64 34 37 63 63 0a 0a 74 63  9967b6dd47cc..tc
4800: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
4810: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 35 30 20 7b  _SHA3-512-2.50 {
4820: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
4830: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
4840: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
4850: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
4860: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
4870: 78 20 35 38 66 66 32 33 64 65 65 32 32 39 38 63  x 58ff23dee2298c
4880: 32 63 61 37 31 34 36 32 32 37 37 38 39 63 31 64  2ca7146227789c1d
4890: 34 30 39 33 35 35 31 30 34 37 31 39 32 64 38 36  4093551047192d86
48a0: 32 66 63 33 34 63 31 31 31 32 64 31 33 66 31 66  2fc34c1112d13f1f
48b0: 37 34 34 34 35 36 63 65 63 63 34 64 34 61 30 32  744456cecc4d4a02
48c0: 34 31 30 35 32 33 62 34 62 31 35 65 35 39 38 64  410523b4b15e598d
48d0: 66 37 35 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  f75a]} \..-body 
48e0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
48f0: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
4900: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
4910: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
4920: 6c 74 20 61 63 61 38 39 61 61 35 34 37 63 34 36  lt aca89aa547c46
4930: 31 37 33 62 34 62 32 61 33 38 30 62 61 39 38 30  173b4b2a380ba980
4940: 64 61 36 66 39 61 63 30 38 34 66 34 36 61 63 39  da6f9ac084f46ac9
4950: 64 64 65 61 35 65 34 31 36 34 61 65 65 66 33 31  ddea5e4164aeef31
4960: 61 39 39 35 35 62 38 31 34 61 34 35 61 65 63 31  a9955b814a45aec1
4970: 64 38 63 65 33 34 30 62 64 33 37 36 38 30 39 35  d8ce340bd3768095
4980: 32 63 35 64 36 38 32 32 36 64 64 61 31 63 61 63  2c5d68226dda1cac
4990: 32 36 37 37 66 37 33 63 39 66 64 39 31 37 34 66  2677f73c9fd9174f
49a0: 64 31 33 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  d13..tcltest::te
49b0: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
49c0: 2d 32 2e 35 31 20 7b 53 48 41 33 5f 35 31 32 53  -2.51 {SHA3_512S
49d0: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
49e0: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
49f0: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
4a00: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
4a10: 63 6f 64 65 20 68 65 78 20 36 37 66 33 66 32 33  code hex 67f3f23
4a20: 64 66 33 62 64 38 65 62 65 62 30 30 39 36 34 35  df3bd8ebeb009645
4a30: 32 66 65 34 37 37 35 66 64 39 63 63 37 31 66 62  2fe4775fd9cc71fb
4a40: 62 36 65 37 32 66 64 63 63 37 65 62 38 30 39 34  b6e72fdcc7eb8094
4a50: 66 34 32 63 39 30 33 31 32 31 64 30 38 31 37 61  f42c903121d0817a
4a60: 39 32 37 62 63 62 61 62 64 33 31 30 39 64 35 61  927bcbabd3109d5a
4a70: 37 30 34 32 30 32 35 33 64 65 61 62 32 5d 7d 20  70420253deab2]} 
4a80: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
4a90: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
4aa0: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
4ab0: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
4ac0: 61 63 74 20 2d 72 65 73 75 6c 74 20 66 34 32 30  act -result f420
4ad0: 37 63 63 35 36 35 66 32 36 36 61 32 34 35 66 32  7cc565f266a245f2
4ae0: 39 62 66 32 30 62 39 35 62 35 64 39 61 38 33 65  9bf20b95b5d9a83e
4af0: 31 62 62 36 38 61 64 39 38 38 65 64 63 39 31 66  1bb68ad988edc91f
4b00: 61 61 32 35 66 32 35 32 38 36 63 38 33 39 38 62  aa25f25286c8398b
4b10: 61 63 37 64 64 36 36 32 38 32 35 39 62 66 66 39  ac7dd6628259bff9
4b20: 38 66 32 38 33 36 30 66 32 36 33 64 66 63 35 34  8f28360f263dfc54
4b30: 63 34 32 32 38 62 63 34 33 37 63 35 36 39 31 64  c4228bc437c5691d
4b40: 65 31 32 31 39 62 37 35 38 64 39 66 0a 0a 74 63  e1219b758d9f..tc
4b50: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
4b60: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 35 32 20 7b  _SHA3-512-2.52 {
4b70: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
4b80: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
4b90: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
4ba0: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
4bb0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
4bc0: 78 20 61 32 32 35 30 37 30 63 32 63 62 31 32 32  x a225070c2cb122
4bd0: 63 33 33 35 34 63 37 34 61 32 35 34 66 63 37 62  c3354c74a254fc7b
4be0: 38 34 30 36 31 63 62 61 33 33 30 30 35 63 61 62  84061cba33005cab
4bf0: 38 38 63 34 30 39 66 62 64 33 37 33 38 66 66 36  88c409fbd3738ff6
4c00: 37 63 65 32 33 63 34 31 65 62 65 66 34 36 63 37  7ce23c41ebef46c7
4c10: 61 36 31 36 31 30 66 35 62 39 33 66 61 39 32 61  a61610f5b93fa92a
4c20: 35 62 64 61 39 35 36 39 5d 7d 20 5c 0a 09 2d 62  5bda9569]} \..-b
4c30: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
4c40: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
4c50: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
4c60: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
4c70: 72 65 73 75 6c 74 20 65 38 31 35 61 39 61 34 65  result e815a9a4e
4c80: 34 38 38 37 62 65 30 31 34 36 33 35 65 39 37 39  4887be014635e979
4c90: 35 38 33 34 31 65 30 35 31 39 33 31 34 62 33 61  58341e0519314b3a
4ca0: 33 32 38 39 65 31 38 33 35 31 32 31 62 31 35 33  3289e1835121b153
4cb0: 62 34 36 32 32 37 32 62 30 61 63 61 34 31 38 62  b462272b0aca418b
4cc0: 65 39 36 64 36 30 65 35 61 62 33 35 35 64 33 65  e96d60e5ab355d3e
4cd0: 62 34 36 33 36 39 37 63 30 31 39 31 65 62 35 32  b463697c0191eb52
4ce0: 32 62 36 30 62 38 34 36 33 64 38 39 66 34 63 33  2b60b8463d89f4c3
4cf0: 66 31 62 66 31 34 32 0a 0a 74 63 6c 74 65 73 74  f1bf142..tcltest
4d00: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
4d10: 2d 35 31 32 2d 32 2e 35 33 20 7b 53 48 41 33 5f  -512-2.53 {SHA3_
4d20: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
4d30: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
4d40: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
4d50: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
4d60: 79 20 64 65 63 6f 64 65 20 68 65 78 20 36 61 61  y decode hex 6aa
4d70: 30 38 38 36 37 37 37 65 39 39 63 39 61 63 64 35  0886777e99c9acd5
4d80: 66 31 64 62 36 65 31 32 62 64 61 35 39 61 38 30  f1db6e12bda59a80
4d90: 37 66 39 32 34 31 31 61 65 39 39 63 39 64 34 39  7f92411ae99c9d49
4da0: 30 62 35 36 35 36 61 63 62 34 62 31 31 35 63 35  0b5656acb4b115c5
4db0: 37 62 65 62 33 63 31 38 30 37 61 31 62 30 32 39  7beb3c1807a1b029
4dc0: 61 64 36 34 62 65 31 66 30 33 65 31 35 62 61 66  ad64be1f03e15baf
4dd0: 64 39 31 65 63 5d 7d 20 5c 0a 09 2d 62 6f 64 79  d91ec]} \..-body
4de0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
4df0: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
4e00: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
4e10: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
4e20: 75 6c 74 20 32 34 31 66 32 65 62 61 66 37 61 64  ult 241f2ebaf7ad
4e30: 30 39 65 31 37 33 62 31 38 34 32 34 34 65 36 39  09e173b184244e69
4e40: 61 63 64 37 65 62 63 39 34 37 37 34 64 30 66 61  acd7ebc94774d0fa
4e50: 33 39 30 32 63 62 66 32 36 37 64 34 38 30 36 30  3902cbf267d48060
4e60: 36 33 62 30 34 34 31 33 31 62 63 66 34 61 66 34  63b044131bcf4af4
4e70: 63 66 31 38 30 65 62 37 62 64 34 65 37 39 36 30  cf180eb7bd4e7960
4e80: 63 65 35 66 65 33 64 63 36 61 65 62 66 63 36 62  ce5fe3dc6aebfc6b
4e90: 39 30 65 65 63 34 36 31 66 34 31 34 66 37 39 61  90eec461f414f79a
4ea0: 36 37 64 39 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  67d9..tcltest::t
4eb0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
4ec0: 32 2d 32 2e 35 34 20 7b 53 48 41 33 5f 35 31 32  2-2.54 {SHA3_512
4ed0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
4ee0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
4ef0: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
4f00: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
4f10: 65 63 6f 64 65 20 68 65 78 20 36 61 30 36 30 39  ecode hex 6a0609
4f20: 32 61 33 63 64 32 32 31 61 65 38 36 62 32 38 36  2a3cd221ae86b286
4f30: 62 33 31 66 33 32 36 32 34 38 32 37 30 34 37 32  b31f326248270472
4f40: 63 35 65 61 35 31 30 63 62 39 30 36 34 64 36 30  c5ea510cb9064d60
4f50: 32 34 64 31 30 65 66 65 65 37 66 35 39 65 39 38  24d10efee7f59e98
4f60: 37 38 35 64 34 66 30 39 64 61 35 35 34 65 39 37  785d4f09da554e97
4f70: 63 64 65 63 37 62 37 35 34 32 39 64 37 38 38 63  cdec7b75429d788c
4f80: 31 31 32 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  112f]} \..-body 
4f90: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
4fa0: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
4fb0: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
4fc0: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
4fd0: 6c 74 20 64 31 34 61 31 61 34 37 66 32 62 65 66  lt d14a1a47f2bef
4fe0: 39 65 30 64 34 62 33 65 39 30 61 36 62 65 39 61  9e0d4b3e90a6be9a
4ff0: 62 35 38 39 33 65 31 31 31 30 62 31 32 64 62 33  b5893e1110b12db3
5000: 38 64 33 33 66 66 62 39 61 36 31 65 31 36 36 31  8d33ffb9a61e1661
5010: 61 65 63 63 34 65 61 31 30 30 38 33 39 63 66 65  aecc4ea100839cfe
5020: 65 35 38 61 31 63 35 61 66 66 37 32 39 31 35 63  e58a1c5aff72915c
5030: 31 34 31 37 30 64 64 39 39 65 31 33 66 37 31 62  14170dd99e13f71b
5040: 30 61 35 66 63 31 39 38 35 62 66 34 33 34 31 35  0a5fc1985bf43415
5050: 63 62 30 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  cb0..tcltest::te
5060: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
5070: 2d 32 2e 35 35 20 7b 53 48 41 33 5f 35 31 32 53  -2.55 {SHA3_512S
5080: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
5090: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
50a0: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
50b0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
50c0: 63 6f 64 65 20 68 65 78 20 64 66 63 33 66 61 36  code hex dfc3fa6
50d0: 31 66 37 66 66 66 63 37 63 38 38 65 64 39 30 65  1f7fffc7c88ed90e
50e0: 35 31 64 66 63 33 39 61 34 66 32 38 38 62 35 30  51dfc39a4f288b50
50f0: 64 35 38 61 63 38 33 33 38 35 62 35 38 61 33 62  d58ac83385b58a3b
5100: 32 61 33 61 33 39 64 37 32 39 38 36 32 63 34 30  2a3a39d729862c40
5110: 66 63 61 66 39 62 63 33 30 38 66 37 31 33 61 34  fcaf9bc308f713a4
5120: 33 65 65 63 62 30 62 37 32 62 62 39 34 35 38 64  3eecb0b72bb9458d
5130: 32 30 34 62 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79  204ba]} \..-body
5140: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
5150: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
5160: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
5170: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
5180: 75 6c 74 20 39 34 37 62 63 38 37 33 64 63 34 31  ult 947bc873dc41
5190: 64 66 31 39 35 66 38 30 34 35 64 65 62 36 65 61  df195f8045deb6ea
51a0: 31 62 38 34 30 66 36 33 33 39 31 37 65 37 39 63  1b840f633917e79c
51b0: 37 30 61 38 38 64 33 38 62 38 38 36 32 31 39 37  70a88d38b8862197
51c0: 64 63 32 61 62 30 63 63 36 33 31 34 65 39 37 34  dc2ab0cc6314e974
51d0: 66 62 35 62 61 37 65 31 37 30 33 62 32 32 62 31  fb5ba7e1703b22b1
51e0: 33 30 39 65 33 37 62 64 34 33 30 38 37 39 30 35  309e37bd43087905
51f0: 36 62 64 63 31 36 36 35 37 33 30 37 35 61 39 63  6bdc166573075a9c
5200: 35 65 30 34 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  5e04..tcltest::t
5210: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
5220: 32 2d 32 2e 35 36 20 7b 53 48 41 33 5f 35 31 32  2-2.56 {SHA3_512
5230: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
5240: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
5250: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
5260: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
5270: 65 63 6f 64 65 20 68 65 78 20 35 32 39 35 38 62  ecode hex 52958b
5280: 31 66 66 30 30 34 39 65 66 61 35 64 30 35 30 61  1ff0049efa5d050a
5290: 62 33 38 31 65 63 39 39 37 33 32 65 35 35 34 64  b381ec99732e554d
52a0: 63 64 30 33 37 32 35 64 61 39 39 31 61 33 37 61  cd03725da991a37a
52b0: 38 30 62 64 34 37 35 36 63 66 36 35 64 33 36 37  80bd4756cf65d367
52c0: 63 35 34 37 32 31 65 39 33 66 31 65 30 61 32 32  c54721e93f1e0a22
52d0: 66 37 30 64 33 36 65 39 66 38 34 31 33 33 36 39  f70d36e9f8413369
52e0: 35 36 64 33 63 35 32 33 5d 7d 20 5c 0a 09 2d 62  56d3c523]} \..-b
52f0: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
5300: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
5310: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
5320: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
5330: 72 65 73 75 6c 74 20 39 63 63 35 61 61 64 30 66  result 9cc5aad0f
5340: 35 32 39 66 34 62 61 63 34 39 31 64 37 33 33 35  529f4bac491d7335
5350: 33 37 62 36 39 63 38 65 63 37 30 30 66 65 33 38  37b69c8ec700fe38
5360: 61 62 34 32 33 64 38 31 35 65 30 39 32 37 63 38  ab423d815e0927c8
5370: 36 35 37 66 39 63 62 38 66 34 32 30 37 37 36 32  657f9cb8f4207762
5380: 64 38 31 36 61 62 36 39 37 35 38 30 31 32 32 30  d816ab6975801220
5390: 36 36 62 63 32 62 36 38 66 34 31 37 37 33 33 35  66bc2b68f4177335
53a0: 64 30 61 36 65 39 30 38 31 35 34 30 37 37 39 65  d0a6e9081540779e
53b0: 35 37 32 63 34 31 66 0a 0a 74 63 6c 74 65 73 74  572c41f..tcltest
53c0: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
53d0: 2d 35 31 32 2d 32 2e 35 37 20 7b 53 48 41 33 5f  -512-2.57 {SHA3_
53e0: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
53f0: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
5400: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
5410: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
5420: 79 20 64 65 63 6f 64 65 20 68 65 78 20 33 30 32  y decode hex 302
5430: 66 61 38 34 66 64 61 61 38 32 30 38 31 62 31 31  fa84fdaa82081b11
5440: 39 32 62 38 34 37 62 38 31 64 64 65 61 31 30 61  92b847b81ddea10a
5450: 39 66 30 35 61 30 66 30 34 31 33 38 66 64 31 64  9f05a0f04138fd1d
5460: 61 38 34 61 33 39 62 61 35 65 31 38 65 31 38 62  a84a39ba5e18e18b
5470: 63 33 63 65 61 30 36 32 65 36 64 66 39 32 66 66  c3cea062e6df92ff
5480: 31 61 63 65 38 39 62 33 63 35 66 35 35 30 34 33  1ace89b3c5f55043
5490: 31 33 30 31 30 38 61 62 66 36 33 31 65 5d 7d 20  130108abf631e]} 
54a0: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
54b0: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
54c0: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
54d0: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
54e0: 61 63 74 20 2d 72 65 73 75 6c 74 20 38 63 38 65  act -result 8c8e
54f0: 61 61 65 39 61 34 34 35 36 34 33 61 33 37 64 66  aae9a445643a37df
5500: 33 34 63 66 61 36 61 37 66 30 39 64 65 63 63 61  34cfa6a7f09decca
5510: 62 32 61 32 32 32 63 34 32 31 64 32 66 63 35 37  b2a222c421d2fc57
5520: 34 62 62 63 35 36 34 31 65 35 30 34 33 35 34 33  4bbc5641e5043543
5530: 39 31 65 38 31 65 62 35 31 33 30 32 38 30 62 31  91e81eb5130280b1
5540: 32 32 36 38 31 32 35 35 36 64 34 37 34 65 39 35  226812556d474e95
5550: 31 62 62 37 38 64 62 64 64 39 62 37 37 64 31 39  1bb78dbdd9b77d19
5560: 66 36 34 37 65 32 65 37 64 37 62 65 0a 0a 74 63  f647e2e7d7be..tc
5570: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
5580: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 35 38 20 7b  _SHA3-512-2.58 {
5590: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
55a0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
55b0: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
55c0: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
55d0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
55e0: 78 20 62 38 32 66 35 30 30 64 36 62 63 32 64 64  x b82f500d6bc2dd
55f0: 64 63 64 63 31 36 32 64 34 36 63 62 66 61 61 35  dcdc162d46cbfaa5
5600: 61 65 36 34 30 32 35 64 35 63 31 63 64 37 32 34  ae64025d5c1cd724
5610: 37 32 64 63 64 32 63 34 32 31 36 31 63 39 38 37  72dcd2c42161c987
5620: 31 63 65 33 32 39 66 39 34 64 66 34 34 35 66 30  1ce329f94df445f0
5630: 63 38 61 63 65 65 63 61 66 64 30 33 34 34 66 36  c8aceecafd0344f6
5640: 33 31 37 65 63 62 62 36 32 66 30 65 63 32 32 32  317ecbb62f0ec222
5650: 33 61 33 35 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  3a35]} \..-body 
5660: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
5670: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
5680: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
5690: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
56a0: 6c 74 20 35 35 63 36 39 64 37 61 63 63 64 31 37  lt 55c69d7accd17
56b0: 39 64 35 64 39 66 63 63 35 32 32 66 37 39 34 65  9d5d9fcc522f794e
56c0: 37 61 66 35 66 30 65 65 63 37 31 39 38 66 66 61  7af5f0eec7198ffa
56d0: 33 39 66 38 30 66 62 35 35 62 38 36 36 63 30 38  39f80fb55b866c08
56e0: 35 37 66 66 33 65 37 61 65 65 66 33 33 65 31 33  57ff3e7aeef33e13
56f0: 30 64 39 63 37 34 65 66 39 30 36 30 36 63 61 38  0d9c74ef90606ca8
5700: 32 31 64 32 30 62 37 36 30 38 62 31 32 65 36 65  21d20b7608b12e6e
5710: 35 36 31 66 39 65 36 63 37 31 32 32 61 63 65 33  561f9e6c7122ace3
5720: 64 62 30 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  db0..tcltest::te
5730: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
5740: 2d 32 2e 35 39 20 7b 53 48 41 33 5f 35 31 32 53  -2.59 {SHA3_512S
5750: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
5760: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
5770: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
5780: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
5790: 63 6f 64 65 20 68 65 78 20 38 36 64 61 39 31 30  code hex 86da910
57a0: 37 63 61 33 65 31 36 61 32 62 35 38 39 35 30 65  7ca3e16a2b58950e
57b0: 36 35 36 61 31 35 63 30 38 35 62 38 38 30 33 33  656a15c085b88033
57c0: 65 37 39 33 31 33 65 32 63 30 66 39 32 66 39 39  e79313e2c0f92f99
57d0: 66 30 36 66 61 31 38 37 65 66 62 61 35 62 38 66  f06fa187efba5b8f
57e0: 65 61 30 38 65 62 37 31 34 35 66 38 34 37 36 33  ea08eb7145f84763
57f0: 30 34 31 38 30 64 64 32 38 30 66 33 36 61 30 37  04180dd280f36a07
5800: 32 62 37 65 61 63 31 39 37 66 30 38 35 5d 7d 20  2b7eac197f085]} 
5810: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
5820: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
5830: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
5840: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
5850: 61 63 74 20 2d 72 65 73 75 6c 74 20 30 64 33 62  act -result 0d3b
5860: 31 61 30 34 35 39 62 34 65 63 61 38 30 31 65 30  1a0459b4eca801e0
5870: 37 33 37 66 66 39 65 61 34 61 31 32 62 39 61 34  737ff9ea4a12b9a4
5880: 38 33 61 37 33 61 38 61 39 32 37 34 32 61 39 33  83a73a8a92742a93
5890: 63 32 39 37 62 37 31 34 39 33 32 36 62 64 39 32  c297b7149326bd92
58a0: 63 31 36 34 33 63 38 31 37 37 63 38 39 32 34 34  c1643c8177c89244
58b0: 38 32 61 62 33 62 62 64 39 31 36 63 34 31 37 35  82ab3bbd916c4175
58c0: 38 30 63 63 37 35 64 33 64 33 61 65 30 39 36 64  80cc75d3d3ae096d
58d0: 65 35 33 31 62 63 35 64 63 33 35 35 0a 0a 74 63  e531bc5dc355..tc
58e0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
58f0: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 36 30 20 7b  _SHA3-512-2.60 {
5900: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
5910: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
5920: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
5930: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
5940: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
5950: 78 20 31 34 31 61 36 65 61 66 65 31 35 37 30 35  x 141a6eafe15705
5960: 33 65 37 38 30 61 63 37 61 35 37 62 39 37 39 39  3e780ac7a57b9799
5970: 30 36 31 36 63 65 31 37 35 39 65 64 31 33 32 63  0616ce1759ed132c
5980: 62 34 35 33 62 63 64 66 63 61 62 64 62 62 37 30  b453bcdfcabdbb70
5990: 62 33 37 36 37 64 61 34 65 62 39 34 31 32 35 64  b3767da4eb94125d
59a0: 39 63 32 61 38 64 36 64 32 30 62 66 61 65 61 63  9c2a8d6d20bfaeac
59b0: 63 31 66 66 62 65 34 39 63 34 62 31 62 62 35 64  c1ffbe49c4b1bb5d
59c0: 61 37 65 39 62 35 63 36 5d 7d 20 5c 0a 09 2d 62  a7e9b5c6]} \..-b
59d0: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
59e0: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
59f0: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
5a00: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
5a10: 72 65 73 75 6c 74 20 62 64 62 64 64 35 62 39 34  result bdbdd5b94
5a20: 63 64 63 38 39 34 36 36 65 37 36 37 30 63 36 33  cdc89466e7670c63
5a30: 62 61 36 61 35 35 62 35 38 32 39 34 65 39 33 62  ba6a55b58294e93b
5a40: 33 35 31 32 36 31 61 35 34 35 37 62 66 35 61 34  351261a5457bf5a4
5a50: 30 66 31 62 35 62 32 65 30 61 63 63 37 66 63 65  0f1b5b2e0acc7fce
5a60: 62 31 62 66 62 34 63 38 38 37 32 37 37 37 65 65  b1bfb4c8872777ee
5a70: 65 61 66 66 37 39 32 37 66 64 33 36 33 35 63 61  eaff7927fd3635ca
5a80: 31 38 63 39 39 36 64 38 37 30 62 66 38 36 62 31  18c996d870bf86b1
5a90: 32 62 38 39 62 61 35 0a 0a 74 63 6c 74 65 73 74  2b89ba5..tcltest
5aa0: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
5ab0: 2d 35 31 32 2d 32 2e 36 31 20 7b 53 48 41 33 5f  -512-2.61 {SHA3_
5ac0: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
5ad0: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
5ae0: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
5af0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
5b00: 79 20 64 65 63 6f 64 65 20 68 65 78 20 36 65 30  y decode hex 6e0
5b10: 63 36 35 65 65 30 39 34 33 65 33 34 64 39 62 62  c65ee0943e34d9bb
5b20: 64 32 37 61 38 35 34 37 36 39 30 66 32 32 39 31  d27a8547690f2291
5b30: 66 35 61 38 36 64 37 31 33 63 32 62 65 32 35 38  f5a86d713c2be258
5b40: 65 36 61 63 31 36 39 31 39 66 65 39 63 34 64 34  e6ac16919fe9c4d4
5b50: 39 31 38 39 35 64 33 61 39 36 31 62 62 39 37 66  91895d3a961bb97f
5b60: 35 66 61 63 32 35 35 38 39 31 61 30 65 61 61 31  5fac255891a0eaa1
5b70: 38 66 38 30 65 31 66 61 31 65 62 63 62 36 33 39  8f80e1fa1ebcb639
5b80: 66 63 66 63 31 5d 7d 20 5c 0a 09 2d 62 6f 64 79  fcfc1]} \..-body
5b90: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
5ba0: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
5bb0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
5bc0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
5bd0: 75 6c 74 20 33 39 65 62 62 39 39 32 62 38 64 33  ult 39ebb992b8d3
5be0: 39 64 61 61 65 39 37 33 65 33 38 31 33 61 35 30  9daae973e3813a50
5bf0: 65 39 65 37 39 61 36 37 64 38 34 35 38 61 36 66  e9e79a67d8458a6f
5c00: 31 37 66 39 37 61 36 64 64 33 30 64 64 37 64 31  17f97a6dd30dd7d1
5c10: 31 64 39 35 37 30 31 61 31 31 31 32 39 66 66 65  1d95701a11129ffe
5c20: 61 66 37 64 34 35 37 38 31 62 32 31 63 61 63 30  af7d45781b21cac0
5c30: 63 34 63 30 33 34 65 33 38 39 64 37 35 39 30 64  c4c034e389d7590d
5c40: 66 35 62 65 65 62 39 38 30 35 30 37 32 64 30 31  f5beeb9805072d01
5c50: 38 33 62 39 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  83b9..tcltest::t
5c60: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
5c70: 32 2d 32 2e 36 32 20 7b 53 48 41 33 5f 35 31 32  2-2.62 {SHA3_512
5c80: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
5c90: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
5ca0: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
5cb0: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
5cc0: 65 63 6f 64 65 20 68 65 78 20 35 37 37 38 30 62  ecode hex 57780b
5cd0: 31 63 37 39 65 36 37 66 63 33 62 65 61 61 62 65  1c79e67fc3beaabe
5ce0: 61 64 34 61 36 37 61 38 63 63 39 38 62 38 33 66  ad4a67a8cc98b83f
5cf0: 61 37 36 34 37 65 61 65 35 30 63 38 37 39 38 62  a7647eae50c8798b
5d00: 39 36 61 35 31 36 35 39 37 62 34 34 38 38 35 31  96a516597b448851
5d10: 65 39 33 64 31 61 36 32 61 30 39 38 63 34 37 36  e93d1a62a098c476
5d20: 37 33 33 33 66 63 66 37 62 34 36 33 63 65 39 31  7333fcf7b463ce91
5d30: 65 64 64 65 32 66 33 61 64 30 64 39 38 66 37 30  edde2f3ad0d98f70
5d40: 37 31 36 64 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  716d]} \..-body 
5d50: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
5d60: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
5d70: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
5d80: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
5d90: 6c 74 20 33 65 66 33 36 63 33 65 66 66 61 64 36  lt 3ef36c3effad6
5da0: 65 62 35 61 64 32 64 30 61 36 37 37 38 30 66 38  eb5ad2d0a67780f8
5db0: 30 64 31 62 39 30 65 66 63 62 37 34 64 62 32 30  0d1b90efcb74db20
5dc0: 34 31 30 63 32 32 36 31 61 33 61 62 30 66 37 38  410c2261a3ab0f78
5dd0: 34 34 32 39 64 66 38 37 34 38 31 34 37 34 38 64  4429df874814748d
5de0: 63 31 62 36 65 66 61 61 62 33 64 30 36 64 64 30  c1b6efaab3d06dd0
5df0: 61 34 31 62 61 35 34 66 63 65 35 39 62 36 37 64  a41ba54fce59b67d
5e00: 34 35 38 33 38 65 61 61 34 61 61 31 66 61 64 66  45838eaa4aa1fadf
5e10: 61 30 66 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  a0f..tcltest::te
5e20: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
5e30: 2d 32 2e 36 33 20 7b 53 48 41 33 5f 35 31 32 53  -2.63 {SHA3_512S
5e40: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
5e50: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
5e60: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
5e70: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
5e80: 63 6f 64 65 20 68 65 78 20 62 63 63 39 38 34 39  code hex bcc9849
5e90: 64 61 34 30 39 31 64 30 65 64 66 65 39 30 38 65  da4091d0edfe908e
5ea0: 37 63 33 33 38 36 62 30 63 61 64 61 64 62 32 38  7c3386b0cadadb28
5eb0: 35 39 38 32 39 63 39 64 66 65 65 33 64 38 65 63  59829c9dfee3d8ec
5ec0: 66 39 64 65 63 38 36 31 39 36 65 62 32 63 65 62  f9dec86196eb2ceb
5ed0: 30 39 33 63 35 35 35 31 66 37 65 39 61 34 39 32  093c5551f7e9a492
5ee0: 37 66 61 61 62 63 66 61 61 37 34 37 38 66 37 63  7faabcfaa7478f7c
5ef0: 38 39 39 63 62 65 66 34 37 32 37 34 31 37 37 33  899cbef472741773
5f00: 38 66 63 30 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79  8fc06]} \..-body
5f10: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
5f20: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
5f30: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
5f40: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
5f50: 75 6c 74 20 31 66 63 64 38 61 32 63 37 62 34 66  ult 1fcd8a2c7b4f
5f60: 64 39 38 66 63 64 63 35 66 61 36 36 35 62 61 62  d98fcdc5fa665bab
5f70: 34 39 62 64 65 33 66 39 66 35 35 36 61 61 36 36  49bde3f9f556aa66
5f80: 62 33 36 34 36 36 33 38 66 35 61 32 64 33 38 30  b3646638f5a2d380
5f90: 36 31 39 32 66 38 61 33 33 31 34 35 64 38 64 30  6192f8a33145d8d0
5fa0: 63 35 33 35 63 38 35 61 64 66 66 33 63 63 30 65  c535c85adff3cc0e
5fb0: 61 33 63 32 37 31 35 62 33 33 63 65 63 39 66 38  a3c2715b33cec9f8
5fc0: 38 38 36 65 39 66 34 33 37 37 62 33 36 33 32 65  886e9f4377b3632e
5fd0: 39 30 35 35 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  9055..tcltest::t
5fe0: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
5ff0: 32 2d 32 2e 36 34 20 7b 53 48 41 33 5f 35 31 32  2-2.64 {SHA3_512
6000: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
6010: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
6020: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
6030: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
6040: 65 63 6f 64 65 20 68 65 78 20 30 35 61 33 32 38  ecode hex 05a328
6050: 32 39 36 34 32 65 64 34 38 30 38 64 36 35 35 34  29642ed4808d6554
6060: 64 31 36 62 39 62 38 30 32 33 33 35 33 63 65 36  d16b9b8023353ce6
6070: 35 61 39 33 35 64 31 32 36 36 30 32 39 37 30 64  5a935d126602970d
6080: 62 61 37 39 31 36 32 33 30 30 34 64 65 64 65 39  ba791623004dede9
6090: 30 62 35 32 61 63 37 66 30 64 34 33 33 35 31 33  0b52ac7f0d433513
60a0: 30 61 36 33 63 62 61 36 38 63 36 35 36 63 31 33  0a63cba68c656c13
60b0: 39 39 38 39 36 31 34 64 65 32 30 39 31 33 65 38  9989614de20913e8
60c0: 33 64 62 33 32 30 64 62 5d 7d 20 5c 0a 09 2d 62  3db320db]} \..-b
60d0: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
60e0: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
60f0: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
6100: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
6110: 72 65 73 75 6c 74 20 34 39 64 38 37 34 37 62 62  result 49d8747bb
6120: 35 33 64 64 64 65 36 64 31 34 38 35 39 36 35 32  53ddde6d14859652
6130: 30 38 36 37 30 64 31 31 33 30 62 66 33 35 36 31  08670d1130bf3561
6140: 39 64 37 35 30 36 61 32 66 32 30 34 30 64 31 31  9d7506a2f2040d11
6150: 32 39 66 63 66 30 33 32 30 32 30 37 65 35 62 33  29fcf0320207e5b3
6160: 36 66 65 61 30 38 33 65 38 34 66 66 63 39 38 37  6fea083e84ffc987
6170: 35 35 65 36 39 31 61 64 38 62 64 35 64 63 36 36  55e691ad8bd5dc66
6180: 66 38 39 37 32 63 62 39 38 35 37 33 38 39 33 34  f8972cb985738934
6190: 34 65 31 31 61 61 64 0a 0a 74 63 6c 74 65 73 74  4e11aad..tcltest
61a0: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
61b0: 2d 35 31 32 2d 32 2e 36 35 20 7b 53 48 41 33 5f  -512-2.65 {SHA3_
61c0: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
61d0: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
61e0: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
61f0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
6200: 79 20 64 65 63 6f 64 65 20 68 65 78 20 35 36 61  y decode hex 56a
6210: 63 34 66 36 38 34 35 61 34 35 31 64 61 63 33 65  c4f6845a451dac3e
6220: 38 38 38 36 66 39 37 66 37 30 32 34 62 36 34 62  8886f97f7024b64b
6230: 31 62 31 65 39 63 35 31 38 31 63 30 35 39 62 35  1b1e9c5181c059b5
6240: 37 35 35 62 39 61 36 30 34 32 62 65 36 35 33 61  755b9a6042be653a
6250: 32 61 30 64 35 64 35 36 61 39 65 31 65 37 37 34  2a0d5d56a9e1e774
6260: 62 65 35 63 39 33 31 32 66 34 38 62 34 37 39 38  be5c9312f48b4798
6270: 30 31 39 33 34 35 62 65 61 65 32 66 66 63 63 36  019345beae2ffcc6
6280: 33 35 35 34 61 33 63 36 39 38 36 32 65 5d 7d 20  3554a3c69862e]} 
6290: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
62a0: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
62b0: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
62c0: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
62d0: 61 63 74 20 2d 72 65 73 75 6c 74 20 35 66 64 65  act -result 5fde
62e0: 35 63 35 37 61 33 31 66 65 62 62 39 38 30 36 31  5c57a31febb98061
62f0: 66 32 37 65 34 35 30 36 66 61 35 63 32 34 35 35  f27e4506fa5c2455
6300: 30 36 33 33 36 65 65 39 30 64 35 39 35 63 39 31  06336ee90d595c91
6310: 64 37 39 31 61 35 39 37 35 63 37 31 32 62 33 61  d791a5975c712b3a
6320: 62 39 62 33 62 35 38 36 38 66 39 34 31 64 62 30  b9b3b5868f941db0
6330: 61 65 62 34 63 36 64 32 38 33 37 63 34 34 34 37  aeb4c6d2837c4447
6340: 34 34 32 66 38 34 30 32 65 30 65 31 35 30 61 39  442f8402e0e150a9
6350: 64 63 30 65 66 31 37 38 64 63 61 38 0a 0a 74 63  dc0ef178dca8..tc
6360: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
6370: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 36 36 20 7b  _SHA3-512-2.66 {
6380: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
6390: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
63a0: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
63b0: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
63c0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
63d0: 78 20 38 61 32 32 39 66 38 64 30 32 39 34 66 65  x 8a229f8d0294fe
63e0: 39 30 64 34 63 63 38 63 38 37 35 34 36 30 64 35  90d4cc8c875460d5
63f0: 64 36 32 33 66 39 33 32 38 37 66 39 30 35 61 39  d623f93287f905a9
6400: 39 39 61 32 61 62 30 66 39 61 34 37 30 34 36 66  99a2ab0f9a47046f
6410: 37 38 65 66 38 38 62 30 39 34 34 35 63 36 37 31  78ef88b09445c671
6420: 31 38 39 63 35 39 33 38 38 62 33 30 31 37 63 63  189c59388b3017cc
6430: 61 32 61 66 38 62 64 66 35 39 66 38 61 36 66 30  a2af8bdf59f8a6f0
6440: 34 33 32 32 62 31 37 30 31 65 63 30 38 36 32 34  4322b1701ec08624
6450: 61 62 36 33 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  ab63]} \..-body 
6460: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
6470: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
6480: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
6490: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
64a0: 6c 74 20 31 36 62 30 66 64 32 33 39 63 63 36 33  lt 16b0fd239cc63
64b0: 32 38 34 32 63 34 34 33 65 31 62 39 32 64 32 38  2842c443e1b92d28
64c0: 36 64 64 35 31 39 63 66 63 36 31 36 61 34 31 66  6dd519cfc616a41f
64d0: 32 34 35 36 64 64 35 63 64 64 65 62 64 31 30 37  2456dd5cddebd107
64e0: 30 33 63 33 65 39 63 62 36 36 39 30 30 34 62 37  03c3e9cb669004b7
64f0: 66 31 36 39 62 62 34 66 39 39 66 33 35 30 65 63  f169bb4f99f350ec
6500: 39 36 39 30 34 62 30 65 38 64 64 34 64 65 38 65  96904b0e8dd4de8e
6510: 36 62 65 39 39 35 33 64 63 38 39 32 63 36 35 30  6be9953dc892c650
6520: 39 39 66 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  99f..tcltest::te
6530: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
6540: 2d 32 2e 36 37 20 7b 53 48 41 33 5f 35 31 32 53  -2.67 {SHA3_512S
6550: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
6560: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
6570: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
6580: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
6590: 63 6f 64 65 20 68 65 78 20 38 37 64 36 61 61 39  code hex 87d6aa9
65a0: 39 37 39 30 32 35 62 32 34 33 37 65 61 38 31 35  979025b2437ea815
65b0: 39 65 61 31 64 33 65 35 64 36 66 31 37 66 30 61  9ea1d3e5d6f17f0a
65c0: 35 62 39 31 33 62 35 36 39 37 30 32 31 32 66 35  5b913b56970212f5
65d0: 36 64 65 37 38 38 34 38 34 30 63 30 64 61 39 61  6de7884840c0da9a
65e0: 37 32 38 36 35 65 31 38 39 32 61 61 37 38 30 62  72865e1892aa780b
65f0: 38 62 38 66 35 66 35 37 62 34 36 66 63 30 37 30  8b8f5f57b46fc070
6600: 62 38 31 63 61 35 66 30 30 65 65 65 30 34 37 30  b81ca5f00eee0470
6610: 61 63 65 38 39 62 31 65 31 34 36 36 61 5d 7d 20  ace89b1e1466a]} 
6620: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
6630: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
6640: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
6650: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
6660: 61 63 74 20 2d 72 65 73 75 6c 74 20 64 38 31 36  act -result d816
6670: 61 63 66 31 37 39 37 64 65 63 66 65 33 34 66 34  acf1797decfe34f4
6680: 63 63 34 39 65 35 32 61 61 35 30 35 63 63 35 39  cc49e52aa505cc59
6690: 62 64 31 37 66 65 36 39 64 63 39 35 34 33 66 61  bd17fe69dc9543fa
66a0: 64 38 32 65 39 63 66 39 36 32 39 38 31 38 33 30  d82e9cf962981830
66b0: 32 31 66 37 30 34 30 35 34 64 33 64 30 36 61 64  21f704054d3d06ad
66c0: 64 65 32 62 66 35 34 65 38 32 61 30 39 30 61 35  de2bf54e82a090a5
66d0: 37 62 32 33 39 65 38 38 64 61 61 30 34 63 62 37  7b239e88daa04cb7
66e0: 36 63 34 66 63 39 31 32 37 38 34 33 0a 0a 74 63  6c4fc9127843..tc
66f0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
6700: 5f 53 48 41 33 2d 35 31 32 2d 32 2e 36 38 20 7b  _SHA3-512-2.68 {
6710: 53 48 41 33 5f 35 31 32 53 68 6f 72 74 4d 73 67  SHA3_512ShortMsg
6720: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
6730: 73 20 53 48 41 33 5f 35 31 32 20 5c 0a 09 2d 73  s SHA3_512 \..-s
6740: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
6750: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
6760: 78 20 30 38 32 33 36 31 36 61 62 38 37 65 34 39  x 0823616ab87e49
6770: 30 34 33 30 38 36 32 38 63 32 32 32 36 65 37 32  04308628c2226e72
6780: 31 62 62 34 31 36 39 62 37 64 33 34 65 38 37 34  1bb4169b7d34e874
6790: 34 61 30 37 30 30 62 37 32 31 65 33 38 66 65 30  4a0700b721e38fe0
67a0: 35 65 33 66 38 31 33 66 65 34 30 37 35 64 34 63  5e3f813fe4075d4c
67b0: 31 61 39 33 36 64 33 61 33 33 64 61 32 30 63 66  1a936d3a33da20cf
67c0: 62 33 65 33 61 63 37 32 32 65 37 64 66 37 38 36  b3e3ac722e7df786
67d0: 35 33 33 30 62 38 66 36 32 61 37 33 64 39 31 31  5330b8f62a73d911
67e0: 39 61 31 66 32 31 39 39 5d 7d 20 5c 0a 09 2d 62  9a1f2199]} \..-b
67f0: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
6800: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
6810: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
6820: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
6830: 72 65 73 75 6c 74 20 65 31 64 61 36 62 65 34 34  result e1da6be44
6840: 30 33 61 34 66 64 37 38 34 63 35 39 62 65 34 65  03a4fd784c59be4e
6850: 37 31 63 36 35 38 61 37 38 62 62 38 63 35 64 37  71c658a78bb8c5d7
6860: 64 35 37 31 63 35 65 38 31 36 66 62 62 33 65 32  d571c5e816fbb3e2
6870: 31 38 61 34 31 36 32 66 36 32 64 65 31 63 32 38  18a4162f62de1c28
6880: 35 66 33 37 37 39 37 38 31 63 62 35 35 30 36 65  5f3779781cb5506e
6890: 32 39 63 39 34 65 31 62 37 63 37 64 36 35 61 66  29c94e1b7c7d65af
68a0: 32 61 61 37 31 65 61 35 63 39 36 64 39 35 38 35  2aa71ea5c96d9585
68b0: 62 35 65 34 35 64 35 0a 0a 74 63 6c 74 65 73 74  b5e45d5..tcltest
68c0: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
68d0: 2d 35 31 32 2d 32 2e 36 39 20 7b 53 48 41 33 5f  -512-2.69 {SHA3_
68e0: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
68f0: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
6900: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
6910: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
6920: 79 20 64 65 63 6f 64 65 20 68 65 78 20 37 64 32  y decode hex 7d2
6930: 64 39 31 33 63 32 34 36 30 63 30 39 38 39 38 62  d913c2460c09898b
6940: 32 30 33 36 36 61 65 33 34 37 37 35 62 31 35 36  20366ae34775b156
6950: 34 66 31 30 65 64 65 61 34 39 63 30 37 33 63 65  4f10edea49c073ce
6960: 62 65 34 31 39 38 39 62 62 39 33 66 33 38 61 35  be41989bb93f38a5
6970: 33 33 61 66 31 66 34 32 35 64 33 33 38 32 66 38  33af1f425d3382f8
6980: 61 61 34 30 31 35 39 62 35 36 37 33 35 38 65 65  aa40159b567358ee
6990: 35 61 37 33 62 36 37 64 66 36 64 30 64 63 30 39  5a73b67df6d0dc09
69a0: 63 31 63 39 32 62 66 33 66 39 61 32 38 31 32 34  c1c92bf3f9a28124
69b0: 61 62 30 37 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79  ab07f]} \..-body
69c0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
69d0: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
69e0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
69f0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
6a00: 75 6c 74 20 33 61 61 31 65 31 39 61 35 32 62 38  ult 3aa1e19a52b8
6a10: 36 63 66 34 31 34 64 39 37 37 37 36 38 62 62 35  6cf414d977768bb5
6a20: 33 35 62 37 65 35 38 31 37 31 31 37 64 34 33 36  35b7e5817117d436
6a30: 62 34 34 32 35 65 63 38 64 37 37 35 65 38 63 62  b4425ec8d775e8cb
6a40: 30 65 30 62 35 33 38 30 37 32 32 31 33 38 38 34  0e0b538072213884
6a50: 63 37 66 66 31 62 62 39 63 61 39 39 38 34 63 38  c7ff1bb9ca9984c8
6a60: 32 64 36 35 63 62 30 31 31 35 63 63 30 37 33 33  2d65cb0115cc0733
6a70: 32 62 30 65 61 39 30 33 65 33 62 33 38 36 35 30  2b0ea903e3b38650
6a80: 65 38 38 65 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  e88e..tcltest::t
6a90: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
6aa0: 32 2d 32 2e 37 30 20 7b 53 48 41 33 5f 35 31 32  2-2.70 {SHA3_512
6ab0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
6ac0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
6ad0: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
6ae0: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
6af0: 65 63 6f 64 65 20 68 65 78 20 66 63 61 35 66 36  ecode hex fca5f6
6b00: 38 66 64 32 64 33 61 35 32 31 38 37 62 33 34 39  8fd2d3a52187b349
6b10: 61 38 64 32 37 32 36 62 36 30 38 66 63 63 65 61  a8d2726b608fccea
6b20: 37 64 62 34 32 65 39 30 36 62 38 37 31 38 65 38  7db42e906b8718e8
6b30: 35 61 30 65 63 36 35 34 66 61 63 37 30 66 35 61  5a0ec654fac70f5a
6b40: 38 33 39 61 38 64 33 66 66 39 30 63 66 65 64 37  839a8d3ff90cfed7
6b50: 61 65 62 35 65 61 39 62 30 38 66 34 38 37 66 63  aeb5ea9b08f487fc
6b60: 38 34 65 31 64 39 66 37 66 62 38 33 31 64 65 61  84e1d9f7fb831dea
6b70: 32 35 34 34 36 38 61 36 35 62 61 31 38 63 63 35  254468a65ba18cc5
6b80: 61 31 32 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  a126]} \..-body 
6b90: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
6ba0: 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d 64  gest SHA3-512 -d
6bb0: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
6bc0: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
6bd0: 6c 74 20 32 63 37 34 66 38 34 36 65 63 63 37 32  lt 2c74f846ecc72
6be0: 32 65 61 34 61 31 65 62 31 31 36 32 65 32 33 31  2ea4a1eb1162e231
6bf0: 62 36 39 30 33 32 39 31 66 66 66 61 39 35 64 64  b6903291fffa95dd
6c00: 35 65 31 64 31 37 64 62 63 32 63 32 62 65 37 64  5e1d17dbc2c2be7d
6c10: 66 65 35 34 39 61 38 30 64 64 33 34 34 38 37 64  fe549a80dd34487d
6c20: 37 31 34 31 33 30 64 64 63 39 39 32 34 61 65 64  714130ddc9924aed
6c30: 39 30 34 61 64 35 35 66 34 39 63 39 31 63 38 30  904ad55f49c91c80
6c40: 63 65 62 30 35 63 30 63 30 33 34 64 61 65 30 61  ceb05c0c034dae0a
6c50: 30 61 34 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  0a4..tcltest::te
6c60: 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31 32  st Hash_SHA3-512
6c70: 2d 32 2e 37 31 20 7b 53 48 41 33 5f 35 31 32 53  -2.71 {SHA3_512S
6c80: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
6c90: 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35 31  straints SHA3_51
6ca0: 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  2 \..-setup {set
6cb0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
6cc0: 63 6f 64 65 20 68 65 78 20 38 38 31 66 66 37 30  code hex 881ff70
6cd0: 63 61 33 34 61 33 65 31 61 30 65 38 36 34 66 64  ca34a3e1a0e864fd
6ce0: 32 36 31 35 63 61 32 61 30 65 36 33 64 65 66 32  2615ca2a0e63def2
6cf0: 35 34 65 36 38 38 63 33 37 61 32 30 65 66 36 32  54e688c37a20ef62
6d00: 39 37 63 62 33 61 65 34 63 37 36 64 37 34 36 62  97cb3ae4c76d746b
6d10: 35 65 33 64 36 62 62 34 31 62 64 30 64 30 35 64  5e3d6bb41bd0d05d
6d20: 37 64 66 33 65 65 64 65 64 37 34 33 35 31 66 34  7df3eeded74351f4
6d30: 65 62 30 61 63 38 30 31 61 62 65 36 64 63 31 30  eb0ac801abe6dc10
6d40: 65 66 39 62 36 33 35 30 35 35 65 65 31 64 66 62  ef9b635055ee1dfb
6d50: 66 34 31 34 34 5d 7d 20 5c 0a 09 2d 62 6f 64 79  f4144]} \..-body
6d60: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
6d70: 69 67 65 73 74 20 53 48 41 33 2d 35 31 32 20 2d  igest SHA3-512 -
6d80: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
6d90: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
6da0: 75 6c 74 20 39 61 31 30 61 37 63 65 32 33 63 30  ult 9a10a7ce23c0
6db0: 34 39 37 66 65 38 37 38 33 39 32 37 66 38 33 33  497fe8783927f833
6dc0: 32 33 32 61 65 36 36 34 66 31 65 31 62 39 31 33  232ae664f1e1b913
6dd0: 30 32 32 36 36 62 36 61 63 65 32 35 61 39 63 32  02266b6ace25a9c2
6de0: 35 33 64 31 65 63 61 62 31 61 61 61 61 36 32 66  53d1ecab1aaaa62f
6df0: 38 36 35 34 36 39 34 38 30 62 32 31 34 35 65 64  865469480b2145ed
6e00: 30 65 34 38 39 61 65 33 66 33 66 39 66 37 65 36  0e489ae3f3f9f7e6
6e10: 64 61 32 37 34 39 32 63 38 31 62 30 37 65 36 30  da27492c81b07e60
6e20: 36 66 62 36 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  6fb6..tcltest::t
6e30: 65 73 74 20 48 61 73 68 5f 53 48 41 33 2d 35 31  est Hash_SHA3-51
6e40: 32 2d 32 2e 37 32 20 7b 53 48 41 33 5f 35 31 32  2-2.72 {SHA3_512
6e50: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
6e60: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 33 5f 35  nstraints SHA3_5
6e70: 31 32 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  12 \..-setup {se
6e80: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
6e90: 65 63 6f 64 65 20 68 65 78 20 62 30 64 65 30 34  ecode hex b0de04
6ea0: 33 30 63 32 30 30 64 37 34 62 66 34 31 65 61 30  30c200d74bf41ea0
6eb0: 63 39 32 66 38 66 32 38 65 31 31 62 36 38 30 30  c92f8f28e11b6800
6ec0: 36 61 38 38 34 65 30 64 34 62 30 64 38 38 34 35  6a884e0d4b0d8845
6ed0: 33 33 65 65 35 38 62 33 38 61 34 33 38 63 63 31  33ee58b38a438cc1
6ee0: 61 37 35 37 35 30 62 36 34 33 34 66 34 36 37 65  a75750b6434f467e
6ef0: 32 64 30 63 64 39 61 61 34 30 35 32 63 65 62 37  2d0cd9aa4052ceb7
6f00: 39 33 32 39 31 62 39 33 65 66 38 33 66 64 35 64  93291b93ef83fd5d
6f10: 38 36 32 30 34 35 36 63 65 31 61 66 66 32 39 34  8620456ce1aff294
6f20: 31 62 33 36 30 35 61 34 5d 7d 20 5c 0a 09 2d 62  1b3605a4]} \..-b
6f30: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
6f40: 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d 35 31   -digest SHA3-51
6f50: 32 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  2 -data $data} \
6f60: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
6f70: 72 65 73 75 6c 74 20 39 65 39 65 34 36 39 63 61  result 9e9e469ca
6f80: 39 32 32 36 63 64 30 31 32 66 35 63 39 63 63 33  9226cd012f5c9cc3
6f90: 39 63 39 36 61 64 63 32 32 66 34 32 30 30 33 30  9c96adc22f420030
6fa0: 66 63 65 65 33 30 35 61 30 65 64 32 37 39 37 34  fcee305a0ed27974
6fb0: 65 33 63 38 30 32 37 30 31 36 30 33 64 61 63 38  e3c802701603dac8
6fc0: 37 33 61 65 34 34 37 36 65 39 63 33 64 35 37 65  73ae4476e9c3d57e
6fd0: 35 35 35 32 34 34 38 33 66 63 30 31 61 64 61 65  55524483fc01adae
6fe0: 66 38 37 64 61 61 39 65 33 30 34 30 37 38 63 35  f87daa9e304078c5
6ff0: 39 38 30 32 37 35 37 0a 0a 74 63 6c 74 65 73 74  9802757..tcltest
7000: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 33  ::test Hash_SHA3
7010: 2d 35 31 32 2d 32 2e 37 33 20 7b 53 48 41 33 5f  -512-2.73 {SHA3_
7020: 35 31 32 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  512ShortMsg} \..
7030: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
7040: 33 5f 35 31 32 20 5c 0a 09 2d 73 65 74 75 70 20  3_512 \..-setup 
7050: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
7060: 79 20 64 65 63 6f 64 65 20 68 65 78 20 30 63 65  y decode hex 0ce
7070: 39 66 38 63 33 61 39 39 30 63 32 36 38 66 33 34  9f8c3a990c268f34
7080: 65 66 64 39 62 65 66 64 62 30 66 37 63 34 65 66  efd9befdb0f7c4ef
7090: 38 34 36 36 63 66 64 62 30 31 31 37 31 66 38 64  8466cfdb01171f8d
70a0: 65 37 30 64 63 35 66 65 66 61 39 32 61 63 62 65  e70dc5fefa92acbe
70b0: 39 33 64 32 39 65 32 61 63 31 61 35 63 32 39 37  93d29e2ac1a5c297
70c0: 39 31 32 39 66 31 61 62 30 38 63 30 65 37 37 64  9129f1ab08c0e77d
70d0: 65 37 39 32 34 64 64 66 36 38 61 32 30 39 63 64  e7924ddf68a209cd
70e0: 66 61 30 61 64 63 36 32 66 38 35 63 31 38 36 33  fa0adc62f85c1863
70f0: 37 64 39 63 36 62 33 33 66 34 66 66 38 5d 7d 20  7d9c6b33f4ff8]} 
7100: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
7110: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
7120: 41 33 2d 35 31 32 20 2d 64 61 74 61 20 24 64 61  A3-512 -data $da
7130: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
7140: 61 63 74 20 2d 72 65 73 75 6c 74 20 62 30 31 38  act -result b018
7150: 61 32 30 66 63 66 38 33 31 64 64 65 32 39 30 65  a20fcf831dde290e
7160: 34 66 62 31 38 63 35 36 33 34 32 65 66 65 31 33  4fb18c56342efe13
7170: 38 34 37 32 63 62 65 31 34 32 64 61 36 62 37 37  8472cbe142da6b77
7180: 65 65 61 34 66 63 65 35 32 35 38 38 63 30 34 63  eea4fce52588c04c
7190: 38 30 38 65 62 33 32 39 31 32 66 61 61 33 34 35  808eb32912faa345
71a0: 32 34 35 61 38 35 30 33 34 36 66 61 65 63 34 36  245a850346faec46
71b0: 63 33 61 31 36 64 33 39 62 64 32 65 31 64 64 62  c3a16d39bd2e1ddb
71c0: 31 38 31 36 62 63 35 37 64 32 64 61 0a 0a 23 20  1816bc57d2da..# 
71d0: 43 6c 65 61 6e 75 70 0a 3a 3a 74 63 6c 74 65 73  Cleanup.::tcltes
71e0: 74 3a 3a 63 6c 65 61 6e 75 70 54 65 73 74 73 0a  t::cleanupTests.
71f0: 72 65 74 75 72 6e 0a                             return.