Hex Artifact Content

Artifact c21ec20562f1e1b79db68b85d50ceab80f4478770758341e871612323a81b5a1:


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 6c 61 70 70 65  rtMsg.rsp".lappe
0030: 6e 64 20 61 75 74 6f 5f 70 61 74 68 20 5b 66 69  nd auto_path [fi
0040: 6c 65 20 64 69 72 6e 61 6d 65 20 5b 66 69 6c 65  le dirname [file
0050: 20 64 69 72 6e 61 6d 65 20 5b 66 69 6c 65 20 64   dirname [file d
0060: 69 72 6e 61 6d 65 20 5b 66 69 6c 65 20 64 69 72  irname [file dir
0070: 6e 61 6d 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20  name [file join 
0080: 5b 70 77 64 5d 20 5b 69 6e 66 6f 20 73 63 72 69  [pwd] [info scri
0090: 70 74 5d 5d 5d 5d 5d 5d 0a 70 61 63 6b 61 67 65  pt]]]]]].package
00a0: 20 72 65 71 75 69 72 65 20 74 6c 73 0a 70 61 63   require tls.pac
00b0: 6b 61 67 65 20 72 65 71 75 69 72 65 20 74 63 6c  kage require tcl
00c0: 74 65 73 74 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  test..tcltest::t
00d0: 65 73 74 43 6f 6e 73 74 72 61 69 6e 74 20 53 48  estConstraint SH
00e0: 41 32 35 36 20 5b 65 78 70 72 20 7b 5b 6c 73 65  A256 [expr {[lse
00f0: 61 72 63 68 20 2d 6e 6f 63 61 73 65 20 5b 74 6c  arch -nocase [tl
0100: 73 3a 3a 64 69 67 65 73 74 73 5d 20 53 48 41 32  s::digests] SHA2
0110: 35 36 5d 20 3e 20 2d 31 7d 5d 0a 63 61 74 63 68  56] > -1}].catch
0120: 20 7b 74 6c 73 3a 3a 70 72 6f 76 69 64 65 72 20   {tls::provider 
0130: 6c 65 67 61 63 79 7d 0a 0a 74 63 6c 74 65 73 74  legacy}..tcltest
0140: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 32  ::test Hash_SHA2
0150: 35 36 2d 32 2e 31 20 7b 53 48 41 32 35 36 53 68  56-2.1 {SHA256Sh
0160: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
0170: 74 72 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c  traints SHA256 \
0180: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
0190: 74 61 20 22 22 7d 20 5c 0a 09 2d 62 6f 64 79 20  ta ""} \..-body 
01a0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
01b0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
01c0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
01d0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
01e0: 20 65 33 62 30 63 34 34 32 39 38 66 63 31 63 31   e3b0c44298fc1c1
01f0: 34 39 61 66 62 66 34 63 38 39 39 36 66 62 39 32  49afbf4c8996fb92
0200: 34 32 37 61 65 34 31 65 34 36 34 39 62 39 33 34  427ae41e4649b934
0210: 63 61 34 39 35 39 39 31 62 37 38 35 32 62 38 35  ca495991b7852b85
0220: 35 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  5..tcltest::test
0230: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 32   Hash_SHA256-2.2
0240: 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67   {SHA256ShortMsg
0250: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
0260: 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74  s SHA256 \..-set
0270: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
0280: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
0290: 64 33 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74  d3]} \..-body {t
02a0: 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65  ls::digest -dige
02b0: 73 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20  st SHA256 -data 
02c0: 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68  $data} \..-match
02d0: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 32   exact -result 2
02e0: 38 39 36 39 63 64 66 61 37 34 61 31 32 63 38 32  8969cdfa74a12c82
02f0: 66 33 62 61 64 39 36 30 62 30 62 30 30 30 61 63  f3bad960b0b000ac
0300: 61 32 61 63 33 32 39 64 65 65 61 35 63 32 33 32  a2ac329deea5c232
0310: 38 65 62 63 36 66 32 62 61 39 38 30 32 63 31 0a  8ebc6f2ba9802c1.
0320: 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48  .tcltest::test H
0330: 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 33 20 7b  ash_SHA256-2.3 {
0340: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
0350: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
0360: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
0370: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
0380: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 31 31  ry decode hex 11
0390: 61 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74  af]} \..-body {t
03a0: 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65  ls::digest -dige
03b0: 73 74 20 53 48 41 32 35 36 20 2d 64 61 74 61 20  st SHA256 -data 
03c0: 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68  $data} \..-match
03d0: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 35   exact -result 5
03e0: 63 61 37 31 33 33 66 61 37 33 35 33 32 36 30 38  ca7133fa73532608
03f0: 31 35 35 38 61 63 33 31 32 63 36 32 30 65 65 63  1558ac312c620eec
0400: 61 39 39 37 30 64 31 65 37 30 61 34 62 39 35 35  a9970d1e70a4b955
0410: 33 33 64 39 35 36 66 30 37 32 64 31 66 39 38 0a  33d956f072d1f98.
0420: 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48  .tcltest::test H
0430: 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 34 20 7b  ash_SHA256-2.4 {
0440: 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  SHA256ShortMsg} 
0450: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
0460: 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  SHA256 \..-setup
0470: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
0480: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 62 34  ry decode hex b4
0490: 31 39 30 65 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  190e]} \..-body 
04a0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
04b0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
04c0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
04d0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
04e0: 20 64 66 66 32 65 37 33 30 39 31 66 36 63 30 35   dff2e73091f6c05
04f0: 65 35 32 38 38 39 36 63 34 63 38 33 31 62 39 34  e528896c4c831b94
0500: 34 38 36 35 33 64 63 32 66 66 30 34 33 35 32 38  48653dc2ff043528
0510: 66 36 37 36 39 34 33 37 62 63 37 62 39 37 35 63  f6769437bc7b975c
0520: 32 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  2..tcltest::test
0530: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 35   Hash_SHA256-2.5
0540: 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73 67   {SHA256ShortMsg
0550: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
0560: 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65 74  s SHA256 \..-set
0570: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
0580: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
0590: 37 34 62 61 32 35 32 31 5d 7d 20 5c 0a 09 2d 62  74ba2521]} \..-b
05a0: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
05b0: 20 2d 64 69 67 65 73 74 20 53 48 41 32 35 36 20   -digest SHA256 
05c0: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
05d0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
05e0: 73 75 6c 74 20 62 31 36 61 61 35 36 62 65 33 38  sult b16aa56be38
05f0: 38 30 64 31 38 63 64 34 31 65 36 38 33 38 34 63  80d18cd41e68384c
0600: 66 31 65 63 38 63 31 37 36 38 30 63 34 35 61 30  f1ec8c17680c45a0
0610: 32 62 31 35 37 35 64 63 31 35 31 38 39 32 33 61  2b1575dc1518923a
0620: 65 38 62 30 65 0a 0a 74 63 6c 74 65 73 74 3a 3a  e8b0e..tcltest::
0630: 74 65 73 74 20 48 61 73 68 5f 53 48 41 32 35 36  test Hash_SHA256
0640: 2d 32 2e 36 20 7b 53 48 41 32 35 36 53 68 6f 72  -2.6 {SHA256Shor
0650: 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72  tMsg} \..-constr
0660: 61 69 6e 74 73 20 53 48 41 32 35 36 20 5c 0a 09  aints SHA256 \..
0670: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
0680: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
0690: 68 65 78 20 63 32 39 39 32 30 39 36 38 32 5d 7d  hex c299209682]}
06a0: 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a   \..-body {tls::
06b0: 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53  digest -digest S
06c0: 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61 74  HA256 -data $dat
06d0: 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61  a} \..-match exa
06e0: 63 74 20 2d 72 65 73 75 6c 74 20 66 30 38 38 37  ct -result f0887
06f0: 66 65 39 36 31 63 39 63 64 33 62 65 61 62 39 35  fe961c9cd3beab95
0700: 37 65 38 32 32 32 34 39 34 61 62 62 39 36 39 62  7e8222494abb969b
0710: 31 63 65 34 63 36 35 35 37 39 37 36 64 66 38 62  1ce4c6557976df8b
0720: 30 66 36 64 32 30 65 39 31 36 36 0a 0a 74 63 6c  0f6d20e9166..tcl
0730: 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f  test::test Hash_
0740: 53 48 41 32 35 36 2d 32 2e 37 20 7b 53 48 41 32  SHA256-2.7 {SHA2
0750: 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d  56ShortMsg} \..-
0760: 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32  constraints SHA2
0770: 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  56 \..-setup {se
0780: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
0790: 65 63 6f 64 65 20 68 65 78 20 65 31 64 63 37 32  ecode hex e1dc72
07a0: 34 64 35 36 32 31 5d 7d 20 5c 0a 09 2d 62 6f 64  4d5621]} \..-bod
07b0: 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d  y {tls::digest -
07c0: 64 69 67 65 73 74 20 53 48 41 32 35 36 20 2d 64  digest SHA256 -d
07d0: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
07e0: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
07f0: 6c 74 20 65 63 61 30 61 30 36 30 62 34 38 39 36  lt eca0a060b4896
0800: 33 36 32 32 35 62 34 66 61 36 34 64 32 36 37 64  36225b4fa64d267d
0810: 61 62 62 65 34 34 32 37 33 30 36 37 61 63 36 37  abbe44273067ac67
0820: 39 66 32 30 38 32 30 62 64 64 63 36 62 36 61 39  9f20820bddc6b6a9
0830: 30 61 63 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  0ac..tcltest::te
0840: 73 74 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32  st Hash_SHA256-2
0850: 2e 38 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d  .8 {SHA256ShortM
0860: 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69  sg} \..-constrai
0870: 6e 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73  nts SHA256 \..-s
0880: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
0890: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
08a0: 78 20 30 36 65 30 37 36 66 35 61 34 34 32 64 35  x 06e076f5a442d5
08b0: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
08c0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
08d0: 20 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64   SHA256 -data $d
08e0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
08f0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 33 66 64  xact -result 3fd
0900: 38 37 37 65 32 37 34 35 30 65 36 62 62 64 35 64  877e27450e6bbd5d
0910: 37 34 62 62 38 32 66 39 38 37 30 63 36 34 63 36  74bb82f9870c64c6
0920: 36 65 31 30 39 34 31 38 62 61 61 38 65 36 62 62  6e109418baa8e6bb
0930: 63 66 66 33 35 35 65 32 38 37 39 32 36 0a 0a 74  cff355e287926..t
0940: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
0950: 68 5f 53 48 41 32 35 36 2d 32 2e 39 20 7b 53 48  h_SHA256-2.9 {SH
0960: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
0970: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
0980: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
0990: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
09a0: 20 64 65 63 6f 64 65 20 68 65 78 20 35 37 33 38   decode hex 5738
09b0: 63 39 32 39 63 34 66 34 63 63 62 36 5d 7d 20 5c  c929c4f4ccb6]} \
09c0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
09d0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
09e0: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
09f0: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
0a00: 20 2d 72 65 73 75 6c 74 20 39 36 33 62 62 38 38   -result 963bb88
0a10: 66 32 37 66 35 31 32 37 37 37 61 61 62 36 63 38  f27f512777aab6c8
0a20: 62 31 61 30 32 63 37 30 65 63 30 61 64 36 35 31  b1a02c70ec0ad651
0a30: 64 34 32 38 66 38 37 30 30 33 36 65 31 39 31 37  d428f870036e1917
0a40: 31 32 30 66 62 34 38 62 66 0a 0a 74 63 6c 74 65  120fb48bf..tclte
0a50: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
0a60: 41 32 35 36 2d 32 2e 31 30 20 7b 53 48 41 32 35  A256-2.10 {SHA25
0a70: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
0a80: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
0a90: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
0aa0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
0ab0: 63 6f 64 65 20 68 65 78 20 33 33 33 34 63 35 38  code hex 3334c58
0ac0: 30 37 35 64 33 66 34 31 33 39 65 5d 7d 20 5c 0a  075d3f4139e]} \.
0ad0: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
0ae0: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
0af0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
0b00: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
0b10: 2d 72 65 73 75 6c 74 20 30 37 38 64 61 33 64 37  -result 078da3d7
0b20: 37 65 64 34 33 62 64 33 30 33 37 61 34 33 33 66  7ed43bd3037a433f
0b30: 64 30 33 34 31 38 35 35 30 32 33 37 39 33 66 39  d0341855023793f9
0b40: 61 66 64 30 38 62 34 62 30 38 65 61 31 65 35 35  afd08b4b08ea1e55
0b50: 39 37 63 65 65 66 32 30 0a 0a 74 63 6c 74 65 73  97ceef20..tcltes
0b60: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
0b70: 32 35 36 2d 32 2e 31 31 20 7b 53 48 41 32 35 36  256-2.11 {SHA256
0b80: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
0b90: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
0ba0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
0bb0: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
0bc0: 6f 64 65 20 68 65 78 20 37 34 63 62 39 33 38 31  ode hex 74cb9381
0bd0: 64 38 39 66 35 61 61 37 33 33 36 38 5d 7d 20 5c  d89f5aa73368]} \
0be0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
0bf0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
0c00: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
0c10: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
0c20: 20 2d 72 65 73 75 6c 74 20 37 33 64 36 66 61 64   -result 73d6fad
0c30: 31 63 61 61 61 37 35 62 34 33 62 32 31 37 33 33  1caaa75b43b21733
0c40: 35 36 31 66 64 33 39 35 38 62 64 63 35 35 35 31  561fd3958bdc5551
0c50: 39 34 61 30 33 37 63 32 61 64 64 65 63 31 39 64  94a037c2addec19d
0c60: 63 32 64 37 61 35 32 62 64 0a 0a 74 63 6c 74 65  c2d7a52bd..tclte
0c70: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
0c80: 41 32 35 36 2d 32 2e 31 32 20 7b 53 48 41 32 35  A256-2.12 {SHA25
0c90: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
0ca0: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
0cb0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
0cc0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
0cd0: 63 6f 64 65 20 68 65 78 20 37 36 65 64 32 34 61  code hex 76ed24a
0ce0: 30 66 34 30 61 34 31 32 32 31 65 62 66 63 66 5d  0f40a41221ebfcf]
0cf0: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
0d00: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
0d10: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
0d20: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
0d30: 61 63 74 20 2d 72 65 73 75 6c 74 20 30 34 34 63  act -result 044c
0d40: 65 66 38 30 32 39 30 31 39 33 32 65 34 36 64 63  ef802901932e46dc
0d50: 34 36 62 32 35 34 35 65 36 63 39 39 63 30 66 63  46b2545e6c99c0fc
0d60: 33 32 33 61 30 65 64 39 39 62 30 38 31 62 64 61  323a0ed99b081bda
0d70: 34 32 31 36 38 35 37 66 33 38 61 63 0a 0a 74 63  4216857f38ac..tc
0d80: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
0d90: 5f 53 48 41 32 35 36 2d 32 2e 31 33 20 7b 53 48  _SHA256-2.13 {SH
0da0: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
0db0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
0dc0: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
0dd0: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
0de0: 20 64 65 63 6f 64 65 20 68 65 78 20 39 62 61 66   decode hex 9baf
0df0: 36 39 63 62 61 33 31 37 66 34 32 32 66 65 32 36  69cba317f422fe26
0e00: 61 39 61 30 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  a9a0]} \..-body 
0e10: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
0e20: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
0e30: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
0e40: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
0e50: 20 66 65 35 36 32 38 37 63 64 36 35 37 65 34 61   fe56287cd657e4a
0e60: 66 63 35 30 64 62 61 37 61 33 61 35 34 63 32 61  fc50dba7a3a54c2a
0e70: 36 33 32 34 62 38 38 36 62 65 63 64 63 64 31 66  6324b886becdcd1f
0e80: 61 65 34 37 33 62 37 36 39 65 35 35 31 61 30 39  ae473b769e551a09
0e90: 62 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  b..tcltest::test
0ea0: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 31   Hash_SHA256-2.1
0eb0: 34 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  4 {SHA256ShortMs
0ec0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
0ed0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
0ee0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
0ef0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
0f00: 20 36 38 35 31 31 63 64 62 32 64 62 62 66 33 35   68511cdb2dbbf35
0f10: 33 30 64 37 66 62 36 31 63 62 63 5d 7d 20 5c 0a  30d7fb61cbc]} \.
0f20: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
0f30: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
0f40: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
0f50: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
0f60: 2d 72 65 73 75 6c 74 20 61 66 35 33 34 33 30 34  -result af534304
0f70: 36 36 37 31 35 65 39 39 61 36 30 32 66 63 39 66  66715e99a602fc9f
0f80: 35 39 34 35 37 31 39 62 30 34 64 64 32 34 32 36  5945719b04dd2426
0f90: 37 65 36 61 39 38 34 37 31 66 37 61 37 38 36 39  7e6a98471f7a7869
0fa0: 62 64 33 62 34 33 31 33 0a 0a 74 63 6c 74 65 73  bd3b4313..tcltes
0fb0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
0fc0: 32 35 36 2d 32 2e 31 35 20 7b 53 48 41 32 35 36  256-2.15 {SHA256
0fd0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
0fe0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
0ff0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
1000: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
1010: 6f 64 65 20 68 65 78 20 61 66 33 39 37 61 38 62  ode hex af397a8b
1020: 38 64 64 37 33 61 62 37 30 32 63 65 38 65 35 33  8dd73ab702ce8e53
1030: 61 61 39 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  aa9f]} \..-body 
1040: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1050: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
1060: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
1070: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
1080: 20 64 31 38 39 34 39 38 61 33 34 36 33 62 31 38   d189498a3463b18
1090: 65 38 34 36 62 38 61 62 31 62 34 31 35 38 33 62  e846b8ab1b41583b
10a0: 30 62 37 65 66 63 37 38 39 64 61 64 38 61 37 66  0b7efc789dad8a7f
10b0: 62 38 38 35 62 62 66 38 66 62 35 62 34 35 63 35  b885bbf8fb5b45c5
10c0: 63 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  c..tcltest::test
10d0: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 31   Hash_SHA256-2.1
10e0: 36 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  6 {SHA256ShortMs
10f0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
1100: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
1110: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
1120: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
1130: 20 32 39 34 61 66 34 38 30 32 65 35 65 39 32 35   294af4802e5e925
1140: 65 62 31 63 36 63 63 39 63 37 32 34 66 30 39 5d  eb1c6cc9c724f09]
1150: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
1160: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
1170: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
1180: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
1190: 61 63 74 20 2d 72 65 73 75 6c 74 20 64 63 62 61  act -result dcba
11a0: 66 33 33 35 33 36 30 64 65 38 35 33 62 39 63 64  f335360de853b9cd
11b0: 64 66 64 61 66 62 39 30 66 61 37 35 35 36 37 64  dfdafb90fa75567d
11c0: 30 64 33 64 35 38 61 66 38 64 62 39 64 37 36 34  0d3d58af8db9d764
11d0: 31 31 33 61 65 66 35 37 30 31 32 35 0a 0a 74 63  113aef570125..tc
11e0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
11f0: 5f 53 48 41 32 35 36 2d 32 2e 31 37 20 7b 53 48  _SHA256-2.17 {SH
1200: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
1210: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
1220: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
1230: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
1240: 20 64 65 63 6f 64 65 20 68 65 78 20 30 61 32 37   decode hex 0a27
1250: 38 34 37 63 64 63 39 38 62 64 36 66 36 32 32 32  847cdc98bd6f6222
1260: 30 62 30 34 36 65 64 64 37 36 32 62 5d 7d 20 5c  0b046edd762b]} \
1270: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
1280: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
1290: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
12a0: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
12b0: 20 2d 72 65 73 75 6c 74 20 38 30 63 32 35 65 63   -result 80c25ec
12c0: 31 36 30 30 35 38 37 65 37 66 32 38 62 31 38 62  1600587e7f28b18b
12d0: 31 62 31 38 65 33 63 64 63 38 39 39 32 38 65 33  1b18e3cdc89928e3
12e0: 39 63 61 62 33 62 63 32 35 65 34 64 34 61 34 63  9cab3bc25e4d4a4c
12f0: 31 33 39 62 63 65 64 63 34 0a 0a 74 63 6c 74 65  139bcedc4..tclte
1300: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
1310: 41 32 35 36 2d 32 2e 31 38 20 7b 53 48 41 32 35  A256-2.18 {SHA25
1320: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
1330: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
1340: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
1350: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
1360: 63 6f 64 65 20 68 65 78 20 31 62 35 30 33 66 62  code hex 1b503fb
1370: 39 61 37 33 62 31 36 61 64 61 33 66 63 66 31 30  9a73b16ada3fcf10
1380: 34 32 36 32 33 61 65 37 36 31 30 5d 7d 20 5c 0a  42623ae7610]} \.
1390: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
13a0: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
13b0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
13c0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
13d0: 2d 72 65 73 75 6c 74 20 64 35 63 33 30 33 31 35  -result d5c30315
13e0: 66 37 32 65 64 30 35 66 65 35 31 39 61 31 62 66  f72ed05fe519a1bf
13f0: 37 35 61 62 35 66 64 30 66 66 65 63 35 61 63 31  75ab5fd0ffec5ac1
1400: 61 63 62 30 64 61 66 36 36 62 36 62 37 36 39 35  acb0daf66b6b7695
1410: 39 38 35 39 34 35 30 39 0a 0a 74 63 6c 74 65 73  98594509..tcltes
1420: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
1430: 32 35 36 2d 32 2e 31 39 20 7b 53 48 41 32 35 36  256-2.19 {SHA256
1440: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
1450: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
1460: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
1470: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
1480: 6f 64 65 20 68 65 78 20 35 39 65 62 34 35 62 62  ode hex 59eb45bb
1490: 62 65 62 30 35 34 62 30 62 39 37 33 33 34 64 35  beb054b0b97334d5
14a0: 33 35 38 30 63 65 30 33 66 36 39 39 5d 7d 20 5c  3580ce03f699]} \
14b0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
14c0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
14d0: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
14e0: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
14f0: 20 2d 72 65 73 75 6c 74 20 33 32 63 33 38 63 35   -result 32c38c5
1500: 34 31 38 39 66 32 33 35 37 65 39 36 62 64 37 37  4189f2357e96bd77
1510: 65 62 30 30 63 32 62 39 63 33 34 31 65 62 65 62  eb00c2b9c341ebeb
1520: 61 63 63 32 39 34 35 66 39 37 38 30 34 66 35 39  acc2945f97804f59
1530: 61 39 33 32 33 38 32 38 38 0a 0a 74 63 6c 74 65  a93238288..tclte
1540: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
1550: 41 32 35 36 2d 32 2e 32 30 20 7b 53 48 41 32 35  A256-2.20 {SHA25
1560: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
1570: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
1580: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
1590: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
15a0: 63 6f 64 65 20 68 65 78 20 35 38 65 35 61 33 32  code hex 58e5a32
15b0: 35 39 63 62 30 62 36 64 31 32 63 38 33 66 37 32  59cb0b6d12c83f72
15c0: 33 33 37 39 65 33 35 66 64 32 39 38 62 36 30 5d  3379e35fd298b60]
15d0: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
15e0: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
15f0: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
1600: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
1610: 61 63 74 20 2d 72 65 73 75 6c 74 20 39 62 35 62  act -result 9b5b
1620: 33 37 38 31 36 64 65 38 66 63 64 66 33 65 63 31  37816de8fcdf3ec1
1630: 30 62 37 34 35 34 32 38 37 30 38 64 66 38 66 33  0b745428708df8f3
1640: 39 31 63 35 35 30 65 61 36 37 34 36 62 32 63 61  91c550ea6746b2ca
1650: 66 65 30 31 39 63 32 62 36 61 63 65 0a 0a 74 63  fe019c2b6ace..tc
1660: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
1670: 5f 53 48 41 32 35 36 2d 32 2e 32 31 20 7b 53 48  _SHA256-2.21 {SH
1680: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
1690: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
16a0: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
16b0: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
16c0: 20 64 65 63 6f 64 65 20 68 65 78 20 63 31 65 66   decode hex c1ef
16d0: 33 39 63 65 65 35 38 65 37 38 66 36 66 63 64 63  39cee58e78f6fcdc
16e0: 31 32 65 30 35 38 62 37 66 39 30 32 61 63 64 31  12e058b7f902acd1
16f0: 61 39 33 62 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  a93b]} \..-body 
1700: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1710: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
1720: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
1730: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
1740: 20 36 64 64 35 32 62 30 64 38 62 34 38 63 63 38   6dd52b0d8b48cc8
1750: 31 34 36 63 65 62 64 30 32 31 36 66 62 66 35 66  146cebd0216fbf5f
1760: 36 65 66 37 65 65 61 66 63 30 66 66 32 66 66 39  6ef7eeafc0ff2ff9
1770: 64 31 34 32 32 64 36 33 34 35 35 35 35 61 31 34  d1422d6345555a14
1780: 32 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  2..tcltest::test
1790: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 32   Hash_SHA256-2.2
17a0: 32 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  2 {SHA256ShortMs
17b0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
17c0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
17d0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
17e0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
17f0: 20 39 63 61 62 37 64 37 64 63 61 65 63 39 38 63   9cab7d7dcaec98c
1800: 62 33 61 63 36 63 36 34 64 64 35 64 34 34 37 30  b3ac6c64dd5d4470
1810: 64 30 62 31 30 33 61 38 31 30 63 5d 7d 20 5c 0a  d0b103a810c]} \.
1820: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
1830: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
1840: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
1850: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
1860: 2d 72 65 73 75 6c 74 20 34 34 64 33 34 38 30 39  -result 44d34809
1870: 66 63 36 30 64 31 66 63 61 66 61 37 66 33 37 62  fc60d1fcafa7f37b
1880: 37 39 34 64 31 64 33 61 37 36 35 64 64 30 64 32  794d1d3a765dd0d2
1890: 33 31 39 34 65 62 62 65 33 34 30 66 30 31 33 66  3194ebbe340f013f
18a0: 30 63 33 39 62 36 31 33 0a 0a 74 63 6c 74 65 73  0c39b613..tcltes
18b0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
18c0: 32 35 36 2d 32 2e 32 33 20 7b 53 48 41 32 35 36  256-2.23 {SHA256
18d0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
18e0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
18f0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
1900: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
1910: 6f 64 65 20 68 65 78 20 65 61 31 35 37 63 30 32  ode hex ea157c02
1920: 65 62 61 66 31 62 32 32 64 65 32 32 31 62 35 33  ebaf1b22de221b53
1930: 66 32 33 35 33 39 33 36 64 32 33 35 39 64 31 65  f2353936d2359d1e
1940: 31 63 39 37 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  1c97]} \..-body 
1950: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1960: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
1970: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
1980: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
1990: 20 39 64 66 35 63 31 36 61 33 66 35 38 30 34 30   9df5c16a3f58040
19a0: 36 66 30 37 64 39 36 31 34 39 33 30 33 64 38 63  6f07d96149303d8c
19b0: 34 30 38 38 36 39 62 33 32 30 35 33 62 37 32 36  408869b32053b726
19c0: 63 66 33 64 65 66 64 32 34 31 65 34 38 34 39 35  cf3defd241e48495
19d0: 37 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  7..tcltest::test
19e0: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 32   Hash_SHA256-2.2
19f0: 34 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  4 {SHA256ShortMs
1a00: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
1a10: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
1a20: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
1a30: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
1a40: 20 64 61 39 39 39 62 63 31 66 39 63 37 61 63 66   da999bc1f9c7acf
1a50: 66 33 32 38 32 38 61 37 33 65 36 37 32 64 30 61  f32828a73e672d0a
1a60: 34 39 32 66 36 65 65 38 39 35 63 36 38 36 37 5d  492f6ee895c6867]
1a70: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
1a80: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
1a90: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
1aa0: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
1ab0: 61 63 74 20 2d 72 65 73 75 6c 74 20 36 37 32 62  act -result 672b
1ac0: 35 34 65 34 33 66 34 31 65 65 37 37 35 38 34 62  54e43f41ee77584b
1ad0: 64 66 38 62 66 38 35 34 64 39 37 62 36 32 35 32  df8bf854d97b6252
1ae0: 63 39 31 38 66 37 65 61 32 64 32 36 62 63 34 30  c918f7ea2d26bc40
1af0: 39 37 65 61 35 33 61 38 38 66 31 30 0a 0a 74 63  97ea53a88f10..tc
1b00: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
1b10: 5f 53 48 41 32 35 36 2d 32 2e 32 35 20 7b 53 48  _SHA256-2.25 {SH
1b20: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
1b30: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
1b40: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
1b50: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
1b60: 20 64 65 63 6f 64 65 20 68 65 78 20 34 37 39 39   decode hex 4799
1b70: 31 33 30 31 31 35 36 64 31 64 39 37 37 63 30 33  1301156d1d977c03
1b80: 33 38 65 66 62 63 61 64 34 31 30 30 34 31 33 33  38efbcad41004133
1b90: 61 65 66 62 63 61 36 62 63 66 37 65 5d 7d 20 5c  aefbca6bcf7e]} \
1ba0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
1bb0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
1bc0: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
1bd0: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
1be0: 20 2d 72 65 73 75 6c 74 20 66 65 65 62 34 62 32   -result feeb4b2
1bf0: 62 35 39 66 65 63 38 66 64 62 31 65 35 35 31 39  b59fec8fdb1e5519
1c00: 34 61 34 39 33 64 38 63 38 37 31 37 35 37 62 35  4a493d8c871757b5
1c10: 37 32 33 36 37 35 65 39 33 64 33 61 63 30 33 34  723675e93d3ac034
1c20: 62 33 38 30 62 37 66 63 39 0a 0a 74 63 6c 74 65  b380b7fc9..tclte
1c30: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
1c40: 41 32 35 36 2d 32 2e 32 36 20 7b 53 48 41 32 35  A256-2.26 {SHA25
1c50: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
1c60: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
1c70: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
1c80: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
1c90: 63 6f 64 65 20 68 65 78 20 32 65 37 65 61 38 34  code hex 2e7ea84
1ca0: 64 61 34 62 63 34 64 37 63 66 62 34 36 33 65 33  da4bc4d7cfb463e3
1cb0: 66 32 63 38 36 34 37 30 35 37 61 66 66 66 33 66  f2c8647057afff3f
1cc0: 62 65 63 65 63 61 31 64 32 30 30 5d 7d 20 5c 0a  bececa1d200]} \.
1cd0: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
1ce0: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
1cf0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
1d00: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
1d10: 2d 72 65 73 75 6c 74 20 37 36 65 33 61 63 62 63  -result 76e3acbc
1d20: 37 31 38 38 33 36 66 32 64 66 38 61 64 32 64 30  718836f2df8ad2d0
1d30: 64 32 64 37 36 66 30 63 66 61 35 66 65 61 30 39  d2d76f0cfa5fea09
1d40: 38 36 62 65 39 31 38 66 31 30 62 63 65 65 37 33  86be918f10bcee73
1d50: 30 64 66 34 34 31 62 39 0a 0a 74 63 6c 74 65 73  0df441b9..tcltes
1d60: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
1d70: 32 35 36 2d 32 2e 32 37 20 7b 53 48 41 32 35 36  256-2.27 {SHA256
1d80: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
1d90: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
1da0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
1db0: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
1dc0: 6f 64 65 20 68 65 78 20 34 37 63 37 37 30 65 62  ode hex 47c770eb
1dd0: 34 35 34 39 62 36 65 66 66 36 33 38 31 64 36 32  4549b6eff6381d62
1de0: 65 39 62 65 62 34 36 34 63 64 39 38 64 33 34 31  e9beb464cd98d341
1df0: 63 63 31 63 30 39 39 38 31 61 37 61 5d 7d 20 5c  cc1c09981a7a]} \
1e00: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
1e10: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
1e20: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
1e30: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
1e40: 20 2d 72 65 73 75 6c 74 20 36 37 33 33 38 30 39   -result 6733809
1e50: 63 37 33 65 35 33 36 36 36 63 37 33 35 62 33 62  c73e53666c735b3b
1e60: 64 33 64 61 66 38 37 65 62 63 37 37 63 37 32 37  d3daf87ebc77c727
1e70: 35 36 31 35 30 61 36 31 36 61 31 39 34 31 30 38  56150a616a194108
1e80: 64 37 31 32 33 31 32 37 32 0a 0a 74 63 6c 74 65  d71231272..tclte
1e90: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
1ea0: 41 32 35 36 2d 32 2e 32 38 20 7b 53 48 41 32 35  A256-2.28 {SHA25
1eb0: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
1ec0: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
1ed0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
1ee0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
1ef0: 63 6f 64 65 20 68 65 78 20 61 63 34 63 32 36 64  code hex ac4c26d
1f00: 38 62 34 33 62 38 35 37 39 64 38 66 36 31 63 39  8b43b8579d8f61c9
1f10: 38 30 37 30 32 36 65 38 33 65 39 62 35 38 36 65  807026e83e9b586e
1f20: 31 31 35 39 62 64 34 33 62 38 35 31 39 33 37 5d  1159bd43b851937]
1f30: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
1f40: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
1f50: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
1f60: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
1f70: 61 63 74 20 2d 72 65 73 75 6c 74 20 30 65 36 65  act -result 0e6e
1f80: 33 63 31 34 33 63 33 61 35 66 37 66 33 38 35 30  3c143c3a5f7f3850
1f90: 35 65 64 36 61 64 63 39 62 34 38 63 31 38 65 64  5ed6adc9b48c18ed
1fa0: 66 36 64 65 64 66 31 31 36 33 35 66 36 65 38 66  f6dedf11635f6e8f
1fb0: 39 61 63 37 33 63 33 39 66 65 39 65 0a 0a 74 63  9ac73c39fe9e..tc
1fc0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
1fd0: 5f 53 48 41 32 35 36 2d 32 2e 32 39 20 7b 53 48  _SHA256-2.29 {SH
1fe0: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
1ff0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
2000: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
2010: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
2020: 20 64 65 63 6f 64 65 20 68 65 78 20 30 37 37 37   decode hex 0777
2030: 66 63 31 65 31 63 61 34 37 33 30 34 63 32 65 32  fc1e1ca47304c2e2
2040: 36 35 36 39 32 38 33 38 31 30 39 65 32 36 61 61  65692838109e26aa
2050: 62 39 65 35 63 34 61 65 34 65 38 36 30 30 64 66  b9e5c4ae4e8600df
2060: 34 62 31 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  4b1f]} \..-body 
2070: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
2080: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
2090: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
20a0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
20b0: 20 66 66 62 34 66 63 30 33 65 30 35 34 66 38 65   ffb4fc03e054f8e
20c0: 63 62 63 33 31 34 37 30 66 63 30 32 33 62 65 64  cbc31470fc023bed
20d0: 63 64 34 61 34 30 36 62 39 64 64 35 36 63 37 31  cd4a406b9dd56c71
20e0: 64 61 31 62 36 36 30 64 63 63 34 38 34 32 63 36  da1b660dcc4842c6
20f0: 35 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  5..tcltest::test
2100: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 33   Hash_SHA256-2.3
2110: 30 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  0 {SHA256ShortMs
2120: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
2130: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
2140: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
2150: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
2160: 20 31 61 35 37 32 35 31 63 34 33 31 64 34 65 36   1a57251c431d4e6
2170: 63 32 65 30 36 64 36 35 32 34 36 61 32 39 36 39  c2e06d65246a2969
2180: 31 35 30 37 31 61 35 33 31 34 32 35 65 63 66 32  15071a531425ecf2
2190: 35 35 39 38 39 34 32 32 61 36 36 5d 7d 20 5c 0a  55989422a66]} \.
21a0: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
21b0: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
21c0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
21d0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
21e0: 2d 72 65 73 75 6c 74 20 63 36 34 34 36 31 32 63  -result c644612c
21f0: 64 33 32 36 62 33 38 62 31 63 36 38 31 33 62 31  d326b38b1c6813b1
2200: 64 61 64 65 64 33 34 34 34 38 38 30 35 61 65 66  daded34448805aef
2210: 33 31 37 63 33 35 66 35 34 38 64 66 62 34 61 30  317c35f548dfb4a0
2220: 64 37 34 62 38 31 30 36 0a 0a 74 63 6c 74 65 73  d74b8106..tcltes
2230: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
2240: 32 35 36 2d 32 2e 33 31 20 7b 53 48 41 32 35 36  256-2.31 {SHA256
2250: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
2260: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
2270: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
2280: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
2290: 6f 64 65 20 68 65 78 20 39 62 32 34 35 66 64 61  ode hex 9b245fda
22a0: 64 39 62 61 65 62 38 39 30 64 39 63 30 64 30 65  d9baeb890d9c0d0e
22b0: 66 66 38 31 36 65 66 62 34 63 61 31 33 38 36 31  ff816efb4ca13861
22c0: 30 62 63 37 64 37 38 63 62 31 61 38 30 31 65 64  0bc7d78cb1a801ed
22d0: 33 32 37 33 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  3273]} \..-body 
22e0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
22f0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
2300: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
2310: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
2320: 20 63 30 65 32 39 65 65 65 62 30 64 33 61 37 37   c0e29eeeb0d3a77
2330: 30 37 39 34 37 65 36 32 33 63 64 63 37 64 31 38  07947e623cdc7d18
2340: 39 39 61 64 63 37 30 64 64 37 38 36 31 32 30 35  99adc70dd7861205
2350: 65 61 35 65 35 38 31 33 39 35 34 66 62 37 39 35  ea5e5813954fb795
2360: 37 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  7..tcltest::test
2370: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 33   Hash_SHA256-2.3
2380: 32 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  2 {SHA256ShortMs
2390: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
23a0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
23b0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
23c0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
23d0: 20 39 35 61 37 36 35 38 30 39 63 61 66 33 30 61   95a765809caf30a
23e0: 64 61 39 30 61 64 36 64 36 31 63 32 62 34 62 33  da90ad6d61c2b4b3
23f0: 30 32 35 30 64 66 30 61 37 63 65 32 33 62 37 37  0250df0a7ce23b77
2400: 35 33 63 39 31 38 37 66 34 33 31 39 63 65 32 5d  53c9187f4319ce2]
2410: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
2420: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
2430: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
2440: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
2450: 61 63 74 20 2d 72 65 73 75 6c 74 20 61 34 31 33  act -result a413
2460: 39 62 37 34 62 31 30 32 63 66 31 65 32 66 63 65  9b74b102cf1e2fce
2470: 32 32 39 61 36 63 64 38 34 63 38 37 35 30 31 66  229a6cd84c87501f
2480: 35 30 61 66 61 34 63 38 30 66 65 61 63 66 37 64  50afa4c80feacf7d
2490: 38 63 66 35 65 64 39 34 66 30 34 32 0a 0a 74 63  8cf5ed94f042..tc
24a0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
24b0: 5f 53 48 41 32 35 36 2d 32 2e 33 33 20 7b 53 48  _SHA256-2.33 {SH
24c0: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
24d0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
24e0: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
24f0: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
2500: 20 64 65 63 6f 64 65 20 68 65 78 20 30 39 66 63   decode hex 09fc
2510: 31 61 63 63 63 32 33 30 61 32 30 35 65 34 61 32  1accc230a205e4a2
2520: 30 38 65 36 34 61 38 66 32 30 34 32 39 31 66 35  08e64a8f204291f5
2530: 38 31 61 31 32 37 35 36 33 39 32 64 61 34 62 38  81a12756392da4b8
2540: 63 30 63 66 35 65 66 30 32 62 39 35 5d 7d 20 5c  c0cf5ef02b95]} \
2550: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
2560: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
2570: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
2580: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
2590: 20 2d 72 65 73 75 6c 74 20 34 66 34 34 63 31 63   -result 4f44c1c
25a0: 37 66 62 65 62 62 36 66 39 36 30 31 38 32 39 66  7fbebb6f9601829f
25b0: 33 38 39 37 62 66 64 36 35 30 63 35 36 66 61 30  3897bfd650c56fa0
25c0: 37 38 34 34 62 65 37 36 34 38 39 30 37 36 33 35  7844be7648907635
25d0: 36 61 63 31 38 38 36 61 34 0a 0a 74 63 6c 74 65  6ac1886a4..tclte
25e0: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
25f0: 41 32 35 36 2d 32 2e 33 34 20 7b 53 48 41 32 35  A256-2.34 {SHA25
2600: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
2610: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
2620: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
2630: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
2640: 63 6f 64 65 20 68 65 78 20 30 35 34 36 66 37 62  code hex 0546f7b
2650: 38 36 38 32 62 35 62 39 35 66 64 33 32 33 38 35  8682b5b95fd32385
2660: 66 61 66 32 35 38 35 34 63 62 33 66 37 62 34 30  faf25854cb3f7b40
2670: 63 63 38 66 61 32 32 39 66 62 64 35 32 62 31 36  cc8fa229fbd52b16
2680: 39 33 34 61 61 62 33 38 38 61 37 5d 7d 20 5c 0a  934aab388a7]} \.
2690: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
26a0: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
26b0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
26c0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
26d0: 2d 72 65 73 75 6c 74 20 62 33 31 61 64 33 63 64  -result b31ad3cd
26e0: 30 32 62 31 30 64 62 32 38 32 62 33 35 37 36 63  02b10db282b3576c
26f0: 30 35 39 62 37 34 36 66 62 32 34 63 61 36 66 30  059b746fb24ca6f0
2700: 39 66 65 66 36 39 34 30 32 64 63 39 30 65 63 65  9fef69402dc90ece
2710: 37 34 32 31 63 62 62 37 0a 0a 74 63 6c 74 65 73  7421cbb7..tcltes
2720: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
2730: 32 35 36 2d 32 2e 33 35 20 7b 53 48 41 32 35 36  256-2.35 {SHA256
2740: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
2750: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
2760: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
2770: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
2780: 6f 64 65 20 68 65 78 20 62 31 32 64 62 34 61 31  ode hex b12db4a1
2790: 30 32 35 35 32 39 62 33 62 37 62 31 65 34 35 63  025529b3b7b1e45c
27a0: 36 64 62 63 37 62 61 61 38 38 39 37 61 30 35 37  6dbc7baa8897a057
27b0: 36 65 36 36 66 36 34 62 66 33 66 38 32 33 36 31  6e66f64bf3f82361
27c0: 31 33 61 36 32 37 36 65 65 37 37 64 5d 7d 20 5c  13a6276ee77d]} \
27d0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
27e0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
27f0: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
2800: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
2810: 20 2d 72 65 73 75 6c 74 20 31 63 33 38 62 66 36   -result 1c38bf6
2820: 62 62 66 64 33 32 32 39 32 64 36 37 64 31 64 36  bbfd32292d67d1d6
2830: 35 31 66 64 39 64 35 62 36 32 33 62 36 65 63 31  51fd9d5b623b6ec1
2840: 65 38 35 34 34 30 36 32 32 33 66 35 31 64 30 64  e854406223f51d0d
2850: 66 34 36 39 36 38 37 31 32 0a 0a 74 63 6c 74 65  f46968712..tclte
2860: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
2870: 41 32 35 36 2d 32 2e 33 36 20 7b 53 48 41 32 35  A256-2.36 {SHA25
2880: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
2890: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
28a0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
28b0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
28c0: 63 6f 64 65 20 68 65 78 20 65 36 38 63 62 36 64  code hex e68cb6d
28d0: 38 63 31 38 36 36 63 30 61 37 31 65 37 33 31 33  8c1866c0a71e7313
28e0: 66 38 33 64 63 31 31 61 35 38 30 39 63 66 35 63  f83dc11a5809cf5c
28f0: 66 62 65 65 64 31 61 35 38 37 63 65 39 63 32 63  fbeed1a587ce9c2c
2900: 39 32 65 30 32 32 61 62 63 31 36 34 34 62 62 5d  92e022abc1644bb]
2910: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
2920: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
2930: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
2940: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
2950: 61 63 74 20 2d 72 65 73 75 6c 74 20 63 32 36 38  act -result c268
2960: 34 63 30 64 62 62 38 35 63 32 33 32 62 36 64 61  4c0dbb85c232b6da
2970: 34 66 62 35 31 34 37 64 64 30 36 32 34 34 32 39  4fb5147dd0624429
2980: 65 63 37 65 36 35 37 39 39 31 65 64 64 39 35 65  ec7e657991edd95e
2990: 64 61 33 37 61 35 38 37 32 36 39 65 0a 0a 74 63  da37a587269e..tc
29a0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
29b0: 5f 53 48 41 32 35 36 2d 32 2e 33 37 20 7b 53 48  _SHA256-2.37 {SH
29c0: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
29d0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
29e0: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
29f0: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
2a00: 20 64 65 63 6f 64 65 20 68 65 78 20 34 65 33 64   decode hex 4e3d
2a10: 38 61 63 33 36 64 36 31 64 39 65 35 31 34 38 30  8ac36d61d9e51480
2a20: 38 33 31 31 35 35 62 32 35 33 62 33 37 39 36 39  831155b253b37969
2a30: 66 65 37 65 66 34 39 64 62 33 62 33 39 39 32 36  fe7ef49db3b39926
2a40: 66 33 61 30 30 62 36 39 61 33 36 37 37 34 33 36  f3a00b69a3677436
2a50: 36 30 30 30 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  6000]} \..-body 
2a60: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
2a70: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
2a80: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
2a90: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
2aa0: 20 62 66 39 64 35 65 35 62 35 33 39 33 30 35 33   bf9d5e5b5393053
2ab0: 66 30 35 35 62 33 38 30 62 61 65 64 37 65 37 39  f055b380baed7e79
2ac0: 32 61 65 38 35 61 64 33 37 63 30 61 64 61 35 66  2ae85ad37c0ada5f
2ad0: 64 34 35 31 39 35 34 32 63 63 63 34 36 31 63 66  d4519542ccc461cf
2ae0: 33 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  3..tcltest::test
2af0: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 33   Hash_SHA256-2.3
2b00: 38 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  8 {SHA256ShortMs
2b10: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
2b20: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
2b30: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
2b40: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
2b50: 20 30 33 62 32 36 34 62 65 35 31 65 34 62 39 34   03b264be51e4b94
2b60: 31 38 36 34 66 39 62 37 30 62 34 63 39 35 38 66  1864f9b70b4c958f
2b70: 35 33 35 35 61 61 63 32 39 34 62 34 62 38 37 63  5355aac294b4b87c
2b80: 62 30 33 37 66 31 31 66 38 35 66 30 37 65 62 35  b037f11f85f07eb5
2b90: 37 62 33 66 30 62 38 39 35 35 30 5d 7d 20 5c 0a  7b3f0b89550]} \.
2ba0: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
2bb0: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
2bc0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
2bd0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
2be0: 2d 72 65 73 75 6c 74 20 64 31 66 38 62 64 36 38  -result d1f8bd68
2bf0: 34 30 30 31 61 63 35 61 34 62 36 37 62 62 66 37  4001ac5a4b67bbf7
2c00: 39 66 38 37 64 65 35 32 34 64 32 64 61 39 39 61  9f87de524d2da99a
2c10: 63 30 31 34 64 65 63 33 65 34 31 38 37 37 32 38  c014dec3e4187728
2c20: 66 34 35 35 37 34 37 31 0a 0a 74 63 6c 74 65 73  f4557471..tcltes
2c30: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
2c40: 32 35 36 2d 32 2e 33 39 20 7b 53 48 41 32 35 36  256-2.39 {SHA256
2c50: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
2c60: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
2c70: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
2c80: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
2c90: 6f 64 65 20 68 65 78 20 64 30 66 65 66 64 39 36  ode hex d0fefd96
2ca0: 37 38 37 63 36 35 66 66 61 37 66 39 31 30 64 36  787c65ffa7f910d6
2cb0: 64 30 61 64 61 36 33 64 36 34 64 35 63 34 36 37  d0ada63d64d5c467
2cc0: 39 39 36 30 65 37 66 30 36 61 65 62 38 63 37 30  9960e7f06aeb8c70
2cd0: 64 66 65 66 39 35 34 66 38 65 33 39 65 66 64 62  dfef954f8e39efdb
2ce0: 36 32 39 62 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  629b]} \..-body 
2cf0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
2d00: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
2d10: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
2d20: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
2d30: 20 34 39 62 61 33 38 64 62 38 35 63 32 37 39 36   49ba38db85c2796
2d40: 66 38 35 66 66 64 35 37 64 64 35 65 63 33 33 37  f85ffd57dd5ec337
2d50: 30 30 37 34 31 34 35 32 38 61 65 33 33 39 33 35  007414528ae33935
2d60: 62 31 30 32 64 31 36 61 36 62 39 31 62 61 36 63  b102d16a6b91ba6c
2d70: 31 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  1..tcltest::test
2d80: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 34   Hash_SHA256-2.4
2d90: 30 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  0 {SHA256ShortMs
2da0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
2db0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
2dc0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
2dd0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
2de0: 20 62 37 63 37 39 64 37 65 35 66 31 65 65 63 63   b7c79d7e5f1eecc
2df0: 64 66 65 64 66 30 65 37 62 66 34 33 65 37 33 30  dfedf0e7bf43e730
2e00: 64 34 34 37 65 36 30 37 64 38 64 31 34 38 39 38  d447e607d8d14898
2e10: 32 33 64 30 39 65 31 31 32 30 31 61 30 62 31 32  23d09e11201a0b12
2e20: 35 38 30 33 39 65 37 62 64 34 38 37 35 62 31 5d  58039e7bd4875b1]
2e30: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
2e40: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
2e50: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
2e60: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
2e70: 61 63 74 20 2d 72 65 73 75 6c 74 20 37 32 35 65  act -result 725e
2e80: 36 66 38 64 38 38 38 65 62 61 66 39 30 38 62 37  6f8d888ebaf908b7
2e90: 36 39 32 32 35 39 61 62 38 38 33 39 63 33 32 34  692259ab8839c324
2ea0: 38 65 64 64 32 32 63 61 31 31 35 62 62 31 33 65  8edd22ca115bb13e
2eb0: 30 32 35 38 30 38 36 35 34 37 30 30 0a 0a 74 63  025808654700..tc
2ec0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
2ed0: 5f 53 48 41 32 35 36 2d 32 2e 34 31 20 7b 53 48  _SHA256-2.41 {SH
2ee0: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
2ef0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
2f00: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
2f10: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
2f20: 20 64 65 63 6f 64 65 20 68 65 78 20 36 34 63 64   decode hex 64cd
2f30: 33 36 33 65 63 63 65 30 35 66 64 66 64 61 32 34  363ecce05fdfda24
2f40: 38 36 64 30 31 31 61 33 64 62 39 35 62 35 32 30  86d011a3db95b520
2f50: 36 61 31 39 64 33 30 35 34 30 34 36 38 31 39 64  6a19d3054046819d
2f60: 64 30 64 33 36 37 38 33 39 35 35 64 37 65 35 62  d0d36783955d7e5b
2f70: 66 38 62 61 31 38 62 66 37 33 38 61 5d 7d 20 5c  f8ba18bf738a]} \
2f80: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
2f90: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
2fa0: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
2fb0: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
2fc0: 20 2d 72 65 73 75 6c 74 20 33 32 63 61 65 66 30   -result 32caef0
2fd0: 32 34 66 38 34 65 39 37 63 33 30 62 34 61 37 62  24f84e97c30b4a7b
2fe0: 39 64 30 34 62 36 37 38 62 33 64 38 61 36 65 62  9d04b678b3d8a6eb
2ff0: 32 32 35 39 64 66 66 35 62 37 66 37 63 30 31 31  2259dff5b7f7c011
3000: 66 30 39 30 38 34 35 66 38 0a 0a 74 63 6c 74 65  f090845f8..tclte
3010: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
3020: 41 32 35 36 2d 32 2e 34 32 20 7b 53 48 41 32 35  A256-2.42 {SHA25
3030: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
3040: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
3050: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
3060: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
3070: 63 6f 64 65 20 68 65 78 20 36 61 63 36 63 36 33  code hex 6ac6c63
3080: 64 36 31 38 65 61 66 30 30 64 39 31 63 35 65 32  d618eaf00d91c5e2
3090: 38 30 37 65 38 33 63 30 39 33 39 31 32 62 38 65  807e83c093912b8e
30a0: 32 30 32 66 37 38 65 31 33 39 37 30 33 34 39 38  202f78e139703498
30b0: 61 37 39 63 36 30 36 37 66 35 34 34 39 37 63 36  a79c6067f54497c6
30c0: 31 32 37 61 32 33 39 31 30 61 36 5d 7d 20 5c 0a  127a23910a6]} \.
30d0: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
30e0: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
30f0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
3100: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
3110: 2d 72 65 73 75 6c 74 20 34 62 62 33 33 65 37 63  -result 4bb33e7c
3120: 36 39 31 36 65 30 38 61 39 62 33 65 64 36 62 63  6916e08a9b3ed6bc
3130: 65 66 37 39 30 61 61 61 65 65 30 64 63 66 32 65  ef790aaaee0dcf2e
3140: 37 61 30 31 61 66 62 30 35 36 31 38 32 64 65 61  7a01afb056182dea
3150: 32 64 61 64 37 64 36 33 0a 0a 74 63 6c 74 65 73  2dad7d63..tcltes
3160: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
3170: 32 35 36 2d 32 2e 34 33 20 7b 53 48 41 32 35 36  256-2.43 {SHA256
3180: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
3190: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
31a0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
31b0: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
31c0: 6f 64 65 20 68 65 78 20 64 32 36 38 32 36 64 62  ode hex d26826db
31d0: 39 62 61 65 61 61 38 39 32 36 39 31 62 36 38 39  9baeaa892691b689
31e0: 30 30 62 39 36 31 36 33 32 30 38 65 38 30 36 61  00b96163208e806a
31f0: 31 64 61 30 37 37 34 32 39 65 34 35 34 66 61 30  1da077429e454fa0
3200: 31 31 38 34 30 39 35 31 61 30 33 31 33 32 37 65  11840951a031327e
3210: 36 30 35 61 62 38 32 65 63 63 65 32 5d 7d 20 5c  605ab82ecce2]} \
3220: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
3230: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
3240: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
3250: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
3260: 20 2d 72 65 73 75 6c 74 20 33 61 63 37 61 63 36   -result 3ac7ac6
3270: 62 65 64 38 32 66 64 63 38 63 64 31 35 62 37 34  bed82fdc8cd15b74
3280: 36 66 30 65 65 37 34 38 39 31 35 38 31 39 32 63  6f0ee7489158192c
3290: 32 33 38 66 33 37 31 63 31 38 38 33 63 39 66 65  238f371c1883c9fe
32a0: 39 30 62 33 65 32 38 33 31 0a 0a 74 63 6c 74 65  90b3e2831..tclte
32b0: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
32c0: 41 32 35 36 2d 32 2e 34 34 20 7b 53 48 41 32 35  A256-2.44 {SHA25
32d0: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
32e0: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
32f0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
3300: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
3310: 63 6f 64 65 20 68 65 78 20 33 66 37 61 30 35 39  code hex 3f7a059
3320: 62 36 35 64 36 63 62 30 32 34 39 32 30 34 61 61  b65d6cb0249204aa
3330: 63 31 30 62 39 66 31 61 34 61 63 39 65 35 38 36  c10b9f1a4ac9e586
3340: 38 61 64 65 62 62 65 39 33 35 61 39 65 62 35 62  8adebbe935a9eb5b
3350: 39 30 31 39 65 31 63 39 33 38 62 66 63 34 65 35  9019e1c938bfc4e5
3360: 63 35 33 37 38 39 39 37 61 33 39 34 37 66 32 5d  c5378997a3947f2]
3370: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
3380: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
3390: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
33a0: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
33b0: 61 63 74 20 2d 72 65 73 75 6c 74 20 62 66 63 65  act -result bfce
33c0: 38 30 39 35 33 34 65 65 66 65 38 37 31 32 37 33  809534eefe871273
33d0: 39 36 34 64 33 32 66 30 39 31 66 65 37 35 36 63  964d32f091fe756c
33e0: 37 31 61 37 66 35 31 32 65 66 35 66 32 33 30 30  71a7f512ef5f2300
33f0: 62 63 64 35 37 66 36 39 39 65 37 34 0a 0a 74 63  bcd57f699e74..tc
3400: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
3410: 5f 53 48 41 32 35 36 2d 32 2e 34 35 20 7b 53 48  _SHA256-2.45 {SH
3420: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
3430: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
3440: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
3450: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
3460: 20 64 65 63 6f 64 65 20 68 65 78 20 36 30 66 66   decode hex 60ff
3470: 63 62 32 33 64 36 62 38 38 65 34 38 35 62 39 32  cb23d6b88e485b92
3480: 30 61 66 38 31 64 31 30 38 33 66 36 32 39 31 64  0af81d1083f6291d
3490: 30 36 61 63 38 63 61 33 61 39 36 35 62 38 35 39  06ac8ca3a965b859
34a0: 31 34 62 63 32 61 64 64 34 30 35 34 34 61 30 32  14bc2add40544a02
34b0: 37 66 63 61 39 33 36 62 62 64 65 38 66 33 35 39  7fca936bbde8f359
34c0: 30 35 31 63 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  051c]} \..-body 
34d0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
34e0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
34f0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
3500: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
3510: 20 31 64 32 36 66 33 65 30 34 66 38 39 62 34 65   1d26f3e04f89b4e
3520: 61 61 39 64 62 65 64 39 32 33 31 62 62 30 35 31  aa9dbed9231bb051
3530: 65 65 66 32 65 38 33 31 31 61 64 32 36 66 65 35  eef2e8311ad26fe5
3540: 33 64 30 62 66 30 62 38 32 31 65 61 66 37 35 36  3d0bf0b821eaf756
3550: 37 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  7..tcltest::test
3560: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 34   Hash_SHA256-2.4
3570: 36 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  6 {SHA256ShortMs
3580: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
3590: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
35a0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
35b0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
35c0: 20 39 65 63 64 30 37 62 36 38 34 62 62 39 65 30   9ecd07b684bb9e0
35d0: 65 36 36 39 32 65 33 32 30 63 65 63 34 35 31 30  e6692e320cec4510
35e0: 63 61 37 39 66 63 64 62 33 61 32 32 31 32 63 32  ca79fcdb3a2212c2
35f0: 36 64 39 30 64 66 36 35 64 62 33 33 65 36 39 32  6d90df65db33e692
3600: 64 30 37 33 63 63 31 37 34 38 34 30 64 62 37 39  d073cc174840db79
3610: 37 35 30 34 65 34 38 32 65 65 66 5d 7d 20 5c 0a  7504e482eef]} \.
3620: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
3630: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
3640: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
3650: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
3660: 2d 72 65 73 75 6c 74 20 30 66 66 65 62 36 34 34  -result 0ffeb644
3670: 61 34 39 65 37 38 37 63 63 63 36 39 37 30 66 65  a49e787ccc6970fe
3680: 32 39 37 30 35 61 34 66 34 63 32 62 66 63 66 65  29705a4f4c2bfcfe
3690: 37 64 31 39 37 34 31 63 31 35 38 33 33 33 66 66  7d19741c158333ff
36a0: 36 39 38 32 63 63 39 63 0a 0a 74 63 6c 74 65 73  6982cc9c..tcltes
36b0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
36c0: 32 35 36 2d 32 2e 34 37 20 7b 53 48 41 32 35 36  256-2.47 {SHA256
36d0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
36e0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
36f0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
3700: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
3710: 6f 64 65 20 68 65 78 20 39 64 36 34 64 65 37 31  ode hex 9d64de71
3720: 36 31 38 39 35 38 38 34 65 37 66 61 33 64 36 65  61895884e7fa3d6e
3730: 39 65 62 39 39 36 65 37 65 62 65 35 31 31 62 30  9eb996e7ebe511b0
3740: 31 66 65 31 39 63 64 34 61 36 62 33 33 32 32 65  1fe19cd4a6b3322e
3750: 38 30 61 61 66 35 32 62 66 36 34 34 37 65 64 31  80aaf52bf6447ed1
3760: 38 35 34 65 37 31 30 30 31 66 34 64 35 34 66 38  854e71001f4d54f8
3770: 39 33 31 64 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  931d]} \..-body 
3780: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
3790: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
37a0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
37b0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
37c0: 20 64 30 34 38 65 65 31 35 32 34 30 31 34 61 64   d048ee1524014ad
37d0: 66 39 61 35 36 65 36 30 61 33 38 38 32 37 37 64  f9a56e60a388277d
37e0: 65 31 39 34 63 36 39 34 63 63 37 38 37 66 63 35  e194c694cc787fc5
37f0: 61 31 62 35 35 34 65 61 39 66 30 37 61 62 66 64  a1b554ea9f07abfd
3800: 66 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  f..tcltest::test
3810: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 34   Hash_SHA256-2.4
3820: 38 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  8 {SHA256ShortMs
3830: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
3840: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
3850: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
3860: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
3870: 20 63 34 61 64 33 63 35 65 37 38 64 39 31 37 65   c4ad3c5e78d917e
3880: 63 62 30 63 62 62 63 64 31 63 34 38 31 66 63 32  cb0cbbcd1c481fc2
3890: 61 61 66 32 33 32 66 37 65 32 38 39 37 37 39 66  aaf232f7e289779f
38a0: 34 30 65 35 30 34 63 63 33 30 39 36 36 32 65 65  40e504cc309662ee
38b0: 39 36 66 65 63 62 64 32 30 36 34 37 65 66 30 30  96fecbd20647ef00
38c0: 65 34 36 31 39 39 66 62 63 34 38 32 66 34 36 5d  e46199fbc482f46]
38d0: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
38e0: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
38f0: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
3900: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
3910: 61 63 74 20 2d 72 65 73 75 6c 74 20 35 30 64 62  act -result 50db
3920: 66 34 30 30 36 36 66 38 64 32 37 30 34 38 34 65  f40066f8d270484e
3930: 65 32 65 66 36 36 33 32 32 38 32 64 66 61 33 30  e2ef6632282dfa30
3940: 30 61 38 35 61 38 35 33 30 65 63 65 65 62 30 65  0a85a8530eceeb0e
3950: 30 34 32 37 35 65 31 63 31 65 66 64 0a 0a 74 63  04275e1c1efd..tc
3960: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
3970: 5f 53 48 41 32 35 36 2d 32 2e 34 39 20 7b 53 48  _SHA256-2.49 {SH
3980: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
3990: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
39a0: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
39b0: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
39c0: 20 64 65 63 6f 64 65 20 68 65 78 20 34 65 65 66   decode hex 4eef
39d0: 35 31 30 37 34 35 39 62 64 64 66 38 66 32 34 66  5107459bddf8f24f
39e0: 63 37 36 35 36 66 64 34 38 39 36 64 61 38 37 31  c7656fd4896da871
39f0: 31 64 62 35 30 34 30 30 63 30 31 36 34 38 34 37  1db50400c0164847
3a00: 66 36 39 32 62 38 38 36 63 65 38 64 37 66 34 64  f692b886ce8d7f4d
3a10: 36 37 33 39 35 30 39 30 62 33 35 33 34 65 66 64  67395090b3534efd
3a20: 37 62 30 64 32 39 38 64 61 33 34 62 5d 7d 20 5c  7b0d298da34b]} \
3a30: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
3a40: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
3a50: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
3a60: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
3a70: 20 2d 72 65 73 75 6c 74 20 37 63 35 64 31 34 65   -result 7c5d14e
3a80: 64 38 33 64 61 62 38 37 35 61 63 32 35 63 65 37  d83dab875ac25ce7
3a90: 66 65 65 64 36 65 66 38 33 37 64 35 38 65 37 39  feed6ef837d58e79
3aa0: 64 63 36 30 31 66 62 33 63 31 66 63 61 34 38 64  dc601fb3c1fca48d
3ab0: 34 34 36 34 65 38 62 38 33 0a 0a 74 63 6c 74 65  4464e8b83..tclte
3ac0: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
3ad0: 41 32 35 36 2d 32 2e 35 30 20 7b 53 48 41 32 35  A256-2.50 {SHA25
3ae0: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
3af0: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
3b00: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
3b10: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
3b20: 63 6f 64 65 20 68 65 78 20 30 34 37 64 32 37 35  code hex 047d275
3b30: 38 65 37 63 32 63 39 36 32 33 66 39 62 64 62 39  8e7c2c9623f9bdb9
3b40: 33 62 36 35 39 37 63 35 65 38 34 61 30 63 64 33  3b6597c5e84a0cd3
3b50: 34 65 36 31 30 30 31 34 62 63 62 32 35 62 34 39  4e610014bcb25b49
3b60: 65 64 30 35 63 37 65 33 35 36 65 39 38 63 37 61  ed05c7e356e98c7a
3b70: 36 37 32 63 33 64 64 64 63 61 65 62 38 34 33 31  672c3dddcaeb8431
3b80: 37 65 66 36 31 34 64 33 34 32 66 5d 7d 20 5c 0a  7ef614d342f]} \.
3b90: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
3ba0: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
3bb0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
3bc0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
3bd0: 2d 72 65 73 75 6c 74 20 37 64 35 33 65 63 63 64  -result 7d53eccd
3be0: 30 33 64 61 33 37 62 66 35 38 63 31 39 36 32 61  03da37bf58c1962a
3bf0: 38 66 30 66 37 30 38 61 35 63 35 63 34 34 37 66  8f0f708a5c5c447f
3c00: 36 61 37 65 39 65 32 36 31 33 37 63 31 36 39 64  6a7e9e26137c169d
3c10: 35 62 64 64 38 32 65 34 0a 0a 74 63 6c 74 65 73  5bdd82e4..tcltes
3c20: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
3c30: 32 35 36 2d 32 2e 35 31 20 7b 53 48 41 32 35 36  256-2.51 {SHA256
3c40: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
3c50: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
3c60: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
3c70: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
3c80: 6f 64 65 20 68 65 78 20 33 64 38 33 64 66 33 37  ode hex 3d83df37
3c90: 31 37 32 63 38 31 61 66 64 30 64 65 31 31 35 31  172c81afd0de1151
3ca0: 33 39 66 62 66 34 33 39 30 63 32 32 65 30 39 38  39fbf4390c22e098
3cb0: 63 35 61 66 34 63 35 61 62 34 38 35 32 34 30 36  c5af4c5ab4852406
3cc0: 35 31 30 62 63 30 65 36 63 66 37 34 31 37 36 39  510bc0e6cf741769
3cd0: 66 34 34 34 33 30 63 35 32 37 30 66 64 61 65 30  f44430c5270fdae0
3ce0: 63 62 38 34 39 64 37 31 63 62 61 62 5d 7d 20 5c  cb849d71cbab]} \
3cf0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
3d00: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
3d10: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
3d20: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
3d30: 20 2d 72 65 73 75 6c 74 20 39 39 64 63 37 37 32   -result 99dc772
3d40: 65 39 31 65 61 30 32 64 39 65 34 32 31 64 35 35  e91ea02d9e421d55
3d50: 32 64 36 31 39 30 31 30 31 36 62 39 66 64 34 61  2d61901016b9fd4a
3d60: 64 32 64 66 34 61 38 32 31 32 63 31 65 63 35 62  d2df4a8212c1ec5b
3d70: 61 31 33 38 39 33 61 62 32 0a 0a 74 63 6c 74 65  a13893ab2..tclte
3d80: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
3d90: 41 32 35 36 2d 32 2e 35 32 20 7b 53 48 41 32 35  A256-2.52 {SHA25
3da0: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
3db0: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
3dc0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
3dd0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
3de0: 63 6f 64 65 20 68 65 78 20 33 33 66 64 39 62 63  code hex 33fd9bc
3df0: 31 37 65 32 62 32 37 31 66 61 30 34 63 36 62 39  17e2b271fa04c6b9
3e00: 33 63 30 62 64 65 61 65 39 38 36 35 34 61 37 36  3c0bdeae98654a76
3e10: 38 32 64 33 31 64 39 62 34 64 61 62 37 65 36 66  82d31d9b4dab7e6f
3e20: 33 32 63 64 35 38 66 32 66 31 34 38 61 36 38 66  32cd58f2f148a68f
3e30: 62 65 37 61 38 38 63 35 61 62 31 64 38 38 65 64  be7a88c5ab1d88ed
3e40: 63 63 64 64 65 62 33 30 61 62 32 31 65 35 65 5d  ccddeb30ab21e5e]
3e50: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
3e60: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
3e70: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
3e80: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
3e90: 61 63 74 20 2d 72 65 73 75 6c 74 20 63 65 66 64  act -result cefd
3ea0: 61 65 31 61 33 64 37 35 65 37 39 32 65 38 36 39  ae1a3d75e792e869
3eb0: 38 64 35 65 37 31 66 31 37 37 63 63 37 36 31 33  8d5e71f177cc7613
3ec0: 31 34 65 39 61 64 35 64 66 39 36 30 32 63 36 65  14e9ad5df9602c6e
3ed0: 36 30 61 65 36 35 63 34 63 32 36 37 0a 0a 74 63  60ae65c4c267..tc
3ee0: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
3ef0: 5f 53 48 41 32 35 36 2d 32 2e 35 33 20 7b 53 48  _SHA256-2.53 {SH
3f00: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
3f10: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
3f20: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
3f30: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
3f40: 20 64 65 63 6f 64 65 20 68 65 78 20 37 37 61 38   decode hex 77a8
3f50: 37 39 63 66 61 31 31 64 37 66 63 61 63 37 61 38  79cfa11d7fcac7a8
3f60: 32 38 32 63 63 33 38 61 34 33 64 63 66 33 37 36  282cc38a43dcf376
3f70: 34 33 63 63 39 30 39 38 33 37 32 31 33 62 64 36  43cc909837213bd6
3f80: 66 64 39 35 64 39 35 36 62 32 31 39 61 31 34 30  fd95d956b219a140
3f90: 36 63 62 65 37 33 63 35 32 63 64 35 36 63 36 30  6cbe73c52cd56c60
3fa0: 30 65 35 35 62 37 35 62 63 33 37 65 61 36 39 36  0e55b75bc37ea696
3fb0: 34 31 62 63 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  41bc]} \..-body 
3fc0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
3fd0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
3fe0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
3ff0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
4000: 20 63 39 39 64 36 34 66 61 34 64 61 64 64 34 62   c99d64fa4dadd4b
4010: 63 38 61 33 38 39 35 33 31 63 36 38 62 34 35 39  c8a389531c68b459
4020: 30 63 36 64 66 30 62 39 30 39 39 63 34 64 35 38  0c6df0b9099c4d58
4030: 33 62 63 30 30 38 38 39 66 62 37 62 39 38 30 30  3bc00889fb7b9800
4040: 38 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  8..tcltest::test
4050: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 35   Hash_SHA256-2.5
4060: 34 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  4 {SHA256ShortMs
4070: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
4080: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
4090: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
40a0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
40b0: 20 34 35 61 33 65 36 62 38 36 35 32 37 66 32 30   45a3e6b86527f20
40c0: 62 34 35 33 37 66 35 61 66 39 36 63 66 63 35 61  b4537f5af96cfc5a
40d0: 64 38 37 37 37 61 32 64 64 65 36 63 66 37 35 31  d8777a2dde6cf751
40e0: 31 38 38 36 63 35 35 39 30 65 63 65 32 34 66 63  1886c5590ece24fc
40f0: 36 31 62 32 32 36 37 33 39 64 32 30 37 64 61 62  61b226739d207dab
4100: 66 65 33 32 62 61 36 65 66 64 39 66 66 34 63 64  fe32ba6efd9ff4cd
4110: 35 64 62 31 62 64 35 65 61 64 33 5d 7d 20 5c 0a  5db1bd5ead3]} \.
4120: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
4130: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
4140: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
4150: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
4160: 2d 72 65 73 75 6c 74 20 34 64 31 32 61 38 34 39  -result 4d12a849
4170: 30 34 37 63 36 61 63 64 34 62 32 65 65 65 36 62  047c6acd4b2eee6b
4180: 65 33 35 66 61 39 30 35 31 62 30 32 64 32 31 64  e35fa9051b02d21d
4190: 35 30 64 34 31 39 35 34 33 30 30 38 63 31 64 38  50d419543008c1d8
41a0: 32 63 34 32 37 30 37 32 0a 0a 74 63 6c 74 65 73  2c427072..tcltes
41b0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
41c0: 32 35 36 2d 32 2e 35 35 20 7b 53 48 41 32 35 36  256-2.55 {SHA256
41d0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
41e0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
41f0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
4200: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
4210: 6f 64 65 20 68 65 78 20 32 35 33 36 32 61 34 62  ode hex 25362a4b
4220: 39 64 37 34 62 64 65 36 31 32 38 63 34 66 64 63  9d74bde6128c4fdc
4230: 36 37 32 33 30 35 39 30 30 39 34 37 62 63 33 61  672305900947bc3a
4240: 64 61 39 64 39 64 33 31 36 65 62 63 66 31 36 36  da9d9d316ebcf166
4250: 37 61 64 34 33 36 33 31 38 39 39 33 37 32 35 31  7ad4363189937251
4260: 66 31 34 39 63 37 32 65 30 36 34 61 34 38 36 30  f149c72e064a4860
4270: 38 64 39 34 30 62 37 35 37 34 62 31 37 66 65 66  8d940b7574b17fef
4280: 63 30 64 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  c0df]} \..-body 
4290: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
42a0: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
42b0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
42c0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
42d0: 20 66 38 65 34 63 63 61 62 36 63 39 37 39 32 32   f8e4ccab6c97922
42e0: 39 66 36 30 36 36 63 63 30 63 62 30 63 66 61 38  9f6066cc0cb0cfa8
42f0: 31 62 62 32 31 34 34 37 63 31 36 63 36 38 37 37  1bb21447c16c6877
4300: 33 62 65 37 65 35 35 38 65 39 66 39 64 37 39 38  3be7e558e9f9d798
4310: 64 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  d..tcltest::test
4320: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 35   Hash_SHA256-2.5
4330: 36 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  6 {SHA256ShortMs
4340: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
4350: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
4360: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
4370: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
4380: 20 33 65 62 66 62 30 36 64 62 38 63 33 38 64 35   3ebfb06db8c38d5
4390: 62 61 30 33 37 66 31 33 36 33 65 31 31 38 35 35  ba037f1363e11855
43a0: 30 61 61 64 39 34 36 30 36 65 32 36 38 33 35 61  0aad94606e26835a
43b0: 30 31 61 66 30 35 30 37 38 35 33 33 63 63 32 35  01af05078533cc25
43c0: 66 32 66 33 39 35 37 33 63 30 34 62 36 33 32 66  f2f39573c04b632f
43d0: 36 32 66 36 38 63 32 39 34 61 62 33 31 66 32 61  62f68c294ab31f2a
43e0: 33 65 32 61 31 61 30 64 38 63 32 62 65 35 31 5d  3e2a1a0d8c2be51]
43f0: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
4400: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
4410: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
4420: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
4430: 61 63 74 20 2d 72 65 73 75 6c 74 20 36 35 39 35  act -result 6595
4440: 61 32 65 66 35 33 37 61 36 39 62 61 38 35 38 33  a2ef537a69ba8583
4450: 64 66 62 66 37 66 35 62 65 63 30 61 62 31 66 39  dfbf7f5bec0ab1f9
4460: 33 63 65 34 63 38 65 65 31 39 31 36 65 66 66 34  3ce4c8ee1916eff4
4470: 34 61 39 33 61 66 35 37 34 39 63 34 0a 0a 74 63  4a93af5749c4..tc
4480: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
4490: 5f 53 48 41 32 35 36 2d 32 2e 35 37 20 7b 53 48  _SHA256-2.57 {SH
44a0: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
44b0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
44c0: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
44d0: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
44e0: 20 64 65 63 6f 64 65 20 68 65 78 20 32 64 35 32   decode hex 2d52
44f0: 34 34 37 64 31 32 34 34 64 32 65 62 63 32 38 36  447d1244d2ebc286
4500: 35 30 65 37 62 30 35 36 35 34 62 61 64 33 35 62  50e7b05654bad35b
4510: 33 61 36 38 65 65 64 63 37 66 38 35 31 35 33 30  3a68eedc7f851530
4520: 36 62 34 39 36 64 37 35 66 33 65 37 33 33 38 35  6b496d75f3e73385
4530: 64 64 31 62 30 30 32 36 32 35 30 32 34 62 38 31  dd1b002625024b81
4540: 61 30 32 66 32 66 64 36 64 66 66 62 36 65 36 64  a02f2fd6dffb6e6d
4550: 35 36 31 63 62 37 64 30 62 64 37 61 5d 7d 20 5c  561cb7d0bd7a]} \
4560: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
4570: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
4580: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
4590: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
45a0: 20 2d 72 65 73 75 6c 74 20 63 66 62 38 38 64 36   -result cfb88d6
45b0: 66 61 66 32 64 65 33 61 36 39 64 33 36 31 39 35  faf2de3a69d36195
45c0: 61 63 65 63 32 65 32 35 35 65 32 61 66 32 62 37  acec2e255e2af2b7
45d0: 64 39 33 33 39 39 37 66 33 34 38 65 30 39 66 36  d933997f348e09f6
45e0: 63 65 35 37 35 38 33 36 30 0a 0a 74 63 6c 74 65  ce5758360..tclte
45f0: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
4600: 41 32 35 36 2d 32 2e 35 38 20 7b 53 48 41 32 35  A256-2.58 {SHA25
4610: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
4620: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
4630: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
4640: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
4650: 63 6f 64 65 20 68 65 78 20 34 63 61 63 65 34 32  code hex 4cace42
4660: 32 65 34 61 30 31 35 61 37 35 34 39 32 62 33 62  2e4a015a75492b3b
4670: 33 62 62 66 62 64 66 33 37 35 38 65 61 66 66 34  3bbfbdf3758eaff4
4680: 66 65 35 30 34 62 34 36 61 32 36 63 39 30 64 61  fe504b46a26c90da
4690: 63 63 31 31 39 66 61 39 30 35 30 66 36 30 33 64  cc119fa9050f603d
46a0: 32 62 35 38 62 33 39 38 63 61 64 36 64 36 64 39  2b58b398cad6d6d9
46b0: 66 61 39 32 32 61 31 35 34 64 39 65 30 62 63 34  fa922a154d9e0bc4
46c0: 33 38 39 39 36 38 32 37 34 62 30 5d 7d 20 5c 0a  389968274b0]} \.
46d0: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
46e0: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
46f0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
4700: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
4710: 2d 72 65 73 75 6c 74 20 34 64 35 34 62 32 64 32  -result 4d54b2d2
4720: 38 34 61 36 37 39 34 35 38 31 32 32 34 65 30 38  84a6794581224e08
4730: 66 36 37 35 35 34 31 63 38 66 65 61 62 36 65 65  f675541c8feab6ee
4740: 66 61 33 61 63 31 63 66 65 35 64 61 34 65 30 33  fa3ac1cfe5da4e03
4750: 65 36 32 66 37 32 65 34 0a 0a 74 63 6c 74 65 73  e62f72e4..tcltes
4760: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
4770: 32 35 36 2d 32 2e 35 39 20 7b 53 48 41 32 35 36  256-2.59 {SHA256
4780: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
4790: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
47a0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
47b0: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
47c0: 6f 64 65 20 68 65 78 20 38 36 32 30 62 38 36 66  ode hex 8620b86f
47d0: 62 63 61 61 63 65 34 66 66 33 63 32 39 32 31 62  bcaace4ff3c2921b
47e0: 38 34 36 36 64 64 64 37 62 61 63 61 65 30 37 65  8466ddd7bacae07e
47f0: 65 66 65 66 36 39 33 63 66 31 37 37 36 32 64 63  efef693cf17762dc
4800: 61 62 62 38 39 61 38 34 30 31 30 66 63 39 61 30  abb89a84010fc9a0
4810: 66 62 37 36 63 65 31 63 32 36 35 39 33 61 64 36  fb76ce1c26593ad6
4820: 33 37 61 36 31 32 35 33 66 32 32 34 64 31 62 31  37a61253f224d1b1
4830: 34 61 30 35 61 64 64 63 63 61 62 65 5d 7d 20 5c  4a05addccabe]} \
4840: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
4850: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
4860: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
4870: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
4880: 20 2d 72 65 73 75 6c 74 20 64 62 61 34 39 30 32   -result dba4902
4890: 35 36 63 39 37 32 30 63 35 34 63 36 31 32 61 35  56c9720c54c612a5
48a0: 62 64 31 65 66 35 37 33 63 64 35 31 64 63 31 32  bd1ef573cd51dc12
48b0: 62 33 65 37 62 64 38 63 36 64 62 32 65 61 62 65  b3e7bd8c6db2eabe
48c0: 30 61 61 63 62 38 34 36 62 0a 0a 74 63 6c 74 65  0aacb846b..tclte
48d0: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
48e0: 41 32 35 36 2d 32 2e 36 30 20 7b 53 48 41 32 35  A256-2.60 {SHA25
48f0: 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63  6ShortMsg} \..-c
4900: 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35  onstraints SHA25
4910: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
4920: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
4930: 63 6f 64 65 20 68 65 78 20 64 31 62 65 33 66 31  code hex d1be3f1
4940: 33 66 65 62 61 66 65 66 63 31 34 34 31 34 64 39  3febafefc14414d9
4950: 66 62 37 66 36 39 33 64 62 31 36 64 63 31 61 65  fb7f693db16dc1ae
4960: 32 37 30 63 35 62 36 34 37 64 38 30 64 61 38 35  270c5b647d80da85
4970: 38 33 35 38 37 63 31 61 64 38 63 62 38 63 62 30  83587c1ad8cb8cb0
4980: 31 38 32 34 33 32 34 34 31 31 63 61 35 61 63 65  1824324411ca5ace
4990: 33 63 61 32 32 65 31 37 39 61 34 66 66 34 39 38  3ca22e179a4ff498
49a0: 36 66 33 66 32 31 31 39 30 66 33 64 37 66 33 5d  6f3f21190f3d7f3]
49b0: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
49c0: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
49d0: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
49e0: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
49f0: 61 63 74 20 2d 72 65 73 75 6c 74 20 30 32 38 30  act -result 0280
4a00: 34 39 37 38 65 62 61 36 65 31 64 65 36 35 61 66  4978eba6e1de65af
4a10: 64 62 63 36 61 36 30 39 31 65 64 36 62 31 65 63  dbc6a6091ed6b1ec
4a20: 65 65 35 31 65 38 62 66 66 34 30 36 34 36 61 32  ee51e8bff40646a2
4a30: 35 31 64 65 36 36 37 38 62 37 65 66 0a 0a 74 63  51de6678b7ef..tc
4a40: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
4a50: 5f 53 48 41 32 35 36 2d 32 2e 36 31 20 7b 53 48  _SHA256-2.61 {SH
4a60: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
4a70: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
4a80: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
4a90: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
4aa0: 20 64 65 63 6f 64 65 20 68 65 78 20 66 34 39 39   decode hex f499
4ab0: 63 63 33 66 36 65 33 63 66 37 63 33 31 32 66 66  cc3f6e3cf7c312ff
4ac0: 64 66 62 61 36 31 62 31 32 36 30 63 33 37 31 32  dfba61b1260c3712
4ad0: 39 63 31 61 66 62 33 39 31 30 34 37 31 39 33 33  9c1afb3910471933
4ae0: 36 37 62 37 62 32 65 64 65 62 35 37 39 32 35 33  67b7b2edeb579253
4af0: 65 35 31 64 36 32 62 61 36 64 39 31 31 65 37 62  e51d62ba6d911e7b
4b00: 38 31 38 63 63 61 65 31 35 35 33 66 36 31 34 36  818ccae1553f6146
4b10: 65 61 37 38 30 66 37 38 65 32 32 31 39 66 36 32  ea780f78e2219f62
4b20: 39 33 30 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  9309]} \..-body 
4b30: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
4b40: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
4b50: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
4b60: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
4b70: 20 30 62 36 36 63 38 62 34 66 65 66 65 62 63 38   0b66c8b4fefebc8
4b80: 64 63 37 64 61 30 62 62 65 64 63 31 31 31 34 66  dc7da0bbedc1114f
4b90: 32 32 38 61 61 36 33 63 33 37 64 35 63 33 30 65  228aa63c37d5c30e
4ba0: 39 31 61 62 35 30 30 66 33 65 61 64 66 63 65 63  91ab500f3eadfcec
4bb0: 35 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  5..tcltest::test
4bc0: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 36   Hash_SHA256-2.6
4bd0: 32 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  2 {SHA256ShortMs
4be0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
4bf0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
4c00: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
4c10: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
4c20: 20 36 64 64 36 65 66 64 36 66 36 63 61 61 36 33   6dd6efd6f6caa63
4c30: 62 37 32 39 61 61 38 31 38 36 65 33 30 38 62 63  b729aa8186e308bc
4c40: 31 62 64 61 30 36 33 30 37 63 30 35 61 32 63 30  1bda06307c05a2c0
4c50: 61 65 35 61 33 36 38 34 65 36 65 34 36 30 38 31  ae5a3684e6e46081
4c60: 31 37 34 38 36 39 30 64 63 32 62 35 38 37 37 35  1748690dc2b58775
4c70: 39 36 37 63 66 63 63 36 34 35 66 64 38 32 30 36  967cfcc645fd8206
4c80: 34 62 31 32 37 39 66 64 63 61 37 37 31 38 30 33  4b1279fdca771803
4c90: 64 62 39 64 63 61 30 66 66 35 33 5d 7d 20 5c 0a  db9dca0ff53]} \.
4ca0: 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67  .-body {tls::dig
4cb0: 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 32  est -digest SHA2
4cc0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
4cd0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
4ce0: 2d 72 65 73 75 6c 74 20 63 34 36 34 61 37 62 66  -result c464a7bf
4cf0: 36 64 31 38 30 64 65 34 66 37 34 34 62 62 32 66  6d180de4f744bb2f
4d00: 65 35 64 63 32 37 61 33 66 36 38 31 33 33 34 66  e5dc27a3f681334f
4d10: 66 64 35 34 61 39 38 31 34 36 35 30 65 36 30 32  fd54a9814650e602
4d20: 36 30 61 34 37 38 65 33 0a 0a 74 63 6c 74 65 73  60a478e3..tcltes
4d30: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
4d40: 32 35 36 2d 32 2e 36 33 20 7b 53 48 41 32 35 36  256-2.63 {SHA256
4d50: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
4d60: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 32 35 36  nstraints SHA256
4d70: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
4d80: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
4d90: 6f 64 65 20 68 65 78 20 36 35 31 31 61 32 32 34  ode hex 6511a224
4da0: 32 64 64 62 32 37 33 31 37 38 65 31 39 61 38 32  2ddb273178e19a82
4db0: 63 35 37 63 38 35 63 62 30 35 61 36 38 38 37 66  c57c85cb05a6887f
4dc0: 66 32 30 31 34 63 66 31 61 33 31 63 62 39 62 61  f2014cf1a31cb9ba
4dd0: 35 64 66 31 36 39 35 61 61 64 62 32 35 63 32 32  5df1695aadb25c22
4de0: 62 33 63 35 65 64 35 31 63 31 30 64 30 34 37 64  b3c5ed51c10d047d
4df0: 32 35 36 62 38 65 33 34 34 32 38 34 32 61 65 34  256b8e3442842ae4
4e00: 65 36 63 35 32 35 66 38 64 37 61 35 61 39 34 34  e6c525f8d7a5a944
4e10: 61 66 32 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  af2a]} \..-body 
4e20: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
4e30: 67 65 73 74 20 53 48 41 32 35 36 20 2d 64 61 74  gest SHA256 -dat
4e40: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
4e50: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
4e60: 20 64 36 38 35 39 63 30 62 35 61 30 62 36 36 33   d6859c0b5a0b663
4e70: 37 36 61 32 34 66 35 36 62 32 61 62 31 30 34 32  76a24f56b2ab1042
4e80: 38 36 65 64 30 30 37 38 36 33 34 62 61 31 39 31  86ed0078634ba191
4e90: 31 32 61 63 65 30 64 36 64 36 30 61 39 63 31 61  12ace0d6d60a9c1a
4ea0: 65 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  e..tcltest::test
4eb0: 20 48 61 73 68 5f 53 48 41 32 35 36 2d 32 2e 36   Hash_SHA256-2.6
4ec0: 34 20 7b 53 48 41 32 35 36 53 68 6f 72 74 4d 73  4 {SHA256ShortMs
4ed0: 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  g} \..-constrain
4ee0: 74 73 20 53 48 41 32 35 36 20 5c 0a 09 2d 73 65  ts SHA256 \..-se
4ef0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
4f00: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
4f10: 20 65 32 66 37 36 65 39 37 36 30 36 61 38 37 32   e2f76e97606a872
4f20: 65 33 31 37 34 33 39 66 31 61 30 33 66 63 64 39  e317439f1a03fcd9
4f30: 32 65 36 33 32 65 35 62 64 34 65 37 63 62 63 34  2e632e5bd4e7cbc4
4f40: 65 39 37 66 31 61 66 63 31 39 61 31 36 66 64 65  e97f1afc19a16fde
4f50: 39 32 64 37 37 63 62 65 35 34 36 34 31 36 62 35  92d77cbe546416b5
4f60: 31 36 34 30 63 64 64 62 39 32 61 66 39 39 36 35  1640cddb92af9965
4f70: 33 34 64 66 64 38 31 65 64 62 31 37 63 34 34 32  34dfd81edb17c442
4f80: 34 63 66 31 61 63 34 64 37 35 61 63 65 65 62 5d  4cf1ac4d75aceeb]
4f90: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a  } \..-body {tls:
4fa0: 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20  :digest -digest 
4fb0: 53 48 41 32 35 36 20 2d 64 61 74 61 20 24 64 61  SHA256 -data $da
4fc0: 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  ta} \..-match ex
4fd0: 61 63 74 20 2d 72 65 73 75 6c 74 20 31 38 30 34  act -result 1804
4fe0: 31 62 64 34 36 36 35 30 38 33 30 30 31 66 62 61  1bd4665083001fba
4ff0: 38 63 35 34 31 31 64 32 64 37 34 38 65 38 61 62  8c5411d2d748e8ab
5000: 62 66 64 63 64 66 64 39 32 31 38 63 62 30 32 62  bfdcdfd9218cb02b
5010: 36 38 61 37 38 65 37 64 34 63 32 33 0a 0a 74 63  68a78e7d4c23..tc
5020: 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68  ltest::test Hash
5030: 5f 53 48 41 32 35 36 2d 32 2e 36 35 20 7b 53 48  _SHA256-2.65 {SH
5040: 41 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  A256ShortMsg} \.
5050: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
5060: 41 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  A256 \..-setup {
5070: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
5080: 20 64 65 63 6f 64 65 20 68 65 78 20 35 61 38 36   decode hex 5a86
5090: 62 37 33 37 65 61 65 61 38 65 65 39 37 36 61 30  b737eaea8ee976a0
50a0: 61 32 34 64 61 36 33 65 37 65 64 37 65 65 66 61  a24da63e7ed7eefa
50b0: 64 31 38 61 31 30 31 63 31 32 31 31 65 32 62 33  d18a101c1211e2b3
50c0: 36 35 30 63 35 31 38 37 63 32 61 38 61 36 35 30  650c5187c2a8a650
50d0: 35 34 37 32 30 38 32 35 31 66 36 64 34 32 33 37  547208251f6d4237
50e0: 65 36 36 31 63 37 62 66 34 63 37 37 66 33 33 35  e661c7bf4c77f335
50f0: 33 39 30 33 39 34 63 33 37 66 61 31 61 39 66 39  390394c37fa1a9f9
5100: 62 65 38 33 36 61 63 32 38 35 30 39 5d 7d 20 5c  be836ac28509]} \
5110: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
5120: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
5130: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
5140: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
5150: 20 2d 72 65 73 75 6c 74 20 34 32 65 36 31 65 31   -result 42e61e1
5160: 37 34 66 62 62 33 38 39 37 64 36 64 64 36 63 65  74fbb3897d6dd6ce
5170: 66 33 64 64 32 38 30 32 66 65 36 37 62 33 33 31  f3dd2802fe67b331
5180: 39 35 33 62 30 36 31 31 34 61 36 35 63 37 37 32  953b06114a65c772
5190: 38 35 39 64 66 63 31 61 61 0a 0a 23 20 43 6c 65  859dfc1aa..# Cle
51a0: 61 6e 75 70 0a 3a 3a 74 63 6c 74 65 73 74 3a 3a  anup.::tcltest::
51b0: 63 6c 65 61 6e 75 70 54 65 73 74 73 0a 72 65 74  cleanupTests.ret
51c0: 75 72 6e 0a                                      urn.