Hex Artifact Content

Artifact 3c579310bafdd3c25ca90fc3ceac82cdd50dd9042ff7a9e09733d7ed2dbf5aa2:


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 32 35 36 53 68 6f   from "SHA256Sho
0020: 72 74 4d 73 67 2e 72 73 70 22 0a 70 61 63 6b 61  rtMsg.rsp".packa
0030: 67 65 20 72 65 71 75 69 72 65 20 74 6c 73 0a 70  ge require tls.p
0040: 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 20 74  ackage require t
0050: 63 6c 74 65 73 74 0a 0a 74 63 6c 74 65 73 74 3a  cltest..tcltest:
0060: 3a 74 65 73 74 43 6f 6e 73 74 72 61 69 6e 74 20  :testConstraint 
0070: 53 48 41 32 35 36 20 5b 65 78 70 72 20 7b 5b 6c  SHA256 [expr {[l
0080: 73 65 61 72 63 68 20 2d 6e 6f 63 61 73 65 20 5b  search -nocase [
0090: 74 6c 73 3a 3a 64 69 67 65 73 74 73 5d 20 53 48  tls::digests] SH
00a0: 41 32 35 36 5d 20 3e 20 2d 31 7d 5d 0a 0a 74 63  A256] > -1}]..tc
00b0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
00c0: 5f 53 48 41 32 35 36 2d 32 2e 31 20 7b 53 48 41  _SHA256-2.1 {SHA
00d0: 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09  256ShortMsg} \..
00e0: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41  -constraints SHA
00f0: 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73  256 \..-setup {s
0100: 65 74 20 64 61 74 61 20 22 22 7d 20 5c 0a 09 2d  et data ""} \..-
0110: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
0120: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
0130: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
0140: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
0150: 65 73 75 6c 74 20 65 33 62 30 63 34 34 32 39 38  esult e3b0c44298
0160: 66 63 31 63 31 34 39 61 66 62 66 34 63 38 39 39  fc1c149afbf4c899
0170: 36 66 62 39 32 34 32 37 61 65 34 31 65 34 36 34  6fb92427ae41e464
0180: 39 62 39 33 34 63 61 34 39 35 39 39 31 62 37 38  9b934ca495991b78
0190: 35 32 62 38 35 35 0a 0a 74 63 6c 74 65 73 74 3a  52b855..tcltest:
01a0: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
01b0: 36 2d 32 2e 32 20 7b 53 48 41 32 35 36 53 68 6f  6-2.2 {SHA256Sho
01c0: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
01d0: 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c 0a  raints SHA256 \.
01e0: 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74  .-setup {set dat
01f0: 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65  a [binary decode
0200: 20 68 65 78 20 64 33 5d 7d 20 5c 0a 09 2d 62 6f   hex d3]} \..-bo
0210: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
0220: 2d 64 69 67 65 73 74 20 53 48 41 32 35 36 20 2d  -digest SHA256 -
0230: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
0240: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
0250: 75 6c 74 20 32 38 39 36 39 63 64 66 61 37 34 61  ult 28969cdfa74a
0260: 31 32 63 38 32 66 33 62 61 64 39 36 30 62 30 62  12c82f3bad960b0b
0270: 30 30 30 61 63 61 32 61 63 33 32 39 64 65 65 61  000aca2ac329deea
0280: 35 63 32 33 32 38 65 62 63 36 66 32 62 61 39 38  5c2328ebc6f2ba98
0290: 30 32 63 31 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  02c1..tcltest::t
02a0: 65 73 74 20 48 61 73 68 5f 53 48 41 32 35 36 2d  est Hash_SHA256-
02b0: 32 2e 33 20 7b 53 48 41 32 35 36 53 68 6f 72 74  2.3 {SHA256Short
02c0: 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61  Msg} \..-constra
02d0: 69 6e 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d  ints SHA256 \..-
02e0: 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20  setup {set data 
02f0: 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68  [binary decode h
0300: 65 78 20 31 31 61 66 5d 7d 20 5c 0a 09 2d 62 6f  ex 11af]} \..-bo
0310: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
0320: 2d 64 69 67 65 73 74 20 53 48 41 32 35 36 20 2d  -digest SHA256 -
0330: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
0340: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
0350: 75 6c 74 20 35 63 61 37 31 33 33 66 61 37 33 35  ult 5ca7133fa735
0360: 33 32 36 30 38 31 35 35 38 61 63 33 31 32 63 36  326081558ac312c6
0370: 32 30 65 65 63 61 39 39 37 30 64 31 65 37 30 61  20eeca9970d1e70a
0380: 34 62 39 35 35 33 33 64 39 35 36 66 30 37 32 64  4b95533d956f072d
0390: 31 66 39 38 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  1f98..tcltest::t
03a0: 65 73 74 20 48 61 73 68 5f 53 48 41 32 35 36 2d  est Hash_SHA256-
03b0: 32 2e 34 20 7b 53 48 41 32 35 36 53 68 6f 72 74  2.4 {SHA256Short
03c0: 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61  Msg} \..-constra
03d0: 69 6e 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d  ints SHA256 \..-
03e0: 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20  setup {set data 
03f0: 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68  [binary decode h
0400: 65 78 20 62 34 31 39 30 65 5d 7d 20 5c 0a 09 2d  ex b4190e]} \..-
0410: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
0420: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
0430: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
0440: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
0450: 65 73 75 6c 74 20 64 66 66 32 65 37 33 30 39 31  esult dff2e73091
0460: 66 36 63 30 35 65 35 32 38 38 39 36 63 34 63 38  f6c05e528896c4c8
0470: 33 31 62 39 34 34 38 36 35 33 64 63 32 66 66 30  31b9448653dc2ff0
0480: 34 33 35 32 38 66 36 37 36 39 34 33 37 62 63 37  43528f6769437bc7
0490: 62 39 37 35 63 32 0a 0a 74 63 6c 74 65 73 74 3a  b975c2..tcltest:
04a0: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
04b0: 36 2d 32 2e 35 20 7b 53 48 41 32 35 36 53 68 6f  6-2.5 {SHA256Sho
04c0: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
04d0: 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c 0a  raints SHA256 \.
04e0: 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74  .-setup {set dat
04f0: 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65  a [binary decode
0500: 20 68 65 78 20 37 34 62 61 32 35 32 31 5d 7d 20   hex 74ba2521]} 
0510: 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64  \..-body {tls::d
0520: 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48  igest -digest SH
0530: 41 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61  A256 -data $data
0540: 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63  } \..-match exac
0550: 74 20 2d 72 65 73 75 6c 74 20 62 31 36 61 61 35  t -result b16aa5
0560: 36 62 65 33 38 38 30 64 31 38 63 64 34 31 65 36  6be3880d18cd41e6
0570: 38 33 38 34 63 66 31 65 63 38 63 31 37 36 38 30  8384cf1ec8c17680
0580: 63 34 35 61 30 32 62 31 35 37 35 64 63 31 35 31  c45a02b1575dc151
0590: 38 39 32 33 61 65 38 62 30 65 0a 0a 74 63 6c 74  8923ae8b0e..tclt
05a0: 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53  est::test Hash_S
05b0: 48 41 32 35 36 2d 32 2e 36 20 7b 53 48 41 32 35  HA256-2.6 {SHA25
05c0: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
05d0: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
05e0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
05f0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
0600: 63 6f 64 65 20 68 65 78 20 63 32 39 39 32 30 39  code hex c299209
0610: 36 38 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  682]} \..-body {
0620: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
0630: 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74 61  est SHA256 -data
0640: 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63   $data} \..-matc
0650: 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20  h exact -result 
0660: 66 30 38 38 37 66 65 39 36 31 63 39 63 64 33 62  f0887fe961c9cd3b
0670: 65 61 62 39 35 37 65 38 32 32 32 34 39 34 61 62  eab957e8222494ab
0680: 62 39 36 39 62 31 63 65 34 63 36 35 35 37 39 37  b969b1ce4c655797
0690: 36 64 66 38 62 30 66 36 64 32 30 65 39 31 36 36  6df8b0f6d20e9166
06a0: 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20  ..tcltest::test 
06b0: 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 37 20  Hash_SHA256-2.7 
06c0: 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d  {SHA256ShortMsg}
06d0: 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73   \..-constraints
06e0: 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75   SHA256 \..-setu
06f0: 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e  p {set data [bin
0700: 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 65  ary decode hex e
0710: 31 64 63 37 32 34 64 35 36 32 31 5d 7d 20 5c 0a  1dc724d5621]} \.
0720: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
0730: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
0740: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
0750: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
0760: 2d 72 65 73 75 6c 74 20 65 63 61 30 61 30 36 30  -result eca0a060
0770: 62 34 38 39 36 33 36 32 32 35 62 34 66 61 36 34  b489636225b4fa64
0780: 64 32 36 37 64 61 62 62 65 34 34 32 37 33 30 36  d267dabbe4427306
0790: 37 61 63 36 37 39 66 32 30 38 32 30 62 64 64 63  7ac679f20820bddc
07a0: 36 62 36 61 39 30 61 63 0a 0a 74 63 6c 74 65 73  6b6a90ac..tcltes
07b0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
07c0: 32 35 36 2d 32 2e 38 20 7b 53 48 41 32 35 36 53  256-2.8 {SHA256S
07d0: 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e  hortMsg} \..-con
07e0: 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20  straints SHA256 
07f0: 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64  \..-setup {set d
0800: 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f  ata [binary deco
0810: 64 65 20 68 65 78 20 30 36 65 30 37 36 66 35 61  de hex 06e076f5a
0820: 34 34 32 64 35 5d 7d 20 5c 0a 09 2d 62 6f 64 79  442d5]} \..-body
0830: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
0840: 69 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61  igest SHA256 -da
0850: 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61  ta $data} \..-ma
0860: 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c  tch exact -resul
0870: 74 20 33 66 64 38 37 37 65 32 37 34 35 30 65 36  t 3fd877e27450e6
0880: 62 62 64 35 64 37 34 62 62 38 32 66 39 38 37 30  bbd5d74bb82f9870
0890: 63 36 34 63 36 36 65 31 30 39 34 31 38 62 61 61  c64c66e109418baa
08a0: 38 65 36 62 62 63 66 66 33 35 35 65 32 38 37 39  8e6bbcff355e2879
08b0: 32 36 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73  26..tcltest::tes
08c0: 74 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e  t Hash_SHA256-2.
08d0: 39 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  9 {SHA256ShortMs
08e0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
08f0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
0900: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
0910: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
0920: 20 35 37 33 38 63 39 32 39 63 34 66 34 63 63 62   5738c929c4f4ccb
0930: 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  6]} \..-body {tl
0940: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
0950: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
0960: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
0970: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 39 36  exact -result 96
0980: 33 62 62 38 38 66 32 37 66 35 31 32 37 37 37 61  3bb88f27f512777a
0990: 61 62 36 63 38 62 31 61 30 32 63 37 30 65 63 30  ab6c8b1a02c70ec0
09a0: 61 64 36 35 31 64 34 32 38 66 38 37 30 30 33 36  ad651d428f870036
09b0: 65 31 39 31 37 31 32 30 66 62 34 38 62 66 0a 0a  e1917120fb48bf..
09c0: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
09d0: 73 68 5f 53 48 41 32 35 36 2d 32 2e 31 30 20 7b  sh_SHA256-2.10 {
09e0: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
09f0: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
0a00: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
0a10: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
0a20: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 33 33  ry decode hex 33
0a30: 33 34 63 35 38 30 37 35 64 33 66 34 31 33 39 65  34c58075d3f4139e
0a40: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
0a50: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
0a60: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
0a70: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
0a80: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 30 37 38  xact -result 078
0a90: 64 61 33 64 37 37 65 64 34 33 62 64 33 30 33 37  da3d77ed43bd3037
0aa0: 61 34 33 33 66 64 30 33 34 31 38 35 35 30 32 33  a433fd0341855023
0ab0: 37 39 33 66 39 61 66 64 30 38 62 34 62 30 38 65  793f9afd08b4b08e
0ac0: 61 31 65 35 35 39 37 63 65 65 66 32 30 0a 0a 74  a1e5597ceef20..t
0ad0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
0ae0: 68 5f 53 48 41 32 35 36 2d 32 2e 31 31 20 7b 53  h_SHA256-2.11 {S
0af0: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
0b00: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
0b10: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
0b20: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
0b30: 79 20 64 65 63 6f 64 65 20 68 65 78 20 37 34 63  y decode hex 74c
0b40: 62 39 33 38 31 64 38 39 66 35 61 61 37 33 33 36  b9381d89f5aa7336
0b50: 38 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  8]} \..-body {tl
0b60: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
0b70: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
0b80: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
0b90: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 37 33  exact -result 73
0ba0: 64 36 66 61 64 31 63 61 61 61 37 35 62 34 33 62  d6fad1caaa75b43b
0bb0: 32 31 37 33 33 35 36 31 66 64 33 39 35 38 62 64  21733561fd3958bd
0bc0: 63 35 35 35 31 39 34 61 30 33 37 63 32 61 64 64  c555194a037c2add
0bd0: 65 63 31 39 64 63 32 64 37 61 35 32 62 64 0a 0a  ec19dc2d7a52bd..
0be0: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
0bf0: 73 68 5f 53 48 41 32 35 36 2d 32 2e 31 32 20 7b  sh_SHA256-2.12 {
0c00: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
0c10: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
0c20: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
0c30: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
0c40: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 37 36  ry decode hex 76
0c50: 65 64 32 34 61 30 66 34 30 61 34 31 32 32 31 65  ed24a0f40a41221e
0c60: 62 66 63 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  bfcf]} \..-body 
0c70: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
0c80: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
0c90: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
0ca0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
0cb0: 20 30 34 34 63 65 66 38 30 32 39 30 31 39 33 32   044cef802901932
0cc0: 65 34 36 64 63 34 36 62 32 35 34 35 65 36 63 39  e46dc46b2545e6c9
0cd0: 39 63 30 66 63 33 32 33 61 30 65 64 39 39 62 30  9c0fc323a0ed99b0
0ce0: 38 31 62 64 61 34 32 31 36 38 35 37 66 33 38 61  81bda4216857f38a
0cf0: 63 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  c..tcltest::test
0d00: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 31   Hash_SHA256-2.1
0d10: 33 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  3 {SHA256ShortMs
0d20: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
0d30: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
0d40: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
0d50: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
0d60: 20 39 62 61 66 36 39 63 62 61 33 31 37 66 34 32   9baf69cba317f42
0d70: 32 66 65 32 36 61 39 61 30 5d 7d 20 5c 0a 09 2d  2fe26a9a0]} \..-
0d80: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
0d90: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
0da0: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
0db0: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
0dc0: 65 73 75 6c 74 20 66 65 35 36 32 38 37 63 64 36  esult fe56287cd6
0dd0: 35 37 65 34 61 66 63 35 30 64 62 61 37 61 33 61  57e4afc50dba7a3a
0de0: 35 34 63 32 61 36 33 32 34 62 38 38 36 62 65 63  54c2a6324b886bec
0df0: 64 63 64 31 66 61 65 34 37 33 62 37 36 39 65 35  dcd1fae473b769e5
0e00: 35 31 61 30 39 62 0a 0a 74 63 6c 74 65 73 74 3a  51a09b..tcltest:
0e10: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
0e20: 36 2d 32 2e 31 34 20 7b 53 48 41 32 35 36 53 68  6-2.14 {SHA256Sh
0e30: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
0e40: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
0e50: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
0e60: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
0e70: 65 20 68 65 78 20 36 38 35 31 31 63 64 62 32 64  e hex 68511cdb2d
0e80: 62 62 66 33 35 33 30 64 37 66 62 36 31 63 62 63  bbf3530d7fb61cbc
0e90: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
0ea0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
0eb0: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
0ec0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
0ed0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 61 66 35  xact -result af5
0ee0: 33 34 33 30 34 36 36 37 31 35 65 39 39 61 36 30  3430466715e99a60
0ef0: 32 66 63 39 66 35 39 34 35 37 31 39 62 30 34 64  2fc9f5945719b04d
0f00: 64 32 34 32 36 37 65 36 61 39 38 34 37 31 66 37  d24267e6a98471f7
0f10: 61 37 38 36 39 62 64 33 62 34 33 31 33 0a 0a 74  a7869bd3b4313..t
0f20: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
0f30: 68 5f 53 48 41 32 35 36 2d 32 2e 31 35 20 7b 53  h_SHA256-2.15 {S
0f40: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
0f50: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
0f60: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
0f70: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
0f80: 79 20 64 65 63 6f 64 65 20 68 65 78 20 61 66 33  y decode hex af3
0f90: 39 37 61 38 62 38 64 64 37 33 61 62 37 30 32 63  97a8b8dd73ab702c
0fa0: 65 38 65 35 33 61 61 39 66 5d 7d 20 5c 0a 09 2d  e8e53aa9f]} \..-
0fb0: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
0fc0: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
0fd0: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
0fe0: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
0ff0: 65 73 75 6c 74 20 64 31 38 39 34 39 38 61 33 34  esult d189498a34
1000: 36 33 62 31 38 65 38 34 36 62 38 61 62 31 62 34  63b18e846b8ab1b4
1010: 31 35 38 33 62 30 62 37 65 66 63 37 38 39 64 61  1583b0b7efc789da
1020: 64 38 61 37 66 62 38 38 35 62 62 66 38 66 62 35  d8a7fb885bbf8fb5
1030: 62 34 35 63 35 63 0a 0a 74 63 6c 74 65 73 74 3a  b45c5c..tcltest:
1040: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
1050: 36 2d 32 2e 31 36 20 7b 53 48 41 32 35 36 53 68  6-2.16 {SHA256Sh
1060: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
1070: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
1080: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
1090: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
10a0: 65 20 68 65 78 20 32 39 34 61 66 34 38 30 32 65  e hex 294af4802e
10b0: 35 65 39 32 35 65 62 31 63 36 63 63 39 63 37 32  5e925eb1c6cc9c72
10c0: 34 66 30 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  4f09]} \..-body 
10d0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
10e0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
10f0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
1100: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
1110: 20 64 63 62 61 66 33 33 35 33 36 30 64 65 38 35   dcbaf335360de85
1120: 33 62 39 63 64 64 66 64 61 66 62 39 30 66 61 37  3b9cddfdafb90fa7
1130: 35 35 36 37 64 30 64 33 64 35 38 61 66 38 64 62  5567d0d3d58af8db
1140: 39 64 37 36 34 31 31 33 61 65 66 35 37 30 31 32  9d764113aef57012
1150: 35 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  5..tcltest::test
1160: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 31   Hash_SHA256-2.1
1170: 37 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  7 {SHA256ShortMs
1180: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
1190: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
11a0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
11b0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
11c0: 20 30 61 32 37 38 34 37 63 64 63 39 38 62 64 36   0a27847cdc98bd6
11d0: 66 36 32 32 32 30 62 30 34 36 65 64 64 37 36 32  f62220b046edd762
11e0: 62 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  b]} \..-body {tl
11f0: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
1200: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
1210: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
1220: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 38 30  exact -result 80
1230: 63 32 35 65 63 31 36 30 30 35 38 37 65 37 66 32  c25ec1600587e7f2
1240: 38 62 31 38 62 31 62 31 38 65 33 63 64 63 38 39  8b18b1b18e3cdc89
1250: 39 32 38 65 33 39 63 61 62 33 62 63 32 35 65 34  928e39cab3bc25e4
1260: 64 34 61 34 63 31 33 39 62 63 65 64 63 34 0a 0a  d4a4c139bcedc4..
1270: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
1280: 73 68 5f 53 48 41 32 35 36 2d 32 2e 31 38 20 7b  sh_SHA256-2.18 {
1290: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
12a0: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
12b0: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
12c0: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
12d0: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 31 62  ry decode hex 1b
12e0: 35 30 33 66 62 39 61 37 33 62 31 36 61 64 61 33  503fb9a73b16ada3
12f0: 66 63 66 31 30 34 32 36 32 33 61 65 37 36 31 30  fcf1042623ae7610
1300: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
1310: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
1320: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
1330: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
1340: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 64 35 63  xact -result d5c
1350: 33 30 33 31 35 66 37 32 65 64 30 35 66 65 35 31  30315f72ed05fe51
1360: 39 61 31 62 66 37 35 61 62 35 66 64 30 66 66 65  9a1bf75ab5fd0ffe
1370: 63 35 61 63 31 61 63 62 30 64 61 66 36 36 62 36  c5ac1acb0daf66b6
1380: 62 37 36 39 35 39 38 35 39 34 35 30 39 0a 0a 74  b769598594509..t
1390: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
13a0: 68 5f 53 48 41 32 35 36 2d 32 2e 31 39 20 7b 53  h_SHA256-2.19 {S
13b0: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
13c0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
13d0: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
13e0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
13f0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 35 39 65  y decode hex 59e
1400: 62 34 35 62 62 62 65 62 30 35 34 62 30 62 39 37  b45bbbeb054b0b97
1410: 33 33 34 64 35 33 35 38 30 63 65 30 33 66 36 39  334d53580ce03f69
1420: 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  9]} \..-body {tl
1430: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
1440: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
1450: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
1460: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 33 32  exact -result 32
1470: 63 33 38 63 35 34 31 38 39 66 32 33 35 37 65 39  c38c54189f2357e9
1480: 36 62 64 37 37 65 62 30 30 63 32 62 39 63 33 34  6bd77eb00c2b9c34
1490: 31 65 62 65 62 61 63 63 32 39 34 35 66 39 37 38  1ebebacc2945f978
14a0: 30 34 66 35 39 61 39 33 32 33 38 32 38 38 0a 0a  04f59a93238288..
14b0: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
14c0: 73 68 5f 53 48 41 32 35 36 2d 32 2e 32 30 20 7b  sh_SHA256-2.20 {
14d0: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
14e0: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
14f0: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
1500: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
1510: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 35 38  ry decode hex 58
1520: 65 35 61 33 32 35 39 63 62 30 62 36 64 31 32 63  e5a3259cb0b6d12c
1530: 38 33 66 37 32 33 33 37 39 65 33 35 66 64 32 39  83f723379e35fd29
1540: 38 62 36 30 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  8b60]} \..-body 
1550: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1560: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
1570: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
1580: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
1590: 20 39 62 35 62 33 37 38 31 36 64 65 38 66 63 64   9b5b37816de8fcd
15a0: 66 33 65 63 31 30 62 37 34 35 34 32 38 37 30 38  f3ec10b745428708
15b0: 64 66 38 66 33 39 31 63 35 35 30 65 61 36 37 34  df8f391c550ea674
15c0: 36 62 32 63 61 66 65 30 31 39 63 32 62 36 61 63  6b2cafe019c2b6ac
15d0: 65 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  e..tcltest::test
15e0: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 32   Hash_SHA256-2.2
15f0: 31 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  1 {SHA256ShortMs
1600: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
1610: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
1620: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
1630: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
1640: 20 63 31 65 66 33 39 63 65 65 35 38 65 37 38 66   c1ef39cee58e78f
1650: 36 66 63 64 63 31 32 65 30 35 38 62 37 66 39 30  6fcdc12e058b7f90
1660: 32 61 63 64 31 61 39 33 62 5d 7d 20 5c 0a 09 2d  2acd1a93b]} \..-
1670: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
1680: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
1690: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
16a0: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
16b0: 65 73 75 6c 74 20 36 64 64 35 32 62 30 64 38 62  esult 6dd52b0d8b
16c0: 34 38 63 63 38 31 34 36 63 65 62 64 30 32 31 36  48cc8146cebd0216
16d0: 66 62 66 35 66 36 65 66 37 65 65 61 66 63 30 66  fbf5f6ef7eeafc0f
16e0: 66 32 66 66 39 64 31 34 32 32 64 36 33 34 35 35  f2ff9d1422d63455
16f0: 35 35 61 31 34 32 0a 0a 74 63 6c 74 65 73 74 3a  55a142..tcltest:
1700: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
1710: 36 2d 32 2e 32 32 20 7b 53 48 41 32 35 36 53 68  6-2.22 {SHA256Sh
1720: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
1730: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
1740: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
1750: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
1760: 65 20 68 65 78 20 39 63 61 62 37 64 37 64 63 61  e hex 9cab7d7dca
1770: 65 63 39 38 63 62 33 61 63 36 63 36 34 64 64 35  ec98cb3ac6c64dd5
1780: 64 34 34 37 30 64 30 62 31 30 33 61 38 31 30 63  d4470d0b103a810c
1790: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
17a0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
17b0: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
17c0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
17d0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 34 34 64  xact -result 44d
17e0: 33 34 38 30 39 66 63 36 30 64 31 66 63 61 66 61  34809fc60d1fcafa
17f0: 37 66 33 37 62 37 39 34 64 31 64 33 61 37 36 35  7f37b794d1d3a765
1800: 64 64 30 64 32 33 31 39 34 65 62 62 65 33 34 30  dd0d23194ebbe340
1810: 66 30 31 33 66 30 63 33 39 62 36 31 33 0a 0a 74  f013f0c39b613..t
1820: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
1830: 68 5f 53 48 41 32 35 36 2d 32 2e 32 33 20 7b 53  h_SHA256-2.23 {S
1840: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
1850: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
1860: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
1870: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
1880: 79 20 64 65 63 6f 64 65 20 68 65 78 20 65 61 31  y decode hex ea1
1890: 35 37 63 30 32 65 62 61 66 31 62 32 32 64 65 32  57c02ebaf1b22de2
18a0: 32 31 62 35 33 66 32 33 35 33 39 33 36 64 32 33  21b53f2353936d23
18b0: 35 39 64 31 65 31 63 39 37 5d 7d 20 5c 0a 09 2d  59d1e1c97]} \..-
18c0: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
18d0: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
18e0: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
18f0: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
1900: 65 73 75 6c 74 20 39 64 66 35 63 31 36 61 33 66  esult 9df5c16a3f
1910: 35 38 30 34 30 36 66 30 37 64 39 36 31 34 39 33  580406f07d961493
1920: 30 33 64 38 63 34 30 38 38 36 39 62 33 32 30 35  03d8c408869b3205
1930: 33 62 37 32 36 63 66 33 64 65 66 64 32 34 31 65  3b726cf3defd241e
1940: 34 38 34 39 35 37 0a 0a 74 63 6c 74 65 73 74 3a  484957..tcltest:
1950: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
1960: 36 2d 32 2e 32 34 20 7b 53 48 41 32 35 36 53 68  6-2.24 {SHA256Sh
1970: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
1980: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
1990: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
19a0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
19b0: 65 20 68 65 78 20 64 61 39 39 39 62 63 31 66 39  e hex da999bc1f9
19c0: 63 37 61 63 66 66 33 32 38 32 38 61 37 33 65 36  c7acff32828a73e6
19d0: 37 32 64 30 61 34 39 32 66 36 65 65 38 39 35 63  72d0a492f6ee895c
19e0: 36 38 36 37 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  6867]} \..-body 
19f0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1a00: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
1a10: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
1a20: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
1a30: 20 36 37 32 62 35 34 65 34 33 66 34 31 65 65 37   672b54e43f41ee7
1a40: 37 35 38 34 62 64 66 38 62 66 38 35 34 64 39 37  7584bdf8bf854d97
1a50: 62 36 32 35 32 63 39 31 38 66 37 65 61 32 64 32  b6252c918f7ea2d2
1a60: 36 62 63 34 30 39 37 65 61 35 33 61 38 38 66 31  6bc4097ea53a88f1
1a70: 30 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  0..tcltest::test
1a80: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 32   Hash_SHA256-2.2
1a90: 35 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  5 {SHA256ShortMs
1aa0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
1ab0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
1ac0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
1ad0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
1ae0: 20 34 37 39 39 31 33 30 31 31 35 36 64 31 64 39   47991301156d1d9
1af0: 37 37 63 30 33 33 38 65 66 62 63 61 64 34 31 30  77c0338efbcad410
1b00: 30 34 31 33 33 61 65 66 62 63 61 36 62 63 66 37  04133aefbca6bcf7
1b10: 65 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  e]} \..-body {tl
1b20: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
1b30: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
1b40: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
1b50: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 66 65  exact -result fe
1b60: 65 62 34 62 32 62 35 39 66 65 63 38 66 64 62 31  eb4b2b59fec8fdb1
1b70: 65 35 35 31 39 34 61 34 39 33 64 38 63 38 37 31  e55194a493d8c871
1b80: 37 35 37 62 35 37 32 33 36 37 35 65 39 33 64 33  757b5723675e93d3
1b90: 61 63 30 33 34 62 33 38 30 62 37 66 63 39 0a 0a  ac034b380b7fc9..
1ba0: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
1bb0: 73 68 5f 53 48 41 32 35 36 2d 32 2e 32 36 20 7b  sh_SHA256-2.26 {
1bc0: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
1bd0: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
1be0: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
1bf0: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
1c00: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 32 65  ry decode hex 2e
1c10: 37 65 61 38 34 64 61 34 62 63 34 64 37 63 66 62  7ea84da4bc4d7cfb
1c20: 34 36 33 65 33 66 32 63 38 36 34 37 30 35 37 61  463e3f2c8647057a
1c30: 66 66 66 33 66 62 65 63 65 63 61 31 64 32 30 30  fff3fbececa1d200
1c40: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
1c50: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
1c60: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
1c70: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
1c80: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 37 36 65  xact -result 76e
1c90: 33 61 63 62 63 37 31 38 38 33 36 66 32 64 66 38  3acbc718836f2df8
1ca0: 61 64 32 64 30 64 32 64 37 36 66 30 63 66 61 35  ad2d0d2d76f0cfa5
1cb0: 66 65 61 30 39 38 36 62 65 39 31 38 66 31 30 62  fea0986be918f10b
1cc0: 63 65 65 37 33 30 64 66 34 34 31 62 39 0a 0a 74  cee730df441b9..t
1cd0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
1ce0: 68 5f 53 48 41 32 35 36 2d 32 2e 32 37 20 7b 53  h_SHA256-2.27 {S
1cf0: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
1d00: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
1d10: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
1d20: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
1d30: 79 20 64 65 63 6f 64 65 20 68 65 78 20 34 37 63  y decode hex 47c
1d40: 37 37 30 65 62 34 35 34 39 62 36 65 66 66 36 33  770eb4549b6eff63
1d50: 38 31 64 36 32 65 39 62 65 62 34 36 34 63 64 39  81d62e9beb464cd9
1d60: 38 64 33 34 31 63 63 31 63 30 39 39 38 31 61 37  8d341cc1c09981a7
1d70: 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  a]} \..-body {tl
1d80: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
1d90: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
1da0: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
1db0: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 36 37  exact -result 67
1dc0: 33 33 38 30 39 63 37 33 65 35 33 36 36 36 63 37  33809c73e53666c7
1dd0: 33 35 62 33 62 64 33 64 61 66 38 37 65 62 63 37  35b3bd3daf87ebc7
1de0: 37 63 37 32 37 35 36 31 35 30 61 36 31 36 61 31  7c72756150a616a1
1df0: 39 34 31 30 38 64 37 31 32 33 31 32 37 32 0a 0a  94108d71231272..
1e00: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
1e10: 73 68 5f 53 48 41 32 35 36 2d 32 2e 32 38 20 7b  sh_SHA256-2.28 {
1e20: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
1e30: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
1e40: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
1e50: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
1e60: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 61 63  ry decode hex ac
1e70: 34 63 32 36 64 38 62 34 33 62 38 35 37 39 64 38  4c26d8b43b8579d8
1e80: 66 36 31 63 39 38 30 37 30 32 36 65 38 33 65 39  f61c9807026e83e9
1e90: 62 35 38 36 65 31 31 35 39 62 64 34 33 62 38 35  b586e1159bd43b85
1ea0: 31 39 33 37 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  1937]} \..-body 
1eb0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1ec0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
1ed0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
1ee0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
1ef0: 20 30 65 36 65 33 63 31 34 33 63 33 61 35 66 37   0e6e3c143c3a5f7
1f00: 66 33 38 35 30 35 65 64 36 61 64 63 39 62 34 38  f38505ed6adc9b48
1f10: 63 31 38 65 64 66 36 64 65 64 66 31 31 36 33 35  c18edf6dedf11635
1f20: 66 36 65 38 66 39 61 63 37 33 63 33 39 66 65 39  f6e8f9ac73c39fe9
1f30: 65 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  e..tcltest::test
1f40: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 32   Hash_SHA256-2.2
1f50: 39 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  9 {SHA256ShortMs
1f60: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
1f70: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
1f80: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
1f90: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
1fa0: 20 30 37 37 37 66 63 31 65 31 63 61 34 37 33 30   0777fc1e1ca4730
1fb0: 34 63 32 65 32 36 35 36 39 32 38 33 38 31 30 39  4c2e265692838109
1fc0: 65 32 36 61 61 62 39 65 35 63 34 61 65 34 65 38  e26aab9e5c4ae4e8
1fd0: 36 30 30 64 66 34 62 31 66 5d 7d 20 5c 0a 09 2d  600df4b1f]} \..-
1fe0: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
1ff0: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
2000: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
2010: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
2020: 65 73 75 6c 74 20 66 66 62 34 66 63 30 33 65 30  esult ffb4fc03e0
2030: 35 34 66 38 65 63 62 63 33 31 34 37 30 66 63 30  54f8ecbc31470fc0
2040: 32 33 62 65 64 63 64 34 61 34 30 36 62 39 64 64  23bedcd4a406b9dd
2050: 35 36 63 37 31 64 61 31 62 36 36 30 64 63 63 34  56c71da1b660dcc4
2060: 38 34 32 63 36 35 0a 0a 74 63 6c 74 65 73 74 3a  842c65..tcltest:
2070: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
2080: 36 2d 32 2e 33 30 20 7b 53 48 41 32 35 36 53 68  6-2.30 {SHA256Sh
2090: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
20a0: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
20b0: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
20c0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
20d0: 65 20 68 65 78 20 31 61 35 37 32 35 31 63 34 33  e hex 1a57251c43
20e0: 31 64 34 65 36 63 32 65 30 36 64 36 35 32 34 36  1d4e6c2e06d65246
20f0: 61 32 39 36 39 31 35 30 37 31 61 35 33 31 34 32  a296915071a53142
2100: 35 65 63 66 32 35 35 39 38 39 34 32 32 61 36 36  5ecf255989422a66
2110: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
2120: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
2130: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
2140: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
2150: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 63 36 34  xact -result c64
2160: 34 36 31 32 63 64 33 32 36 62 33 38 62 31 63 36  4612cd326b38b1c6
2170: 38 31 33 62 31 64 61 64 65 64 33 34 34 34 38 38  813b1daded344488
2180: 30 35 61 65 66 33 31 37 63 33 35 66 35 34 38 64  05aef317c35f548d
2190: 66 62 34 61 30 64 37 34 62 38 31 30 36 0a 0a 74  fb4a0d74b8106..t
21a0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
21b0: 68 5f 53 48 41 32 35 36 2d 32 2e 33 31 20 7b 53  h_SHA256-2.31 {S
21c0: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
21d0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
21e0: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
21f0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
2200: 79 20 64 65 63 6f 64 65 20 68 65 78 20 39 62 32  y decode hex 9b2
2210: 34 35 66 64 61 64 39 62 61 65 62 38 39 30 64 39  45fdad9baeb890d9
2220: 63 30 64 30 65 66 66 38 31 36 65 66 62 34 63 61  c0d0eff816efb4ca
2230: 31 33 38 36 31 30 62 63 37 64 37 38 63 62 31 61  138610bc7d78cb1a
2240: 38 30 31 65 64 33 32 37 33 5d 7d 20 5c 0a 09 2d  801ed3273]} \..-
2250: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
2260: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
2270: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
2280: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
2290: 65 73 75 6c 74 20 63 30 65 32 39 65 65 65 62 30  esult c0e29eeeb0
22a0: 64 33 61 37 37 30 37 39 34 37 65 36 32 33 63 64  d3a7707947e623cd
22b0: 63 37 64 31 38 39 39 61 64 63 37 30 64 64 37 38  c7d1899adc70dd78
22c0: 36 31 32 30 35 65 61 35 65 35 38 31 33 39 35 34  61205ea5e5813954
22d0: 66 62 37 39 35 37 0a 0a 74 63 6c 74 65 73 74 3a  fb7957..tcltest:
22e0: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
22f0: 36 2d 32 2e 33 32 20 7b 53 48 41 32 35 36 53 68  6-2.32 {SHA256Sh
2300: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
2310: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
2320: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
2330: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
2340: 65 20 68 65 78 20 39 35 61 37 36 35 38 30 39 63  e hex 95a765809c
2350: 61 66 33 30 61 64 61 39 30 61 64 36 64 36 31 63  af30ada90ad6d61c
2360: 32 62 34 62 33 30 32 35 30 64 66 30 61 37 63 65  2b4b30250df0a7ce
2370: 32 33 62 37 37 35 33 63 39 31 38 37 66 34 33 31  23b7753c9187f431
2380: 39 63 65 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  9ce2]} \..-body 
2390: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
23a0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
23b0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
23c0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
23d0: 20 61 34 31 33 39 62 37 34 62 31 30 32 63 66 31   a4139b74b102cf1
23e0: 65 32 66 63 65 32 32 39 61 36 63 64 38 34 63 38  e2fce229a6cd84c8
23f0: 37 35 30 31 66 35 30 61 66 61 34 63 38 30 66 65  7501f50afa4c80fe
2400: 61 63 66 37 64 38 63 66 35 65 64 39 34 66 30 34  acf7d8cf5ed94f04
2410: 32 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  2..tcltest::test
2420: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 33   Hash_SHA256-2.3
2430: 33 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  3 {SHA256ShortMs
2440: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
2450: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
2460: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
2470: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
2480: 20 30 39 66 63 31 61 63 63 63 32 33 30 61 32 30   09fc1accc230a20
2490: 35 65 34 61 32 30 38 65 36 34 61 38 66 32 30 34  5e4a208e64a8f204
24a0: 32 39 31 66 35 38 31 61 31 32 37 35 36 33 39 32  291f581a12756392
24b0: 64 61 34 62 38 63 30 63 66 35 65 66 30 32 62 39  da4b8c0cf5ef02b9
24c0: 35 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  5]} \..-body {tl
24d0: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
24e0: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
24f0: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
2500: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 34 66  exact -result 4f
2510: 34 34 63 31 63 37 66 62 65 62 62 36 66 39 36 30  44c1c7fbebb6f960
2520: 31 38 32 39 66 33 38 39 37 62 66 64 36 35 30 63  1829f3897bfd650c
2530: 35 36 66 61 30 37 38 34 34 62 65 37 36 34 38 39  56fa07844be76489
2540: 30 37 36 33 35 36 61 63 31 38 38 36 61 34 0a 0a  076356ac1886a4..
2550: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
2560: 73 68 5f 53 48 41 32 35 36 2d 32 2e 33 34 20 7b  sh_SHA256-2.34 {
2570: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
2580: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
2590: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
25a0: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
25b0: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 30 35  ry decode hex 05
25c0: 34 36 66 37 62 38 36 38 32 62 35 62 39 35 66 64  46f7b8682b5b95fd
25d0: 33 32 33 38 35 66 61 66 32 35 38 35 34 63 62 33  32385faf25854cb3
25e0: 66 37 62 34 30 63 63 38 66 61 32 32 39 66 62 64  f7b40cc8fa229fbd
25f0: 35 32 62 31 36 39 33 34 61 61 62 33 38 38 61 37  52b16934aab388a7
2600: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
2610: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
2620: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
2630: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
2640: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 62 33 31  xact -result b31
2650: 61 64 33 63 64 30 32 62 31 30 64 62 32 38 32 62  ad3cd02b10db282b
2660: 33 35 37 36 63 30 35 39 62 37 34 36 66 62 32 34  3576c059b746fb24
2670: 63 61 36 66 30 39 66 65 66 36 39 34 30 32 64 63  ca6f09fef69402dc
2680: 39 30 65 63 65 37 34 32 31 63 62 62 37 0a 0a 74  90ece7421cbb7..t
2690: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
26a0: 68 5f 53 48 41 32 35 36 2d 32 2e 33 35 20 7b 53  h_SHA256-2.35 {S
26b0: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
26c0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
26d0: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
26e0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
26f0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 62 31 32  y decode hex b12
2700: 64 62 34 61 31 30 32 35 35 32 39 62 33 62 37 62  db4a1025529b3b7b
2710: 31 65 34 35 63 36 64 62 63 37 62 61 61 38 38 39  1e45c6dbc7baa889
2720: 37 61 30 35 37 36 65 36 36 66 36 34 62 66 33 66  7a0576e66f64bf3f
2730: 38 32 33 36 31 31 33 61 36 32 37 36 65 65 37 37  8236113a6276ee77
2740: 64 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  d]} \..-body {tl
2750: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
2760: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
2770: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
2780: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 31 63  exact -result 1c
2790: 33 38 62 66 36 62 62 66 64 33 32 32 39 32 64 36  38bf6bbfd32292d6
27a0: 37 64 31 64 36 35 31 66 64 39 64 35 62 36 32 33  7d1d651fd9d5b623
27b0: 62 36 65 63 31 65 38 35 34 34 30 36 32 32 33 66  b6ec1e854406223f
27c0: 35 31 64 30 64 66 34 36 39 36 38 37 31 32 0a 0a  51d0df46968712..
27d0: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
27e0: 73 68 5f 53 48 41 32 35 36 2d 32 2e 33 36 20 7b  sh_SHA256-2.36 {
27f0: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
2800: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
2810: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
2820: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
2830: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 65 36  ry decode hex e6
2840: 38 63 62 36 64 38 63 31 38 36 36 63 30 61 37 31  8cb6d8c1866c0a71
2850: 65 37 33 31 33 66 38 33 64 63 31 31 61 35 38 30  e7313f83dc11a580
2860: 39 63 66 35 63 66 62 65 65 64 31 61 35 38 37 63  9cf5cfbeed1a587c
2870: 65 39 63 32 63 39 32 65 30 32 32 61 62 63 31 36  e9c2c92e022abc16
2880: 34 34 62 62 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  44bb]} \..-body 
2890: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
28a0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
28b0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
28c0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
28d0: 20 63 32 36 38 34 63 30 64 62 62 38 35 63 32 33   c2684c0dbb85c23
28e0: 32 62 36 64 61 34 66 62 35 31 34 37 64 64 30 36  2b6da4fb5147dd06
28f0: 32 34 34 32 39 65 63 37 65 36 35 37 39 39 31 65  24429ec7e657991e
2900: 64 64 39 35 65 64 61 33 37 61 35 38 37 32 36 39  dd95eda37a587269
2910: 65 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  e..tcltest::test
2920: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 33   Hash_SHA256-2.3
2930: 37 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  7 {SHA256ShortMs
2940: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
2950: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
2960: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
2970: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
2980: 20 34 65 33 64 38 61 63 33 36 64 36 31 64 39 65   4e3d8ac36d61d9e
2990: 35 31 34 38 30 38 33 31 31 35 35 62 32 35 33 62  51480831155b253b
29a0: 33 37 39 36 39 66 65 37 65 66 34 39 64 62 33 62  37969fe7ef49db3b
29b0: 33 39 39 32 36 66 33 61 30 30 62 36 39 61 33 36  39926f3a00b69a36
29c0: 37 37 34 33 36 36 30 30 30 5d 7d 20 5c 0a 09 2d  774366000]} \..-
29d0: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
29e0: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
29f0: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
2a00: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
2a10: 65 73 75 6c 74 20 62 66 39 64 35 65 35 62 35 33  esult bf9d5e5b53
2a20: 39 33 30 35 33 66 30 35 35 62 33 38 30 62 61 65  93053f055b380bae
2a30: 64 37 65 37 39 32 61 65 38 35 61 64 33 37 63 30  d7e792ae85ad37c0
2a40: 61 64 61 35 66 64 34 35 31 39 35 34 32 63 63 63  ada5fd4519542ccc
2a50: 34 36 31 63 66 33 0a 0a 74 63 6c 74 65 73 74 3a  461cf3..tcltest:
2a60: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
2a70: 36 2d 32 2e 33 38 20 7b 53 48 41 32 35 36 53 68  6-2.38 {SHA256Sh
2a80: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
2a90: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
2aa0: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
2ab0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
2ac0: 65 20 68 65 78 20 30 33 62 32 36 34 62 65 35 31  e hex 03b264be51
2ad0: 65 34 62 39 34 31 38 36 34 66 39 62 37 30 62 34  e4b941864f9b70b4
2ae0: 63 39 35 38 66 35 33 35 35 61 61 63 32 39 34 62  c958f5355aac294b
2af0: 34 62 38 37 63 62 30 33 37 66 31 31 66 38 35 66  4b87cb037f11f85f
2b00: 30 37 65 62 35 37 62 33 66 30 62 38 39 35 35 30  07eb57b3f0b89550
2b10: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
2b20: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
2b30: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
2b40: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
2b50: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 64 31 66  xact -result d1f
2b60: 38 62 64 36 38 34 30 30 31 61 63 35 61 34 62 36  8bd684001ac5a4b6
2b70: 37 62 62 66 37 39 66 38 37 64 65 35 32 34 64 32  7bbf79f87de524d2
2b80: 64 61 39 39 61 63 30 31 34 64 65 63 33 65 34 31  da99ac014dec3e41
2b90: 38 37 37 32 38 66 34 35 35 37 34 37 31 0a 0a 74  87728f4557471..t
2ba0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
2bb0: 68 5f 53 48 41 32 35 36 2d 32 2e 33 39 20 7b 53  h_SHA256-2.39 {S
2bc0: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
2bd0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
2be0: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
2bf0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
2c00: 79 20 64 65 63 6f 64 65 20 68 65 78 20 64 30 66  y decode hex d0f
2c10: 65 66 64 39 36 37 38 37 63 36 35 66 66 61 37 66  efd96787c65ffa7f
2c20: 39 31 30 64 36 64 30 61 64 61 36 33 64 36 34 64  910d6d0ada63d64d
2c30: 35 63 34 36 37 39 39 36 30 65 37 66 30 36 61 65  5c4679960e7f06ae
2c40: 62 38 63 37 30 64 66 65 66 39 35 34 66 38 65 33  b8c70dfef954f8e3
2c50: 39 65 66 64 62 36 32 39 62 5d 7d 20 5c 0a 09 2d  9efdb629b]} \..-
2c60: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
2c70: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
2c80: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
2c90: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
2ca0: 65 73 75 6c 74 20 34 39 62 61 33 38 64 62 38 35  esult 49ba38db85
2cb0: 63 32 37 39 36 66 38 35 66 66 64 35 37 64 64 35  c2796f85ffd57dd5
2cc0: 65 63 33 33 37 30 30 37 34 31 34 35 32 38 61 65  ec337007414528ae
2cd0: 33 33 39 33 35 62 31 30 32 64 31 36 61 36 62 39  33935b102d16a6b9
2ce0: 31 62 61 36 63 31 0a 0a 74 63 6c 74 65 73 74 3a  1ba6c1..tcltest:
2cf0: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
2d00: 36 2d 32 2e 34 30 20 7b 53 48 41 32 35 36 53 68  6-2.40 {SHA256Sh
2d10: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
2d20: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
2d30: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
2d40: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
2d50: 65 20 68 65 78 20 62 37 63 37 39 64 37 65 35 66  e hex b7c79d7e5f
2d60: 31 65 65 63 63 64 66 65 64 66 30 65 37 62 66 34  1eeccdfedf0e7bf4
2d70: 33 65 37 33 30 64 34 34 37 65 36 30 37 64 38 64  3e730d447e607d8d
2d80: 31 34 38 39 38 32 33 64 30 39 65 31 31 32 30 31  1489823d09e11201
2d90: 61 30 62 31 32 35 38 30 33 39 65 37 62 64 34 38  a0b1258039e7bd48
2da0: 37 35 62 31 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  75b1]} \..-body 
2db0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
2dc0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
2dd0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
2de0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
2df0: 20 37 32 35 65 36 66 38 64 38 38 38 65 62 61 66   725e6f8d888ebaf
2e00: 39 30 38 62 37 36 39 32 32 35 39 61 62 38 38 33  908b7692259ab883
2e10: 39 63 33 32 34 38 65 64 64 32 32 63 61 31 31 35  9c3248edd22ca115
2e20: 62 62 31 33 65 30 32 35 38 30 38 36 35 34 37 30  bb13e02580865470
2e30: 30 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  0..tcltest::test
2e40: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 34   Hash_SHA256-2.4
2e50: 31 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  1 {SHA256ShortMs
2e60: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
2e70: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
2e80: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
2e90: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
2ea0: 20 36 34 63 64 33 36 33 65 63 63 65 30 35 66 64   64cd363ecce05fd
2eb0: 66 64 61 32 34 38 36 64 30 31 31 61 33 64 62 39  fda2486d011a3db9
2ec0: 35 62 35 32 30 36 61 31 39 64 33 30 35 34 30 34  5b5206a19d305404
2ed0: 36 38 31 39 64 64 30 64 33 36 37 38 33 39 35 35  6819dd0d36783955
2ee0: 64 37 65 35 62 66 38 62 61 31 38 62 66 37 33 38  d7e5bf8ba18bf738
2ef0: 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  a]} \..-body {tl
2f00: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
2f10: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
2f20: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
2f30: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 33 32  exact -result 32
2f40: 63 61 65 66 30 32 34 66 38 34 65 39 37 63 33 30  caef024f84e97c30
2f50: 62 34 61 37 62 39 64 30 34 62 36 37 38 62 33 64  b4a7b9d04b678b3d
2f60: 38 61 36 65 62 32 32 35 39 64 66 66 35 62 37 66  8a6eb2259dff5b7f
2f70: 37 63 30 31 31 66 30 39 30 38 34 35 66 38 0a 0a  7c011f090845f8..
2f80: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
2f90: 73 68 5f 53 48 41 32 35 36 2d 32 2e 34 32 20 7b  sh_SHA256-2.42 {
2fa0: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
2fb0: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
2fc0: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
2fd0: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
2fe0: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 36 61  ry decode hex 6a
2ff0: 63 36 63 36 33 64 36 31 38 65 61 66 30 30 64 39  c6c63d618eaf00d9
3000: 31 63 35 65 32 38 30 37 65 38 33 63 30 39 33 39  1c5e2807e83c0939
3010: 31 32 62 38 65 32 30 32 66 37 38 65 31 33 39 37  12b8e202f78e1397
3020: 30 33 34 39 38 61 37 39 63 36 30 36 37 66 35 34  03498a79c6067f54
3030: 34 39 37 63 36 31 32 37 61 32 33 39 31 30 61 36  497c6127a23910a6
3040: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
3050: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
3060: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
3070: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
3080: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 34 62 62  xact -result 4bb
3090: 33 33 65 37 63 36 39 31 36 65 30 38 61 39 62 33  33e7c6916e08a9b3
30a0: 65 64 36 62 63 65 66 37 39 30 61 61 61 65 65 30  ed6bcef790aaaee0
30b0: 64 63 66 32 65 37 61 30 31 61 66 62 30 35 36 31  dcf2e7a01afb0561
30c0: 38 32 64 65 61 32 64 61 64 37 64 36 33 0a 0a 74  82dea2dad7d63..t
30d0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
30e0: 68 5f 53 48 41 32 35 36 2d 32 2e 34 33 20 7b 53  h_SHA256-2.43 {S
30f0: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
3100: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
3110: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
3120: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
3130: 79 20 64 65 63 6f 64 65 20 68 65 78 20 64 32 36  y decode hex d26
3140: 38 32 36 64 62 39 62 61 65 61 61 38 39 32 36 39  826db9baeaa89269
3150: 31 62 36 38 39 30 30 62 39 36 31 36 33 32 30 38  1b68900b96163208
3160: 65 38 30 36 61 31 64 61 30 37 37 34 32 39 65 34  e806a1da077429e4
3170: 35 34 66 61 30 31 31 38 34 30 39 35 31 61 30 33  54fa011840951a03
3180: 31 33 32 37 65 36 30 35 61 62 38 32 65 63 63 65  1327e605ab82ecce
3190: 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  2]} \..-body {tl
31a0: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
31b0: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
31c0: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
31d0: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 33 61  exact -result 3a
31e0: 63 37 61 63 36 62 65 64 38 32 66 64 63 38 63 64  c7ac6bed82fdc8cd
31f0: 31 35 62 37 34 36 66 30 65 65 37 34 38 39 31 35  15b746f0ee748915
3200: 38 31 39 32 63 32 33 38 66 33 37 31 63 31 38 38  8192c238f371c188
3210: 33 63 39 66 65 39 30 62 33 65 32 38 33 31 0a 0a  3c9fe90b3e2831..
3220: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
3230: 73 68 5f 53 48 41 32 35 36 2d 32 2e 34 34 20 7b  sh_SHA256-2.44 {
3240: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
3250: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
3260: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
3270: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
3280: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 33 66  ry decode hex 3f
3290: 37 61 30 35 39 62 36 35 64 36 63 62 30 32 34 39  7a059b65d6cb0249
32a0: 32 30 34 61 61 63 31 30 62 39 66 31 61 34 61 63  204aac10b9f1a4ac
32b0: 39 65 35 38 36 38 61 64 65 62 62 65 39 33 35 61  9e5868adebbe935a
32c0: 39 65 62 35 62 39 30 31 39 65 31 63 39 33 38 62  9eb5b9019e1c938b
32d0: 66 63 34 65 35 63 35 33 37 38 39 39 37 61 33 39  fc4e5c5378997a39
32e0: 34 37 66 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  47f2]} \..-body 
32f0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
3300: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
3310: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
3320: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
3330: 20 62 66 63 65 38 30 39 35 33 34 65 65 66 65 38   bfce809534eefe8
3340: 37 31 32 37 33 39 36 34 64 33 32 66 30 39 31 66  71273964d32f091f
3350: 65 37 35 36 63 37 31 61 37 66 35 31 32 65 66 35  e756c71a7f512ef5
3360: 66 32 33 30 30 62 63 64 35 37 66 36 39 39 65 37  f2300bcd57f699e7
3370: 34 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  4..tcltest::test
3380: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 34   Hash_SHA256-2.4
3390: 35 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  5 {SHA256ShortMs
33a0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
33b0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
33c0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
33d0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
33e0: 20 36 30 66 66 63 62 32 33 64 36 62 38 38 65 34   60ffcb23d6b88e4
33f0: 38 35 62 39 32 30 61 66 38 31 64 31 30 38 33 66  85b920af81d1083f
3400: 36 32 39 31 64 30 36 61 63 38 63 61 33 61 39 36  6291d06ac8ca3a96
3410: 35 62 38 35 39 31 34 62 63 32 61 64 64 34 30 35  5b85914bc2add405
3420: 34 34 61 30 32 37 66 63 61 39 33 36 62 62 64 65  44a027fca936bbde
3430: 38 66 33 35 39 30 35 31 63 5d 7d 20 5c 0a 09 2d  8f359051c]} \..-
3440: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
3450: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
3460: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
3470: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
3480: 65 73 75 6c 74 20 31 64 32 36 66 33 65 30 34 66  esult 1d26f3e04f
3490: 38 39 62 34 65 61 61 39 64 62 65 64 39 32 33 31  89b4eaa9dbed9231
34a0: 62 62 30 35 31 65 65 66 32 65 38 33 31 31 61 64  bb051eef2e8311ad
34b0: 32 36 66 65 35 33 64 30 62 66 30 62 38 32 31 65  26fe53d0bf0b821e
34c0: 61 66 37 35 36 37 0a 0a 74 63 6c 74 65 73 74 3a  af7567..tcltest:
34d0: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
34e0: 36 2d 32 2e 34 36 20 7b 53 48 41 32 35 36 53 68  6-2.46 {SHA256Sh
34f0: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
3500: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
3510: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
3520: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
3530: 65 20 68 65 78 20 39 65 63 64 30 37 62 36 38 34  e hex 9ecd07b684
3540: 62 62 39 65 30 65 36 36 39 32 65 33 32 30 63 65  bb9e0e6692e320ce
3550: 63 34 35 31 30 63 61 37 39 66 63 64 62 33 61 32  c4510ca79fcdb3a2
3560: 32 31 32 63 32 36 64 39 30 64 66 36 35 64 62 33  212c26d90df65db3
3570: 33 65 36 39 32 64 30 37 33 63 63 31 37 34 38 34  3e692d073cc17484
3580: 30 64 62 37 39 37 35 30 34 65 34 38 32 65 65 66  0db797504e482eef
3590: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
35a0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
35b0: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
35c0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
35d0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 30 66 66  xact -result 0ff
35e0: 65 62 36 34 34 61 34 39 65 37 38 37 63 63 63 36  eb644a49e787ccc6
35f0: 39 37 30 66 65 32 39 37 30 35 61 34 66 34 63 32  970fe29705a4f4c2
3600: 62 66 63 66 65 37 64 31 39 37 34 31 63 31 35 38  bfcfe7d19741c158
3610: 33 33 33 66 66 36 39 38 32 63 63 39 63 0a 0a 74  333ff6982cc9c..t
3620: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
3630: 68 5f 53 48 41 32 35 36 2d 32 2e 34 37 20 7b 53  h_SHA256-2.47 {S
3640: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
3650: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
3660: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
3670: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
3680: 79 20 64 65 63 6f 64 65 20 68 65 78 20 39 64 36  y decode hex 9d6
3690: 34 64 65 37 31 36 31 38 39 35 38 38 34 65 37 66  4de7161895884e7f
36a0: 61 33 64 36 65 39 65 62 39 39 36 65 37 65 62 65  a3d6e9eb996e7ebe
36b0: 35 31 31 62 30 31 66 65 31 39 63 64 34 61 36 62  511b01fe19cd4a6b
36c0: 33 33 32 32 65 38 30 61 61 66 35 32 62 66 36 34  3322e80aaf52bf64
36d0: 34 37 65 64 31 38 35 34 65 37 31 30 30 31 66 34  47ed1854e71001f4
36e0: 64 35 34 66 38 39 33 31 64 5d 7d 20 5c 0a 09 2d  d54f8931d]} \..-
36f0: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
3700: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
3710: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
3720: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
3730: 65 73 75 6c 74 20 64 30 34 38 65 65 31 35 32 34  esult d048ee1524
3740: 30 31 34 61 64 66 39 61 35 36 65 36 30 61 33 38  014adf9a56e60a38
3750: 38 32 37 37 64 65 31 39 34 63 36 39 34 63 63 37  8277de194c694cc7
3760: 38 37 66 63 35 61 31 62 35 35 34 65 61 39 66 30  87fc5a1b554ea9f0
3770: 37 61 62 66 64 66 0a 0a 74 63 6c 74 65 73 74 3a  7abfdf..tcltest:
3780: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
3790: 36 2d 32 2e 34 38 20 7b 53 48 41 32 35 36 53 68  6-2.48 {SHA256Sh
37a0: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
37b0: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
37c0: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
37d0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
37e0: 65 20 68 65 78 20 63 34 61 64 33 63 35 65 37 38  e hex c4ad3c5e78
37f0: 64 39 31 37 65 63 62 30 63 62 62 63 64 31 63 34  d917ecb0cbbcd1c4
3800: 38 31 66 63 32 61 61 66 32 33 32 66 37 65 32 38  81fc2aaf232f7e28
3810: 39 37 37 39 66 34 30 65 35 30 34 63 63 33 30 39  9779f40e504cc309
3820: 36 36 32 65 65 39 36 66 65 63 62 64 32 30 36 34  662ee96fecbd2064
3830: 37 65 66 30 30 65 34 36 31 39 39 66 62 63 34 38  7ef00e46199fbc48
3840: 32 66 34 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  2f46]} \..-body 
3850: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
3860: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
3870: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
3880: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
3890: 20 35 30 64 62 66 34 30 30 36 36 66 38 64 32 37   50dbf40066f8d27
38a0: 30 34 38 34 65 65 32 65 66 36 36 33 32 32 38 32  0484ee2ef6632282
38b0: 64 66 61 33 30 30 61 38 35 61 38 35 33 30 65 63  dfa300a85a8530ec
38c0: 65 65 62 30 65 30 34 32 37 35 65 31 63 31 65 66  eeb0e04275e1c1ef
38d0: 64 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  d..tcltest::test
38e0: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 34   Hash_SHA256-2.4
38f0: 39 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  9 {SHA256ShortMs
3900: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
3910: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
3920: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
3930: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
3940: 20 34 65 65 66 35 31 30 37 34 35 39 62 64 64 66   4eef5107459bddf
3950: 38 66 32 34 66 63 37 36 35 36 66 64 34 38 39 36  8f24fc7656fd4896
3960: 64 61 38 37 31 31 64 62 35 30 34 30 30 63 30 31  da8711db50400c01
3970: 36 34 38 34 37 66 36 39 32 62 38 38 36 63 65 38  64847f692b886ce8
3980: 64 37 66 34 64 36 37 33 39 35 30 39 30 62 33 35  d7f4d67395090b35
3990: 33 34 65 66 64 37 62 30 64 32 39 38 64 61 33 34  34efd7b0d298da34
39a0: 62 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  b]} \..-body {tl
39b0: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
39c0: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
39d0: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
39e0: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 37 63  exact -result 7c
39f0: 35 64 31 34 65 64 38 33 64 61 62 38 37 35 61 63  5d14ed83dab875ac
3a00: 32 35 63 65 37 66 65 65 64 36 65 66 38 33 37 64  25ce7feed6ef837d
3a10: 35 38 65 37 39 64 63 36 30 31 66 62 33 63 31 66  58e79dc601fb3c1f
3a20: 63 61 34 38 64 34 34 36 34 65 38 62 38 33 0a 0a  ca48d4464e8b83..
3a30: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
3a40: 73 68 5f 53 48 41 32 35 36 2d 32 2e 35 30 20 7b  sh_SHA256-2.50 {
3a50: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
3a60: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
3a70: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
3a80: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
3a90: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 30 34  ry decode hex 04
3aa0: 37 64 32 37 35 38 65 37 63 32 63 39 36 32 33 66  7d2758e7c2c9623f
3ab0: 39 62 64 62 39 33 62 36 35 39 37 63 35 65 38 34  9bdb93b6597c5e84
3ac0: 61 30 63 64 33 34 65 36 31 30 30 31 34 62 63 62  a0cd34e610014bcb
3ad0: 32 35 62 34 39 65 64 30 35 63 37 65 33 35 36 65  25b49ed05c7e356e
3ae0: 39 38 63 37 61 36 37 32 63 33 64 64 64 63 61 65  98c7a672c3dddcae
3af0: 62 38 34 33 31 37 65 66 36 31 34 64 33 34 32 66  b84317ef614d342f
3b00: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
3b10: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
3b20: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
3b30: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
3b40: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 37 64 35  xact -result 7d5
3b50: 33 65 63 63 64 30 33 64 61 33 37 62 66 35 38 63  3eccd03da37bf58c
3b60: 31 39 36 32 61 38 66 30 66 37 30 38 61 35 63 35  1962a8f0f708a5c5
3b70: 63 34 34 37 66 36 61 37 65 39 65 32 36 31 33 37  c447f6a7e9e26137
3b80: 63 31 36 39 64 35 62 64 64 38 32 65 34 0a 0a 74  c169d5bdd82e4..t
3b90: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
3ba0: 68 5f 53 48 41 32 35 36 2d 32 2e 35 31 20 7b 53  h_SHA256-2.51 {S
3bb0: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
3bc0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
3bd0: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
3be0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
3bf0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 33 64 38  y decode hex 3d8
3c00: 33 64 66 33 37 31 37 32 63 38 31 61 66 64 30 64  3df37172c81afd0d
3c10: 65 31 31 35 31 33 39 66 62 66 34 33 39 30 63 32  e115139fbf4390c2
3c20: 32 65 30 39 38 63 35 61 66 34 63 35 61 62 34 38  2e098c5af4c5ab48
3c30: 35 32 34 30 36 35 31 30 62 63 30 65 36 63 66 37  52406510bc0e6cf7
3c40: 34 31 37 36 39 66 34 34 34 33 30 63 35 32 37 30  41769f44430c5270
3c50: 66 64 61 65 30 63 62 38 34 39 64 37 31 63 62 61  fdae0cb849d71cba
3c60: 62 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  b]} \..-body {tl
3c70: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
3c80: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
3c90: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
3ca0: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 39 39  exact -result 99
3cb0: 64 63 37 37 32 65 39 31 65 61 30 32 64 39 65 34  dc772e91ea02d9e4
3cc0: 32 31 64 35 35 32 64 36 31 39 30 31 30 31 36 62  21d552d61901016b
3cd0: 39 66 64 34 61 64 32 64 66 34 61 38 32 31 32 63  9fd4ad2df4a8212c
3ce0: 31 65 63 35 62 61 31 33 38 39 33 61 62 32 0a 0a  1ec5ba13893ab2..
3cf0: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
3d00: 73 68 5f 53 48 41 32 35 36 2d 32 2e 35 32 20 7b  sh_SHA256-2.52 {
3d10: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
3d20: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
3d30: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
3d40: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
3d50: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 33 33  ry decode hex 33
3d60: 66 64 39 62 63 31 37 65 32 62 32 37 31 66 61 30  fd9bc17e2b271fa0
3d70: 34 63 36 62 39 33 63 30 62 64 65 61 65 39 38 36  4c6b93c0bdeae986
3d80: 35 34 61 37 36 38 32 64 33 31 64 39 62 34 64 61  54a7682d31d9b4da
3d90: 62 37 65 36 66 33 32 63 64 35 38 66 32 66 31 34  b7e6f32cd58f2f14
3da0: 38 61 36 38 66 62 65 37 61 38 38 63 35 61 62 31  8a68fbe7a88c5ab1
3db0: 64 38 38 65 64 63 63 64 64 65 62 33 30 61 62 32  d88edccddeb30ab2
3dc0: 31 65 35 65 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  1e5e]} \..-body 
3dd0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
3de0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
3df0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
3e00: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
3e10: 20 63 65 66 64 61 65 31 61 33 64 37 35 65 37 39   cefdae1a3d75e79
3e20: 32 65 38 36 39 38 64 35 65 37 31 66 31 37 37 63  2e8698d5e71f177c
3e30: 63 37 36 31 33 31 34 65 39 61 64 35 64 66 39 36  c761314e9ad5df96
3e40: 30 32 63 36 65 36 30 61 65 36 35 63 34 63 32 36  02c6e60ae65c4c26
3e50: 37 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  7..tcltest::test
3e60: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 35   Hash_SHA256-2.5
3e70: 33 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  3 {SHA256ShortMs
3e80: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
3e90: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
3ea0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
3eb0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
3ec0: 20 37 37 61 38 37 39 63 66 61 31 31 64 37 66 63   77a879cfa11d7fc
3ed0: 61 63 37 61 38 32 38 32 63 63 33 38 61 34 33 64  ac7a8282cc38a43d
3ee0: 63 66 33 37 36 34 33 63 63 39 30 39 38 33 37 32  cf37643cc9098372
3ef0: 31 33 62 64 36 66 64 39 35 64 39 35 36 62 32 31  13bd6fd95d956b21
3f00: 39 61 31 34 30 36 63 62 65 37 33 63 35 32 63 64  9a1406cbe73c52cd
3f10: 35 36 63 36 30 30 65 35 35 62 37 35 62 63 33 37  56c600e55b75bc37
3f20: 65 61 36 39 36 34 31 62 63 5d 7d 20 5c 0a 09 2d  ea69641bc]} \..-
3f30: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
3f40: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
3f50: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
3f60: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
3f70: 65 73 75 6c 74 20 63 39 39 64 36 34 66 61 34 64  esult c99d64fa4d
3f80: 61 64 64 34 62 63 38 61 33 38 39 35 33 31 63 36  add4bc8a389531c6
3f90: 38 62 34 35 39 30 63 36 64 66 30 62 39 30 39 39  8b4590c6df0b9099
3fa0: 63 34 64 35 38 33 62 63 30 30 38 38 39 66 62 37  c4d583bc00889fb7
3fb0: 62 39 38 30 30 38 0a 0a 74 63 6c 74 65 73 74 3a  b98008..tcltest:
3fc0: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
3fd0: 36 2d 32 2e 35 34 20 7b 53 48 41 32 35 36 53 68  6-2.54 {SHA256Sh
3fe0: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
3ff0: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
4000: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
4010: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
4020: 65 20 68 65 78 20 34 35 61 33 65 36 62 38 36 35  e hex 45a3e6b865
4030: 32 37 66 32 30 62 34 35 33 37 66 35 61 66 39 36  27f20b4537f5af96
4040: 63 66 63 35 61 64 38 37 37 37 61 32 64 64 65 36  cfc5ad8777a2dde6
4050: 63 66 37 35 31 31 38 38 36 63 35 35 39 30 65 63  cf7511886c5590ec
4060: 65 32 34 66 63 36 31 62 32 32 36 37 33 39 64 32  e24fc61b226739d2
4070: 30 37 64 61 62 66 65 33 32 62 61 36 65 66 64 39  07dabfe32ba6efd9
4080: 66 66 34 63 64 35 64 62 31 62 64 35 65 61 64 33  ff4cd5db1bd5ead3
4090: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
40a0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
40b0: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
40c0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
40d0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 34 64 31  xact -result 4d1
40e0: 32 61 38 34 39 30 34 37 63 36 61 63 64 34 62 32  2a849047c6acd4b2
40f0: 65 65 65 36 62 65 33 35 66 61 39 30 35 31 62 30  eee6be35fa9051b0
4100: 32 64 32 31 64 35 30 64 34 31 39 35 34 33 30 30  2d21d50d41954300
4110: 38 63 31 64 38 32 63 34 32 37 30 37 32 0a 0a 74  8c1d82c427072..t
4120: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
4130: 68 5f 53 48 41 32 35 36 2d 32 2e 35 35 20 7b 53  h_SHA256-2.55 {S
4140: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
4150: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
4160: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
4170: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
4180: 79 20 64 65 63 6f 64 65 20 68 65 78 20 32 35 33  y decode hex 253
4190: 36 32 61 34 62 39 64 37 34 62 64 65 36 31 32 38  62a4b9d74bde6128
41a0: 63 34 66 64 63 36 37 32 33 30 35 39 30 30 39 34  c4fdc67230590094
41b0: 37 62 63 33 61 64 61 39 64 39 64 33 31 36 65 62  7bc3ada9d9d316eb
41c0: 63 66 31 36 36 37 61 64 34 33 36 33 31 38 39 39  cf1667ad43631899
41d0: 33 37 32 35 31 66 31 34 39 63 37 32 65 30 36 34  37251f149c72e064
41e0: 61 34 38 36 30 38 64 39 34 30 62 37 35 37 34 62  a48608d940b7574b
41f0: 31 37 66 65 66 63 30 64 66 5d 7d 20 5c 0a 09 2d  17fefc0df]} \..-
4200: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
4210: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
4220: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
4230: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
4240: 65 73 75 6c 74 20 66 38 65 34 63 63 61 62 36 63  esult f8e4ccab6c
4250: 39 37 39 32 32 39 66 36 30 36 36 63 63 30 63 62  979229f6066cc0cb
4260: 30 63 66 61 38 31 62 62 32 31 34 34 37 63 31 36  0cfa81bb21447c16
4270: 63 36 38 37 37 33 62 65 37 65 35 35 38 65 39 66  c68773be7e558e9f
4280: 39 64 37 39 38 64 0a 0a 74 63 6c 74 65 73 74 3a  9d798d..tcltest:
4290: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
42a0: 36 2d 32 2e 35 36 20 7b 53 48 41 32 35 36 53 68  6-2.56 {SHA256Sh
42b0: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
42c0: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
42d0: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
42e0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
42f0: 65 20 68 65 78 20 33 65 62 66 62 30 36 64 62 38  e hex 3ebfb06db8
4300: 63 33 38 64 35 62 61 30 33 37 66 31 33 36 33 65  c38d5ba037f1363e
4310: 31 31 38 35 35 30 61 61 64 39 34 36 30 36 65 32  118550aad94606e2
4320: 36 38 33 35 61 30 31 61 66 30 35 30 37 38 35 33  6835a01af0507853
4330: 33 63 63 32 35 66 32 66 33 39 35 37 33 63 30 34  3cc25f2f39573c04
4340: 62 36 33 32 66 36 32 66 36 38 63 32 39 34 61 62  b632f62f68c294ab
4350: 33 31 66 32 61 33 65 32 61 31 61 30 64 38 63 32  31f2a3e2a1a0d8c2
4360: 62 65 35 31 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  be51]} \..-body 
4370: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
4380: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
4390: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
43a0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
43b0: 20 36 35 39 35 61 32 65 66 35 33 37 61 36 39 62   6595a2ef537a69b
43c0: 61 38 35 38 33 64 66 62 66 37 66 35 62 65 63 30  a8583dfbf7f5bec0
43d0: 61 62 31 66 39 33 63 65 34 63 38 65 65 31 39 31  ab1f93ce4c8ee191
43e0: 36 65 66 66 34 34 61 39 33 61 66 35 37 34 39 63  6eff44a93af5749c
43f0: 34 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  4..tcltest::test
4400: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 35   Hash_SHA256-2.5
4410: 37 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  7 {SHA256ShortMs
4420: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
4430: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
4440: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
4450: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
4460: 20 32 64 35 32 34 34 37 64 31 32 34 34 64 32 65   2d52447d1244d2e
4470: 62 63 32 38 36 35 30 65 37 62 30 35 36 35 34 62  bc28650e7b05654b
4480: 61 64 33 35 62 33 61 36 38 65 65 64 63 37 66 38  ad35b3a68eedc7f8
4490: 35 31 35 33 30 36 62 34 39 36 64 37 35 66 33 65  515306b496d75f3e
44a0: 37 33 33 38 35 64 64 31 62 30 30 32 36 32 35 30  73385dd1b0026250
44b0: 32 34 62 38 31 61 30 32 66 32 66 64 36 64 66 66  24b81a02f2fd6dff
44c0: 62 36 65 36 64 35 36 31 63 62 37 64 30 62 64 37  b6e6d561cb7d0bd7
44d0: 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  a]} \..-body {tl
44e0: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
44f0: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
4500: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
4510: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 63 66  exact -result cf
4520: 62 38 38 64 36 66 61 66 32 64 65 33 61 36 39 64  b88d6faf2de3a69d
4530: 33 36 31 39 35 61 63 65 63 32 65 32 35 35 65 32  36195acec2e255e2
4540: 61 66 32 62 37 64 39 33 33 39 39 37 66 33 34 38  af2b7d933997f348
4550: 65 30 39 66 36 63 65 35 37 35 38 33 36 30 0a 0a  e09f6ce5758360..
4560: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
4570: 73 68 5f 53 48 41 32 35 36 2d 32 2e 35 38 20 7b  sh_SHA256-2.58 {
4580: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
4590: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
45a0: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
45b0: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
45c0: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 34 63  ry decode hex 4c
45d0: 61 63 65 34 32 32 65 34 61 30 31 35 61 37 35 34  ace422e4a015a754
45e0: 39 32 62 33 62 33 62 62 66 62 64 66 33 37 35 38  92b3b3bbfbdf3758
45f0: 65 61 66 66 34 66 65 35 30 34 62 34 36 61 32 36  eaff4fe504b46a26
4600: 63 39 30 64 61 63 63 31 31 39 66 61 39 30 35 30  c90dacc119fa9050
4610: 66 36 30 33 64 32 62 35 38 62 33 39 38 63 61 64  f603d2b58b398cad
4620: 36 64 36 64 39 66 61 39 32 32 61 31 35 34 64 39  6d6d9fa922a154d9
4630: 65 30 62 63 34 33 38 39 39 36 38 32 37 34 62 30  e0bc4389968274b0
4640: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
4650: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
4660: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
4670: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
4680: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 34 64 35  xact -result 4d5
4690: 34 62 32 64 32 38 34 61 36 37 39 34 35 38 31 32  4b2d284a67945812
46a0: 32 34 65 30 38 66 36 37 35 35 34 31 63 38 66 65  24e08f675541c8fe
46b0: 61 62 36 65 65 66 61 33 61 63 31 63 66 65 35 64  ab6eefa3ac1cfe5d
46c0: 61 34 65 30 33 65 36 32 66 37 32 65 34 0a 0a 74  a4e03e62f72e4..t
46d0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
46e0: 68 5f 53 48 41 32 35 36 2d 32 2e 35 39 20 7b 53  h_SHA256-2.59 {S
46f0: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
4700: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
4710: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
4720: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
4730: 79 20 64 65 63 6f 64 65 20 68 65 78 20 38 36 32  y decode hex 862
4740: 30 62 38 36 66 62 63 61 61 63 65 34 66 66 33 63  0b86fbcaace4ff3c
4750: 32 39 32 31 62 38 34 36 36 64 64 64 37 62 61 63  2921b8466ddd7bac
4760: 61 65 30 37 65 65 66 65 66 36 39 33 63 66 31 37  ae07eefef693cf17
4770: 37 36 32 64 63 61 62 62 38 39 61 38 34 30 31 30  762dcabb89a84010
4780: 66 63 39 61 30 66 62 37 36 63 65 31 63 32 36 35  fc9a0fb76ce1c265
4790: 39 33 61 64 36 33 37 61 36 31 32 35 33 66 32 32  93ad637a61253f22
47a0: 34 64 31 62 31 34 61 30 35 61 64 64 63 63 61 62  4d1b14a05addccab
47b0: 65 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  e]} \..-body {tl
47c0: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
47d0: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
47e0: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
47f0: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 64 62  exact -result db
4800: 61 34 39 30 32 35 36 63 39 37 32 30 63 35 34 63  a490256c9720c54c
4810: 36 31 32 61 35 62 64 31 65 66 35 37 33 63 64 35  612a5bd1ef573cd5
4820: 31 64 63 31 32 62 33 65 37 62 64 38 63 36 64 62  1dc12b3e7bd8c6db
4830: 32 65 61 62 65 30 61 61 63 62 38 34 36 62 0a 0a  2eabe0aacb846b..
4840: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61  tcltest::test Ha
4850: 73 68 5f 53 48 41 32 35 36 2d 32 2e 36 30 20 7b  sh_SHA256-2.60 {
4860: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
4870: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
4880: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
4890: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
48a0: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 64 31  ry decode hex d1
48b0: 62 65 33 66 31 33 66 65 62 61 66 65 66 63 31 34  be3f13febafefc14
48c0: 34 31 34 64 39 66 62 37 66 36 39 33 64 62 31 36  414d9fb7f693db16
48d0: 64 63 31 61 65 32 37 30 63 35 62 36 34 37 64 38  dc1ae270c5b647d8
48e0: 30 64 61 38 35 38 33 35 38 37 63 31 61 64 38 63  0da8583587c1ad8c
48f0: 62 38 63 62 30 31 38 32 34 33 32 34 34 31 31 63  b8cb01824324411c
4900: 61 35 61 63 65 33 63 61 32 32 65 31 37 39 61 34  a5ace3ca22e179a4
4910: 66 66 34 39 38 36 66 33 66 32 31 31 39 30 66 33  ff4986f3f21190f3
4920: 64 37 66 33 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  d7f3]} \..-body 
4930: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
4940: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
4950: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
4960: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
4970: 20 30 32 38 30 34 39 37 38 65 62 61 36 65 31 64   02804978eba6e1d
4980: 65 36 35 61 66 64 62 63 36 61 36 30 39 31 65 64  e65afdbc6a6091ed
4990: 36 62 31 65 63 65 65 35 31 65 38 62 66 66 34 30  6b1ecee51e8bff40
49a0: 36 34 36 61 32 35 31 64 65 36 36 37 38 62 37 65  646a251de6678b7e
49b0: 66 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  f..tcltest::test
49c0: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 36   Hash_SHA256-2.6
49d0: 31 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  1 {SHA256ShortMs
49e0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
49f0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
4a00: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
4a10: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
4a20: 20 66 34 39 39 63 63 33 66 36 65 33 63 66 37 63   f499cc3f6e3cf7c
4a30: 33 31 32 66 66 64 66 62 61 36 31 62 31 32 36 30  312ffdfba61b1260
4a40: 63 33 37 31 32 39 63 31 61 66 62 33 39 31 30 34  c37129c1afb39104
4a50: 37 31 39 33 33 36 37 62 37 62 32 65 64 65 62 35  7193367b7b2edeb5
4a60: 37 39 32 35 33 65 35 31 64 36 32 62 61 36 64 39  79253e51d62ba6d9
4a70: 31 31 65 37 62 38 31 38 63 63 61 65 31 35 35 33  11e7b818ccae1553
4a80: 66 36 31 34 36 65 61 37 38 30 66 37 38 65 32 32  f6146ea780f78e22
4a90: 31 39 66 36 32 39 33 30 39 5d 7d 20 5c 0a 09 2d  19f629309]} \..-
4aa0: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
4ab0: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
4ac0: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
4ad0: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
4ae0: 65 73 75 6c 74 20 30 62 36 36 63 38 62 34 66 65  esult 0b66c8b4fe
4af0: 66 65 62 63 38 64 63 37 64 61 30 62 62 65 64 63  febc8dc7da0bbedc
4b00: 31 31 31 34 66 32 32 38 61 61 36 33 63 33 37 64  1114f228aa63c37d
4b10: 35 63 33 30 65 39 31 61 62 35 30 30 66 33 65 61  5c30e91ab500f3ea
4b20: 64 66 63 65 63 35 0a 0a 74 63 6c 74 65 73 74 3a  dfcec5..tcltest:
4b30: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
4b40: 36 2d 32 2e 36 32 20 7b 53 48 41 32 35 36 53 68  6-2.62 {SHA256Sh
4b50: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
4b60: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
4b70: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
4b80: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
4b90: 65 20 68 65 78 20 36 64 64 36 65 66 64 36 66 36  e hex 6dd6efd6f6
4ba0: 63 61 61 36 33 62 37 32 39 61 61 38 31 38 36 65  caa63b729aa8186e
4bb0: 33 30 38 62 63 31 62 64 61 30 36 33 30 37 63 30  308bc1bda06307c0
4bc0: 35 61 32 63 30 61 65 35 61 33 36 38 34 65 36 65  5a2c0ae5a3684e6e
4bd0: 34 36 30 38 31 31 37 34 38 36 39 30 64 63 32 62  460811748690dc2b
4be0: 35 38 37 37 35 39 36 37 63 66 63 63 36 34 35 66  58775967cfcc645f
4bf0: 64 38 32 30 36 34 62 31 32 37 39 66 64 63 61 37  d82064b1279fdca7
4c00: 37 31 38 30 33 64 62 39 64 63 61 30 66 66 35 33  71803db9dca0ff53
4c10: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
4c20: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
4c30: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
4c40: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
4c50: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 63 34 36  xact -result c46
4c60: 34 61 37 62 66 36 64 31 38 30 64 65 34 66 37 34  4a7bf6d180de4f74
4c70: 34 62 62 32 66 65 35 64 63 32 37 61 33 66 36 38  4bb2fe5dc27a3f68
4c80: 31 33 33 34 66 66 64 35 34 61 39 38 31 34 36 35  1334ffd54a981465
4c90: 30 65 36 30 32 36 30 61 34 37 38 65 33 0a 0a 74  0e60260a478e3..t
4ca0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
4cb0: 68 5f 53 48 41 32 35 36 2d 32 2e 36 33 20 7b 53  h_SHA256-2.63 {S
4cc0: 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  HA256ShortMsg} \
4cd0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
4ce0: 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20  HA256 \..-setup 
4cf0: 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72  {set data [binar
4d00: 79 20 64 65 63 6f 64 65 20 68 65 78 20 36 35 31  y decode hex 651
4d10: 31 61 32 32 34 32 64 64 62 32 37 33 31 37 38 65  1a2242ddb273178e
4d20: 31 39 61 38 32 63 35 37 63 38 35 63 62 30 35 61  19a82c57c85cb05a
4d30: 36 38 38 37 66 66 32 30 31 34 63 66 31 61 33 31  6887ff2014cf1a31
4d40: 63 62 39 62 61 35 64 66 31 36 39 35 61 61 64 62  cb9ba5df1695aadb
4d50: 32 35 63 32 32 62 33 63 35 65 64 35 31 63 31 30  25c22b3c5ed51c10
4d60: 64 30 34 37 64 32 35 36 62 38 65 33 34 34 32 38  d047d256b8e34428
4d70: 34 32 61 65 34 65 36 63 35 32 35 66 38 64 37 61  42ae4e6c525f8d7a
4d80: 35 61 39 34 34 61 66 32 61 5d 7d 20 5c 0a 09 2d  5a944af2a]} \..-
4d90: 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73  body {tls::diges
4da0: 74 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36  t -digest SHA256
4db0: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
4dc0: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
4dd0: 65 73 75 6c 74 20 64 36 38 35 39 63 30 62 35 61  esult d6859c0b5a
4de0: 30 62 36 36 33 37 36 61 32 34 66 35 36 62 32 61  0b66376a24f56b2a
4df0: 62 31 30 34 32 38 36 65 64 30 30 37 38 36 33 34  b104286ed0078634
4e00: 62 61 31 39 31 31 32 61 63 65 30 64 36 64 36 30  ba19112ace0d6d60
4e10: 61 39 63 31 61 65 0a 0a 74 63 6c 74 65 73 74 3a  a9c1ae..tcltest:
4e20: 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35  :test Hash_SHA25
4e30: 36 2d 32 2e 36 34 20 7b 53 48 41 32 35 36 53 68  6-2.64 {SHA256Sh
4e40: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
4e50: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
4e60: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
4e70: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
4e80: 65 20 68 65 78 20 65 32 66 37 36 65 39 37 36 30  e hex e2f76e9760
4e90: 36 61 38 37 32 65 33 31 37 34 33 39 66 31 61 30  6a872e317439f1a0
4ea0: 33 66 63 64 39 32 65 36 33 32 65 35 62 64 34 65  3fcd92e632e5bd4e
4eb0: 37 63 62 63 34 65 39 37 66 31 61 66 63 31 39 61  7cbc4e97f1afc19a
4ec0: 31 36 66 64 65 39 32 64 37 37 63 62 65 35 34 36  16fde92d77cbe546
4ed0: 34 31 36 62 35 31 36 34 30 63 64 64 62 39 32 61  416b51640cddb92a
4ee0: 66 39 39 36 35 33 34 64 66 64 38 31 65 64 62 31  f996534dfd81edb1
4ef0: 37 63 34 34 32 34 63 66 31 61 63 34 64 37 35 61  7c4424cf1ac4d75a
4f00: 63 65 65 62 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  ceeb]} \..-body 
4f10: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
4f20: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
4f30: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
4f40: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
4f50: 20 31 38 30 34 31 62 64 34 36 36 35 30 38 33 30   18041bd46650830
4f60: 30 31 66 62 61 38 63 35 34 31 31 64 32 64 37 34  01fba8c5411d2d74
4f70: 38 65 38 61 62 62 66 64 63 64 66 64 39 32 31 38  8e8abbfdcdfd9218
4f80: 63 62 30 32 62 36 38 61 37 38 65 37 64 34 63 32  cb02b68a78e7d4c2
4f90: 33 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  3..tcltest::test
4fa0: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 36   Hash_SHA256-2.6
4fb0: 35 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  5 {SHA256ShortMs
4fc0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
4fd0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
4fe0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
4ff0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
5000: 20 35 61 38 36 62 37 33 37 65 61 65 61 38 65 65   5a86b737eaea8ee
5010: 39 37 36 61 30 61 32 34 64 61 36 33 65 37 65 64  976a0a24da63e7ed
5020: 37 65 65 66 61 64 31 38 61 31 30 31 63 31 32 31  7eefad18a101c121
5030: 31 65 32 62 33 36 35 30 63 35 31 38 37 63 32 61  1e2b3650c5187c2a
5040: 38 61 36 35 30 35 34 37 32 30 38 32 35 31 66 36  8a650547208251f6
5050: 64 34 32 33 37 65 36 36 31 63 37 62 66 34 63 37  d4237e661c7bf4c7
5060: 37 66 33 33 35 33 39 30 33 39 34 63 33 37 66 61  7f335390394c37fa
5070: 31 61 39 66 39 62 65 38 33 36 61 63 32 38 35 30  1a9f9be836ac2850
5080: 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c  9]} \..-body {tl
5090: 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73  s::digest -diges
50a0: 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24  t SHA256 -data $
50b0: 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20  data} \..-match 
50c0: 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 34 32  exact -result 42
50d0: 65 36 31 65 31 37 34 66 62 62 33 38 39 37 64 36  e61e174fbb3897d6
50e0: 64 64 36 63 65 66 33 64 64 32 38 30 32 66 65 36  dd6cef3dd2802fe6
50f0: 37 62 33 33 31 39 35 33 62 30 36 31 31 34 61 36  7b331953b06114a6
5100: 35 63 37 37 32 38 35 39 64 66 63 31 61 61 0a 0a  5c772859dfc1aa..
5110: 23 20 43 6c 65 61 6e 75 70 0a 3a 3a 74 63 6c 74  # Cleanup.::tclt
5120: 65 73 74 3a 3a 63 6c 65 61 6e 75 70 54 65 73 74  est::cleanupTest
5130: 73 0a 72 65 74 75 72 6e 0a                       s.return.