Hex Artifact Content

Artifact 415d0b45a5c81bee15b05f52ef857d1f6944be4e876b103a18b04d5cdb8d4095:


0000: 23 20 41 75 74 6f 20 67 65 6e 65 72 61 74 65 64  # Auto generated
0010: 20 66 72 6f 6d 20 22 53 48 41 35 31 32 5f 32 35   from "SHA512_25
0020: 36 53 68 6f 72 74 4d 73 67 2e 72 73 70 22 0a 6c  6ShortMsg.rsp".l
0030: 61 70 70 65 6e 64 20 61 75 74 6f 5f 70 61 74 68  append auto_path
0040: 20 5b 66 69 6c 65 20 64 69 72 6e 61 6d 65 20 5b   [file dirname [
0050: 66 69 6c 65 20 64 69 72 6e 61 6d 65 20 5b 66 69  file dirname [fi
0060: 6c 65 20 64 69 72 6e 61 6d 65 20 5b 66 69 6c 65  le dirname [file
0070: 20 64 69 72 6e 61 6d 65 20 5b 66 69 6c 65 20 6a   dirname [file j
0080: 6f 69 6e 20 5b 70 77 64 5d 20 5b 69 6e 66 6f 20  oin [pwd] [info 
0090: 73 63 72 69 70 74 5d 5d 5d 5d 5d 5d 0a 70 61 63  script]]]]]].pac
00a0: 6b 61 67 65 20 72 65 71 75 69 72 65 20 74 6c 73  kage require tls
00b0: 0a 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 65  .package require
00c0: 20 74 63 6c 74 65 73 74 0a 0a 74 63 6c 74 65 73   tcltest..tcltes
00d0: 74 3a 3a 74 65 73 74 43 6f 6e 73 74 72 61 69 6e  t::testConstrain
00e0: 74 20 53 48 41 35 31 32 5f 32 35 36 20 5b 65 78  t SHA512_256 [ex
00f0: 70 72 20 7b 5b 6c 73 65 61 72 63 68 20 2d 6e 6f  pr {[lsearch -no
0100: 63 61 73 65 20 5b 74 6c 73 3a 3a 64 69 67 65 73  case [tls::diges
0110: 74 73 5d 20 53 48 41 35 31 32 2d 32 35 36 5d 20  ts] SHA512-256] 
0120: 3e 20 2d 31 7d 5d 0a 63 61 74 63 68 20 7b 74 6c  > -1}].catch {tl
0130: 73 3a 3a 70 72 6f 76 69 64 65 72 20 6c 65 67 61  s::provider lega
0140: 63 79 7d 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  cy}..tcltest::te
0150: 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d 32  st Hash_SHA512-2
0160: 35 36 2d 32 2e 31 20 7b 53 48 41 35 31 32 5f 32  56-2.1 {SHA512_2
0170: 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d  56ShortMsg} \..-
0180: 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35  constraints SHA5
0190: 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  12_256 \..-setup
01a0: 20 7b 73 65 74 20 64 61 74 61 20 22 22 7d 20 5c   {set data ""} \
01b0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
01c0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
01d0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
01e0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
01f0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 63 36 37  xact -result c67
0200: 32 62 38 64 31 65 66 35 36 65 64 32 38 61 62 38  2b8d1ef56ed28ab8
0210: 37 63 33 36 32 32 63 35 31 31 34 30 36 39 62 64  7c3622c5114069bd
0220: 64 33 61 64 37 62 38 66 39 37 33 37 34 39 38 64  d3ad7b8f9737498d
0230: 30 63 30 31 65 63 65 66 30 39 36 37 61 0a 0a 74  0c01ecef0967a..t
0240: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
0250: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 32  h_SHA512-256-2.2
0260: 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72   {SHA512_256Shor
0270: 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72  tMsg} \..-constr
0280: 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36  aints SHA512_256
0290: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
02a0: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
02b0: 6f 64 65 20 68 65 78 20 66 61 5d 7d 20 5c 0a 09  ode hex fa]} \..
02c0: 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65  -body {tls::dige
02d0: 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 35 31  st -digest SHA51
02e0: 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64 61 74  2-256 -data $dat
02f0: 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61  a} \..-match exa
0300: 63 74 20 2d 72 65 73 75 6c 74 20 63 34 65 66 33  ct -result c4ef3
0310: 36 39 32 33 63 36 34 65 35 31 65 38 37 35 37 32  6923c64e51e87572
0320: 30 65 35 35 30 32 39 38 61 35 61 62 38 61 33 66  0e550298a5ab8a3f
0330: 32 66 38 37 35 62 31 65 31 61 34 63 39 62 39 35  2f875b1e1a4c9b95
0340: 62 61 62 66 37 33 34 34 66 65 66 0a 0a 74 63 6c  babf7344fef..tcl
0350: 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f  test::test Hash_
0360: 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 33 20 7b  SHA512-256-2.3 {
0370: 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d  SHA512_256ShortM
0380: 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69  sg} \..-constrai
0390: 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c  nts SHA512_256 \
03a0: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
03b0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
03c0: 65 20 68 65 78 20 37 34 65 34 5d 7d 20 5c 0a 09  e hex 74e4]} \..
03d0: 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65  -body {tls::dige
03e0: 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 35 31  st -digest SHA51
03f0: 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64 61 74  2-256 -data $dat
0400: 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61  a} \..-match exa
0410: 63 74 20 2d 72 65 73 75 6c 74 20 30 63 39 39 34  ct -result 0c994
0420: 32 32 38 62 38 64 33 62 64 35 65 61 35 62 35 32  228b8d3bd5ea5b52
0430: 35 39 31 35 37 61 39 62 62 61 37 61 31 39 33 31  59157a9bba7a1931
0440: 31 38 61 64 32 32 38 31 37 65 36 66 62 65 64 32  18ad22817e6fbed2
0450: 64 66 31 61 33 32 61 34 31 34 38 0a 0a 74 63 6c  df1a32a4148..tcl
0460: 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f  test::test Hash_
0470: 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 34 20 7b  SHA512-256-2.4 {
0480: 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d  SHA512_256ShortM
0490: 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69  sg} \..-constrai
04a0: 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c  nts SHA512_256 \
04b0: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
04c0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
04d0: 65 20 68 65 78 20 36 66 36 33 62 34 5d 7d 20 5c  e hex 6f63b4]} \
04e0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
04f0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
0500: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
0510: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
0520: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 61 39 65  xact -result a9e
0530: 32 34 32 37 63 65 63 33 31 34 62 32 38 31 34 61  2427cec314b2814a
0540: 61 62 61 38 37 30 33 39 34 38 35 66 63 38 64 33  aba87039485fc8d3
0550: 61 64 65 39 39 32 66 61 31 64 39 61 63 62 62 37  ade992fa1d9acbb7
0560: 66 36 37 36 39 34 36 30 61 37 33 31 37 0a 0a 74  f6769460a7317..t
0570: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
0580: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 35  h_SHA512-256-2.5
0590: 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72   {SHA512_256Shor
05a0: 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72  tMsg} \..-constr
05b0: 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36  aints SHA512_256
05c0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
05d0: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
05e0: 6f 64 65 20 68 65 78 20 32 62 66 39 38 65 37 66  ode hex 2bf98e7f
05f0: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
0600: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
0610: 20 53 48 41 35 31 32 2d 32 35 36 20 2d 64 61 74   SHA512-256 -dat
0620: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
0630: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
0640: 20 39 37 64 34 35 35 65 36 38 38 31 61 64 62 62   97d455e6881adbb
0650: 38 62 66 32 36 64 64 63 33 65 66 31 32 30 64 66  8bf26ddc3ef120df
0660: 34 61 62 62 33 33 30 61 64 66 38 65 64 32 61 63  4abb330adf8ed2ac
0670: 37 61 34 62 36 63 63 65 34 61 31 37 32 37 30 36  7a4b6cce4a172706
0680: 38 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  8..tcltest::test
0690: 20 48 61 73 68 5f 53 48 41 35 31 32 2d 32 35 36   Hash_SHA512-256
06a0: 2d 32 2e 36 20 7b 53 48 41 35 31 32 5f 32 35 36  -2.6 {SHA512_256
06b0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
06c0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35 31 32  nstraints SHA512
06d0: 5f 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  _256 \..-setup {
06e0: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
06f0: 20 64 65 63 6f 64 65 20 68 65 78 20 37 37 64 32   decode hex 77d2
0700: 65 65 33 66 64 31 5d 7d 20 5c 0a 09 2d 62 6f 64  ee3fd1]} \..-bod
0710: 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d  y {tls::digest -
0720: 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32 35  digest SHA512-25
0730: 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  6 -data $data} \
0740: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
0750: 72 65 73 75 6c 74 20 33 32 39 64 30 61 65 32 36  result 329d0ae26
0760: 64 66 33 36 34 36 66 62 37 64 62 30 62 33 32 32  df3646fb7db0b322
0770: 63 66 31 66 33 34 38 38 64 35 33 38 31 66 36 36  cf1f3488d5381f66
0780: 65 62 33 37 36 66 65 65 34 30 66 30 35 39 36 64  eb376fee40f0596d
0790: 36 64 39 64 63 34 62 0a 0a 74 63 6c 74 65 73 74  6d9dc4b..tcltest
07a0: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 35  ::test Hash_SHA5
07b0: 31 32 2d 32 35 36 2d 32 2e 37 20 7b 53 48 41 35  12-256-2.7 {SHA5
07c0: 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  12_256ShortMsg} 
07d0: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
07e0: 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73  SHA512_256 \..-s
07f0: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
0800: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
0810: 78 20 37 64 61 65 38 66 63 30 32 30 64 39 5d 7d  x 7dae8fc020d9]}
0820: 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a   \..-body {tls::
0830: 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53  digest -digest S
0840: 48 41 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20  HA512-256 -data 
0850: 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68  $data} \..-match
0860: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 34   exact -result 4
0870: 34 37 30 34 34 66 30 33 62 63 33 30 65 32 63 61  47044f03bc30e2ca
0880: 61 32 34 35 64 32 36 63 65 34 63 37 32 63 31 34  a245d26ce4c72c14
0890: 35 34 66 37 30 38 63 66 63 64 39 61 32 31 35 38  54f708cfcd9a2158
08a0: 34 31 61 38 38 63 66 35 65 63 64 32 30 39 35 0a  41a88cf5ecd2095.
08b0: 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48  .tcltest::test H
08c0: 61 73 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32  ash_SHA512-256-2
08d0: 2e 38 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68  .8 {SHA512_256Sh
08e0: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
08f0: 74 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32  traints SHA512_2
0900: 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  56 \..-setup {se
0910: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
0920: 65 63 6f 64 65 20 68 65 78 20 35 62 34 38 62 38  ecode hex 5b48b8
0930: 62 30 31 61 35 39 64 35 5d 7d 20 5c 0a 09 2d 62  b01a59d5]} \..-b
0940: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
0950: 20 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d   -digest SHA512-
0960: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
0970: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
0980: 20 2d 72 65 73 75 6c 74 20 31 61 38 36 62 34 64   -result 1a86b4d
0990: 33 34 63 64 31 30 34 63 31 33 62 35 62 38 64 34  34cd104c13b5b8d4
09a0: 31 39 37 38 34 63 65 34 63 36 64 33 35 35 39 34  19784ce4c6d35594
09b0: 66 32 61 39 33 30 30 65 38 31 34 36 38 66 34 64  f2a9300e81468f4d
09c0: 63 30 36 33 34 38 33 32 61 0a 0a 74 63 6c 74 65  c0634832a..tclte
09d0: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
09e0: 41 35 31 32 2d 32 35 36 2d 32 2e 39 20 7b 53 48  A512-256-2.9 {SH
09f0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
0a00: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
0a10: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
0a20: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
0a30: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
0a40: 68 65 78 20 62 34 65 32 65 38 35 30 31 66 35 34  hex b4e2e8501f54
0a50: 62 65 39 31 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  be91]} \..-body 
0a60: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
0a70: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
0a80: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
0a90: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
0aa0: 73 75 6c 74 20 64 32 35 32 36 35 62 66 39 63 62  sult d25265bf9cb
0ab0: 63 30 64 64 32 66 31 30 38 61 32 66 35 65 38 66  c0dd2f108a2f5e8f
0ac0: 36 39 64 62 37 64 31 35 65 35 62 38 66 65 39 31  69db7d15e5b8fe91
0ad0: 30 30 66 65 38 38 37 64 61 65 32 30 62 36 65 30  00fe887dae20b6e0
0ae0: 35 34 66 65 38 0a 0a 74 63 6c 74 65 73 74 3a 3a  54fe8..tcltest::
0af0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
0b00: 2d 32 35 36 2d 32 2e 31 30 20 7b 53 48 41 35 31  -256-2.10 {SHA51
0b10: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
0b20: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
0b30: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
0b40: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
0b50: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
0b60: 20 39 30 31 64 62 30 66 37 30 66 32 64 31 30 36   901db0f70f2d106
0b70: 32 36 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  26a]} \..-body {
0b80: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
0b90: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
0ba0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
0bb0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
0bc0: 75 6c 74 20 66 38 34 63 65 37 61 37 36 30 63 38  ult f84ce7a760c8
0bd0: 35 65 36 37 38 37 32 66 66 63 61 31 37 32 32 62  5e67872ffca1722b
0be0: 31 62 37 37 34 31 30 33 32 64 39 31 33 39 32 31  1b7741032d913921
0bf0: 31 30 37 37 66 39 36 33 61 33 32 64 39 66 38 34  1077f963a32d9f84
0c00: 37 37 31 62 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  771b..tcltest::t
0c10: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
0c20: 32 35 36 2d 32 2e 31 31 20 7b 53 48 41 35 31 32  256-2.11 {SHA512
0c30: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
0c40: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
0c50: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
0c60: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
0c70: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
0c80: 66 32 34 64 39 38 35 39 31 65 65 33 63 37 33 32  f24d98591ee3c732
0c90: 61 31 37 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  a172]} \..-body 
0ca0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
0cb0: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
0cc0: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
0cd0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
0ce0: 73 75 6c 74 20 64 61 32 33 34 63 31 64 36 64 31  sult da234c1d6d1
0cf0: 38 61 64 38 66 35 33 30 37 30 65 34 65 35 62 39  8ad8f53070e4e5b9
0d00: 63 66 66 37 35 33 38 35 63 31 33 66 33 65 34 34  cff75385c13f3e44
0d10: 62 30 31 34 66 63 34 35 63 33 35 30 39 64 30 64  b014fc45c3509d0d
0d20: 30 36 61 64 62 0a 0a 74 63 6c 74 65 73 74 3a 3a  06adb..tcltest::
0d30: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
0d40: 2d 32 35 36 2d 32 2e 31 32 20 7b 53 48 41 35 31  -256-2.12 {SHA51
0d50: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
0d60: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
0d70: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
0d80: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
0d90: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
0da0: 20 62 66 62 32 37 32 35 33 37 66 30 32 31 61 64   bfb272537f021ad
0db0: 65 39 62 62 33 33 30 5d 7d 20 5c 0a 09 2d 62 6f  e9bb330]} \..-bo
0dc0: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
0dd0: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
0de0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
0df0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
0e00: 2d 72 65 73 75 6c 74 20 37 63 34 39 61 35 39 61  -result 7c49a59a
0e10: 33 63 33 66 64 38 65 32 34 64 65 38 35 38 35 34  3c3fd8e24de85854
0e20: 66 36 38 61 33 62 37 65 63 36 30 63 32 30 33 31  f68a3b7ec60c2031
0e30: 37 34 32 61 39 61 32 64 61 62 66 34 39 31 39 39  742a9a2dabf49199
0e40: 64 38 38 63 32 64 62 35 0a 0a 74 63 6c 74 65 73  d88c2db5..tcltes
0e50: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
0e60: 35 31 32 2d 32 35 36 2d 32 2e 31 33 20 7b 53 48  512-256-2.13 {SH
0e70: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
0e80: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
0e90: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
0ea0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
0eb0: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
0ec0: 68 65 78 20 30 61 35 66 37 34 32 34 62 61 62 62  hex 0a5f7424babb
0ed0: 35 63 62 38 35 37 31 35 66 62 31 37 5d 7d 20 5c  5cb85715fb17]} \
0ee0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
0ef0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
0f00: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
0f10: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
0f20: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 35 63 64  xact -result 5cd
0f30: 34 30 63 35 31 35 30 32 36 30 30 66 33 61 30 65  40c51502600f3a0e
0f40: 65 63 37 62 33 61 33 61 64 64 62 66 36 36 37 32  ec7b3a3addbf6672
0f50: 65 65 65 63 63 35 30 62 33 64 65 32 66 64 38 36  eeecc50b3de2fd86
0f60: 64 64 31 63 30 61 34 37 65 38 61 33 66 0a 0a 74  dd1c0a47e8a3f..t
0f70: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
0f80: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 31  h_SHA512-256-2.1
0f90: 34 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  4 {SHA512_256Sho
0fa0: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
0fb0: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
0fc0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
0fd0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
0fe0: 63 6f 64 65 20 68 65 78 20 35 37 61 31 30 33 30  code hex 57a1030
0ff0: 38 61 61 32 30 36 30 61 65 63 61 64 30 35 61 64  8aa2060aecad05ad
1000: 62 32 64 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  b2d]} \..-body {
1010: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
1020: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
1030: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
1040: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
1050: 75 6c 74 20 61 35 32 30 38 65 63 65 31 64 65 31  ult a5208ece1de1
1060: 33 34 32 64 30 32 65 61 39 61 62 37 63 66 65 35  342d02ea9ab7cfe5
1070: 33 37 61 32 63 38 31 66 61 30 65 61 65 64 62 34  37a2c81fa0eaedb4
1080: 32 37 61 37 62 33 63 62 36 63 32 39 31 39 35 39  27a7b3cb6c291959
1090: 61 36 61 38 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  a6a8..tcltest::t
10a0: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
10b0: 32 35 36 2d 32 2e 31 35 20 7b 53 48 41 35 31 32  256-2.15 {SHA512
10c0: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
10d0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
10e0: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
10f0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
1100: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
1110: 35 65 34 36 37 34 65 39 37 61 32 35 37 63 32 33  5e4674e97a257c23
1120: 31 64 38 65 39 31 33 39 31 64 30 61 5d 7d 20 5c  1d8e91391d0a]} \
1130: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
1140: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
1150: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
1160: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
1170: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 61 38 38  xact -result a88
1180: 64 37 63 62 62 36 65 33 31 65 38 37 61 36 63 39  d7cbb6e31e87a6c9
1190: 39 37 33 34 66 35 39 39 64 31 35 38 38 63 62 39  9734f599d1588cb9
11a0: 34 33 39 39 37 39 62 38 32 31 30 38 30 30 65 63  439979b8210800ec
11b0: 61 30 61 61 32 30 36 37 63 64 35 35 36 0a 0a 74  a0aa2067cd556..t
11c0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
11d0: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 31  h_SHA512-256-2.1
11e0: 36 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  6 {SHA512_256Sho
11f0: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
1200: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
1210: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
1220: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
1230: 63 6f 64 65 20 68 65 78 20 62 61 31 30 62 30 64  code hex ba10b0d
1240: 61 37 30 65 32 61 30 31 37 63 64 63 36 33 66 39  a70e2a017cdc63f9
1250: 39 36 64 62 63 31 62 5d 7d 20 5c 0a 09 2d 62 6f  96dbc1b]} \..-bo
1260: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
1270: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
1280: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
1290: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
12a0: 2d 72 65 73 75 6c 74 20 66 38 61 35 61 61 32 32  -result f8a5aa22
12b0: 39 33 37 34 35 33 37 31 39 65 62 34 30 62 31 64  937453719eb40b1d
12c0: 63 66 36 38 61 33 34 36 65 32 30 32 62 61 32 32  cf68a346e202ba22
12d0: 35 66 34 64 37 61 63 63 38 37 65 35 61 37 33 36  5f4d7acc87e5a736
12e0: 61 62 65 64 33 34 32 33 0a 0a 74 63 6c 74 65 73  abed3423..tcltes
12f0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
1300: 35 31 32 2d 32 35 36 2d 32 2e 31 37 20 7b 53 48  512-256-2.17 {SH
1310: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
1320: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
1330: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
1340: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
1350: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
1360: 68 65 78 20 61 33 34 38 31 39 39 36 63 31 30 39  hex a3481996c109
1370: 63 39 65 66 62 36 36 39 32 62 38 32 31 37 33 39  c9efb6692b821739
1380: 32 31 62 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  21b6]} \..-body 
1390: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
13a0: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
13b0: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
13c0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
13d0: 73 75 6c 74 20 66 62 61 30 66 30 38 31 33 63 61  sult fba0f0813ca
13e0: 35 63 35 31 33 64 30 62 35 34 37 34 31 39 61 31  5c513d0b547419a1
13f0: 35 65 32 37 61 37 30 39 37 64 33 65 62 32 38 30  5e27a7097d3eb280
1400: 61 32 39 38 63 31 63 36 39 33 62 35 35 65 30 33  a298c1c693b55e03
1410: 64 32 64 32 63 0a 0a 74 63 6c 74 65 73 74 3a 3a  d2d2c..tcltest::
1420: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
1430: 2d 32 35 36 2d 32 2e 31 38 20 7b 53 48 41 35 31  -256-2.18 {SHA51
1440: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
1450: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
1460: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
1470: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
1480: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
1490: 20 30 38 37 37 63 32 30 63 64 64 63 63 38 36 62   0877c20cddcc86b
14a0: 38 33 33 66 37 62 63 32 64 63 66 37 61 37 30 39  833f7bc2dcf7a709
14b0: 61 32 65 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  a2e]} \..-body {
14c0: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
14d0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
14e0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
14f0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
1500: 75 6c 74 20 66 34 63 33 61 32 36 30 34 65 32 37  ult f4c3a2604e27
1510: 32 35 65 34 64 31 37 39 65 64 64 31 62 34 34 35  25e4d179edd1b445
1520: 62 61 34 38 39 39 37 39 66 34 65 61 35 39 33 37  ba489979f4ea5937
1530: 65 30 63 36 62 32 30 62 34 32 32 63 37 32 30 64  e0c6b20b422c720d
1540: 38 62 66 61 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  8bfa..tcltest::t
1550: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
1560: 32 35 36 2d 32 2e 31 39 20 7b 53 48 41 35 31 32  256-2.19 {SHA512
1570: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
1580: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
1590: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
15a0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
15b0: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
15c0: 36 39 34 34 35 62 64 31 32 66 30 32 32 66 36 61  69445bd12f022f6a
15d0: 36 36 39 62 65 62 65 30 34 36 37 37 32 39 66 34  669bebe0467729f4
15e0: 64 63 37 63 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  dc7c]} \..-body 
15f0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1600: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
1610: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
1620: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
1630: 73 75 6c 74 20 32 36 62 66 37 30 39 62 33 34 37  sult 26bf709b347
1640: 34 35 35 34 61 62 38 64 64 31 32 64 39 35 32 34  4554ab8dd12d9524
1650: 66 61 63 61 34 33 30 33 34 31 31 38 62 64 39 35  faca43034118bd95
1660: 35 66 63 35 32 63 62 31 66 33 35 35 63 36 64 66  5fc52cb1f355c6df
1670: 32 32 33 39 31 0a 0a 74 63 6c 74 65 73 74 3a 3a  22391..tcltest::
1680: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
1690: 2d 32 35 36 2d 32 2e 32 30 20 7b 53 48 41 35 31  -256-2.20 {SHA51
16a0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
16b0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
16c0: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
16d0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
16e0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
16f0: 20 66 37 35 31 66 34 32 38 61 30 61 66 30 62 39   f751f428a0af0b9
1700: 30 61 39 31 32 61 33 62 65 37 38 64 61 66 31 32  0a912a3be78daf12
1710: 61 37 36 35 62 34 33 5d 7d 20 5c 0a 09 2d 62 6f  a765b43]} \..-bo
1720: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
1730: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
1740: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
1750: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
1760: 2d 72 65 73 75 6c 74 20 35 65 30 66 38 61 38 37  -result 5e0f8a87
1770: 33 39 66 35 35 36 64 61 62 61 34 64 61 34 65 38  39f556daba4da4e8
1780: 36 31 66 33 39 64 31 65 64 61 61 65 63 65 30 32  61f39d1edaaece02
1790: 30 34 39 36 33 39 34 32 61 34 65 36 36 61 31 31  04963942a4e66a11
17a0: 65 63 31 66 63 66 31 33 0a 0a 74 63 6c 74 65 73  ec1fcf13..tcltes
17b0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
17c0: 35 31 32 2d 32 35 36 2d 32 2e 32 31 20 7b 53 48  512-256-2.21 {SH
17d0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
17e0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
17f0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
1800: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
1810: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
1820: 68 65 78 20 31 39 38 32 39 61 38 63 37 32 33 63  hex 19829a8c723c
1830: 35 38 63 61 39 35 38 30 63 64 66 30 64 61 64 32  58ca9580cdf0dad2
1840: 62 36 64 33 38 63 64 66 36 30 61 35 5d 7d 20 5c  b6d38cdf60a5]} \
1850: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
1860: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
1870: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
1880: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
1890: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 33 61 61  xact -result 3aa
18a0: 37 39 31 62 33 39 36 61 62 38 31 64 66 39 31 30  791b396ab81df910
18b0: 37 32 37 38 62 38 64 64 31 63 34 36 65 65 35 37  7278b8dd1c46ee57
18c0: 35 37 39 64 62 34 63 66 35 66 39 62 38 33 63 35  579db4cf5f9b83c5
18d0: 34 62 33 37 62 30 61 36 30 31 66 63 39 0a 0a 74  4b37b0a601fc9..t
18e0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
18f0: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 32  h_SHA512-256-2.2
1900: 32 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  2 {SHA512_256Sho
1910: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
1920: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
1930: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
1940: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
1950: 63 6f 64 65 20 68 65 78 20 61 65 34 33 31 33 32  code hex ae43132
1960: 61 63 33 30 64 65 31 38 30 63 32 34 64 61 64 62  ac30de180c24dadb
1970: 38 38 36 30 32 63 61 65 61 39 31 33 36 36 62 38  88602caea91366b8
1980: 65 35 31 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  e51]} \..-body {
1990: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
19a0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
19b0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
19c0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
19d0: 75 6c 74 20 62 39 66 30 31 34 31 62 61 30 30 36  ult b9f0141ba006
19e0: 61 33 39 38 33 39 37 32 64 62 61 61 35 65 32 62  a3983972dbaa5e2b
19f0: 66 65 37 31 35 32 65 33 38 31 31 30 65 30 32 34  fe7152e38110e024
1a00: 37 35 66 30 33 64 38 34 62 30 61 33 63 37 34 33  75f03d84b0a3c743
1a10: 63 64 61 39 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  cda9..tcltest::t
1a20: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
1a30: 32 35 36 2d 32 2e 32 33 20 7b 53 48 41 35 31 32  256-2.23 {SHA512
1a40: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
1a50: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
1a60: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
1a70: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
1a80: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
1a90: 38 64 32 37 38 32 61 37 38 34 33 61 61 34 37 37  8d2782a7843aa477
1aa0: 62 38 66 33 62 63 61 39 66 39 66 32 62 61 66 62  b8f3bca9f9f2bafb
1ab0: 35 38 31 33 64 62 34 63 38 63 34 33 5d 7d 20 5c  5813db4c8c43]} \
1ac0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
1ad0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
1ae0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
1af0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
1b00: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 35 34 32  xact -result 542
1b10: 34 62 33 31 39 38 39 30 33 31 38 30 39 62 35 66  4b31989031809b5f
1b20: 63 38 39 36 39 62 37 63 34 38 62 35 64 63 30 63  c8969b7c48b5dc0c
1b30: 32 33 33 66 63 33 34 66 66 62 35 62 32 32 33 63  233fc34ffb5b223c
1b40: 64 35 66 33 61 39 37 31 32 61 38 64 36 0a 0a 74  d5f3a9712a8d6..t
1b50: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
1b60: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 32  h_SHA512-256-2.2
1b70: 34 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  4 {SHA512_256Sho
1b80: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
1b90: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
1ba0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
1bb0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
1bc0: 63 6f 64 65 20 68 65 78 20 37 32 33 32 31 66 66  code hex 72321ff
1bd0: 66 64 37 39 31 38 64 34 66 35 63 65 61 31 30 35  fd7918d4f5cea105
1be0: 63 62 30 62 38 38 34 61 32 33 35 36 61 66 31 31  cb0b884a2356af11
1bf0: 65 62 65 31 32 36 37 5d 7d 20 5c 0a 09 2d 62 6f  ebe1267]} \..-bo
1c00: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
1c10: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
1c20: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
1c30: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
1c40: 2d 72 65 73 75 6c 74 20 31 37 65 33 66 62 33 33  -result 17e3fb33
1c50: 65 37 66 38 35 62 31 61 64 35 36 33 34 66 62 62  e7f85b1ad5634fbb
1c60: 63 65 39 62 35 66 39 39 30 39 66 33 33 32 39 66  ce9b5f9909f3329f
1c70: 34 64 37 34 61 63 61 64 33 64 64 30 39 34 31 63  4d74acad3dd0941c
1c80: 31 35 33 31 63 66 35 34 0a 0a 74 63 6c 74 65 73  1531cf54..tcltes
1c90: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
1ca0: 35 31 32 2d 32 35 36 2d 32 2e 32 35 20 7b 53 48  512-256-2.25 {SH
1cb0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
1cc0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
1cd0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
1ce0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
1cf0: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
1d00: 68 65 78 20 61 37 65 66 63 65 33 65 33 31 34 33  hex a7efce3e3143
1d10: 33 66 65 36 38 64 37 35 31 34 35 64 38 34 62 62  3fe68d75145d84bb
1d20: 30 32 39 36 30 66 62 39 36 38 38 37 31 61 33 63  02960fb968871a3c
1d30: 32 66 37 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  2f7f]} \..-body 
1d40: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1d50: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
1d60: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
1d70: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
1d80: 73 75 6c 74 20 38 66 66 30 62 65 30 36 30 31 65  sult 8ff0be0601e
1d90: 33 61 65 39 32 39 30 37 31 35 61 65 64 33 30 36  3ae9290715aed306
1da0: 33 34 62 31 33 62 38 65 62 36 66 33 63 38 62 33  34b13b8eb6f3c8b3
1db0: 32 39 34 65 65 39 62 31 66 63 33 34 32 63 32 36  294ee9b1fc342c26
1dc0: 30 33 31 33 65 0a 0a 74 63 6c 74 65 73 74 3a 3a  0313e..tcltest::
1dd0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
1de0: 2d 32 35 36 2d 32 2e 32 36 20 7b 53 48 41 35 31  -256-2.26 {SHA51
1df0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
1e00: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
1e10: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
1e20: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
1e30: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
1e40: 20 64 34 64 30 32 32 63 66 39 30 65 36 34 33 37   d4d022cf90e6437
1e50: 61 61 30 62 66 64 62 38 39 32 38 34 32 34 34 63  aa0bfdb89284244c
1e60: 31 36 64 65 65 30 62 34 38 38 62 63 33 34 35 61  16dee0b488bc345a
1e70: 62 36 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  b66]} \..-body {
1e80: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
1e90: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
1ea0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
1eb0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
1ec0: 75 6c 74 20 63 62 33 61 36 32 66 65 62 30 34 38  ult cb3a62feb048
1ed0: 34 62 65 30 66 66 39 62 35 36 65 61 39 32 34 31  4be0ff9b56ea9241
1ee0: 34 63 37 30 38 33 66 32 62 35 37 37 36 65 38 38  4c7083f2b5776e88
1ef0: 33 35 30 38 62 33 61 36 31 65 35 37 33 30 35 65  3508b3a61e57305e
1f00: 65 38 33 63 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  e83c..tcltest::t
1f10: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
1f20: 32 35 36 2d 32 2e 32 37 20 7b 53 48 41 35 31 32  256-2.27 {SHA512
1f30: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
1f40: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
1f50: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
1f60: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
1f70: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
1f80: 39 35 64 65 35 35 32 38 37 61 64 33 63 66 66 36  95de55287ad3cff6
1f90: 39 65 66 65 63 36 65 39 37 63 38 31 32 34 35 36  9efec6e97c812456
1fa0: 65 34 37 62 65 32 35 65 34 33 33 34 37 30 63 33  e47be25e433470c3
1fb0: 32 35 39 62 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  259b]} \..-body 
1fc0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
1fd0: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
1fe0: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
1ff0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
2000: 73 75 6c 74 20 34 31 63 37 30 32 37 64 31 36 65  sult 41c7027d16e
2010: 33 37 32 35 39 36 34 35 64 30 31 37 33 63 38 36  37259645d0173c86
2020: 31 34 31 66 33 38 64 38 30 38 65 39 65 32 37 64  141f38d808e9e27d
2030: 63 32 64 66 65 65 61 66 33 33 35 65 64 37 63 39  c2dfeeaf335ed7c9
2040: 39 34 39 30 63 0a 0a 74 63 6c 74 65 73 74 3a 3a  9490c..tcltest::
2050: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
2060: 2d 32 35 36 2d 32 2e 32 38 20 7b 53 48 41 35 31  -256-2.28 {SHA51
2070: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
2080: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
2090: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
20a0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
20b0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
20c0: 20 36 33 64 38 63 66 64 37 32 37 36 38 63 34 34   63d8cfd72768c44
20d0: 39 32 30 64 37 62 30 31 35 34 36 30 34 38 39 61  920d7b015460489a
20e0: 64 35 37 38 63 30 36 33 62 65 31 39 30 35 33 38  d578c063be190538
20f0: 38 39 63 62 38 30 39 5d 7d 20 5c 0a 09 2d 62 6f  89cb809]} \..-bo
2100: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
2110: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
2120: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
2130: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
2140: 2d 72 65 73 75 6c 74 20 38 37 36 65 35 39 63 38  -result 876e59c8
2150: 61 36 34 66 61 66 39 64 36 36 35 66 37 63 64 65  a64faf9d665f7cde
2160: 35 64 34 32 66 62 62 33 33 31 62 61 38 31 38 64  5d42fbb331ba818d
2170: 64 63 64 32 38 34 34 39 31 61 63 35 31 65 64 35  dcd284491ac51ed5
2180: 30 65 31 36 31 33 62 65 0a 0a 74 63 6c 74 65 73  0e1613be..tcltes
2190: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
21a0: 35 31 32 2d 32 35 36 2d 32 2e 32 39 20 7b 53 48  512-256-2.29 {SH
21b0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
21c0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
21d0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
21e0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
21f0: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
2200: 68 65 78 20 62 64 32 63 35 61 39 31 31 36 62 66  hex bd2c5a9116bf
2210: 30 64 37 35 62 33 34 39 38 63 65 32 65 65 34 62  0d75b3498ce2ee4b
2220: 61 32 38 36 38 65 30 36 65 30 63 30 34 37 65 63  a2868e06e0c047ec
2230: 34 30 62 31 38 31 35 34 30 38 39 36 5d 7d 20 5c  40b181540896]} \
2240: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
2250: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
2260: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
2270: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
2280: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 65 62 35  xact -result eb5
2290: 33 37 64 66 30 34 64 35 31 32 63 32 66 63 38 34  37df04d512c2fc84
22a0: 34 30 32 30 66 38 66 66 33 32 65 30 34 33 63 30  4020f8ff32e043c0
22b0: 34 36 31 34 62 38 38 63 65 61 30 61 34 65 30 35  4614b88cea0a4e05
22c0: 65 30 66 66 33 32 63 63 66 66 61 30 36 0a 0a 74  e0ff32ccffa06..t
22d0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
22e0: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 33  h_SHA512-256-2.3
22f0: 30 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  0 {SHA512_256Sho
2300: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
2310: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
2320: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
2330: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
2340: 63 6f 64 65 20 68 65 78 20 33 37 61 34 35 36 34  code hex 37a4564
2350: 33 61 32 38 30 61 39 64 31 61 31 63 38 33 65 30  3a280a9d1a1c83e0
2360: 39 34 65 30 31 31 37 33 61 63 64 38 61 61 31 36  94e01173acd8aa16
2370: 38 32 35 32 35 32 64 65 65 34 65 62 33 61 33 36  825252dee4eb3a36
2380: 37 38 63 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  78c]} \..-body {
2390: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
23a0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
23b0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
23c0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
23d0: 75 6c 74 20 38 30 62 63 61 35 62 61 33 65 36 33  ult 80bca5ba3e63
23e0: 32 65 38 62 61 64 31 35 38 39 63 64 30 32 64 37  2e8bad1589cd02d7
23f0: 35 64 37 64 33 65 36 61 31 61 61 39 66 66 36 34  5d7d3e6a1aa9ff64
2400: 63 32 62 39 38 32 64 35 37 32 66 33 64 30 30 64  c2b982d572f3d00d
2410: 39 34 37 64 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  947d..tcltest::t
2420: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
2430: 32 35 36 2d 32 2e 33 31 20 7b 53 48 41 35 31 32  256-2.31 {SHA512
2440: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
2450: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
2460: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
2470: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
2480: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
2490: 61 37 62 65 38 34 30 31 34 65 38 64 30 39 64 38  a7be84014e8d09d8
24a0: 64 35 31 36 35 37 37 38 39 63 30 37 66 32 39 66  d51657789c07f29f
24b0: 37 64 61 34 39 63 35 62 35 63 30 66 38 33 36 66  7da49c5b5c0f836f
24c0: 66 66 63 36 62 61 66 38 32 30 36 64 5d 7d 20 5c  ffc6baf8206d]} \
24d0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
24e0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
24f0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
2500: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
2510: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 63 35 37  xact -result c57
2520: 35 62 32 62 61 30 37 35 61 36 33 63 34 35 34 30  5b2ba075a63c4540
2530: 30 38 34 34 39 33 36 33 36 64 65 61 62 65 39 62  084493636deabe9b
2540: 38 64 66 36 31 39 35 32 66 30 37 31 35 35 39 33  8df61952f0715593
2550: 39 34 64 34 64 61 62 38 31 30 65 30 38 0a 0a 74  94d4dab810e08..t
2560: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
2570: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 33  h_SHA512-256-2.3
2580: 32 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  2 {SHA512_256Sho
2590: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
25a0: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
25b0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
25c0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
25d0: 63 6f 64 65 20 68 65 78 20 39 33 63 34 35 66 62  code hex 93c45fb
25e0: 39 31 64 63 62 61 34 32 30 38 32 30 62 64 33 66  91dcba420820bd3f
25f0: 65 65 33 33 34 62 34 38 66 64 66 37 62 37 33 64  ee334b48fdf7b73d
2600: 37 62 34 33 31 65 62 64 62 61 37 39 62 32 33 31  7b431ebdba79b231
2610: 30 61 37 66 65 31 39 5d 7d 20 5c 0a 09 2d 62 6f  0a7fe19]} \..-bo
2620: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
2630: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
2640: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
2650: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
2660: 2d 72 65 73 75 6c 74 20 39 38 31 35 31 38 33 39  -result 98151839
2670: 62 38 66 33 35 37 34 65 30 61 30 62 39 66 31 39  b8f3574e0a0b9f19
2680: 65 38 34 61 66 65 62 31 63 36 32 30 66 62 32 64  e84afeb1c620fb2d
2690: 63 65 66 32 34 38 31 34 39 63 30 30 36 31 33 32  cef248149c006132
26a0: 33 33 33 33 37 39 39 37 0a 0a 74 63 6c 74 65 73  33337997..tcltes
26b0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
26c0: 35 31 32 2d 32 35 36 2d 32 2e 33 33 20 7b 53 48  512-256-2.33 {SH
26d0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
26e0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
26f0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
2700: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
2710: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
2720: 68 65 78 20 31 62 37 37 63 38 64 63 66 64 32 66  hex 1b77c8dcfd2f
2730: 63 34 62 35 34 36 31 37 30 35 34 66 61 36 62 31  c4b54617054fa6b1
2740: 34 64 36 65 39 64 30 39 63 65 39 31 38 35 61 33  4d6e9d09ce9185a3
2750: 34 61 37 66 64 32 62 32 37 39 32 33 39 39 38 61  4a7fd2b27923998a
2760: 61 62 39 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  ab99]} \..-body 
2770: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
2780: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
2790: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
27a0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
27b0: 73 75 6c 74 20 36 38 33 62 34 38 36 38 36 31 65  sult 683b486861e
27c0: 35 39 38 64 61 62 62 61 37 34 30 61 63 39 31 39  598dabba740ac919
27d0: 35 32 32 63 66 33 62 36 30 39 63 31 38 32 30 35  522cf3b609c18205
27e0: 62 36 62 65 63 61 34 63 63 62 65 36 62 30 66 36  b6beca4ccbe6b0f6
27f0: 64 63 36 64 62 0a 0a 74 63 6c 74 65 73 74 3a 3a  dc6db..tcltest::
2800: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
2810: 2d 32 35 36 2d 32 2e 33 34 20 7b 53 48 41 35 31  -256-2.34 {SHA51
2820: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
2830: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
2840: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
2850: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
2860: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
2870: 20 38 64 35 63 62 39 33 33 34 30 31 62 33 35 64   8d5cb933401b35d
2880: 63 33 34 62 31 35 64 65 30 66 35 34 37 34 64 33  c34b15de0f5474d3
2890: 63 39 62 36 61 65 62 39 30 35 37 35 33 31 62 37  c9b6aeb9057531b7
28a0: 66 34 62 36 62 33 32 35 39 39 66 30 65 61 65 66  f4b6b32599f0eaef
28b0: 37 64 31 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  7d1]} \..-body {
28c0: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
28d0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
28e0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
28f0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
2900: 75 6c 74 20 31 36 63 35 32 33 64 32 62 38 38 33  ult 16c523d2b883
2910: 30 65 61 39 30 64 64 36 62 36 62 31 63 61 34 39  0ea90dd6b6b1ca49
2920: 65 34 62 35 31 36 37 33 30 30 36 63 61 33 30 66  e4b51673006ca30f
2930: 66 34 37 61 34 64 63 64 34 65 37 62 33 35 61 64  f47a4dcd4e7b35ad
2940: 34 66 36 32 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  4f62..tcltest::t
2950: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
2960: 32 35 36 2d 32 2e 33 35 20 7b 53 48 41 35 31 32  256-2.35 {SHA512
2970: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
2980: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
2990: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
29a0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
29b0: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
29c0: 64 36 61 36 36 64 36 36 62 66 35 34 36 62 39 37  d6a66d66bf546b97
29d0: 65 62 64 30 33 33 63 62 65 64 33 35 30 34 39 33  ebd033cbed350493
29e0: 31 65 34 35 32 39 36 33 33 34 61 65 32 38 66 34  1e45296334ae28f4
29f0: 31 37 38 64 33 64 65 36 66 30 33 31 30 36 61 61  178d3de6f03106aa
2a00: 38 32 32 31 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  8221]} \..-body 
2a10: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
2a20: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
2a30: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
2a40: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
2a50: 73 75 6c 74 20 33 66 36 30 37 61 35 63 37 61 65  sult 3f607a5c7ae
2a60: 66 31 33 66 65 39 38 64 63 39 66 36 62 36 61 34  f13fe98dc9f6b6a4
2a70: 62 35 32 39 37 39 65 37 63 36 38 37 38 31 65 66  b52979e7c68781ef
2a80: 35 65 31 32 66 36 39 64 65 64 32 30 63 34 39 37  5e12f69ded20c497
2a90: 65 64 61 34 37 0a 0a 74 63 6c 74 65 73 74 3a 3a  eda47..tcltest::
2aa0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
2ab0: 2d 32 35 36 2d 32 2e 33 36 20 7b 53 48 41 35 31  -256-2.36 {SHA51
2ac0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
2ad0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
2ae0: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
2af0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
2b00: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
2b10: 20 63 65 38 38 35 66 66 62 33 34 30 66 64 37 61   ce885ffb340fd7a
2b20: 34 33 65 32 31 35 30 36 39 39 62 33 66 39 38 65  43e2150699b3f98e
2b30: 66 33 33 34 32 37 30 30 33 36 37 39 34 65 63 37  f334270036794ec7
2b40: 35 39 61 61 30 31 64 32 39 66 30 38 37 65 64 36  59aa01d29f087ed6
2b50: 62 35 35 31 35 34 39 5d 7d 20 5c 0a 09 2d 62 6f  b551549]} \..-bo
2b60: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
2b70: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
2b80: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
2b90: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
2ba0: 2d 72 65 73 75 6c 74 20 31 30 37 31 66 38 62 35  -result 1071f8b5
2bb0: 37 33 32 38 62 37 36 37 32 30 39 63 31 35 61 34  7328b767209c15a4
2bc0: 33 65 31 64 38 34 35 32 37 36 33 38 36 35 61 63  3e1d8452763865ac
2bd0: 39 33 64 35 38 66 39 33 63 38 34 30 38 37 36 63  93d58f93c840876c
2be0: 31 61 35 62 32 31 65 30 0a 0a 74 63 6c 74 65 73  1a5b21e0..tcltes
2bf0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
2c00: 35 31 32 2d 32 35 36 2d 32 2e 33 37 20 7b 53 48  512-256-2.37 {SH
2c10: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
2c20: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
2c30: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
2c40: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
2c50: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
2c60: 68 65 78 20 66 32 63 32 38 64 36 38 35 34 38 36  hex f2c28d685486
2c70: 62 65 39 39 61 66 65 38 37 62 66 39 30 63 39 66  be99afe87bf90c9f
2c80: 33 30 39 33 35 37 62 34 34 66 36 30 62 36 38 38  309357b44f60b688
2c90: 34 34 36 61 31 39 31 38 61 61 33 32 31 31 38 30  446a1918aa321180
2ca0: 62 66 34 66 65 35 62 65 31 35 35 39 5d 7d 20 5c  bf4fe5be1559]} \
2cb0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
2cc0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
2cd0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
2ce0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
2cf0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 33 35 62  xact -result 35b
2d00: 64 31 39 32 63 63 31 30 66 61 32 34 62 64 37 39  d192cc10fa24bd79
2d10: 35 34 65 30 65 30 65 65 32 30 63 30 39 34 34 30  54e0e0ee20c09440
2d20: 65 66 63 36 34 31 36 65 39 34 63 61 32 35 61 34  efc6416e94ca25a4
2d30: 37 65 37 36 35 62 66 33 32 65 66 31 64 0a 0a 74  7e765bf32ef1d..t
2d40: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
2d50: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 33  h_SHA512-256-2.3
2d60: 38 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  8 {SHA512_256Sho
2d70: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
2d80: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
2d90: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
2da0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
2db0: 63 6f 64 65 20 68 65 78 20 39 36 65 38 65 33 30  code hex 96e8e30
2dc0: 63 37 35 66 65 63 38 32 62 65 66 34 64 65 37 65  c75fec82bef4de7e
2dd0: 63 38 65 30 35 33 65 61 36 36 31 63 62 37 32 62  c8e053ea661cb72b
2de0: 63 34 65 62 39 63 31 63 31 61 61 61 36 33 38 64  c4eb9c1c1aaa638d
2df0: 66 30 37 61 38 32 36 37 39 34 64 64 38 64 30 30  f07a826794dd8d00
2e00: 66 30 64 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  f0d]} \..-body {
2e10: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
2e20: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
2e30: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
2e40: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
2e50: 75 6c 74 20 62 35 35 36 37 39 38 66 37 36 65 66  ult b556798f76ef
2e60: 37 34 32 63 63 31 65 62 35 64 31 30 37 33 32 61  742cc1eb5d10732a
2e70: 39 32 35 66 64 38 32 30 38 62 34 66 30 37 39 61  925fd8208b4f079a
2e80: 36 63 30 65 31 66 65 30 64 39 32 66 64 38 37 35  6c0e1fe0d92fd875
2e90: 36 34 61 35 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  64a5..tcltest::t
2ea0: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
2eb0: 32 35 36 2d 32 2e 33 39 20 7b 53 48 41 35 31 32  256-2.39 {SHA512
2ec0: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
2ed0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
2ee0: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
2ef0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
2f00: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
2f10: 32 39 31 35 63 39 62 35 38 38 33 35 66 30 65 63  2915c9b58835f0ec
2f20: 31 65 30 31 31 66 65 35 65 36 64 62 34 30 61 65  1e011fe5e6db40ae
2f30: 33 65 66 33 64 38 39 30 65 32 36 38 39 33 34 64  3ef3d890e268934d
2f40: 31 62 62 30 32 34 61 36 33 34 33 39 34 62 32 30  1bb024a634394b20
2f50: 32 65 35 30 33 37 30 38 62 35 34 33 5d 7d 20 5c  2e503708b543]} \
2f60: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
2f70: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
2f80: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
2f90: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
2fa0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 33 38 36  xact -result 386
2fb0: 38 38 38 35 62 34 65 33 61 65 32 31 37 32 33 30  8885b4e3ae217230
2fc0: 35 61 63 61 61 64 32 35 66 66 65 39 30 39 34 63  5acaad25ffe9094c
2fd0: 37 32 33 34 38 65 65 39 64 37 62 30 61 63 63 32  72348ee9d7b0acc2
2fe0: 30 30 32 39 65 32 36 61 37 64 30 31 33 0a 0a 74  0029e26a7d013..t
2ff0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
3000: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 34  h_SHA512-256-2.4
3010: 30 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  0 {SHA512_256Sho
3020: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
3030: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
3040: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
3050: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
3060: 63 6f 64 65 20 68 65 78 20 36 37 33 63 63 63 65  code hex 673ccce
3070: 32 38 30 37 63 62 34 37 36 32 32 62 37 65 30 39  2807cb47622b7e09
3080: 65 65 38 65 66 64 38 31 32 62 34 34 66 61 65 65  ee8efd812b44faee
3090: 66 34 33 36 63 33 30 31 35 30 35 63 63 36 33 63  f436c301505cc63c
30a0: 64 32 63 61 35 32 64 62 30 30 33 65 36 35 32 63  d2ca52db003e652c
30b0: 34 38 32 37 62 61 32 5d 7d 20 5c 0a 09 2d 62 6f  4827ba2]} \..-bo
30c0: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
30d0: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
30e0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
30f0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
3100: 2d 72 65 73 75 6c 74 20 63 37 37 35 32 30 39 38  -result c7752098
3110: 63 33 62 35 66 63 65 61 39 38 34 32 35 61 31 38  c3b5fcea98425a18
3120: 30 61 35 63 39 36 31 34 36 62 34 34 33 61 61 38  0a5c96146b443aa8
3130: 64 37 36 61 30 63 37 39 66 64 63 66 33 37 31 36  d76a0c79fdcf3716
3140: 62 64 64 32 62 39 30 36 0a 0a 74 63 6c 74 65 73  bdd2b906..tcltes
3150: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
3160: 35 31 32 2d 32 35 36 2d 32 2e 34 31 20 7b 53 48  512-256-2.41 {SH
3170: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
3180: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
3190: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
31a0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
31b0: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
31c0: 68 65 78 20 63 31 61 36 61 63 36 39 66 34 38 30  hex c1a6ac69f480
31d0: 30 38 64 62 35 30 39 35 38 36 36 35 64 66 39 64  08db50958665df9d
31e0: 39 31 31 62 37 38 64 66 65 35 31 39 64 39 66 33  911b78dfe519d9f3
31f0: 34 33 36 36 66 36 63 64 36 39 31 66 39 30 66 37  4366f6cd691f90f7
3200: 34 31 64 31 30 38 31 65 35 39 32 36 37 36 64 30  41d1081e592676d0
3210: 39 33 63 34 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  93c4]} \..-body 
3220: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
3230: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
3240: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
3250: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
3260: 73 75 6c 74 20 62 64 31 38 61 66 35 62 32 62 32  sult bd18af5b2b2
3270: 34 64 37 36 39 65 61 64 65 35 32 35 63 38 66 63  4d769eade525c8fc
3280: 64 35 33 35 32 31 32 61 62 66 38 65 35 64 66 31  d535212abf8e5df1
3290: 38 30 64 37 66 33 65 33 64 30 32 33 30 33 33 66  80d7f3e3d023033f
32a0: 63 65 31 39 32 0a 0a 74 63 6c 74 65 73 74 3a 3a  ce192..tcltest::
32b0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
32c0: 2d 32 35 36 2d 32 2e 34 32 20 7b 53 48 41 35 31  -256-2.42 {SHA51
32d0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
32e0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
32f0: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
3300: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
3310: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
3320: 20 33 63 64 31 32 33 61 65 37 62 66 64 32 62 33   3cd123ae7bfd2b3
3330: 31 36 31 33 65 63 63 35 65 65 38 62 38 36 65 38  1613ecc5ee8b86e8
3340: 65 35 39 61 35 32 66 66 34 36 61 65 62 32 62 63  e59a52ff46aeb2bc
3350: 66 61 39 66 34 66 62 65 34 31 65 62 61 37 62 32  fa9f4fbe41eba7b2
3360: 63 32 63 32 31 64 30 63 61 62 39 38 61 61 61 33  c2c21d0cab98aaa3
3370: 66 38 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  f8f]} \..-body {
3380: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
3390: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
33a0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
33b0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
33c0: 75 6c 74 20 37 63 65 31 39 37 31 34 65 31 64 33  ult 7ce19714e1d3
33d0: 62 65 36 38 30 64 64 65 30 65 39 31 39 64 39 30  be680dde0e919d90
33e0: 31 35 37 61 61 62 63 61 37 36 34 33 39 64 66 38  157aabca76439df8
33f0: 66 30 39 37 39 64 31 39 62 33 61 36 38 36 64 66  f0979d19b3a686df
3400: 36 62 32 38 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  6b28..tcltest::t
3410: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
3420: 32 35 36 2d 32 2e 34 33 20 7b 53 48 41 35 31 32  256-2.43 {SHA512
3430: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
3440: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
3450: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
3460: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
3470: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
3480: 61 35 32 64 64 65 35 61 65 61 31 66 30 34 33 39  a52dde5aea1f0439
3490: 39 63 35 64 39 31 66 62 35 63 34 65 36 32 64 61  9c5d91fb5c4e62da
34a0: 30 36 62 37 33 61 35 64 39 62 64 63 35 61 39 32  06b73a5d9bdc5a92
34b0: 37 66 65 38 35 32 39 38 65 35 38 65 31 36 36 31  7fe85298e58e1661
34c0: 38 37 66 31 35 34 62 36 39 61 63 31 30 35 37 63  87f154b69ac1057c
34d0: 30 31 61 37 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  01a7]} \..-body 
34e0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
34f0: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
3500: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
3510: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
3520: 73 75 6c 74 20 30 33 35 64 33 36 32 61 34 32 36  sult 035d362a426
3530: 35 30 33 31 34 33 34 63 33 61 61 31 35 33 61 62  5031434c3aa153ab
3540: 34 61 65 66 36 62 30 30 64 35 31 37 36 32 32 37  4aef6b00d5176227
3550: 31 39 37 34 33 30 62 62 36 32 38 38 34 61 30 38  197430bb62884a08
3560: 35 63 35 66 65 0a 0a 74 63 6c 74 65 73 74 3a 3a  5c5fe..tcltest::
3570: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
3580: 2d 32 35 36 2d 32 2e 34 34 20 7b 53 48 41 35 31  -256-2.44 {SHA51
3590: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
35a0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
35b0: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
35c0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
35d0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
35e0: 20 33 38 31 39 30 36 38 30 38 33 39 34 63 35 66   381906808394c5f
35f0: 39 33 38 35 61 30 36 62 63 39 62 36 65 35 32 38  9385a06bc9b6e528
3600: 30 39 35 65 36 66 36 61 63 30 37 66 30 66 63 37  095e6f6ac07f0fc7
3610: 35 35 65 31 33 35 39 34 37 36 38 62 37 36 38 36  55e13594768b7686
3620: 37 36 36 65 38 39 37 64 36 36 32 35 37 36 31 37  766e897d66257617
3630: 38 63 32 61 31 37 63 5d 7d 20 5c 0a 09 2d 62 6f  8c2a17c]} \..-bo
3640: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
3650: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
3660: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
3670: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
3680: 2d 72 65 73 75 6c 74 20 32 32 65 61 35 32 39 38  -result 22ea5298
3690: 61 66 32 61 61 33 31 31 61 35 62 35 33 66 38 62  af2aa311a5b53f8b
36a0: 32 38 33 38 64 66 63 30 30 38 61 65 34 37 30 62  2838dfc008ae470b
36b0: 66 39 36 64 32 62 62 36 37 39 34 37 33 35 65 61  f96d2bb6794735ea
36c0: 37 32 31 30 38 38 37 39 0a 0a 74 63 6c 74 65 73  72108879..tcltes
36d0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
36e0: 35 31 32 2d 32 35 36 2d 32 2e 34 35 20 7b 53 48  512-256-2.45 {SH
36f0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
3700: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
3710: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
3720: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
3730: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
3740: 68 65 78 20 61 30 34 61 35 64 35 64 36 31 33 64  hex a04a5d5d613d
3750: 32 33 37 30 33 61 62 38 64 64 30 30 39 33 64 33  23703ab8dd0093d3
3760: 35 34 38 32 39 63 35 34 34 39 38 32 33 62 63 66  54829c5449823bcf
3770: 30 39 65 62 34 39 31 32 34 31 38 33 66 64 63 30  09eb49124183fdc0
3780: 31 34 62 35 61 38 33 62 36 62 39 33 61 33 63 37  14b5a83b6b93a3c7
3790: 38 63 31 62 38 36 65 64 65 66 62 39 5d 7d 20 5c  8c1b86edefb9]} \
37a0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
37b0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
37c0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
37d0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
37e0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 38 61 65  xact -result 8ae
37f0: 36 38 38 64 35 65 39 64 30 64 65 39 64 65 38 33  688d5e9d0de9de83
3800: 34 62 65 66 65 35 63 30 38 32 39 36 34 34 64 65  4befe5c0829644de
3810: 66 39 63 35 64 61 37 31 61 65 30 64 61 34 66 37  f9c5da71ae0da4f7
3820: 39 64 31 38 39 30 34 38 37 65 32 35 62 0a 0a 74  9d1890487e25b..t
3830: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
3840: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 34  h_SHA512-256-2.4
3850: 36 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  6 {SHA512_256Sho
3860: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
3870: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
3880: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
3890: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
38a0: 63 6f 64 65 20 68 65 78 20 31 37 35 65 31 30 35  code hex 175e105
38b0: 39 39 33 31 61 39 34 65 36 65 33 37 65 61 35 33  9931a94e6e37ea53
38c0: 63 38 37 65 33 63 37 31 64 34 36 62 65 32 66 34  c87e3c71d46be2f4
38d0: 31 30 62 32 31 33 31 66 38 66 32 38 35 66 38 31  10b2131f8f285f81
38e0: 30 61 33 63 36 37 39 66 39 64 66 36 66 61 39 32  0a3c679f9df6fa92
38f0: 37 35 38 33 38 65 65 62 38 63 36 63 64 64 34 35  75838eeb8c6cdd45
3900: 37 33 37 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  737]} \..-body {
3910: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
3920: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
3930: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
3940: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
3950: 75 6c 74 20 35 36 34 31 30 33 36 65 66 36 32 32  ult 5641036ef622
3960: 31 65 30 38 65 33 63 37 39 35 62 32 61 64 35 36  1e08e3c795b2ad56
3970: 36 61 61 63 39 61 36 39 66 38 35 64 66 31 61 38  6aac9a69f85df1a8
3980: 64 33 35 62 33 65 61 32 62 37 38 30 63 65 64 33  d35b3ea2b780ced3
3990: 33 34 32 31 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  3421..tcltest::t
39a0: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
39b0: 32 35 36 2d 32 2e 34 37 20 7b 53 48 41 35 31 32  256-2.47 {SHA512
39c0: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
39d0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
39e0: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
39f0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
3a00: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
3a10: 33 63 65 33 38 61 32 65 32 38 37 66 64 61 31 33  3ce38a2e287fda13
3a20: 33 38 34 63 62 33 30 36 32 33 37 65 38 63 37 34  384cb306237e8c74
3a30: 33 35 37 38 34 38 38 31 38 64 33 34 30 61 39 34  357848818d340a94
3a40: 38 38 65 36 34 61 31 35 37 64 64 63 32 39 37 35  88e64a157ddc2975
3a50: 61 62 61 39 30 31 36 66 36 66 38 32 34 31 38 65  aba9016f6f82418e
3a60: 62 62 65 38 37 38 66 30 63 33 38 38 5d 7d 20 5c  bbe878f0c388]} \
3a70: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
3a80: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
3a90: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
3aa0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
3ab0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 62 63 32  xact -result bc2
3ac0: 30 34 31 30 32 39 62 31 36 38 39 35 61 66 62 31  041029b16895afb1
3ad0: 66 35 39 66 37 32 38 30 66 38 61 38 66 30 39 62  f59f7280f8a8f09b
3ae0: 65 35 64 64 32 34 31 63 36 37 35 33 34 33 66 37  e5dd241c675343f7
3af0: 61 64 38 64 37 35 62 38 33 34 62 37 35 0a 0a 74  ad8d75b834b75..t
3b00: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
3b10: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 34  h_SHA512-256-2.4
3b20: 38 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  8 {SHA512_256Sho
3b30: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
3b40: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
3b50: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
3b60: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
3b70: 63 6f 64 65 20 68 65 78 20 39 36 32 38 61 31 39  code hex 9628a19
3b80: 35 63 61 36 65 37 30 38 63 66 63 63 66 39 66 34  5ca6e708cfccf9f4
3b90: 33 34 64 62 65 36 63 35 31 30 35 33 32 37 66 30  34dbe6c5105327f0
3ba0: 66 32 38 65 65 31 63 66 64 34 61 30 36 39 64 36  f28ee1cfd4a069d6
3bb0: 32 61 33 39 66 32 30 33 33 36 36 66 36 37 64 33  2a39f203366f67d3
3bc0: 36 34 66 61 34 37 62 36 37 37 62 32 30 34 33 39  64fa47b677b20439
3bd0: 62 37 64 38 35 31 34 5d 7d 20 5c 0a 09 2d 62 6f  b7d8514]} \..-bo
3be0: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
3bf0: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
3c00: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
3c10: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
3c20: 2d 72 65 73 75 6c 74 20 64 66 36 64 38 39 31 64  -result df6d891d
3c30: 32 63 32 30 34 33 35 34 62 38 32 37 66 35 33 30  2c204354b827f530
3c40: 63 35 34 36 35 32 39 34 30 63 62 34 38 33 66 35  c54652940cb483f5
3c50: 38 64 36 62 34 33 33 39 37 33 37 35 32 63 31 66  8d6b433973752c1f
3c60: 64 31 64 32 66 38 34 64 0a 0a 74 63 6c 74 65 73  d1d2f84d..tcltes
3c70: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
3c80: 35 31 32 2d 32 35 36 2d 32 2e 34 39 20 7b 53 48  512-256-2.49 {SH
3c90: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
3ca0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
3cb0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
3cc0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
3cd0: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
3ce0: 68 65 78 20 64 38 35 62 64 62 32 64 66 35 64 37  hex d85bdb2df5d7
3cf0: 32 66 32 31 39 30 65 34 62 33 64 34 66 61 35 62  2f2190e4b3d4fa5b
3d00: 36 64 38 34 38 61 30 38 38 62 66 63 66 30 61 66  6d848a088bfcf0af
3d10: 35 32 62 38 63 36 34 63 35 38 34 61 36 38 39 66  52b8c64c584a689f
3d20: 66 33 66 63 30 36 65 38 66 31 62 37 66 37 66 30  f3fc06e8f1b7f7f0
3d30: 38 39 32 33 35 30 34 38 39 32 31 30 62 36 64 35  892350489210b6d5
3d40: 66 33 31 35 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  f315]} \..-body 
3d50: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
3d60: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
3d70: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
3d80: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
3d90: 73 75 6c 74 20 65 62 32 36 38 31 65 64 66 39 32  sult eb2681edf92
3da0: 61 31 66 35 35 35 39 64 31 30 31 37 37 31 31 30  a1f5559d10177110
3db0: 61 64 32 31 66 66 64 33 66 63 31 32 39 36 65 33  ad21ffd3fc1296e3
3dc0: 63 63 38 33 65 63 65 33 32 65 34 32 66 35 36 65  cc83ece32e42f56e
3dd0: 66 37 64 65 64 0a 0a 74 63 6c 74 65 73 74 3a 3a  f7ded..tcltest::
3de0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
3df0: 2d 32 35 36 2d 32 2e 35 30 20 7b 53 48 41 35 31  -256-2.50 {SHA51
3e00: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
3e10: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
3e20: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
3e30: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
3e40: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
3e50: 20 64 30 37 38 61 35 64 63 36 65 63 35 38 39 31   d078a5dc6ec5891
3e60: 31 37 31 31 39 62 61 33 63 66 62 39 62 31 31 64  17119ba3cfb9b11d
3e70: 65 35 37 66 63 63 62 35 36 33 62 61 64 65 38 62  e57fccb563bade8b
3e80: 33 34 61 34 66 64 32 63 37 64 64 36 62 33 66 37  34a4fd2c7dd6b3f7
3e90: 63 30 33 36 33 35 38 36 63 63 37 61 38 31 62 61  c0363586cc7a81ba
3ea0: 62 62 31 32 65 66 65 65 37 38 66 31 64 64 35 62  bb12efee78f1dd5b
3eb0: 34 37 34 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  474]} \..-body {
3ec0: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
3ed0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
3ee0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
3ef0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
3f00: 75 6c 74 20 30 66 63 37 30 34 36 66 30 32 64 30  ult 0fc7046f02d0
3f10: 37 30 36 34 32 64 38 32 31 63 37 34 36 37 38 35  70642d821c746785
3f20: 66 32 30 39 62 62 33 33 32 36 39 30 62 62 33 34  f209bb332690bb34
3f30: 33 33 35 65 36 63 36 34 32 38 30 35 31 37 39 33  335e6c6428051793
3f40: 65 31 61 39 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  e1a9..tcltest::t
3f50: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
3f60: 32 35 36 2d 32 2e 35 31 20 7b 53 48 41 35 31 32  256-2.51 {SHA512
3f70: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
3f80: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
3f90: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
3fa0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
3fb0: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
3fc0: 62 37 61 65 36 30 33 37 64 39 62 34 35 32 39 39  b7ae6037d9b45299
3fd0: 34 66 62 37 35 35 61 61 30 63 66 35 37 66 62 63  4fb755aa0cf57fbc
3fe0: 36 38 37 32 39 38 30 36 30 61 34 37 31 66 39 62  687298060a471f9b
3ff0: 30 63 33 64 38 65 39 64 35 61 39 61 65 30 61 64  0c3d8e9d5a9ae0ad
4000: 35 62 33 62 34 66 61 37 64 34 65 33 36 32 38 63  5b3b4fa7d4e3628c
4010: 30 39 64 33 32 37 63 30 32 35 39 62 62 64 37 36  09d327c0259bbd76
4020: 64 62 32 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  db2f]} \..-body 
4030: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
4040: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
4050: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
4060: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
4070: 73 75 6c 74 20 63 64 31 30 34 30 61 30 64 39 34  sult cd1040a0d94
4080: 33 38 32 61 36 34 34 36 61 36 39 31 63 30 61 30  382a6446a691c0a0
4090: 37 63 34 66 36 34 33 65 64 63 31 31 65 33 31 30  7c4f643edc11e310
40a0: 33 65 33 34 33 36 30 38 36 30 33 62 35 62 64 31  3e343608603b5bd1
40b0: 30 31 62 65 33 0a 0a 74 63 6c 74 65 73 74 3a 3a  01be3..tcltest::
40c0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
40d0: 2d 32 35 36 2d 32 2e 35 32 20 7b 53 48 41 35 31  -256-2.52 {SHA51
40e0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
40f0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
4100: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
4110: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
4120: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
4130: 20 36 32 66 30 31 36 64 66 63 33 38 61 34 63 37   62f016dfc38a4c7
4140: 30 62 37 66 39 35 64 36 36 39 65 32 64 34 37 35  0b7f95d669e2d475
4150: 37 30 34 39 30 39 65 31 33 63 39 39 37 64 33 64  704909e13c997d3d
4160: 61 37 65 39 36 62 36 63 64 31 31 64 38 33 61 61  a7e96b6cd11d83aa
4170: 33 61 64 65 66 37 38 39 64 64 63 34 39 66 37 62  3adef789ddc49f7b
4180: 63 65 66 30 34 32 62 33 31 39 66 30 33 33 62 31  cef042b319f033b1
4190: 35 66 34 34 32 30 38 5d 7d 20 5c 0a 09 2d 62 6f  5f44208]} \..-bo
41a0: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
41b0: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
41c0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
41d0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
41e0: 2d 72 65 73 75 6c 74 20 38 61 65 65 35 30 35 37  -result 8aee5057
41f0: 32 62 36 62 31 35 35 63 66 34 30 64 36 65 64 36  2b6b155cf40d6ed6
4200: 63 37 33 38 62 64 62 63 61 66 66 32 61 64 65 30  c738bdbcaff2ade0
4210: 39 62 64 34 64 38 62 63 39 63 32 66 39 61 36 37  9bd4d8bc9c2f9a67
4220: 33 33 37 33 63 34 34 66 0a 0a 74 63 6c 74 65 73  3373c44f..tcltes
4230: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
4240: 35 31 32 2d 32 35 36 2d 32 2e 35 33 20 7b 53 48  512-256-2.53 {SH
4250: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
4260: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
4270: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
4280: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
4290: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
42a0: 68 65 78 20 62 65 38 39 30 38 39 38 62 30 33 66  hex be890898b03f
42b0: 37 63 62 35 32 61 39 64 34 33 30 30 61 63 32 65  7cb52a9d4300ac2e
42c0: 38 61 38 30 37 31 35 31 30 32 62 31 35 33 38 66  8a80715102b1538f
42d0: 65 33 37 63 65 39 32 63 33 31 36 35 66 32 66 63  e37ce92c3165f2fc
42e0: 33 65 30 37 66 36 37 38 37 30 62 64 32 61 31 31  3e07f67870bd2a11
42f0: 34 34 61 33 39 35 63 35 39 33 62 64 37 31 65 66  44a395c593bd71ef
4300: 31 34 37 35 64 34 36 33 32 33 34 62 5d 7d 20 5c  1475d463234b]} \
4310: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
4320: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
4330: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
4340: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
4350: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 61 64 31  xact -result ad1
4360: 35 36 66 32 66 34 31 36 63 63 65 65 62 39 61 36  56f2f416cceeb9a6
4370: 61 32 35 32 30 65 37 39 62 62 61 35 32 39 35 62  a2520e79bba5295b
4380: 35 38 34 63 35 39 36 30 36 66 62 64 66 64 61 36  584c59606fbdfda6
4390: 65 64 31 33 65 64 39 64 39 39 61 66 30 0a 0a 74  ed13ed9d99af0..t
43a0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
43b0: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 35  h_SHA512-256-2.5
43c0: 34 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  4 {SHA512_256Sho
43d0: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
43e0: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
43f0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
4400: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
4410: 63 6f 64 65 20 68 65 78 20 63 31 32 31 34 39 65  code hex c12149e
4420: 65 64 34 31 31 33 65 66 61 33 31 62 62 33 63 34  ed4113efa31bb3c4
4430: 62 39 61 61 39 33 33 36 33 39 61 30 65 31 63 61  b9aa933639a0e1ca
4440: 37 31 36 30 36 32 65 62 65 32 35 31 65 35 35 33  716062ebe251e553
4450: 61 32 32 31 37 65 30 37 61 66 66 65 37 37 39 63  a2217e07affe779c
4460: 65 64 62 30 31 35 62 64 64 64 37 64 36 62 66 34  edb015bddd7d6bf4
4470: 34 32 36 39 63 39 37 38 30 36 34 34 65 37 66 30  4269c9780644e7f0
4480: 65 32 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  e29]} \..-body {
4490: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
44a0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
44b0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
44c0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
44d0: 75 6c 74 20 62 34 39 34 31 35 35 36 62 33 37 63  ult b4941556b37c
44e0: 32 32 63 39 64 38 34 31 62 64 30 62 31 63 34 65  22c9d841bd0b1c4e
44f0: 35 64 38 37 37 38 62 31 63 35 39 38 64 38 62 31  5d8778b1c598d8b1
4500: 65 63 35 35 63 34 63 66 66 31 31 63 63 37 34 30  ec55c4cff11cc740
4510: 32 64 30 35 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  2d05..tcltest::t
4520: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
4530: 32 35 36 2d 32 2e 35 35 20 7b 53 48 41 35 31 32  256-2.55 {SHA512
4540: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
4550: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
4560: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
4570: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
4580: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
4590: 63 35 37 39 62 66 66 61 39 33 39 36 31 37 32 61  c579bffa9396172a
45a0: 61 31 64 36 35 34 62 34 37 39 33 30 65 36 35 66  a1d654b47930e65f
45b0: 39 35 63 30 63 37 34 62 36 61 62 64 61 33 38 32  95c0c74b6abda382
45c0: 61 35 61 62 33 62 64 30 62 34 64 32 30 62 64 35  a5ab3bd0b4d20bd5
45d0: 38 38 65 65 32 61 35 38 39 39 32 38 37 33 64 65  88ee2a58992873de
45e0: 32 62 34 35 65 32 37 62 64 30 31 65 34 30 65 39  2b45e27bd01e40e9
45f0: 32 66 35 30 30 33 64 37 30 33 33 34 5d 7d 20 5c  2f5003d70334]} \
4600: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
4610: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
4620: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
4630: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
4640: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 36 33 66  xact -result 63f
4650: 38 39 38 62 34 66 65 37 61 37 64 38 63 37 61 63  898b4fe7a7d8c7ac
4660: 37 37 36 65 64 37 38 31 31 61 39 32 32 30 35 32  776ed7811a922052
4670: 37 39 31 34 30 36 34 32 39 33 31 38 66 64 35 33  791406429318fd53
4680: 38 36 61 38 66 37 38 36 34 63 66 63 36 0a 0a 74  86a8f7864cfc6..t
4690: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
46a0: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 35  h_SHA512-256-2.5
46b0: 36 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  6 {SHA512_256Sho
46c0: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
46d0: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
46e0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
46f0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
4700: 63 6f 64 65 20 68 65 78 20 37 31 62 35 38 66 34  code hex 71b58f4
4710: 30 65 32 38 62 64 39 34 32 37 66 30 66 37 38 32  0e28bd9427f0f782
4720: 31 65 63 65 39 63 36 65 30 66 33 34 62 37 66 35  1ece9c6e0f34b7f5
4730: 63 63 39 32 34 32 32 32 36 39 32 39 37 39 61 38  cc924222692979a8
4740: 65 32 38 61 62 31 65 30 30 31 38 34 34 35 36 39  e28ab1e001844569
4750: 34 65 65 35 32 62 66 65 30 62 33 34 38 35 30 31  4ee52bfe0b348501
4760: 31 62 33 64 30 35 65 33 61 38 34 62 63 62 64 65  1b3d05e3a84bcbde
4770: 62 34 33 34 30 32 38 5d 7d 20 5c 0a 09 2d 62 6f  b434028]} \..-bo
4780: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
4790: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
47a0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
47b0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
47c0: 2d 72 65 73 75 6c 74 20 37 36 31 34 35 38 32 66  -result 7614582f
47d0: 34 32 64 35 61 39 30 37 64 34 63 65 62 61 30 30  42d5a907d4ceba00
47e0: 32 35 37 39 38 65 65 36 31 64 33 38 30 37 32 34  25798ee61d380724
47f0: 38 35 66 35 34 62 61 33 64 37 34 32 66 32 39 35  85f54ba3d742f295
4800: 30 33 66 31 39 31 31 66 0a 0a 74 63 6c 74 65 73  03f1911f..tcltes
4810: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
4820: 35 31 32 2d 32 35 36 2d 32 2e 35 37 20 7b 53 48  512-256-2.57 {SH
4830: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
4840: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
4850: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
4860: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
4870: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
4880: 68 65 78 20 35 39 32 33 33 35 36 33 39 63 64 34  hex 592335639cd4
4890: 66 32 66 39 61 65 36 36 32 34 65 38 39 35 64 36  f2f9ae6624e895d6
48a0: 61 37 32 39 62 35 30 37 39 65 65 31 66 34 35 61  a729b5079ee1f45a
48b0: 62 61 39 31 31 62 37 66 62 39 38 63 37 66 38 62  ba911b7fb98c7f8b
48c0: 32 63 61 66 65 32 34 61 37 65 34 63 39 34 64 36  2cafe24a7e4c94d6
48d0: 33 32 36 37 64 64 36 38 36 63 32 35 61 30 36 66  3267dd686c25a06f
48e0: 62 33 38 31 33 38 64 66 66 35 34 31 61 36 63 63  b38138dff541a6cc
48f0: 63 62 32 38 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  cb28]} \..-body 
4900: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
4910: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
4920: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
4930: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
4940: 73 75 6c 74 20 36 38 64 36 34 63 62 34 33 33 31  sult 68d64cb4331
4950: 62 37 31 65 37 32 62 34 32 63 38 38 62 38 66 36  b71e72b42c88b8f6
4960: 35 31 33 66 34 62 63 31 37 64 39 39 35 32 35 34  513f4bc17d995254
4970: 66 30 34 64 63 32 62 37 63 61 63 30 32 32 61 64  f04dc2b7cac022ad
4980: 35 65 64 66 61 0a 0a 74 63 6c 74 65 73 74 3a 3a  5edfa..tcltest::
4990: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
49a0: 2d 32 35 36 2d 32 2e 35 38 20 7b 53 48 41 35 31  -256-2.58 {SHA51
49b0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
49c0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
49d0: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
49e0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
49f0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
4a00: 20 65 32 36 65 31 64 63 38 39 33 66 64 63 65 64   e26e1dc893fdced
4a10: 38 33 33 65 61 65 31 35 61 63 30 34 65 64 34 36  833eae15ac04ed46
4a20: 32 34 61 30 37 65 33 63 38 39 64 63 33 64 31 64  24a07e3c89dc3d1d
4a30: 38 32 30 35 62 65 34 34 62 66 64 36 33 33 32 37  8205be44bfd63327
4a40: 37 38 32 66 66 31 62 63 32 63 38 66 37 31 37 35  782ff1bc2c8f7175
4a50: 63 39 32 30 65 62 32 32 65 37 37 39 30 64 34 30  c920eb22e7790d40
4a60: 64 34 34 32 62 34 36 33 34 39 63 66 66 37 32 66  d442b46349cff72f
4a70: 31 65 31 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  1e1]} \..-body {
4a80: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
4a90: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
4aa0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
4ab0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
4ac0: 75 6c 74 20 65 31 34 37 30 62 32 66 34 34 65 33  ult e1470b2f44e3
4ad0: 39 35 35 64 32 62 35 34 39 36 32 39 32 36 37 39  955d2b5496292679
4ae0: 64 39 30 38 36 62 37 63 30 61 61 39 34 66 30 64  d9086b7c0aa94f0d
4af0: 35 31 36 65 35 33 61 31 34 32 65 34 38 36 63 36  516e53a142e486c6
4b00: 64 65 64 38 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  ded8..tcltest::t
4b10: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
4b20: 32 35 36 2d 32 2e 35 39 20 7b 53 48 41 35 31 32  256-2.59 {SHA512
4b30: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
4b40: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
4b50: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
4b60: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
4b70: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
4b80: 37 64 65 66 34 64 34 33 39 61 39 62 37 61 36 63  7def4d439a9b7a6c
4b90: 35 37 30 30 62 62 39 31 36 38 38 62 31 63 61 36  5700bb91688b1ca6
4ba0: 63 34 65 63 64 66 66 32 36 33 63 36 36 34 36 34  c4ecdff263c66464
4bb0: 34 36 61 62 34 64 32 61 62 39 34 37 64 66 38 30  46ab4d2ab947df80
4bc0: 64 35 64 62 61 61 63 36 34 38 65 65 36 63 64 36  d5dbaac648ee6cd6
4bd0: 35 39 33 66 33 33 39 34 32 36 66 64 63 32 63 37  593f339426fdc2c7
4be0: 33 30 33 61 33 36 32 37 31 61 39 65 65 39 62 36  303a36271a9ee9b6
4bf0: 61 65 35 38 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  ae58]} \..-body 
4c00: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
4c10: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
4c20: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
4c30: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
4c40: 73 75 6c 74 20 61 35 39 35 39 31 65 32 38 65 62  sult a59591e28eb
4c50: 39 32 64 66 62 66 32 39 30 61 30 36 37 37 32 62  92dfbf290a06772b
4c60: 62 31 34 35 36 35 35 39 37 39 63 64 30 66 61 30  b145655979cd0fa0
4c70: 64 66 31 35 62 66 38 32 61 61 32 37 36 36 35 61  df15bf82aa27665a
4c80: 62 61 63 30 33 0a 0a 74 63 6c 74 65 73 74 3a 3a  bac03..tcltest::
4c90: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
4ca0: 2d 32 35 36 2d 32 2e 36 30 20 7b 53 48 41 35 31  -256-2.60 {SHA51
4cb0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
4cc0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
4cd0: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
4ce0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
4cf0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
4d00: 20 32 38 33 39 39 38 62 35 65 32 33 39 34 66 62   283998b5e2394fb
4d10: 31 63 65 31 63 65 65 33 35 35 62 36 37 37 65 37  1ce1cee355b677e7
4d20: 39 66 38 39 61 30 39 61 61 32 38 66 61 35 32 64  9f89a09aa28fa52d
4d30: 35 64 39 39 33 63 33 30 37 66 32 37 65 61 37 62  5d993c307f27ea7b
4d40: 33 32 62 36 30 39 39 35 33 32 31 33 33 33 63 35  32b60995321333c5
4d50: 32 61 61 34 39 32 64 32 61 36 35 38 64 33 36 63  2aa492d2a658d36c
4d60: 61 39 36 30 64 63 35 33 61 33 31 62 35 39 63 38  a960dc53a31b59c8
4d70: 31 33 35 35 64 63 39 5d 7d 20 5c 0a 09 2d 62 6f  1355dc9]} \..-bo
4d80: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
4d90: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
4da0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
4db0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
4dc0: 2d 72 65 73 75 6c 74 20 38 32 66 32 37 66 32 61  -result 82f27f2a
4dd0: 62 62 65 35 66 63 32 31 38 34 62 34 32 38 65 62  bbe5fc2184b428eb
4de0: 39 32 35 35 31 65 38 39 38 61 35 31 37 37 65 39  92551e898a5177e9
4df0: 39 37 65 33 33 37 65 65 62 64 63 34 39 33 32 30  97e337eebdc49320
4e00: 30 39 35 63 36 30 35 65 0a 0a 74 63 6c 74 65 73  095c605e..tcltes
4e10: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
4e20: 35 31 32 2d 32 35 36 2d 32 2e 36 31 20 7b 53 48  512-256-2.61 {SH
4e30: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
4e40: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
4e50: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
4e60: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
4e70: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
4e80: 68 65 78 20 30 39 66 33 35 32 64 31 61 65 38 30  hex 09f352d1ae80
4e90: 37 62 32 35 38 61 39 64 34 39 38 37 33 61 34 63  7b258a9d49873a4c
4ea0: 34 61 61 34 63 36 33 62 66 62 35 32 62 66 39 31  4aa4c63bfb52bf91
4eb0: 38 30 37 32 38 61 65 37 39 38 31 62 66 62 39 33  80728ae7981bfb93
4ec0: 64 31 66 35 32 36 32 64 66 38 65 32 37 31 34 63  d1f5262df8e2714c
4ed0: 64 34 65 34 65 65 39 31 31 34 33 62 65 38 65 37  d4e4ee91143be8e7
4ee0: 38 35 63 64 62 63 30 38 38 38 63 62 65 61 34 34  85cdbc0888cbea44
4ef0: 63 34 39 32 36 63 37 65 31 38 63 66 5d 7d 20 5c  c4926c7e18cf]} \
4f00: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
4f10: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
4f20: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
4f30: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
4f40: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 63 33 30  xact -result c30
4f50: 65 66 63 63 63 61 63 64 61 32 36 64 65 64 31 36  efcccacda26ded16
4f60: 65 39 32 62 30 66 32 66 32 65 36 36 37 64 63 39  e92b0f2f2e667dc9
4f70: 38 66 32 38 39 61 37 35 34 63 61 63 36 32 38 64  8f289a754cac628d
4f80: 66 63 62 34 32 31 65 63 63 37 32 34 30 0a 0a 74  fcb421ecc7240..t
4f90: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
4fa0: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 36  h_SHA512-256-2.6
4fb0: 32 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  2 {SHA512_256Sho
4fc0: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
4fd0: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
4fe0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
4ff0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
5000: 63 6f 64 65 20 68 65 78 20 65 36 63 32 62 32 34  code hex e6c2b24
5010: 37 38 39 33 34 38 64 36 34 36 61 32 36 33 66 66  789348d646a263ff
5020: 63 64 62 36 66 63 64 35 31 31 65 31 61 61 63 35  cdb6fcd511e1aac5
5030: 32 37 62 32 32 37 61 37 61 39 30 37 61 65 63 66  27b227a7a907aecf
5040: 36 65 39 35 30 30 38 30 36 64 30 39 33 39 34 61  6e9500806d09394a
5050: 35 36 36 62 33 63 65 36 63 66 33 61 38 35 64 62  566b3ce6cf3a85db
5060: 34 37 62 33 35 38 38 66 62 39 32 36 65 61 36 38  47b3588fb926ea68
5070: 39 37 30 37 38 64 35 35 32 34 38 39 30 65 66 31  97078d5524890ef1
5080: 66 64 36 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  fd6]} \..-body {
5090: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
50a0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
50b0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
50c0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
50d0: 75 6c 74 20 62 66 39 61 65 32 39 34 31 64 32 62  ult bf9ae2941d2b
50e0: 62 39 34 38 64 33 33 61 65 32 61 38 32 32 65 38  b948d33ae2a822e8
50f0: 37 33 38 66 37 34 34 62 35 61 39 64 36 39 32 39  738f744b5a9d6929
5100: 39 37 37 31 39 62 64 31 61 31 31 38 37 34 33 61  97719bd1a118743a
5110: 30 37 33 31 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  0731..tcltest::t
5120: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
5130: 32 35 36 2d 32 2e 36 33 20 7b 53 48 41 35 31 32  256-2.63 {SHA512
5140: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
5150: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
5160: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
5170: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
5180: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
5190: 62 30 39 39 65 31 62 35 32 33 34 38 66 39 33 61  b099e1b52348f93a
51a0: 36 63 32 32 38 39 36 63 37 32 38 35 34 61 62 30  6c22896c72854ab0
51b0: 34 66 32 64 64 33 64 31 66 39 34 63 35 66 61 64  4f2dd3d1f94c5fad
51c0: 32 31 64 64 64 31 32 65 35 62 33 35 66 35 37 63  21ddd12e5b35f57c
51d0: 38 30 64 62 30 39 37 31 35 30 39 39 37 63 34 65  80db097150997c4e
51e0: 35 63 64 33 66 35 61 63 32 34 31 38 39 37 62 35  5cd3f5ac241897b5
51f0: 37 63 66 37 38 34 39 33 33 34 31 34 39 66 32 39  7cf7849334149f29
5200: 66 37 37 62 39 37 30 31 37 34 33 33 5d 7d 20 5c  f77b97017433]} \
5210: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
5220: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
5230: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
5240: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
5250: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 30 31 64  xact -result 01d
5260: 35 38 32 63 38 32 63 65 36 65 36 61 38 63 30 63  582c82ce6e6a8c0c
5270: 66 61 38 31 37 39 32 31 31 30 62 63 39 35 30 66  fa81792110bc950f
5280: 61 35 35 65 33 31 63 31 30 31 63 63 36 66 32 64  a55e31c101cc6f2d
5290: 66 36 62 32 61 65 62 63 31 38 39 32 35 0a 0a 74  f6b2aebc18925..t
52a0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
52b0: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 36  h_SHA512-256-2.6
52c0: 34 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  4 {SHA512_256Sho
52d0: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
52e0: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
52f0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
5300: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
5310: 63 6f 64 65 20 68 65 78 20 61 63 34 30 36 35 63  code hex ac4065c
5320: 38 64 63 64 35 38 30 33 31 62 37 34 37 35 63 33  8dcd58031b7475c3
5330: 64 65 62 65 30 33 32 31 36 38 66 61 39 66 37 61  debe032168fa9f7a
5340: 65 35 61 64 30 32 64 34 38 31 33 34 64 66 65 33  e5ad02d48134dfe3
5350: 62 34 38 63 35 38 62 66 32 34 33 61 66 38 32 33  b48c58bf243af823
5360: 38 33 61 62 35 65 65 62 32 63 36 35 64 35 34 61  83ab5eeb2c65d54a
5370: 64 39 36 65 38 66 62 31 62 36 35 37 62 38 62 64  d96e8fb1b657b8bd
5380: 37 32 39 37 63 64 61 33 31 38 65 33 66 30 32 61  7297cda318e3f02a
5390: 36 61 32 65 32 62 37 5d 7d 20 5c 0a 09 2d 62 6f  6a2e2b7]} \..-bo
53a0: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
53b0: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
53c0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
53d0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
53e0: 2d 72 65 73 75 6c 74 20 39 66 62 39 64 37 65 36  -result 9fb9d7e6
53f0: 62 38 31 65 38 36 65 34 34 31 36 39 35 63 61 35  b81e86e441695ca5
5400: 63 37 36 32 63 66 33 62 37 37 33 35 61 37 35 64  c762cf3b7735a75d
5410: 62 63 34 62 32 62 31 65 33 65 35 36 36 37 38 34  bc4b2b1e3e566784
5420: 38 66 36 63 64 64 37 33 0a 0a 74 63 6c 74 65 73  8f6cdd73..tcltes
5430: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
5440: 35 31 32 2d 32 35 36 2d 32 2e 36 35 20 7b 53 48  512-256-2.65 {SH
5450: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
5460: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
5470: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
5480: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
5490: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
54a0: 68 65 78 20 64 32 62 63 30 63 65 37 32 31 37 66  hex d2bc0ce7217f
54b0: 66 32 65 39 34 34 65 31 61 65 34 37 61 64 35 38  f2e944e1ae47ad58
54c0: 37 33 62 66 33 39 31 66 31 62 30 63 63 30 37 66  73bf391f1b0cc07f
54d0: 36 31 35 31 65 62 34 63 35 30 62 62 34 35 62 32  6151eb4c50bb45b2
54e0: 66 62 36 32 39 35 33 32 36 66 37 31 36 63 65 37  fb6295326f716ce7
54f0: 65 36 38 37 66 61 30 65 33 64 35 64 32 35 63 35  e687fa0e3d5d25c5
5500: 61 38 61 38 64 64 31 33 61 35 34 31 61 39 32 39  a8a8dd13a541a929
5510: 32 65 38 33 38 36 65 37 33 33 66 34 66 32 61 32  2e8386e733f4f2a2
5520: 34 37 32 38 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  4728]} \..-body 
5530: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
5540: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
5550: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
5560: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
5570: 73 75 6c 74 20 39 63 31 66 65 61 35 37 38 36 37  sult 9c1fea57867
5580: 30 32 64 30 32 37 62 62 35 62 36 36 62 33 66 61  02d027bb5b66b3fa
5590: 39 32 64 65 33 34 36 32 31 61 38 36 32 36 39 38  92de34621a862698
55a0: 32 65 63 32 31 63 30 65 63 66 38 64 61 61 37 39  2ec21c0ecf8daa79
55b0: 64 65 61 30 35 0a 0a 74 63 6c 74 65 73 74 3a 3a  dea05..tcltest::
55c0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
55d0: 2d 32 35 36 2d 32 2e 36 36 20 7b 53 48 41 35 31  -256-2.66 {SHA51
55e0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
55f0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
5600: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
5610: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
5620: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
5630: 20 61 38 32 61 61 30 37 39 61 64 38 37 38 63 66   a82aa079ad878cf
5640: 31 64 36 39 39 65 39 36 31 32 66 64 33 61 65 66  1d699e9612fd3aef
5650: 36 30 33 64 66 33 30 63 33 65 38 39 30 34 33 35  603df30c3e890435
5660: 38 66 62 31 38 61 32 39 37 36 64 37 62 39 31 63  8fb18a2976d7b91c
5670: 33 33 66 34 33 63 30 64 61 34 39 37 36 37 33 32  33f43c0da4976732
5680: 35 38 31 63 35 65 30 30 64 37 61 30 36 64 38 33  581c5e00d7a06d83
5690: 30 32 62 65 34 61 61 62 34 66 32 64 35 34 35 64  02be4aab4f2d545d
56a0: 62 64 39 34 64 39 63 64 38 31 37 33 32 34 66 65  bd94d9cd817324fe
56b0: 32 64 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  2da]} \..-body {
56c0: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
56d0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
56e0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
56f0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
5700: 75 6c 74 20 34 36 65 62 34 39 62 66 63 35 62 32  ult 46eb49bfc5b2
5710: 65 65 33 63 39 37 62 39 31 31 30 32 35 32 35 62  ee3c97b91102525b
5720: 36 36 36 36 64 35 36 62 66 66 61 61 62 34 62 61  6666d56bffaab4ba
5730: 61 30 33 30 35 39 62 38 39 66 32 34 65 63 34 62  a03059b89f24ec4b
5740: 35 36 32 32 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  5622..tcltest::t
5750: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
5760: 32 35 36 2d 32 2e 36 37 20 7b 53 48 41 35 31 32  256-2.67 {SHA512
5770: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
5780: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
5790: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
57a0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
57b0: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
57c0: 37 32 66 65 65 32 39 34 39 34 63 32 35 62 31 31  72fee29494c25b11
57d0: 39 62 36 63 35 61 36 30 30 63 34 36 38 65 63 32  9b6c5a600c468ec2
57e0: 32 65 34 32 61 66 35 62 61 39 33 65 62 37 39 34  2e42af5ba93eb794
57f0: 35 32 38 36 34 65 62 65 34 36 39 61 38 36 66 38  52864ebe469a86f8
5800: 33 36 33 32 63 38 35 32 30 31 38 30 30 66 33 32  3632c85201800f32
5810: 38 38 62 35 35 33 66 37 62 65 63 36 34 39 64 64  88b553f7bec649dd
5820: 66 65 37 30 34 39 32 30 61 32 37 61 38 66 36 35  fe704920a27a8f65
5830: 64 31 33 61 61 37 35 35 39 38 35 61 32 33 38 62  d13aa755985a238b
5840: 33 63 64 63 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  3cdc]} \..-body 
5850: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
5860: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
5870: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
5880: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
5890: 73 75 6c 74 20 66 37 65 65 64 64 66 30 38 64 33  sult f7eeddf08d3
58a0: 63 31 61 62 35 32 34 31 36 37 63 39 30 38 62 63  c1ab524167c908bc
58b0: 64 38 36 31 33 64 35 38 31 63 62 30 64 30 33 35  d8613d581cb0d035
58c0: 32 30 64 37 62 36 62 36 34 64 31 38 31 62 66 31  20d7b6b64d181bf1
58d0: 33 62 66 31 65 0a 0a 74 63 6c 74 65 73 74 3a 3a  3bf1e..tcltest::
58e0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
58f0: 2d 32 35 36 2d 32 2e 36 38 20 7b 53 48 41 35 31  -256-2.68 {SHA51
5900: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
5910: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
5920: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
5930: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
5940: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
5950: 20 66 65 62 37 61 30 39 34 64 66 66 62 35 63 30   feb7a094dffb5c0
5960: 63 62 36 66 37 32 33 63 31 62 35 65 37 64 37 36  cb6f723c1b5e7d76
5970: 34 64 34 61 62 35 66 38 39 36 62 31 33 65 34 30  4d4ab5f896b13e40
5980: 39 30 30 35 39 34 30 61 34 35 64 65 66 62 33 65  9005940a45defb3e
5990: 62 65 36 37 62 64 38 35 65 32 61 32 31 64 38 64  be67bd85e2a21d8d
59a0: 31 62 38 30 30 64 65 31 34 33 34 66 66 63 62 64  1b800de1434ffcbd
59b0: 32 61 61 63 39 32 61 62 61 32 31 31 36 36 36 64  2aac92aba211666d
59c0: 64 37 34 32 64 33 61 35 37 35 64 61 36 36 61 33  d742d3a575da66a3
59d0: 32 64 33 37 35 62 31 5d 7d 20 5c 0a 09 2d 62 6f  2d375b1]} \..-bo
59e0: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
59f0: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
5a00: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
5a10: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
5a20: 2d 72 65 73 75 6c 74 20 34 30 63 66 64 38 38 64  -result 40cfd88d
5a30: 36 31 33 62 63 37 64 31 30 35 65 31 37 38 30 38  613bc7d105e17808
5a40: 31 64 32 65 33 63 35 61 30 39 63 64 36 32 39 34  1d2e3c5a09cd6294
5a50: 36 35 38 32 31 39 30 39 64 62 63 31 65 39 62 38  65821909dbc1e9b8
5a60: 63 64 30 34 61 32 36 36 0a 0a 74 63 6c 74 65 73  cd04a266..tcltes
5a70: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
5a80: 35 31 32 2d 32 35 36 2d 32 2e 36 39 20 7b 53 48  512-256-2.69 {SH
5a90: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
5aa0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
5ab0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
5ac0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
5ad0: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
5ae0: 68 65 78 20 38 63 65 33 31 63 61 32 61 62 32 65  hex 8ce31ca2ab2e
5af0: 37 63 66 66 35 66 66 35 62 63 62 63 65 65 33 36  7cff5ff5bcbcee36
5b00: 37 34 36 33 63 64 35 65 65 65 36 35 62 38 30 62  7463cd5eee65b80b
5b10: 64 62 30 31 30 31 31 36 34 34 36 37 32 39 64 31  db010116446729d1
5b20: 63 33 31 65 61 64 38 64 66 32 61 33 32 32 36 30  c31ead8df2a32260
5b30: 32 34 35 33 38 34 32 35 35 33 38 61 63 63 63 33  24538425538accc3
5b40: 35 61 30 64 63 30 62 33 36 34 61 35 30 66 62 63  5a0dc0b364a50fbc
5b50: 61 35 30 64 39 64 30 31 34 38 30 65 31 63 33 65  a50d9d01480e1c3e
5b60: 61 38 65 39 64 63 34 66 63 32 66 35 5d 7d 20 5c  a8e9dc4fc2f5]} \
5b70: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
5b80: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
5b90: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
5ba0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
5bb0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 64 36 31  xact -result d61
5bc0: 66 63 66 32 63 33 31 37 38 63 62 66 33 34 30 34  fcf2c3178cbf3404
5bd0: 32 61 30 66 63 30 32 38 36 39 66 34 36 37 30 65  2a0fc02869f4670e
5be0: 61 34 30 30 65 61 33 38 34 63 63 66 30 34 64 38  a400ea384ccf04d8
5bf0: 34 36 30 38 30 36 66 65 31 31 64 63 65 0a 0a 74  460806fe11dce..t
5c00: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
5c10: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 37  h_SHA512-256-2.7
5c20: 30 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  0 {SHA512_256Sho
5c30: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
5c40: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
5c50: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
5c60: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
5c70: 63 6f 64 65 20 68 65 78 20 34 39 36 33 61 33 36  code hex 4963a36
5c80: 61 66 35 36 32 65 30 34 35 65 63 32 35 65 33 39  af562e045ec25e39
5c90: 61 30 64 39 63 32 61 30 33 35 64 34 66 36 64 36  a0d9c2a035d4f6d6
5ca0: 32 30 34 34 66 63 39 37 35 39 38 36 64 31 65 61  2044fc975986d1ea
5cb0: 61 39 65 61 62 62 36 33 34 34 65 66 30 32 37 35  a9eabb6344ef0275
5cc0: 65 39 37 30 30 37 61 31 66 36 33 61 61 38 63 65  e97007a1f63aa8ce
5cd0: 66 31 63 34 34 62 35 64 61 36 66 35 34 61 38 64  f1c44b5da6f54a8d
5ce0: 33 35 30 39 30 39 61 34 61 33 65 30 39 61 37 30  350909a4a3e09a70
5cf0: 31 63 38 61 33 37 31 31 62 35 30 63 38 30 61 37  1c8a3711b50c80a7
5d00: 36 30 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  60f]} \..-body {
5d10: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
5d20: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
5d30: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
5d40: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
5d50: 75 6c 74 20 36 39 64 66 35 34 63 30 66 62 62 33  ult 69df54c0fbb3
5d60: 35 38 35 39 62 35 66 62 32 34 37 63 39 32 62 35  5859b5fb247c92b5
5d70: 36 36 35 65 64 32 37 39 36 32 66 30 34 32 61 37  665ed27962f042a7
5d80: 39 30 35 31 39 64 62 38 63 65 32 37 33 34 33 62  90519db8ce27343b
5d90: 39 35 39 30 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  9590..tcltest::t
5da0: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
5db0: 32 35 36 2d 32 2e 37 31 20 7b 53 48 41 35 31 32  256-2.71 {SHA512
5dc0: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
5dd0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
5de0: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
5df0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
5e00: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
5e10: 30 36 36 33 61 63 32 34 36 66 36 34 33 34 32 37  0663ac246f643427
5e20: 64 37 31 39 38 66 65 62 35 34 39 31 39 66 39 37  d7198feb54919f97
5e30: 66 39 65 30 33 36 38 36 34 64 63 33 32 63 30 32  f9e036864dc32c02
5e40: 66 63 38 37 61 66 35 30 63 64 32 36 64 62 65 65  fc87af50cd26dbee
5e50: 64 34 62 34 38 61 31 38 65 39 66 39 36 65 39 30  d4b48a18e9f96e90
5e60: 35 39 36 30 35 64 39 66 64 62 31 30 65 62 35 37  59605d9fdb10eb57
5e70: 63 35 35 38 33 65 31 63 37 66 35 30 31 65 36 33  c5583e1c7f501e63
5e80: 33 38 62 64 34 63 62 38 64 39 33 36 31 35 30 36  38bd4cb8d9361506
5e90: 33 37 38 35 32 36 31 33 38 64 35 30 5d 7d 20 5c  378526138d50]} \
5ea0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
5eb0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
5ec0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
5ed0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
5ee0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 64 62 34  xact -result db4
5ef0: 35 38 61 33 32 37 64 64 32 31 62 62 39 63 30 37  58a327dd21bb9c07
5f00: 33 62 64 35 37 33 36 61 37 34 35 65 34 36 37 35  3bd5736a745e4675
5f10: 33 38 64 39 34 37 36 62 37 36 34 37 62 37 34 64  38d9476b7647b74d
5f20: 63 64 31 37 30 33 31 62 61 64 37 32 64 0a 0a 74  cd17031bad72d..t
5f30: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
5f40: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 37  h_SHA512-256-2.7
5f50: 32 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  2 {SHA512_256Sho
5f60: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
5f70: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
5f80: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
5f90: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
5fa0: 63 6f 64 65 20 68 65 78 20 65 37 30 64 66 39 63  code hex e70df9c
5fb0: 65 37 36 33 33 34 63 63 32 30 39 36 63 30 65 37  e76334cc2096c0e7
5fc0: 31 35 64 38 63 39 36 36 35 32 34 39 32 62 35 62  15d8c96652492b5b
5fd0: 36 36 33 37 64 33 65 38 30 31 39 36 31 63 35 39  6637d3e801961c59
5fe0: 34 32 31 62 39 61 36 36 65 35 39 66 66 34 61 36  421b9a66e59ff4a6
5ff0: 38 30 34 37 61 61 35 32 64 36 64 35 38 30 33 36  8047aa52d6d58036
6000: 66 63 65 66 63 30 35 64 64 36 66 39 39 65 36 34  fcefc05dd6f99e64
6010: 66 31 32 30 30 30 33 34 34 38 66 62 36 39 62 38  f120003448fb69b8
6020: 66 62 63 34 61 64 33 34 64 38 66 65 35 66 64 31  fbc4ad34d8fe5fd1
6030: 61 38 37 32 33 31 39 5d 7d 20 5c 0a 09 2d 62 6f  a872319]} \..-bo
6040: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
6050: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
6060: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
6070: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
6080: 2d 72 65 73 75 6c 74 20 32 32 39 62 65 39 64 65  -result 229be9de
6090: 65 64 62 64 31 36 65 39 34 38 65 65 62 66 38 61  edbd16e948eebf8a
60a0: 61 35 38 33 38 64 32 37 36 65 30 65 36 65 32 39  a5838d276e0e6e29
60b0: 35 35 37 30 63 34 39 65 61 64 63 39 66 32 37 63  5570c49eadc9f27c
60c0: 30 65 32 65 35 37 39 38 0a 0a 74 63 6c 74 65 73  0e2e5798..tcltes
60d0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
60e0: 35 31 32 2d 32 35 36 2d 32 2e 37 33 20 7b 53 48  512-256-2.73 {SH
60f0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
6100: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
6110: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
6120: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
6130: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
6140: 68 65 78 20 64 64 64 61 64 35 38 31 35 38 33 34  hex dddad5815834
6150: 61 39 39 64 37 39 61 62 66 34 65 64 33 36 61 66  a99d79abf4ed36af
6160: 37 34 30 36 35 62 32 65 37 30 65 38 37 63 62 38  74065b2e70e87cb8
6170: 34 38 33 62 32 65 65 32 35 30 64 38 37 37 65 38  483b2ee250d877e8
6180: 64 65 38 62 38 32 39 36 61 32 31 37 39 37 36 38  de8b8296a2179768
6190: 33 36 37 62 34 62 66 30 66 36 37 34 66 34 37 38  367b4bf0f674f478
61a0: 31 32 34 33 36 30 65 39 65 32 62 30 63 37 65 62  124360e9e2b0c7eb
61b0: 37 39 34 66 66 64 34 65 37 63 30 32 65 63 61 39  794ffd4e7c02eca9
61c0: 33 35 62 66 34 32 34 30 65 33 39 34 36 37 32 62  35bf4240e394672b
61d0: 35 34 65 38 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  54e8]} \..-body 
61e0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
61f0: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
6200: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
6210: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
6220: 73 75 6c 74 20 31 33 62 31 31 61 33 38 65 66 37  sult 13b11a38ef7
6230: 34 61 62 31 36 62 64 36 35 62 38 34 65 38 33 64  4ab16bd65b84e83d
6240: 33 34 38 34 38 62 66 33 63 35 36 65 36 63 61 62  34848bf3c56e6cab
6250: 35 63 35 36 63 63 30 35 34 31 65 37 38 33 64 66  5c56cc0541e783df
6260: 31 64 34 62 37 0a 0a 74 63 6c 74 65 73 74 3a 3a  1d4b7..tcltest::
6270: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
6280: 2d 32 35 36 2d 32 2e 37 34 20 7b 53 48 41 35 31  -256-2.74 {SHA51
6290: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
62a0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
62b0: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
62c0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
62d0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
62e0: 20 38 34 36 31 37 62 63 64 65 61 38 37 34 32 30   84617bcdea87420
62f0: 63 62 30 65 39 33 66 65 65 62 66 64 65 33 61 61  cb0e93feebfde3aa
6300: 62 62 66 37 63 63 37 31 37 38 30 36 35 63 38 31  bbf7cc7178065c81
6310: 63 39 39 65 33 33 33 36 38 34 66 33 38 31 35 36  c99e333684f38156
6320: 33 62 38 32 66 64 37 36 34 32 30 66 37 63 30 32  3b82fd76420f7c02
6330: 34 61 62 33 31 62 63 37 33 33 63 34 38 35 63 32  4ab31bc733c485c2
6340: 39 39 36 30 31 31 64 36 30 63 31 35 33 65 64 65  996011d60c153ede
6350: 30 62 30 37 38 65 62 64 62 32 30 34 34 36 66 64  0b078ebdb20446fd
6360: 62 63 33 62 36 34 61 66 38 39 65 63 64 34 66 34  bc3b64af89ecd4f4
6370: 65 61 66 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  eaf]} \..-body {
6380: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
6390: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
63a0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
63b0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
63c0: 75 6c 74 20 35 62 62 35 31 62 63 66 65 65 64 63  ult 5bb51bcfeedc
63d0: 36 31 38 61 32 38 63 63 66 33 62 62 64 39 36 62  618a28ccf3bbd96b
63e0: 65 30 38 39 37 32 65 65 62 31 62 63 32 32 64 39  e08972eeb1bc22d9
63f0: 62 62 36 34 38 38 33 64 61 62 64 63 36 63 33 63  bb64883dabdc6c3c
6400: 36 62 35 34 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  6b54..tcltest::t
6410: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
6420: 32 35 36 2d 32 2e 37 35 20 7b 53 48 41 35 31 32  256-2.75 {SHA512
6430: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
6440: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
6450: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
6460: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
6470: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
6480: 39 37 30 66 35 61 39 33 30 38 66 39 32 39 63 35  970f5a9308f929c5
6490: 64 65 37 38 65 38 31 31 39 62 39 36 63 61 66 30  de78e8119b96caf0
64a0: 61 64 39 63 34 61 30 36 66 31 38 32 63 37 33 65  ad9c4a06f182c73e
64b0: 37 35 61 39 37 31 31 63 38 32 63 64 36 39 34 66  75a9711c82cd694f
64c0: 64 61 33 35 32 34 38 36 33 65 32 63 31 31 38 35  da3524863e2c1185
64d0: 33 33 62 35 37 62 37 38 30 36 37 62 62 30 38 37  33b57b78067bb087
64e0: 30 65 30 37 36 33 61 61 33 31 33 35 34 66 62 66  0e0763aa31354fbf
64f0: 61 39 65 39 31 64 64 61 30 38 66 65 38 38 64 63  a9e91dda08fe88dc
6500: 37 61 37 66 62 66 34 37 34 62 31 61 30 61 35 30  7a7fbf474b1a0a50
6510: 61 39 64 31 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  a9d1]} \..-body 
6520: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
6530: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
6540: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
6550: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
6560: 73 75 6c 74 20 39 33 30 61 39 63 33 33 65 33 39  sult 930a9c33e39
6570: 33 61 65 38 62 31 63 33 39 65 30 37 32 62 30 38  3ae8b1c39e072b08
6580: 66 39 37 32 61 64 38 34 30 64 62 35 34 30 31 61  f972ad840db5401a
6590: 34 65 64 65 64 31 66 31 66 64 31 34 66 38 61 30  4eded1f1fd14f8a0
65a0: 66 36 38 63 36 0a 0a 74 63 6c 74 65 73 74 3a 3a  f68c6..tcltest::
65b0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
65c0: 2d 32 35 36 2d 32 2e 37 36 20 7b 53 48 41 35 31  -256-2.76 {SHA51
65d0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
65e0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
65f0: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
6600: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
6610: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
6620: 20 66 32 39 65 63 34 34 33 61 37 63 34 62 66 34   f29ec443a7c4bf4
6630: 66 63 62 63 32 63 63 34 65 39 39 32 66 33 62 31  fcbc2cc4e992f3b1
6640: 65 30 63 37 30 65 62 66 36 30 61 32 30 31 39 65  e0c70ebf60a2019e
6650: 66 64 63 62 36 37 36 63 33 65 32 36 31 37 63 64  fdcb676c3e2617cd
6660: 34 38 35 33 37 30 31 37 30 36 63 38 66 30 64 35  4853701706c8f0d5
6670: 33 66 33 61 62 65 39 36 64 64 39 39 62 37 38 65  3f3abe96dd99b78e
6680: 36 33 38 35 64 63 61 36 30 62 62 34 39 65 66 37  6385dca60bb49ef7
6690: 63 30 62 61 64 30 39 39 66 38 61 62 34 61 35 66  c0bad099f8ab4a5f
66a0: 36 34 34 38 63 34 63 62 37 32 33 63 37 35 34 61  6448c4cb723c754a
66b0: 61 36 32 30 32 66 63 5d 7d 20 5c 0a 09 2d 62 6f  a6202fc]} \..-bo
66c0: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
66d0: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
66e0: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
66f0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
6700: 2d 72 65 73 75 6c 74 20 33 36 64 31 63 62 35 64  -result 36d1cb5d
6710: 39 33 30 64 37 33 66 30 31 39 39 39 35 33 33 62  930d73f01999533b
6720: 30 33 35 33 31 33 61 35 34 62 31 65 32 63 63 32  035313a54b1e2cc2
6730: 32 33 66 30 37 61 66 38 32 39 34 32 34 32 33 30  23f07af829424230
6740: 62 38 34 30 35 31 37 37 0a 0a 74 63 6c 74 65 73  b8405177..tcltes
6750: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
6760: 35 31 32 2d 32 35 36 2d 32 2e 37 37 20 7b 53 48  512-256-2.77 {SH
6770: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
6780: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
6790: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
67a0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
67b0: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
67c0: 68 65 78 20 34 39 31 33 37 30 39 61 30 39 65 36  hex 4913709a09e6
67d0: 30 36 66 30 30 33 34 39 32 36 66 32 31 63 65 30  06f0034926f21ce0
67e0: 66 61 65 65 66 63 30 34 38 33 62 35 63 30 61 64  faeefc0483b5c0ad
67f0: 65 39 39 66 65 66 39 35 30 66 64 30 62 30 39 61  e99fef950fd0b09a
6800: 36 62 62 61 33 61 36 34 31 35 65 33 38 62 34 39  6bba3a6415e38b49
6810: 31 64 65 38 35 64 36 64 32 32 63 33 35 36 32 65  1de85d6d22c3562e
6820: 32 30 34 39 37 66 62 66 38 61 66 36 66 37 31 32  20497fbf8af6f712
6830: 39 39 65 64 65 39 66 63 65 33 33 62 62 62 39 34  99ede9fce33bbb94
6840: 32 66 35 63 38 38 64 63 38 38 30 30 64 31 61 33  2f5c88dc8800d1a3
6850: 39 30 30 66 36 66 61 39 31 37 65 61 5d 7d 20 5c  900f6fa917ea]} \
6860: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
6870: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
6880: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
6890: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
68a0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 30 39 34  xact -result 094
68b0: 38 64 31 64 63 37 61 30 61 30 31 37 32 64 33 64  8d1dc7a0a0172d3d
68c0: 61 65 34 61 65 34 30 64 31 32 38 34 34 34 66 32  ae4ae40d128444f2
68d0: 66 36 33 30 39 62 34 34 33 61 64 36 61 38 61 62  f6309b443ad6a8ab
68e0: 33 38 34 39 64 65 66 36 30 36 61 37 65 0a 0a 74  3849def606a7e..t
68f0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
6900: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 37  h_SHA512-256-2.7
6910: 38 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  8 {SHA512_256Sho
6920: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
6930: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
6940: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
6950: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
6960: 63 6f 64 65 20 68 65 78 20 33 33 36 35 64 63 38  code hex 3365dc8
6970: 37 63 37 66 32 39 62 35 30 39 32 35 66 32 64 35  7c7f29b50925f2d5
6980: 30 62 31 65 34 33 37 61 34 39 63 61 39 39 35 63  0b1e437a49ca995c
6990: 61 61 63 33 35 66 63 62 33 64 62 32 39 64 64 31  aac35fcb3db29dd1
69a0: 39 63 63 32 65 38 63 31 33 30 62 32 63 61 31 65  9cc2e8c130b2ca1e
69b0: 37 39 35 62 64 39 66 31 66 39 62 65 31 64 33 64  795bd9f1f9be1d3d
69c0: 66 38 33 66 33 37 66 37 35 33 30 64 62 33 38 33  f83f37f7530db383
69d0: 32 38 33 38 36 38 64 37 38 32 31 39 33 65 39 31  283868d782193e91
69e0: 35 37 37 34 66 62 62 63 66 66 63 65 34 64 33 34  5774fbbcffce4d34
69f0: 30 62 36 63 64 30 66 65 35 30 30 38 64 33 38 37  0b6cd0fe5008d387
6a00: 31 38 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  18a]} \..-body {
6a10: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
6a20: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
6a30: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
6a40: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
6a50: 75 6c 74 20 35 37 39 64 36 63 34 39 32 64 63 66  ult 579d6c492dcf
6a60: 62 30 33 32 62 39 32 37 32 61 61 30 66 35 34 64  b032b9272aa0f54d
6a70: 31 33 65 63 65 30 66 62 32 32 37 36 36 31 39 64  13ece0fb2276619d
6a80: 64 37 65 37 35 66 38 36 61 65 66 33 66 35 38 62  d7e75f86aef3f58b
6a90: 66 61 65 61 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  faea..tcltest::t
6aa0: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
6ab0: 32 35 36 2d 32 2e 37 39 20 7b 53 48 41 35 31 32  256-2.79 {SHA512
6ac0: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
6ad0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
6ae0: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
6af0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
6b00: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
6b10: 34 35 61 38 39 39 65 65 32 34 63 65 31 65 62 37  45a899ee24ce1eb7
6b20: 66 66 65 31 33 61 61 35 61 63 62 30 38 63 61 62  ffe13aa5acb08cab
6b30: 65 39 34 66 66 30 30 33 39 35 37 31 35 33 62 37  e94ff003957153b7
6b40: 32 30 31 39 63 36 36 36 34 30 37 32 64 30 34 35  2019c6664072d045
6b50: 65 35 66 61 30 39 36 34 37 30 65 36 65 34 33 33  e5fa096470e6e433
6b60: 31 66 63 33 63 64 34 34 63 63 35 39 37 34 35 32  1fc3cd44cc597452
6b70: 64 38 64 34 36 38 38 33 36 32 32 36 65 37 65 61  d8d468836226e7ea
6b80: 62 63 61 37 66 35 35 30 31 66 66 65 61 62 33 34  bca7f5501ffeab34
6b90: 39 64 34 35 64 32 31 30 35 38 36 38 62 30 64 65  9d45d2105868b0de
6ba0: 66 32 63 65 32 32 64 62 34 34 33 63 5d 7d 20 5c  f2ce22db443c]} \
6bb0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
6bc0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
6bd0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
6be0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
6bf0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 35 63 30  xact -result 5c0
6c00: 38 38 63 64 30 63 31 38 62 66 36 39 39 65 64 66  88cd0c18bf699edf
6c10: 34 37 64 64 62 62 64 31 65 31 31 63 39 63 61 61  47ddbbd1e11c9caa
6c20: 39 31 36 31 62 38 35 32 61 36 30 32 34 34 39 32  9161b852a6024492
6c30: 65 37 61 62 37 64 64 35 37 34 35 65 65 0a 0a 74  e7ab7dd5745ee..t
6c40: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
6c50: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 38  h_SHA512-256-2.8
6c60: 30 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  0 {SHA512_256Sho
6c70: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
6c80: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
6c90: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
6ca0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
6cb0: 63 6f 64 65 20 68 65 78 20 33 38 39 64 37 36 63  code hex 389d76c
6cc0: 31 38 64 38 64 31 31 65 62 35 62 37 65 36 65 38  18d8d11eb5b7e6e8
6cd0: 30 64 37 39 66 39 33 62 65 35 32 63 37 38 34 65  0d79f93be52c784e
6ce0: 62 31 31 30 31 62 37 66 33 35 39 34 38 63 37 35  b1101b7f35948c75
6cf0: 32 63 39 38 66 36 63 33 34 65 64 30 35 61 62 64  2c98f6c34ed05abd
6d00: 62 30 66 39 36 34 61 34 32 35 30 62 35 38 37 30  b0f964a4250b5870
6d10: 30 66 38 35 39 30 61 36 65 30 62 34 35 31 37 30  0f8590a6e0b45170
6d20: 63 31 64 38 64 30 38 32 31 36 36 35 36 66 62 61  c1d8d08216656fba
6d30: 32 31 39 64 64 63 38 35 35 66 32 62 62 33 36 33  219ddc855f2bb363
6d40: 36 30 65 36 37 36 65 31 61 30 30 66 63 61 66 39  60e676e1a00fcaf9
6d50: 32 32 31 33 63 34 34 5d 7d 20 5c 0a 09 2d 62 6f  2213c44]} \..-bo
6d60: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
6d70: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
6d80: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
6d90: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
6da0: 2d 72 65 73 75 6c 74 20 62 33 32 64 31 62 30 61  -result b32d1b0a
6db0: 63 63 30 39 37 65 64 64 63 31 33 64 62 62 61 39  cc097eddc13dbba9
6dc0: 31 64 32 63 31 34 34 37 37 34 66 34 62 66 31 62  1d2c144774f4bf1b
6dd0: 61 32 32 37 35 37 37 30 62 35 32 38 35 38 34 37  a2275770b5285847
6de0: 31 64 65 32 36 63 61 31 0a 0a 74 63 6c 74 65 73  1de26ca1..tcltes
6df0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
6e00: 35 31 32 2d 32 35 36 2d 32 2e 38 31 20 7b 53 48  512-256-2.81 {SH
6e10: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
6e20: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
6e30: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
6e40: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
6e50: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
6e60: 68 65 78 20 31 32 30 62 38 30 62 34 34 61 32 34  hex 120b80b44a24
6e70: 33 35 64 34 37 38 33 37 36 36 34 31 36 65 64 65  35d4783766416ede
6e80: 31 37 38 34 65 30 30 64 33 34 36 37 63 37 65 64  1784e00d3467c7ed
6e90: 31 62 36 33 30 34 65 37 35 62 35 38 34 36 66 65  1b6304e75b5846fe
6ea0: 62 62 38 31 32 64 36 33 37 66 61 36 62 30 34 33  bb812d637fa6b043
6eb0: 65 36 39 33 62 63 65 34 66 37 63 61 31 64 66 30  e693bce4f7ca1df0
6ec0: 37 64 37 35 61 32 31 31 35 31 39 65 37 63 62 64  7d75a211519e7cbd
6ed0: 64 37 61 32 65 38 35 34 63 62 65 33 30 65 36 38  d7a2e854cbe30e68
6ee0: 33 65 62 65 32 38 35 62 64 62 62 64 65 36 33 30  3ebe285bdbbde630
6ef0: 36 66 30 64 31 31 39 62 61 39 33 32 37 30 35 61  6f0d119ba932705a
6f00: 31 65 66 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  1ef9]} \..-body 
6f10: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
6f20: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
6f30: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
6f40: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
6f50: 73 75 6c 74 20 32 30 30 38 31 38 61 37 66 61 39  sult 200818a7fa9
6f60: 36 33 34 32 33 64 30 61 39 30 62 64 38 35 34 37  63423d0a90bd8547
6f70: 35 64 36 37 62 65 66 64 66 61 34 33 62 62 34 39  5d67befdfa43bb49
6f80: 62 65 37 63 30 32 36 62 39 36 39 33 37 34 33 34  be7c026b96937434
6f90: 30 34 64 63 64 0a 0a 74 63 6c 74 65 73 74 3a 3a  04dcd..tcltest::
6fa0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
6fb0: 2d 32 35 36 2d 32 2e 38 32 20 7b 53 48 41 35 31  -256-2.82 {SHA51
6fc0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
6fd0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
6fe0: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
6ff0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
7000: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
7010: 20 37 31 33 37 30 35 36 37 34 65 32 30 30 36 36   713705674e20066
7020: 64 36 31 62 66 65 39 63 61 37 36 33 61 38 37 30  d61bfe9ca763a870
7030: 35 63 62 36 63 61 31 65 38 63 66 39 35 63 36 64  5cb6ca1e8cf95c6d
7040: 37 32 39 35 30 37 36 36 31 66 63 63 36 38 37 31  729507661fcc6871
7050: 35 36 39 32 32 63 38 39 37 35 36 34 35 65 35 66  56922c8975645e5f
7060: 33 36 65 62 61 38 61 33 30 36 39 65 63 63 62 32  36eba8a3069eccb2
7070: 39 38 65 39 36 63 34 39 38 37 36 37 63 37 63 37  98e96c498767c7c7
7080: 34 31 32 35 39 31 30 37 64 66 30 31 38 30 64 31  41259107df0180d1
7090: 35 62 39 34 36 31 64 35 31 66 66 63 38 65 36 35  5b9461d51ffc8e65
70a0: 30 33 35 63 39 32 66 63 62 66 66 66 37 34 34 65  035c92fcbfff744e
70b0: 65 61 64 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  ead]} \..-body {
70c0: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
70d0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
70e0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
70f0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
7100: 75 6c 74 20 37 38 36 65 61 33 36 38 31 35 36 34  ult 786ea3681564
7110: 37 37 36 31 36 66 64 37 36 30 33 39 66 39 62 31  77616fd76039f9b1
7120: 63 61 61 61 39 35 37 36 33 61 64 63 65 62 63 31  caaa95763adcebc1
7130: 63 66 64 61 65 38 31 39 38 66 38 32 61 34 31 31  cfdae8198f82a411
7140: 38 32 61 39 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  82a9..tcltest::t
7150: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
7160: 32 35 36 2d 32 2e 38 33 20 7b 53 48 41 35 31 32  256-2.83 {SHA512
7170: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
7180: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
7190: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
71a0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
71b0: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
71c0: 31 32 33 63 63 61 65 63 35 32 32 63 32 39 38 33  123ccaec522c2983
71d0: 62 36 63 63 32 65 30 36 62 30 39 30 30 63 33 33  b6cc2e06b0900c33
71e0: 31 64 62 34 39 64 63 35 64 35 38 30 39 63 64 66  1db49dc5d5809cdf
71f0: 38 30 63 62 31 34 61 65 61 63 62 65 31 38 34 62  80cb14aeacbe184b
7200: 31 64 64 61 62 35 64 65 36 34 33 63 32 35 30 39  1ddab5de643c2509
7210: 62 34 32 30 34 35 38 34 66 30 61 35 34 61 30 34  b4204584f0a54a04
7220: 30 38 64 30 61 66 36 32 38 36 64 32 37 31 66 39  08d0af6286d271f9
7230: 36 34 38 65 37 66 35 30 32 31 35 36 36 63 66 39  648e7f5021566cf9
7240: 31 34 66 35 36 38 62 38 66 66 66 33 36 65 65 38  14f568b8fff36ee8
7250: 65 37 31 34 62 66 31 62 32 33 32 32 38 65 30 31  e714bf1b23228e01
7260: 62 34 65 63 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  b4ec]} \..-body 
7270: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
7280: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
7290: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
72a0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
72b0: 73 75 6c 74 20 39 31 62 33 65 32 34 36 33 35 35  sult 91b3e246355
72c0: 38 39 34 31 64 30 36 32 36 39 33 36 61 38 64 32  8941d0626936a8d2
72d0: 37 35 37 32 32 66 65 32 65 36 30 30 62 62 32 34  75722fe2e600bb24
72e0: 64 66 37 38 64 37 63 34 36 37 35 32 36 37 35 64  df78d7c46752675d
72f0: 31 63 34 64 61 0a 0a 74 63 6c 74 65 73 74 3a 3a  1c4da..tcltest::
7300: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
7310: 2d 32 35 36 2d 32 2e 38 34 20 7b 53 48 41 35 31  -256-2.84 {SHA51
7320: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
7330: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
7340: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
7350: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
7360: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
7370: 20 37 35 64 30 34 30 64 64 65 61 30 34 32 38 64   75d040ddea0428d
7380: 38 32 33 31 64 63 65 34 66 62 63 39 38 63 63 34  8231dce4fbc98cc4
7390: 61 32 66 35 37 38 61 35 66 34 37 34 37 35 33 37  a2f578a5f4747537
73a0: 39 64 37 34 30 61 65 64 38 61 62 32 63 65 62 35  9d740aed8ab2ceb5
73b0: 39 62 66 36 63 66 63 66 38 61 66 37 37 38 36 39  9bf6cfcf8af77869
73c0: 33 36 66 63 34 33 38 66 31 33 63 65 62 35 63 30  36fc438f13ceb5c0
73d0: 32 64 32 30 37 61 62 36 38 65 30 35 65 36 36 33  2d207ab68e05e663
73e0: 37 62 39 34 34 61 32 66 39 34 63 33 63 65 34 66  7b944a2f94c3ce4f
73f0: 36 35 36 36 31 65 64 62 32 64 36 30 34 64 37 62  65661edb2d604d7b
7400: 36 63 32 39 37 36 31 39 33 66 38 63 39 38 38 32  6c2976193f8c9882
7410: 35 37 37 66 33 35 37 5d 7d 20 5c 0a 09 2d 62 6f  577f357]} \..-bo
7420: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
7430: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
7440: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
7450: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
7460: 2d 72 65 73 75 6c 74 20 37 34 39 62 61 65 39 33  -result 749bae93
7470: 32 32 61 66 35 38 38 34 39 35 64 62 63 30 63 65  22af588495dbc0ce
7480: 34 32 36 64 65 62 64 39 65 39 63 63 34 63 30 32  426debd9e9cc4c02
7490: 66 35 30 63 35 32 63 61 32 34 36 62 35 35 38 32  f50c52ca246b5582
74a0: 38 34 30 61 38 36 63 62 0a 0a 74 63 6c 74 65 73  840a86cb..tcltes
74b0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
74c0: 35 31 32 2d 32 35 36 2d 32 2e 38 35 20 7b 53 48  512-256-2.85 {SH
74d0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
74e0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
74f0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
7500: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
7510: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
7520: 68 65 78 20 37 63 32 33 38 61 61 66 64 65 36 61  hex 7c238aafde6a
7530: 61 62 61 62 31 37 37 66 37 31 38 65 30 63 66 65  abab177f718e0cfe
7540: 31 33 38 36 63 62 31 34 32 31 62 34 37 39 39 62  1386cb1421b4799b
7550: 31 35 37 38 38 62 38 36 32 62 66 30 33 61 38 30  15788b862bf03a80
7560: 37 32 62 62 33 30 64 30 32 33 30 33 38 38 38 30  72bb30d023038880
7570: 33 32 62 61 66 35 62 65 32 34 32 33 34 31 38 32  32baf5be24234182
7580: 32 30 39 35 66 61 37 31 34 38 37 63 36 38 30 32  2095fa71487c6802
7590: 34 61 61 30 63 31 64 66 33 31 61 61 61 30 38 65  4aa0c1df31aaa08e
75a0: 38 32 65 34 62 34 35 30 38 34 34 30 62 35 34 39  82e4b4508440b549
75b0: 64 66 39 63 39 64 65 32 36 38 34 34 31 34 36 63  df9c9de26844146c
75c0: 33 63 62 38 32 63 30 36 30 63 62 30 5d 7d 20 5c  3cb82c060cb0]} \
75d0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
75e0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
75f0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
7600: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
7610: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 33 36 62  xact -result 36b
7620: 61 37 62 66 35 33 66 37 64 32 35 33 37 33 38 66  a7bf53f7d253738f
7630: 35 39 30 65 65 32 35 63 36 31 32 30 65 30 65 38  590ee25c6120e0e8
7640: 39 62 31 62 38 39 63 32 61 30 36 39 31 64 62 36  9b1b89c2a0691db6
7650: 64 33 38 62 37 32 63 32 30 30 35 35 62 0a 0a 74  d38b72c20055b..t
7660: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
7670: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 38  h_SHA512-256-2.8
7680: 36 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  6 {SHA512_256Sho
7690: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
76a0: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
76b0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
76c0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
76d0: 63 6f 64 65 20 68 65 78 20 34 37 30 62 65 31 61  code hex 470be1a
76e0: 62 35 39 35 66 38 62 66 63 62 65 36 35 31 61 61  b595f8bfcbe651aa
76f0: 66 62 65 35 38 61 39 30 63 64 34 64 37 32 64 62  fbe58a90cd4d72db
7700: 61 35 34 66 33 34 33 37 61 35 30 38 37 32 63 31  a54f3437a50872c1
7710: 36 62 64 63 38 31 35 39 33 64 32 31 63 39 63 61  6bdc81593d21c9ca
7720: 65 62 31 33 30 39 31 38 37 34 39 34 34 66 39 39  eb13091874944f99
7730: 37 37 62 63 61 35 39 65 37 37 62 33 30 33 31 38  77bca59e77b30318
7740: 34 37 61 66 61 63 36 32 65 38 32 31 33 32 34 35  47afac62e8213245
7750: 30 61 31 36 35 36 34 33 35 34 39 61 37 32 62 37  0a165643549a72b7
7760: 38 66 37 37 36 37 33 62 63 31 33 61 38 38 65 39  8f77673bc13a88e9
7770: 65 31 37 64 64 36 37 65 38 66 34 35 36 30 63 30  e17dd67e8f4560c0
7780: 37 62 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  7b2]} \..-body {
7790: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
77a0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
77b0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
77c0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
77d0: 75 6c 74 20 38 65 66 38 64 36 34 37 32 65 30 39  ult 8ef8d6472e09
77e0: 66 35 36 36 66 37 30 65 31 37 62 34 35 34 34 38  f566f70e17b45448
77f0: 39 63 31 39 33 64 31 31 66 64 39 39 38 35 35 66  9c193d11fd99855f
7800: 37 65 36 39 63 30 65 65 64 33 38 39 35 31 35 64  7e69c0eed389515d
7810: 66 35 37 37 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  f577..tcltest::t
7820: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
7830: 32 35 36 2d 32 2e 38 37 20 7b 53 48 41 35 31 32  256-2.87 {SHA512
7840: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
7850: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
7860: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
7870: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
7880: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
7890: 36 39 37 33 62 32 64 35 66 64 34 32 65 37 38 61  6973b2d5fd42e78a
78a0: 32 32 34 35 63 37 36 66 32 35 36 38 31 64 37 30  2245c76f25681d70
78b0: 34 65 61 31 39 34 65 32 62 35 37 38 32 38 31 65  4ea194e2b578281e
78c0: 35 38 63 36 64 62 36 66 36 62 62 64 61 39 32 66  58c6db6f6bbda92f
78d0: 65 66 32 38 62 64 32 63 38 36 66 34 65 35 35 31  ef28bd2c86f4e551
78e0: 38 36 66 30 34 34 38 32 34 63 64 31 34 37 63 37  86f044824cd147c7
78f0: 64 33 37 39 64 61 61 64 38 35 37 39 64 62 65 39  d379daad8579dbe9
7900: 35 30 64 34 63 65 33 66 66 64 30 36 64 33 61 32  50d4ce3ffd06d3a2
7910: 62 64 34 34 64 36 39 64 30 35 30 36 30 36 66 31  bd44d69d050606f1
7920: 39 63 63 33 38 38 38 30 66 33 66 62 36 63 36 39  9cc38880f3fb6c69
7930: 62 34 37 62 65 30 37 35 39 64 64 64 5d 7d 20 5c  b47be0759ddd]} \
7940: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
7950: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
7960: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
7970: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
7980: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 32 32 36  xact -result 226
7990: 66 61 35 34 61 62 33 31 66 35 61 37 38 65 61 62  fa54ab31f5a78eab
79a0: 34 66 39 32 62 31 30 39 37 32 66 63 66 63 38 63  4f92b10972fcfc8c
79b0: 63 61 64 32 35 65 30 66 66 61 34 39 33 36 35 64  cad25e0ffa49365d
79c0: 61 38 33 66 32 37 32 32 30 66 36 63 64 0a 0a 74  a83f27220f6cd..t
79d0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
79e0: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 38  h_SHA512-256-2.8
79f0: 38 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  8 {SHA512_256Sho
7a00: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
7a10: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
7a20: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
7a30: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
7a40: 63 6f 64 65 20 68 65 78 20 63 34 64 30 64 31 34  code hex c4d0d14
7a50: 63 39 33 30 35 38 38 36 35 64 30 66 62 65 32 65  c93058865d0fbe2e
7a60: 36 65 31 34 65 39 39 66 31 37 30 63 65 63 64 37  6e14e99f170cecd7
7a70: 35 63 31 38 33 66 39 35 33 34 33 65 66 32 36 62  5c183f95343ef26b
7a80: 66 36 35 39 32 35 66 65 39 61 61 62 34 36 34 64  f65925fe9aab464d
7a90: 64 30 30 35 65 61 33 61 38 34 65 61 61 36 33 62  d005ea3a84eaa63b
7aa0: 64 34 63 33 63 34 33 39 37 39 37 31 31 65 33 39  d4c3c43979711e39
7ab0: 66 30 35 37 38 65 31 34 66 33 35 35 64 30 37 39  f0578e14f355d079
7ac0: 38 36 62 63 64 63 32 38 31 39 62 62 37 64 36 31  86bcdc2819bb7d61
7ad0: 32 63 34 66 30 35 31 37 30 38 30 37 61 62 64 34  2c4f05170807abd4
7ae0: 39 64 38 30 36 39 61 37 32 35 63 62 37 30 63 63  9d8069a725cb70cc
7af0: 66 37 34 32 39 64 30 5d 7d 20 5c 0a 09 2d 62 6f  f7429d0]} \..-bo
7b00: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
7b10: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
7b20: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
7b30: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
7b40: 2d 72 65 73 75 6c 74 20 38 38 65 31 38 33 61 37  -result 88e183a7
7b50: 39 34 66 34 37 38 61 38 35 30 38 35 36 39 36 36  94f478a850856966
7b60: 66 64 65 64 64 37 31 62 31 34 64 38 61 62 61 37  fdedd71b14d8aba7
7b70: 32 38 31 39 66 62 32 36 66 31 34 64 32 33 31 35  2819fb26f14d2315
7b80: 63 36 37 66 32 64 65 62 0a 0a 74 63 6c 74 65 73  c67f2deb..tcltes
7b90: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
7ba0: 35 31 32 2d 32 35 36 2d 32 2e 38 39 20 7b 53 48  512-256-2.89 {SH
7bb0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
7bc0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
7bd0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
7be0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
7bf0: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
7c00: 68 65 78 20 37 33 36 36 31 37 39 39 63 37 64 32  hex 73661799c7d2
7c10: 65 32 34 65 61 34 38 34 32 39 39 64 38 63 38 63  e24ea484299d8c8c
7c20: 31 31 32 35 37 33 39 64 63 65 35 63 63 33 30 37  1125739dce5cc307
7c30: 63 33 32 37 61 33 65 35 65 61 61 38 37 39 39 38  c327a3e5eaa87998
7c40: 37 37 35 37 61 64 37 34 62 38 35 35 62 31 62 38  7757ad74b855b1b8
7c50: 34 30 66 64 33 65 63 34 34 34 62 62 65 30 38 36  40fd3ec444bbe086
7c60: 34 35 32 31 62 34 33 36 65 66 33 37 37 30 34 33  4521b436ef377043
7c70: 34 32 31 33 61 35 38 64 65 66 61 61 34 31 64 34  4213a58defaa41d4
7c80: 30 35 65 36 35 38 37 30 63 63 66 39 32 34 34 33  05e65870ccf92443
7c90: 66 31 66 30 34 61 65 64 65 34 38 62 35 65 33 65  f1f04aede48b5e3e
7ca0: 37 66 34 63 61 61 66 31 65 38 63 65 32 62 39 37  7f4caaf1e8ce2b97
7cb0: 62 38 35 38 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  b858]} \..-body 
7cc0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
7cd0: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
7ce0: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
7cf0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
7d00: 73 75 6c 74 20 61 64 31 61 66 66 64 31 62 31 39  sult ad1affd1b19
7d10: 34 62 63 30 61 66 63 33 38 39 61 32 63 62 32 33  4bc0afc389a2cb23
7d20: 32 38 31 32 34 34 61 38 64 38 30 61 35 32 34 32  281244a8d80a5242
7d30: 36 32 62 32 35 36 30 64 35 38 66 37 66 36 64 32  62b2560d58f7f6d2
7d40: 32 36 66 35 31 0a 0a 74 63 6c 74 65 73 74 3a 3a  26f51..tcltest::
7d50: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
7d60: 2d 32 35 36 2d 32 2e 39 30 20 7b 53 48 41 35 31  -256-2.90 {SHA51
7d70: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
7d80: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
7d90: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
7da0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
7db0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
7dc0: 20 64 34 39 30 36 33 34 35 33 62 37 37 39 62 31   d49063453b779b1
7dd0: 38 39 33 33 64 32 33 33 33 36 39 38 38 31 36 31  8933d23336988161
7de0: 37 63 39 38 37 66 65 66 34 62 31 38 65 65 61 36  7c987fef4b18eea6
7df0: 66 63 36 30 30 63 31 61 32 34 36 37 32 64 35 36  fc600c1a24672d56
7e00: 34 33 65 30 64 62 62 63 62 66 64 33 34 35 62 66  43e0dbbcbfd345bf
7e10: 30 63 38 36 37 34 33 66 32 63 66 36 38 34 31 33  0c86743f2cf68413
7e20: 65 36 30 39 63 33 30 30 64 35 62 62 33 31 32 32  e609c300d5bb3122
7e30: 65 65 36 38 63 35 66 30 35 36 31 35 32 39 64 64  ee68c5f0561529dd
7e40: 34 39 64 65 63 33 31 33 39 34 38 39 34 37 35 66  49dec3139489475f
7e50: 38 61 63 63 35 30 61 66 62 39 61 35 62 37 30 39  8acc50afb9a5b709
7e60: 37 61 30 66 36 64 33 31 31 38 32 39 66 32 38 36  7a0f6d311829f286
7e70: 31 65 38 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  1e8]} \..-body {
7e80: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
7e90: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
7ea0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
7eb0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
7ec0: 75 6c 74 20 36 37 36 38 39 34 36 61 33 61 32 37  ult 6768946a3a27
7ed0: 66 34 36 32 38 38 64 64 66 64 34 63 62 37 62 35  f46288ddfd4cb7b5
7ee0: 66 63 39 65 32 37 63 64 33 62 61 34 36 65 63 39  fc9e27cd3ba46ec9
7ef0: 35 39 65 36 66 33 64 30 63 62 35 62 66 66 36 38  59e6f3d0cb5bff68
7f00: 65 32 32 36 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  e226..tcltest::t
7f10: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
7f20: 32 35 36 2d 32 2e 39 31 20 7b 53 48 41 35 31 32  256-2.91 {SHA512
7f30: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
7f40: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
7f50: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
7f60: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
7f70: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
7f80: 39 30 35 38 38 38 31 32 31 33 36 30 66 65 34 36  905888121360fe46
7f90: 66 38 36 64 64 64 64 31 31 39 30 37 36 31 39 35  f86dddd119076195
7fa0: 32 31 33 34 34 33 66 33 33 39 39 30 37 66 38 37  213443f339907f87
7fb0: 65 35 61 30 35 62 31 32 32 38 36 34 61 35 62 37  e5a05b122864a5b7
7fc0: 65 66 32 62 33 63 36 62 61 64 61 62 64 32 61 37  ef2b3c6badabd2a7
7fd0: 34 32 35 31 65 66 35 66 32 31 64 36 33 39 33 38  4251ef5f21d63938
7fe0: 62 32 31 33 66 34 66 36 66 35 31 36 63 35 33 33  b213f4f6f516c533
7ff0: 36 39 37 35 62 62 35 37 32 63 65 32 38 66 63 34  6975bb572ce28fc4
8000: 36 33 30 30 32 62 35 31 64 63 37 36 36 61 66 61  63002b51dc766afa
8010: 66 32 34 31 31 66 64 36 62 31 34 65 35 38 34 39  f2411fd6b14e5849
8020: 33 62 34 38 65 34 37 61 36 61 61 66 31 32 30 37  3b48e47a6aaf1207
8030: 62 37 32 61 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  b72a]} \..-body 
8040: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
8050: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
8060: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
8070: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
8080: 73 75 6c 74 20 31 34 35 66 66 32 36 32 65 32 30  sult 145ff262e20
8090: 33 39 35 37 61 38 38 61 38 37 35 65 66 39 38 36  3957a88a875ef986
80a0: 61 63 34 38 34 32 30 34 62 32 30 64 39 63 34 62  ac484204b20d9c4b
80b0: 65 37 64 33 35 61 64 35 39 36 31 32 37 36 34 39  e7d35ad596127649
80c0: 39 31 64 34 39 0a 0a 74 63 6c 74 65 73 74 3a 3a  91d49..tcltest::
80d0: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
80e0: 2d 32 35 36 2d 32 2e 39 32 20 7b 53 48 41 35 31  -256-2.92 {SHA51
80f0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
8100: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
8110: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
8120: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
8130: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
8140: 20 62 37 35 32 61 63 34 61 64 63 39 37 30 31 32   b752ac4adc97012
8150: 31 31 39 64 38 39 35 61 38 30 30 66 33 31 38 64  119d895a800f318d
8160: 62 36 61 65 37 65 33 63 37 30 33 34 34 39 34 39  b6ae7e3c70344949
8170: 64 30 39 65 30 66 38 30 35 35 30 63 63 32 66 62  d09e0f80550cc2fb
8180: 34 38 61 38 36 30 61 34 31 63 35 37 30 62 38 33  48a860a41c570b83
8190: 34 33 35 38 31 61 32 36 31 33 34 33 62 39 33 37  43581a261343b937
81a0: 34 38 37 64 64 31 63 63 63 65 33 64 39 33 37 38  487dd1ccce3d9378
81b0: 64 61 66 38 38 32 61 66 30 30 63 31 64 61 65 64  daf882af00c1daed
81c0: 65 31 33 64 38 35 31 62 65 35 64 37 63 31 39 38  e13d851be5d7c198
81d0: 62 63 39 30 32 36 61 32 39 37 39 38 66 32 39 66  bc9026a29798f29f
81e0: 39 31 65 61 34 32 32 61 62 37 36 39 34 61 37 35  91ea422ab7694a75
81f0: 33 31 33 33 63 37 61 5d 7d 20 5c 0a 09 2d 62 6f  3133c7a]} \..-bo
8200: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
8210: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
8220: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
8230: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
8240: 2d 72 65 73 75 6c 74 20 32 66 33 39 39 64 63 35  -result 2f399dc5
8250: 35 33 64 61 36 30 37 62 31 63 32 64 34 39 30 65  53da607b1c2d490e
8260: 36 34 36 31 36 36 34 61 35 61 32 63 30 30 37 66  6461664a5a2c007f
8270: 31 38 30 30 64 37 36 61 32 61 61 66 37 37 34 32  1800d76a2aaf7742
8280: 61 38 36 62 39 36 31 37 0a 0a 74 63 6c 74 65 73  a86b9617..tcltes
8290: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
82a0: 35 31 32 2d 32 35 36 2d 32 2e 39 33 20 7b 53 48  512-256-2.93 {SH
82b0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
82c0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
82d0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
82e0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
82f0: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
8300: 68 65 78 20 31 65 66 37 30 30 31 63 35 32 38 30  hex 1ef7001c5280
8310: 33 39 33 38 65 39 33 37 64 39 33 66 35 63 38 35  3938e937d93f5c85
8320: 33 66 36 36 31 63 65 34 38 33 62 34 32 36 32 65  3f661ce483b4262e
8330: 61 63 36 33 64 38 31 61 32 33 38 39 30 33 30 33  ac63d81a23890303
8340: 36 38 66 38 34 31 65 63 30 34 36 32 38 39 63 32  68f841ec046289c2
8350: 62 66 63 31 30 30 65 30 31 32 66 35 31 32 64 39  bfc100e012f512d9
8360: 64 66 61 66 63 32 37 31 36 30 38 66 33 65 65 63  dfafc271608f3eec
8370: 35 65 38 39 62 37 38 63 61 33 38 64 36 66 35 35  5e89b78ca38d6f55
8380: 62 31 36 37 31 34 31 33 62 34 65 34 34 63 39 65  b1671413b4e44c9e
8390: 62 36 33 36 39 31 35 64 31 32 39 39 33 66 30 39  b636915d12993f09
83a0: 32 62 33 37 65 62 62 33 35 64 34 39 66 37 30 39  2b37ebb35d49f709
83b0: 33 34 38 30 36 33 64 35 64 63 61 33 5d 7d 20 5c  348063d5dca3]} \
83c0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
83d0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
83e0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
83f0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
8400: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 37 37 65  xact -result 77e
8410: 33 37 31 33 34 39 63 34 36 36 66 36 63 33 33 31  371349c466f6c331
8420: 66 61 63 30 32 38 34 39 38 37 35 33 37 63 31 35  fac0284987537c15
8430: 64 30 34 33 30 65 33 66 30 63 63 61 38 66 31 66  d0430e3f0cca8f1f
8440: 65 32 61 61 37 63 37 39 34 65 66 30 39 0a 0a 74  e2aa7c794ef09..t
8450: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
8460: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 39  h_SHA512-256-2.9
8470: 34 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  4 {SHA512_256Sho
8480: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
8490: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
84a0: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
84b0: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
84c0: 63 6f 64 65 20 68 65 78 20 32 38 34 62 66 66 33  code hex 284bff3
84d0: 62 36 61 36 38 33 66 66 32 32 30 66 35 63 62 66  b6a683ff220f5cbf
84e0: 64 33 63 32 66 62 38 61 37 32 62 64 62 38 35 30  d3c2fb8a72bdb850
84f0: 36 66 63 64 64 35 62 32 64 63 35 30 37 39 34 61  6fcdd5b2dc50794a
8500: 33 34 32 32 66 37 62 31 34 63 30 38 34 35 32 34  3422f7b14c084524
8510: 37 33 39 32 32 39 61 35 30 63 31 65 33 38 65 30  739229a50c1e38e0
8520: 37 32 30 37 38 66 31 62 38 63 31 62 39 30 39 31  72078f1b8c1b9091
8530: 63 63 62 33 61 65 63 38 38 38 64 31 66 66 61 36  ccb3aec888d1ffa6
8540: 35 31 66 33 31 61 62 65 30 34 36 33 31 38 62 65  51f31abe046318be
8550: 32 39 39 36 63 38 32 34 33 65 32 38 66 35 39 33  2996c8243e28f593
8560: 62 63 37 62 64 37 61 31 39 61 61 64 66 66 37 33  bc7bd7a19aadff73
8570: 37 63 64 33 62 63 65 32 64 62 61 34 39 36 63 34  7cd3bce2dba496c4
8580: 35 65 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  5e2]} \..-body {
8590: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
85a0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
85b0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
85c0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
85d0: 75 6c 74 20 62 66 61 61 35 34 39 36 33 35 32 31  ult bfaa54963521
85e0: 65 36 65 31 61 63 37 32 62 35 35 65 65 34 64 36  e6e1ac72b55ee4d6
85f0: 35 34 63 30 34 31 66 36 32 62 37 33 61 64 35 61  54c041f62b73ad5a
8600: 35 33 30 35 63 35 38 66 34 37 62 62 32 35 64 62  5305c58f47bb25db
8610: 37 63 63 32 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  7cc2..tcltest::t
8620: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
8630: 32 35 36 2d 32 2e 39 35 20 7b 53 48 41 35 31 32  256-2.95 {SHA512
8640: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
8650: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
8660: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
8670: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
8680: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
8690: 30 38 31 64 30 38 33 39 37 65 31 33 35 33 30 37  081d08397e135307
86a0: 33 66 38 64 66 32 34 36 37 35 35 38 38 61 64 32  3f8df24675588ad2
86b0: 31 35 65 34 64 63 33 36 31 35 61 35 39 64 32 61  15e4dc3615a59d2a
86c0: 64 39 62 39 38 31 35 61 65 65 63 62 39 61 36 39  d9b9815aeecb9a69
86d0: 66 61 33 37 65 30 33 36 66 33 36 66 31 31 35 65  fa37e036f36f115e
86e0: 39 30 39 64 62 62 30 32 66 64 38 61 39 36 63 61  909dbb02fd8a96ca
86f0: 64 33 62 65 31 38 32 39 34 37 65 39 34 34 65 33  d3be182947e944e3
8700: 61 32 38 31 63 33 63 64 66 31 61 64 33 35 64 34  a281c3cdf1ad35d4
8710: 66 64 36 32 63 39 34 31 37 64 63 62 30 62 33 63  fd62c9417dcb0b3c
8720: 38 62 65 66 66 65 38 65 35 35 38 65 36 62 61 62  8beffe8e558e6bab
8730: 31 35 34 62 37 38 65 66 34 33 31 31 37 63 32 38  154b78ef43117c28
8740: 30 38 61 66 31 32 35 35 66 37 63 35 5d 7d 20 5c  08af1255f7c5]} \
8750: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
8760: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
8770: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
8780: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
8790: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 65 61 38  xact -result ea8
87a0: 66 62 65 32 37 33 63 64 32 62 62 33 61 62 39 63  fbe273cd2bb3ab9c
87b0: 63 37 66 33 36 34 30 66 62 34 65 33 31 35 33 61  c7f3640fb4e3153a
87c0: 30 32 38 64 38 62 61 39 61 38 38 30 62 33 62 38  028d8ba9a880b3b8
87d0: 32 31 39 30 30 36 63 32 38 32 38 31 66 0a 0a 74  219006c28281f..t
87e0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
87f0: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 39  h_SHA512-256-2.9
8800: 36 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f  6 {SHA512_256Sho
8810: 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74  rtMsg} \..-const
8820: 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35  raints SHA512_25
8830: 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74  6 \..-setup {set
8840: 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65   data [binary de
8850: 63 6f 64 65 20 68 65 78 20 31 65 64 36 32 34 34  code hex 1ed6244
8860: 61 35 39 39 36 64 35 61 34 34 32 33 63 30 31 30  a5996d5a4423c010
8870: 36 61 34 62 38 65 37 38 35 64 37 35 30 63 37 33  6a4b8e785d750c73
8880: 31 33 38 34 33 66 33 64 66 64 36 61 63 32 37 32  13843f3dfd6ac272
8890: 63 36 65 61 61 31 64 62 65 39 61 62 65 35 64 63  c6eaa1dbe9abe5dc
88a0: 64 34 35 37 34 35 33 65 32 36 32 34 36 61 33 64  d457453e26246a3d
88b0: 66 64 64 62 64 63 31 34 30 64 32 64 39 62 63 61  fddbdc140d2d9bca
88c0: 30 66 65 62 33 35 61 37 66 37 33 36 31 36 61 34  0feb35a7f73616a4
88d0: 32 38 66 31 61 35 36 37 62 32 65 39 61 66 38 36  28f1a567b2e9af86
88e0: 62 31 66 63 38 61 65 63 36 64 35 39 37 62 31 62  b1fc8aec6d597b1b
88f0: 35 35 66 32 61 61 32 32 31 39 62 33 62 36 36 32  55f2aa2219b3b662
8900: 66 61 36 62 64 33 34 30 37 39 36 63 30 65 63 64  fa6bd340796c0ecd
8910: 61 36 63 39 36 61 62 5d 7d 20 5c 0a 09 2d 62 6f  a6c96ab]} \..-bo
8920: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
8930: 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32  -digest SHA512-2
8940: 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20  56 -data $data} 
8950: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20  \..-match exact 
8960: 2d 72 65 73 75 6c 74 20 38 66 63 32 32 36 33 35  -result 8fc22635
8970: 31 37 63 38 35 64 37 61 62 38 39 32 36 35 39 35  17c85d7ab8926595
8980: 62 38 30 34 37 62 34 62 38 33 38 61 30 37 35 61  b8047b4b838a075a
8990: 32 39 62 32 34 64 61 37 31 32 33 30 33 63 33 65  29b24da712303c3e
89a0: 36 65 35 39 37 65 34 39 0a 0a 74 63 6c 74 65 73  6e597e49..tcltes
89b0: 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41  t::test Hash_SHA
89c0: 35 31 32 2d 32 35 36 2d 32 2e 39 37 20 7b 53 48  512-256-2.97 {SH
89d0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
89e0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
89f0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
8a00: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
8a10: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
8a20: 68 65 78 20 36 33 31 38 38 37 38 31 66 34 65 39  hex 63188781f4e9
8a30: 63 62 64 31 65 38 39 61 35 34 61 36 35 64 61 30  cbd1e89a54a65da0
8a40: 35 33 62 39 33 37 32 32 65 31 31 30 36 66 30 30  53b93722e1106f00
8a50: 66 30 32 34 61 64 31 35 38 32 34 32 31 61 62 39  f024ad1582421ab9
8a60: 31 39 33 32 36 66 38 61 36 65 31 37 35 33 36 64  19326f8a6e17536d
8a70: 36 35 39 36 65 33 63 66 34 31 33 61 39 32 33 31  6596e3cf413a9231
8a80: 31 34 31 37 33 33 65 33 37 61 61 65 35 34 30 66  141733e37aae540f
8a90: 38 37 31 31 63 65 66 61 66 65 34 38 39 61 38 37  8711cefafe489a87
8aa0: 63 34 66 32 65 36 66 64 39 34 32 66 36 38 30 39  c4f2e6fd942f6809
8ab0: 66 33 62 65 66 33 30 37 36 37 36 33 34 38 37 64  f3bef3076763487d
8ac0: 65 34 38 63 32 65 65 38 38 37 33 33 63 35 62 63  e48c2ee88733c5bc
8ad0: 38 37 30 36 31 37 61 36 36 38 63 36 66 30 31 34  870617a668c6f014
8ae0: 37 31 65 64 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  71ed]} \..-body 
8af0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
8b00: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
8b10: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
8b20: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
8b30: 73 75 6c 74 20 39 31 61 38 65 32 38 35 30 32 39  sult 91a8e285029
8b40: 30 38 35 65 32 32 34 39 38 37 30 37 38 30 36 36  085e224987078066
8b50: 34 38 36 62 36 63 36 30 35 63 62 61 63 32 37 65  486b6c605cbac27e
8b60: 34 39 65 38 34 66 34 36 33 39 37 31 30 64 64 64  49e84f4639710ddd
8b70: 30 35 64 33 33 0a 0a 74 63 6c 74 65 73 74 3a 3a  05d33..tcltest::
8b80: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
8b90: 2d 32 35 36 2d 32 2e 39 38 20 7b 53 48 41 35 31  -256-2.98 {SHA51
8ba0: 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c  2_256ShortMsg} \
8bb0: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53  ..-constraints S
8bc0: 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65  HA512_256 \..-se
8bd0: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
8be0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
8bf0: 20 33 37 31 31 37 31 62 36 32 36 63 63 65 61 38   371171b626ccea8
8c00: 62 32 39 38 30 64 63 64 33 33 62 63 62 62 38 34  b2980dcd33bcbb84
8c10: 39 66 65 35 37 64 32 30 31 30 30 30 62 63 32 34  9fe57d201000bc24
8c20: 34 33 64 38 33 30 61 39 62 65 36 62 65 66 61 32  43d830a9be6befa2
8c30: 61 36 31 31 37 64 31 33 66 39 31 37 37 32 35 32  a6117d13f9177252
8c40: 62 35 37 63 38 38 35 35 31 35 39 61 64 35 63 37  b57c8855159ad5c7
8c50: 63 30 32 37 30 31 38 37 36 63 61 33 63 38 63 64  c02701876ca3c8cd
8c60: 36 62 37 38 63 39 33 31 39 32 33 65 33 66 37 66  6b78c931923e3f7f
8c70: 34 63 31 62 65 39 31 65 39 64 62 63 36 62 31 31  4c1be91e9dbc6b11
8c80: 39 64 64 34 62 63 30 35 39 31 37 65 65 32 33 38  9dd4bc05917ee238
8c90: 37 62 66 39 64 36 33 31 66 33 35 63 35 38 62 30  7bf9d631f35c58b0
8ca0: 39 38 62 63 32 64 32 62 35 34 35 39 62 37 61 36  98bc2d2b5459b7a6
8cb0: 61 35 64 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  a5d]} \..-body {
8cc0: 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67  tls::digest -dig
8cd0: 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d  est SHA512-256 -
8ce0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
8cf0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
8d00: 75 6c 74 20 65 36 38 36 35 35 31 34 39 64 63 31  ult e68655149dc1
8d10: 34 62 63 35 37 35 39 62 38 63 61 63 62 37 63 32  4bc5759b8cacb7c2
8d20: 64 32 61 38 35 30 34 35 36 61 36 34 61 38 37 61  d2a850456a64a87a
8d30: 66 34 31 64 65 38 34 66 35 36 37 66 66 65 39 63  f41de84f567ffe9c
8d40: 35 65 36 30 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  5e60..tcltest::t
8d50: 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d  est Hash_SHA512-
8d60: 32 35 36 2d 32 2e 39 39 20 7b 53 48 41 35 31 32  256-2.99 {SHA512
8d70: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
8d80: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
8d90: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
8da0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
8db0: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
8dc0: 39 62 66 37 63 37 64 39 39 30 35 39 32 34 38 35  9bf7c7d990592485
8dd0: 38 39 62 31 38 61 33 66 64 33 62 30 33 66 34 61  89b18a3fd3b03f4a
8de0: 37 32 64 32 31 64 32 61 61 63 64 36 33 35 62 35  72d21d2aacd635b5
8df0: 63 63 37 31 62 38 36 64 32 30 34 33 31 38 30 64  cc71b86d2043180d
8e00: 34 34 30 61 36 61 36 32 61 32 31 36 30 66 35 63  440a6a62a2160f5c
8e10: 33 61 66 64 39 33 36 35 39 66 38 66 64 35 66 31  3afd93659f8fd5f1
8e20: 34 32 30 63 36 38 35 37 66 33 39 35 33 61 64 66  420c6857f3953adf
8e30: 61 35 65 31 37 33 31 63 37 32 33 31 61 30 37 63  a5e1731c7231a07c
8e40: 64 66 38 36 31 31 31 64 36 30 31 31 37 66 65 32  df86111d60117fe2
8e50: 31 66 65 62 66 33 63 37 66 39 30 36 65 32 37 31  1febf3c7f906e271
8e60: 63 39 36 34 39 64 30 61 65 61 38 36 65 39 34 62  c9649d0aea86e94b
8e70: 66 37 32 38 65 39 64 61 64 35 32 62 34 35 64 37  f728e9dad52b45d7
8e80: 66 34 64 33 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  f4d3]} \..-body 
8e90: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
8ea0: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
8eb0: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
8ec0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
8ed0: 73 75 6c 74 20 33 38 35 62 39 35 35 34 31 35 35  sult 385b9554155
8ee0: 38 61 64 30 61 39 61 32 30 63 62 39 31 31 31 36  8ad0a9a20cb91116
8ef0: 65 64 61 30 33 63 35 61 36 39 34 63 61 39 35 65  eda03c5a694ca95e
8f00: 61 62 31 63 61 66 35 63 30 64 31 35 30 31 38 39  ab1caf5c0d150189
8f10: 39 64 33 62 64 0a 0a 74 63 6c 74 65 73 74 3a 3a  9d3bd..tcltest::
8f20: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
8f30: 2d 32 35 36 2d 32 2e 31 30 30 20 7b 53 48 41 35  -256-2.100 {SHA5
8f40: 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  12_256ShortMsg} 
8f50: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
8f60: 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73  SHA512_256 \..-s
8f70: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
8f80: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
8f90: 78 20 31 39 37 33 32 36 33 61 32 36 64 34 61 34  x 1973263a26d4a4
8fa0: 31 38 63 36 39 31 64 64 35 66 35 63 63 62 37 64  18c691dd5f5ccb7d
8fb0: 64 37 32 34 31 65 62 63 61 65 32 34 63 63 65 62  d7241ebcae24cceb
8fc0: 62 65 36 30 31 37 34 63 30 66 34 65 65 65 32 37  be60174c0f4eee27
8fd0: 39 64 38 39 63 63 31 61 35 62 63 39 64 65 62 31  9d89cc1a5bc9deb1
8fe0: 37 37 31 33 36 34 33 37 65 30 32 64 35 39 63 62  77136437e02d59cb
8ff0: 30 36 35 35 35 36 62 36 65 31 33 32 62 34 66 62  065556b6e132b4fb
9000: 33 34 30 62 66 31 33 30 31 33 33 37 35 34 38 64  340bf1301337548d
9010: 61 33 64 35 64 34 34 33 32 31 62 64 33 37 30 65  a3d5d44321bd370e
9020: 32 35 62 36 37 37 30 65 32 38 65 39 36 39 64 33  25b6770e28e969d3
9030: 34 34 39 35 61 30 62 37 33 63 30 35 39 30 37 30  4495a0b73c059070
9040: 62 63 62 66 65 66 65 35 65 32 66 66 36 31 34 31  bcbfefe5e2ff6141
9050: 66 63 36 33 35 33 34 36 5d 7d 20 5c 0a 09 2d 62  fc635346]} \..-b
9060: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
9070: 20 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d   -digest SHA512-
9080: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
9090: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
90a0: 20 2d 72 65 73 75 6c 74 20 33 39 64 38 37 34 30   -result 39d8740
90b0: 64 35 36 65 35 38 66 30 32 37 61 36 61 66 31 33  d56e58f027a6af13
90c0: 63 63 65 39 62 36 34 38 34 62 32 33 66 61 36 62  cce9b6484b23fa6b
90d0: 33 36 39 33 33 35 34 31 37 35 63 30 33 34 61 63  3693354175c034ac
90e0: 31 37 37 38 61 31 61 37 35 0a 0a 74 63 6c 74 65  1778a1a75..tclte
90f0: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
9100: 41 35 31 32 2d 32 35 36 2d 32 2e 31 30 31 20 7b  A512-256-2.101 {
9110: 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d  SHA512_256ShortM
9120: 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69  sg} \..-constrai
9130: 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c  nts SHA512_256 \
9140: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
9150: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
9160: 65 20 68 65 78 20 65 63 38 65 65 36 35 63 65 66  e hex ec8ee65cef
9170: 30 35 34 35 32 64 65 66 65 38 33 32 65 30 61 33  05452defe832e0a3
9180: 61 33 62 61 36 31 31 36 61 38 64 35 64 36 61 38  a3ba6116a8d5d6a8
9190: 36 33 38 65 32 65 35 36 36 66 36 33 66 64 33 63  638e2e566f63fd3c
91a0: 30 61 65 66 38 37 35 38 63 36 63 36 31 61 39 31  0aef8758c6c61a91
91b0: 38 32 61 31 61 32 66 38 39 39 62 62 37 37 34 64  82a1a2f899bb774d
91c0: 35 39 37 61 37 39 63 35 62 37 35 32 35 66 30 61  597a79c5b7525f0a
91d0: 34 30 65 37 34 63 38 34 35 33 37 31 61 33 64 37  40e74c845371a3d7
91e0: 38 65 36 35 31 64 61 64 38 36 35 32 31 39 62 35  8e651dad865219b5
91f0: 62 62 30 38 33 33 65 63 63 62 30 30 31 37 31 62  bb0833eccb00171b
9200: 65 35 66 38 39 38 61 30 38 31 64 65 66 63 37 32  e5f898a081defc72
9210: 34 65 65 66 39 61 36 30 36 63 32 30 61 38 39 39  4eef9a606c20a899
9220: 64 63 62 64 34 65 37 31 33 35 35 30 66 65 5d 7d  dcbd4e713550fe]}
9230: 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a   \..-body {tls::
9240: 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53  digest -digest S
9250: 48 41 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20  HA512-256 -data 
9260: 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68  $data} \..-match
9270: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 33   exact -result 3
9280: 65 37 61 36 35 32 64 38 39 64 66 39 65 64 37 63  e7a652d89df9ed7c
9290: 61 63 66 35 33 64 30 33 33 39 39 37 63 38 37 35  acf53d033997c875
92a0: 32 38 62 38 63 63 33 37 64 35 39 62 38 65 61 66  28b8cc37d59b8eaf
92b0: 62 65 64 62 65 34 65 38 65 39 63 35 63 33 62 0a  bedbe4e8e9c5c3b.
92c0: 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48  .tcltest::test H
92d0: 61 73 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32  ash_SHA512-256-2
92e0: 2e 31 30 32 20 7b 53 48 41 35 31 32 5f 32 35 36  .102 {SHA512_256
92f0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
9300: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35 31 32  nstraints SHA512
9310: 5f 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  _256 \..-setup {
9320: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
9330: 20 64 65 63 6f 64 65 20 68 65 78 20 64 66 34 31   decode hex df41
9340: 30 61 38 62 36 35 66 31 37 31 33 39 66 63 38 65  0a8b65f17139fc8e
9350: 62 38 34 39 35 64 66 38 31 33 62 31 66 36 66 39  b8495df813b1f6f9
9360: 66 31 62 37 34 37 31 63 37 65 36 32 38 63 63 33  f1b7471c7e628cc3
9370: 36 64 32 65 39 63 37 34 66 36 30 33 31 31 37 34  6d2e9c74f6031174
9380: 31 61 36 38 61 39 39 37 32 65 66 35 65 63 35 36  1a68a9972ef5ec56
9390: 39 37 30 36 30 66 32 32 64 33 62 37 31 39 66 38  97060f22d3b719f8
93a0: 62 39 30 63 34 34 33 36 30 31 36 66 61 36 61 64  b90c4436016fa6ad
93b0: 30 36 36 30 31 30 66 37 63 62 36 38 33 37 30 61  066010f7cb68370a
93c0: 33 63 34 65 31 31 30 65 62 37 38 65 38 32 36 63  3c4e110eb78e826c
93d0: 63 62 30 37 33 38 32 38 34 30 66 34 64 34 37 30  cb07382840f4d470
93e0: 35 37 31 64 34 61 37 35 35 32 34 66 38 61 37 39  571d4a75524f8a79
93f0: 33 37 30 39 36 30 32 39 64 32 37 38 39 38 32 65  37096029d278982e
9400: 66 39 61 35 36 37 5d 7d 20 5c 0a 09 2d 62 6f 64  f9a567]} \..-bod
9410: 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d  y {tls::digest -
9420: 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32 35  digest SHA512-25
9430: 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  6 -data $data} \
9440: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
9450: 72 65 73 75 6c 74 20 32 39 34 63 38 37 38 38 30  result 294c87880
9460: 33 36 30 39 38 66 34 39 63 32 33 30 31 36 35 33  36098f49c2301653
9470: 34 64 30 33 32 39 33 39 64 35 65 39 36 33 38 65  4d032939d5e9638e
9480: 33 65 34 65 38 34 37 34 35 33 33 66 35 32 62 36  3e4e8474533f52b6
9490: 36 38 66 32 64 61 31 0a 0a 74 63 6c 74 65 73 74  68f2da1..tcltest
94a0: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 35  ::test Hash_SHA5
94b0: 31 32 2d 32 35 36 2d 32 2e 31 30 33 20 7b 53 48  12-256-2.103 {SH
94c0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
94d0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
94e0: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
94f0: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
9500: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
9510: 68 65 78 20 32 37 63 32 65 65 35 66 36 33 63 31  hex 27c2ee5f63c1
9520: 31 34 63 31 66 36 31 35 33 30 36 38 35 63 31 39  14c1f61530685c19
9530: 63 32 31 61 34 62 37 64 34 37 62 33 34 32 38 65  c21a4b7d47b3428e
9540: 36 62 38 32 36 35 62 38 37 62 66 30 38 38 34 39  6b8265b87bf08849
9550: 31 39 36 32 38 61 37 37 33 33 36 31 65 34 61 35  19628a773361e4a5
9560: 33 36 66 39 38 31 65 32 37 65 35 65 64 31 62 33  36f981e27e5ed1b3
9570: 31 32 64 36 31 39 31 32 38 65 64 32 30 64 62 36  12d619128ed20db6
9580: 36 30 35 65 61 30 39 35 33 37 62 63 31 62 61 38  605ea09537bc1ba8
9590: 62 39 34 63 36 63 65 65 37 35 62 30 63 31 62 33  b94c6cee75b0c1b3
95a0: 31 38 32 63 35 36 31 32 65 33 35 33 38 62 62 39  182c5612e3538bb9
95b0: 35 63 65 30 33 61 65 63 34 34 65 32 34 37 63 64  5ce03aec44e247cd
95c0: 63 61 31 63 37 39 64 61 66 65 61 62 38 38 62 37  ca1c79dafeab88b7
95d0: 38 38 65 39 37 37 32 65 39 61 39 32 32 33 37 34  88e9772e9a922374
95e0: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
95f0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
9600: 20 53 48 41 35 31 32 2d 32 35 36 20 2d 64 61 74   SHA512-256 -dat
9610: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
9620: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
9630: 20 63 66 30 32 37 66 36 30 31 37 36 31 38 64 39   cf027f6017618d9
9640: 37 30 64 61 38 33 38 36 35 64 38 64 61 35 36 30  70da83865d8da560
9650: 66 34 35 34 63 65 32 62 64 38 36 61 66 35 39 36  f454ce2bd86af596
9660: 32 34 66 62 38 37 63 38 65 34 38 62 65 62 32 30  24fb87c8e48beb20
9670: 38 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  8..tcltest::test
9680: 20 48 61 73 68 5f 53 48 41 35 31 32 2d 32 35 36   Hash_SHA512-256
9690: 2d 32 2e 31 30 34 20 7b 53 48 41 35 31 32 5f 32  -2.104 {SHA512_2
96a0: 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d  56ShortMsg} \..-
96b0: 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35  constraints SHA5
96c0: 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  12_256 \..-setup
96d0: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
96e0: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 32 66  ry decode hex 2f
96f0: 35 31 30 62 37 32 61 64 31 61 32 36 66 65 61 64  510b72ad1a26fead
9700: 36 36 39 63 63 61 66 65 39 61 64 30 66 65 33 31  669ccafe9ad0fe31
9710: 63 65 30 61 31 32 66 33 64 30 36 62 65 65 39 61  ce0a12f3d06bee9a
9720: 36 63 32 37 35 30 66 64 65 62 65 65 36 64 38 39  6c2750fdebee6d89
9730: 64 61 61 62 64 62 39 31 30 64 37 31 61 65 65 36  daabdb910d71aee6
9740: 65 33 62 32 65 32 61 38 63 61 62 33 66 39 35 62  e3b2e2a8cab3f95b
9750: 30 36 33 63 65 34 33 64 61 66 39 34 32 37 64 37  063ce43daf9427d7
9760: 66 39 61 64 33 39 64 33 62 39 39 62 32 39 30 64  f9ad39d3b99b290d
9770: 32 34 34 61 38 37 65 64 64 39 37 31 38 32 66 33  244a87edd97182f3
9780: 32 32 63 32 34 65 39 33 37 36 36 34 63 39 34 34  22c24e937664c944
9790: 34 33 61 32 35 64 64 34 65 62 65 35 32 38 66 65  43a25dd4ebe528fe
97a0: 30 63 64 66 35 61 33 65 30 35 30 61 64 66 65 34  0cdf5a3e050adfe4
97b0: 62 36 35 31 33 66 36 38 38 37 30 63 5d 7d 20 5c  b6513f68870c]} \
97c0: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
97d0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
97e0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
97f0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
9800: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 38 39 36  xact -result 896
9810: 39 37 32 37 66 35 32 32 61 62 33 39 32 64 31 31  9727f522ab392d11
9820: 63 33 63 66 61 37 64 30 32 66 61 32 66 39 62 34  c3cfa7d02fa2f9b4
9830: 35 37 61 31 64 65 32 61 66 64 33 36 30 61 63 39  57a1de2afd360ac9
9840: 62 32 62 34 66 65 63 65 38 34 65 33 32 0a 0a 74  b2b4fece84e32..t
9850: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
9860: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 31  h_SHA512-256-2.1
9870: 30 35 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68  05 {SHA512_256Sh
9880: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
9890: 74 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32  traints SHA512_2
98a0: 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  56 \..-setup {se
98b0: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
98c0: 65 63 6f 64 65 20 68 65 78 20 32 61 38 31 65 62  ecode hex 2a81eb
98d0: 30 65 36 66 31 64 31 33 64 66 36 35 34 34 63 36  0e6f1d13df6544c6
98e0: 39 33 32 31 63 35 36 31 61 34 38 39 66 66 39 64  9321c561a489ff9d
98f0: 37 37 62 39 61 65 31 31 64 37 61 36 30 34 66 38  77b9ae11d7a604f8
9900: 61 32 30 31 66 63 33 35 63 32 35 66 65 62 39 34  a201fc35c25feb94
9910: 35 66 39 36 35 37 35 33 35 33 36 61 30 64 65 31  5f965753536a0de1
9920: 64 66 36 39 36 65 65 35 39 63 31 33 30 61 38 32  df696ee59c130a82
9930: 62 34 33 65 37 30 64 39 35 31 62 39 34 33 64 30  b43e70d951b943d0
9940: 35 36 33 30 39 31 31 32 34 65 34 66 36 31 35 38  563091124e4f6158
9950: 61 31 32 61 38 62 65 36 30 65 64 64 63 64 35 38  a12a8be60eddcd58
9960: 35 35 36 66 31 61 39 65 33 34 66 64 33 35 34 36  556f1a9e34fd3546
9970: 39 35 31 34 37 66 66 39 30 36 35 65 30 65 34 39  95147ff9065e0e49
9980: 36 39 38 31 66 65 61 61 65 64 34 34 30 63 62 64  6981feaaed440cbd
9990: 33 64 66 34 36 30 64 35 66 37 5d 7d 20 5c 0a 09  3df460d5f7]} \..
99a0: 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65  -body {tls::dige
99b0: 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 35 31  st -digest SHA51
99c0: 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64 61 74  2-256 -data $dat
99d0: 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61  a} \..-match exa
99e0: 63 74 20 2d 72 65 73 75 6c 74 20 33 38 31 38 61  ct -result 3818a
99f0: 31 34 62 34 61 62 64 39 30 30 63 38 32 33 32 37  14b4abd900c82327
9a00: 35 64 34 35 61 66 65 61 36 65 64 31 64 66 36 63  5d45afea6ed1df6c
9a10: 63 36 35 39 65 62 33 65 66 33 38 37 34 34 35 66  c659eb3ef387445f
9a20: 38 61 64 33 39 30 33 36 32 33 66 0a 0a 74 63 6c  8ad3903623f..tcl
9a30: 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f  test::test Hash_
9a40: 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 31 30 36  SHA512-256-2.106
9a50: 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72   {SHA512_256Shor
9a60: 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72  tMsg} \..-constr
9a70: 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36  aints SHA512_256
9a80: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
9a90: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
9aa0: 6f 64 65 20 68 65 78 20 39 61 61 31 66 61 35 34  ode hex 9aa1fa54
9ab0: 30 61 63 62 34 64 32 61 35 39 61 36 61 33 61 61  0acb4d2a59a6a3aa
9ac0: 38 63 32 66 64 62 63 64 30 61 34 61 31 37 62 36  8c2fdbcd0a4a17b6
9ad0: 62 35 35 35 30 38 65 36 35 61 30 33 36 63 62 33  b55508e65a036cb3
9ae0: 34 62 36 38 64 34 66 36 34 61 35 30 61 62 30 35  4b68d4f64a50ab05
9af0: 61 39 64 35 37 34 65 31 62 30 33 31 35 33 62 30  a9d574e1b03153b0
9b00: 33 66 64 30 63 66 36 64 62 34 61 61 64 36 64 65  3fd0cf6db4aad6de
9b10: 30 66 63 66 30 31 63 36 35 35 34 33 31 61 35 64  0fcf01c655431a5d
9b20: 33 32 30 64 64 63 66 64 65 31 38 62 66 39 31 65  320ddcfde18bf91e
9b30: 35 31 30 38 36 32 38 34 38 30 39 30 63 32 62 37  510862848090c2b7
9b40: 32 62 30 33 34 62 62 34 61 61 36 39 62 36 65 32  2b034bb4aa69b6e2
9b50: 31 36 38 35 38 35 34 37 61 63 61 64 38 63 66 63  16858547acad8cfc
9b60: 37 36 64 39 61 66 64 65 32 38 66 39 65 64 38 37  76d9afde28f9ed87
9b70: 34 38 38 63 39 65 37 64 39 31 5d 7d 20 5c 0a 09  488c9e7d91]} \..
9b80: 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65  -body {tls::dige
9b90: 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 35 31  st -digest SHA51
9ba0: 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64 61 74  2-256 -data $dat
9bb0: 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61  a} \..-match exa
9bc0: 63 74 20 2d 72 65 73 75 6c 74 20 66 39 34 32 34  ct -result f9424
9bd0: 62 33 64 64 37 39 64 35 35 35 65 32 66 35 66 38  b3dd79d555e2f5f8
9be0: 61 31 38 35 39 33 33 66 37 37 64 62 39 35 38 36  a185933f77db9586
9bf0: 34 66 34 62 35 39 37 65 65 38 30 35 64 35 62 36  4f4b597ee805d5b6
9c00: 32 66 65 30 33 39 36 36 37 33 65 0a 0a 74 63 6c  2fe0396673e..tcl
9c10: 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f  test::test Hash_
9c20: 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 31 30 37  SHA512-256-2.107
9c30: 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72   {SHA512_256Shor
9c40: 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72  tMsg} \..-constr
9c50: 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36  aints SHA512_256
9c60: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
9c70: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
9c80: 6f 64 65 20 68 65 78 20 63 63 66 32 63 63 30 63  ode hex ccf2cc0c
9c90: 64 32 32 33 62 38 30 65 62 62 64 34 39 64 62 39  d223b80ebbd49db9
9ca0: 65 64 65 37 61 32 32 38 36 32 38 31 32 64 62 63  ede7a22862812dbc
9cb0: 34 62 31 61 61 36 63 39 66 61 64 30 37 66 38 65  4b1aa6c9fad07f8e
9cc0: 66 65 30 31 37 31 36 62 39 30 31 38 30 38 34 65  fe01716b9018084e
9cd0: 32 65 61 37 36 31 36 66 38 35 62 37 33 33 33 64  2ea7616f85b7333d
9ce0: 39 34 35 63 30 63 39 37 30 66 38 63 64 64 34 30  945c0c970f8cdd40
9cf0: 30 31 33 30 62 39 38 64 62 36 37 63 64 61 36 31  0130b98db67cda61
9d00: 64 38 37 63 65 35 35 62 64 38 66 30 36 65 34 65  d87ce55bd8f06e4e
9d10: 38 66 35 61 62 66 66 32 32 36 35 35 64 35 64 39  8f5abff22655d5d9
9d20: 33 33 32 38 61 63 61 34 32 34 39 62 62 64 37 36  3328aca4249bbd76
9d30: 65 31 30 61 63 34 61 39 61 64 62 37 63 36 63 30  e10ac4a9adb7c6c0
9d40: 34 64 36 34 35 33 39 64 36 64 32 32 30 39 66 35  4d64539d6d2209f5
9d50: 33 66 36 34 35 39 30 30 36 35 35 37 5d 7d 20 5c  3f6459006557]} \
9d60: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
9d70: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
9d80: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
9d90: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
9da0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 30 36 64  xact -result 06d
9db0: 31 63 64 35 34 34 66 39 35 34 31 36 30 61 64 65  1cd544f954160ade
9dc0: 38 33 61 31 30 32 65 62 39 33 35 66 37 66 39 34  83a102eb935f7f94
9dd0: 38 30 30 39 35 39 31 62 33 65 61 64 61 66 34 37  8009591b3eadaf47
9de0: 36 35 38 36 38 63 36 33 34 35 30 64 38 0a 0a 74  65868c63450d8..t
9df0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
9e00: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 31  h_SHA512-256-2.1
9e10: 30 38 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68  08 {SHA512_256Sh
9e20: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
9e30: 74 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32  traints SHA512_2
9e40: 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  56 \..-setup {se
9e50: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
9e60: 65 63 6f 64 65 20 68 65 78 20 35 61 61 31 62 38  ecode hex 5aa1b8
9e70: 35 63 61 38 34 66 32 34 66 34 38 37 66 36 39 65  5ca84f24f487f69e
9e80: 37 39 36 32 36 38 38 32 36 35 31 38 31 35 34 62  796268826518154b
9e90: 64 36 61 32 32 34 35 38 33 65 66 36 63 33 66 31  d6a224583ef6c3f1
9ea0: 35 63 32 62 62 62 38 35 36 62 64 64 34 37 33 35  5c2bbb856bdd4735
9eb0: 39 39 64 33 32 36 39 37 62 61 64 66 65 66 62 33  99d32697badfefb3
9ec0: 33 65 30 36 61 35 35 32 36 30 65 31 38 62 37 39  3e06a55260e18b79
9ed0: 61 31 34 33 33 39 33 30 37 35 31 64 66 30 38 37  a1433930751df087
9ee0: 33 63 39 65 32 62 64 62 37 33 39 65 37 36 35 36  3c9e2bdb739e7656
9ef0: 32 63 33 63 38 33 62 35 62 62 63 36 37 62 34 65  2c3c83b5bbc67b4e
9f00: 62 33 64 61 39 32 35 31 31 31 63 62 64 65 34 65  b3da925111cbde4e
9f10: 62 36 34 36 36 39 66 37 31 62 33 36 38 35 32 38  b64669f71b368528
9f20: 34 30 65 34 35 66 32 34 65 35 36 33 64 37 32 32  40e45f24e563d722
9f30: 66 64 32 62 38 66 30 38 36 30 30 34 34 32 37 36  fd2b8f0860044276
9f40: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
9f50: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
9f60: 20 53 48 41 35 31 32 2d 32 35 36 20 2d 64 61 74   SHA512-256 -dat
9f70: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
9f80: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
9f90: 20 63 37 36 30 64 65 35 36 31 32 65 63 39 64 30   c760de5612ec9d0
9fa0: 34 37 38 34 38 37 32 37 62 32 36 31 63 38 38 37  47848727b261c887
9fb0: 36 62 36 63 33 33 62 32 63 35 37 65 65 31 61 63  6b6c33b2c57ee1ac
9fc0: 39 39 64 61 30 38 39 30 63 30 30 39 62 39 35 34  99da0890c009b954
9fd0: 30 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  0..tcltest::test
9fe0: 20 48 61 73 68 5f 53 48 41 35 31 32 2d 32 35 36   Hash_SHA512-256
9ff0: 2d 32 2e 31 30 39 20 7b 53 48 41 35 31 32 5f 32  -2.109 {SHA512_2
a000: 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d  56ShortMsg} \..-
a010: 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35  constraints SHA5
a020: 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  12_256 \..-setup
a030: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
a040: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 62 36  ry decode hex b6
a050: 31 33 65 65 62 62 61 64 37 61 31 38 36 30 39 32  13eebbad7a186092
a060: 38 61 65 37 33 32 39 61 33 38 63 66 65 38 36 66  8ae7329a38cfe86f
a070: 31 31 37 34 61 35 37 39 37 34 30 65 63 63 35 63  1174a579740ecc5c
a080: 66 66 31 32 31 36 63 32 34 37 30 66 65 32 35 61  ff1216c2470fe25a
a090: 63 63 64 35 63 63 32 31 32 63 64 64 38 30 65 30  ccd5cc212cdd80e0
a0a0: 39 36 65 35 64 31 66 35 38 32 64 62 30 35 35 37  96e5d1f582db0557
a0b0: 39 66 66 63 37 33 64 35 30 64 33 64 35 31 39 65  9ffc73d50d3d519e
a0c0: 63 64 65 61 63 37 30 36 37 36 38 64 34 37 38 37  cdeac706768d4787
a0d0: 32 39 31 31 32 31 30 36 63 36 32 37 35 32 35 38  29112106c6275258
a0e0: 36 30 65 39 39 64 30 35 65 66 62 64 64 65 34 63  60e99d05efbdde4c
a0f0: 34 35 37 64 39 61 36 37 34 34 64 35 64 61 31 30  457d9a6744d5da10
a100: 34 64 65 63 33 61 34 33 66 62 34 36 33 64 34 36  4dec3a43fb463d46
a110: 31 32 65 39 65 33 65 37 62 32 62 65 37 65 30 35  12e9e3e7b2be7e05
a120: 64 31 33 62 63 31 5d 7d 20 5c 0a 09 2d 62 6f 64  d13bc1]} \..-bod
a130: 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d  y {tls::digest -
a140: 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32 35  digest SHA512-25
a150: 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  6 -data $data} \
a160: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
a170: 72 65 73 75 6c 74 20 30 31 32 34 39 39 66 34 65  result 012499f4e
a180: 36 65 32 61 66 33 62 35 33 30 64 32 36 34 62 63  6e2af3b530d264bc
a190: 65 39 37 65 33 34 34 34 30 35 66 66 65 35 39 63  e97e344405ffe59c
a1a0: 30 34 62 33 31 34 33 32 65 37 66 30 34 34 36 61  04b31432e7f0446a
a1b0: 36 65 66 33 33 61 65 0a 0a 74 63 6c 74 65 73 74  6ef33ae..tcltest
a1c0: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 35  ::test Hash_SHA5
a1d0: 31 32 2d 32 35 36 2d 32 2e 31 31 30 20 7b 53 48  12-256-2.110 {SH
a1e0: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
a1f0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
a200: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
a210: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
a220: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
a230: 68 65 78 20 38 32 33 65 66 30 39 61 30 61 36 35  hex 823ef09a0a65
a240: 37 64 32 38 66 66 65 38 31 37 33 62 36 63 66 30  7d28ffe8173b6cf0
a250: 34 62 66 34 37 39 35 61 39 36 62 33 39 62 31 39  4bf4795a96b39b19
a260: 33 33 39 36 30 38 64 35 33 32 33 63 36 65 64 38  339608d5323c6ed8
a270: 63 61 63 66 65 34 32 62 66 30 34 31 32 31 66 63  cacfe42bf04121fc
a280: 32 38 64 35 65 62 34 33 39 63 65 32 64 33 61 36  28d5eb439ce2d3a6
a290: 36 62 64 34 32 30 39 39 34 33 37 33 30 39 63 39  6bd42099437309c9
a2a0: 33 32 36 38 32 37 62 62 62 39 66 63 32 39 62 30  326827bbb9fc29b0
a2b0: 32 33 32 34 63 61 63 64 31 34 62 62 30 30 37 38  2324cacd14bb0078
a2c0: 36 35 30 65 37 36 30 35 32 66 39 64 33 64 39 32  650e76052f9d3d92
a2d0: 32 36 32 30 62 66 32 66 32 39 63 39 66 34 34 33  2620bf2f29c9f443
a2e0: 31 37 63 39 64 38 32 62 65 33 31 35 31 63 32 33  17c9d82be3151c23
a2f0: 65 62 36 61 31 62 36 61 38 35 38 65 31 31 61 31  eb6a1b6a858e11a1
a300: 64 62 64 61 38 37 37 34 66 61 66 35 31 32 5d 7d  dbda8774faf512]}
a310: 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a   \..-body {tls::
a320: 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53  digest -digest S
a330: 48 41 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20  HA512-256 -data 
a340: 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68  $data} \..-match
a350: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 30   exact -result 0
a360: 38 30 34 32 63 37 39 35 30 37 32 36 38 66 64 63  8042c79507268fdc
a370: 65 62 66 31 32 37 31 39 36 31 30 32 31 39 64 31  ebf12719610219d1
a380: 33 36 34 31 31 37 65 36 36 39 31 36 62 39 65 30  364117e66916b9e0
a390: 63 31 61 32 61 65 64 66 35 62 34 61 38 64 66 0a  c1a2aedf5b4a8df.
a3a0: 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48  .tcltest::test H
a3b0: 61 73 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32  ash_SHA512-256-2
a3c0: 2e 31 31 31 20 7b 53 48 41 35 31 32 5f 32 35 36  .111 {SHA512_256
a3d0: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
a3e0: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35 31 32  nstraints SHA512
a3f0: 5f 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  _256 \..-setup {
a400: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
a410: 20 64 65 63 6f 64 65 20 68 65 78 20 39 36 30 37   decode hex 9607
a420: 63 63 61 34 35 38 37 33 61 64 64 31 39 61 39 33  cca45873add19a93
a430: 64 63 63 66 33 64 30 66 37 39 30 65 38 35 36 66  dccf3d0f790e856f
a440: 66 33 30 62 38 34 63 38 32 31 31 61 64 36 39 62  f30b84c8211ad69b
a450: 38 65 36 32 38 66 66 61 31 34 32 39 37 32 65 63  8e628ffa142972ec
a460: 61 63 35 32 36 34 31 33 38 34 32 33 32 30 38 63  ac5264138423208c
a470: 35 32 34 63 32 62 31 37 65 39 32 35 30 62 37 38  524c2b17e9250b78
a480: 30 39 33 38 62 34 31 64 37 63 66 66 34 33 30 30  0938b41d7cff4300
a490: 35 65 65 66 65 65 63 66 62 64 62 35 33 62 34 62  5eefeecfbdb53b4b
a4a0: 36 32 62 66 37 31 65 65 65 64 66 65 34 63 64 30  62bf71eeedfe4cd0
a4b0: 32 38 65 61 66 35 63 62 39 35 63 37 33 31 64 64  28eaf5cb95c731dd
a4c0: 34 39 32 37 64 39 63 66 66 64 62 31 38 61 31 34  4927d9cffdb18a14
a4d0: 36 33 32 30 39 64 66 34 62 36 38 66 35 61 65 61  63209df4b68f5aea
a4e0: 39 35 66 33 36 38 34 61 31 31 65 39 38 38 32 36  95f3684a11e98826
a4f0: 30 35 62 32 38 34 37 33 5d 7d 20 5c 0a 09 2d 62  05b28473]} \..-b
a500: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
a510: 20 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d   -digest SHA512-
a520: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
a530: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
a540: 20 2d 72 65 73 75 6c 74 20 37 33 62 34 30 38 36   -result 73b4086
a550: 64 36 39 30 61 63 65 36 39 34 30 63 30 31 39 31  d690ace6940c0191
a560: 32 61 63 62 33 61 35 37 62 66 63 31 35 63 34 61  2acb3a57bfc15c4a
a570: 31 36 63 34 30 61 39 30 62 34 33 32 39 66 31 66  16c40a90b4329f1f
a580: 61 39 66 33 30 38 35 64 32 0a 0a 74 63 6c 74 65  a9f3085d2..tclte
a590: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
a5a0: 41 35 31 32 2d 32 35 36 2d 32 2e 31 31 32 20 7b  A512-256-2.112 {
a5b0: 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d  SHA512_256ShortM
a5c0: 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69  sg} \..-constrai
a5d0: 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c  nts SHA512_256 \
a5e0: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
a5f0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
a600: 65 20 68 65 78 20 35 37 33 31 66 34 36 37 63 35  e hex 5731f467c5
a610: 62 39 32 33 63 34 33 61 66 39 63 35 66 61 38 34  b923c43af9c5fa84
a620: 39 61 61 64 32 31 61 62 38 64 64 37 64 62 31 63  9aad21ab8dd7db1c
a630: 61 31 61 36 38 37 30 36 35 35 37 31 62 37 30 35  a1a687065571b705
a640: 65 61 33 65 65 34 66 65 62 64 63 64 36 31 34 61  ea3ee4febdcd614a
a650: 64 34 64 39 38 65 31 36 62 37 39 61 34 65 30 39  d4d98e16b79a4e09
a660: 38 31 38 65 62 62 32 38 33 36 37 39 31 38 66 37  818ebb28367918f7
a670: 35 37 61 62 30 36 65 31 62 34 38 31 66 62 64 61  57ab06e1b481fbda
a680: 38 32 32 65 66 31 34 33 61 64 62 62 35 62 30 65  822ef143adbb5b0e
a690: 37 30 34 64 35 64 32 32 32 32 61 37 33 63 30 31  704d5d2222a73c01
a6a0: 35 33 65 66 31 34 61 38 31 37 62 35 63 39 62 37  53ef14a817b5c9b7
a6b0: 61 32 33 31 33 66 64 31 31 35 63 63 63 65 34 36  a2313fd115ccce46
a6c0: 39 38 65 33 66 30 65 66 61 39 63 37 33 64 35 61  98e3f0efa9c73d5a
a6d0: 62 33 30 38 39 61 32 37 65 33 66 33 61 64 62 32  b3089a27e3f3adb2
a6e0: 33 37 35 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  3759]} \..-body 
a6f0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
a700: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
a710: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
a720: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
a730: 73 75 6c 74 20 66 35 32 35 33 62 35 63 36 39 64  sult f5253b5c69d
a740: 62 39 63 37 32 34 61 65 62 66 37 36 32 65 63 35  b9c724aebf762ec5
a750: 31 63 32 32 31 66 38 61 34 64 34 65 32 31 37 34  1c221f8a4d4e2174
a760: 61 34 62 37 66 35 36 65 34 64 36 39 61 61 34 34  a4b7f56e4d69aa44
a770: 61 64 66 61 33 0a 0a 74 63 6c 74 65 73 74 3a 3a  adfa3..tcltest::
a780: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
a790: 2d 32 35 36 2d 32 2e 31 31 33 20 7b 53 48 41 35  -256-2.113 {SHA5
a7a0: 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  12_256ShortMsg} 
a7b0: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
a7c0: 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73  SHA512_256 \..-s
a7d0: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
a7e0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
a7f0: 78 20 39 32 62 32 33 63 30 62 63 34 64 38 64 30  x 92b23c0bc4d8d0
a800: 37 64 32 32 65 32 38 38 31 32 37 31 30 64 66 66  7d22e28812710dff
a810: 30 36 63 62 39 62 62 65 63 65 61 32 63 39 36 30  06cb9bbecea2c960
a820: 61 63 30 32 30 30 66 34 38 30 31 36 34 66 61 32  ac0200f480164fa2
a830: 65 31 65 65 31 39 39 32 36 63 37 66 30 62 30 39  e1ee19926c7f0b09
a840: 35 63 65 63 35 31 64 35 35 63 30 34 30 61 65 63  5cec51d55c040aec
a850: 39 39 30 62 66 39 35 30 31 61 62 64 37 64 33 35  990bf9501abd7d35
a860: 35 34 39 30 63 33 36 36 66 39 33 61 33 61 65 35  5490c366f93a3ae5
a870: 31 32 37 33 34 37 64 31 34 64 66 63 33 62 38 64  127347d14dfc3b8d
a880: 39 38 65 30 38 32 31 66 65 65 66 61 31 63 64 36  98e0821feefa1cd6
a890: 37 31 62 37 35 32 33 30 62 61 31 64 61 31 66 61  71b75230ba1da1fa
a8a0: 36 64 30 63 66 62 62 39 31 30 63 34 32 66 34 39  6d0cfbb910c42f49
a8b0: 31 64 61 38 61 35 63 34 35 35 34 32 34 65 61 36  1da8a5c455424ea6
a8c0: 35 38 38 36 64 62 32 65 37 33 35 62 32 64 30 37  5886db2e735b2d07
a8d0: 62 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74  b9]} \..-body {t
a8e0: 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65  ls::digest -dige
a8f0: 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d 64  st SHA512-256 -d
a900: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
a910: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
a920: 6c 74 20 35 35 61 30 35 39 37 66 31 31 66 66 37  lt 55a0597f11ff7
a930: 31 63 34 32 36 32 30 31 37 31 35 62 65 62 35 38  1c426201715beb58
a940: 35 66 32 35 34 62 62 33 31 63 31 64 62 61 64 65  5f254bb31c1dbade
a950: 35 33 33 66 30 34 65 34 39 39 63 33 33 39 31 66  533f04e499c3391f
a960: 66 37 39 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  f79..tcltest::te
a970: 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d 32  st Hash_SHA512-2
a980: 35 36 2d 32 2e 31 31 34 20 7b 53 48 41 35 31 32  56-2.114 {SHA512
a990: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
a9a0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
a9b0: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
a9c0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
a9d0: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
a9e0: 62 63 63 35 31 65 61 30 61 36 36 35 36 34 61 31  bcc51ea0a66564a1
a9f0: 37 31 64 61 62 66 61 32 37 39 65 33 38 34 66 34  71dabfa279e384f4
aa00: 64 39 66 64 63 62 61 33 38 30 32 38 32 31 35 37  d9fdcba380282157
aa10: 38 38 65 65 37 64 37 38 63 33 61 32 37 36 39 35  88ee7d78c3a27695
aa20: 39 36 65 36 62 32 30 37 30 61 36 66 61 32 64 31  96e6b2070a6fa2d1
aa30: 32 30 30 64 36 63 63 62 36 35 65 35 32 39 30 30  200d6ccb65e52900
aa40: 63 37 30 31 35 31 35 34 61 37 30 63 37 33 36 61  c7015154a70c736a
aa50: 32 66 35 36 32 61 63 34 65 36 31 66 34 63 32 63  2f562ac4e61f4c2c
aa60: 38 31 31 31 36 34 35 33 66 64 30 65 36 33 62 39  81116453fd0e63b9
aa70: 65 61 32 63 39 32 63 63 30 61 66 65 63 62 35 34  ea2c92cc0afecb54
aa80: 31 61 31 36 65 39 30 65 66 30 63 37 37 64 39 37  1a16e90ef0c77d97
aa90: 63 36 33 30 63 33 38 63 64 36 37 35 64 34 66 30  c630c38cd675d4f0
aaa0: 32 37 35 30 31 63 63 65 61 36 63 39 30 66 31 66  27501ccea6c90f1f
aab0: 37 38 34 31 31 38 65 64 38 66 62 35 64 32 62 39  784118ed8fb5d2b9
aac0: 37 62 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74  7b]} \..-body {t
aad0: 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65  ls::digest -dige
aae0: 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d 64  st SHA512-256 -d
aaf0: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
ab00: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
ab10: 6c 74 20 63 31 36 63 61 37 39 63 30 61 62 34 34  lt c16ca79c0ab44
ab20: 66 33 39 64 61 31 63 36 35 65 38 39 34 33 61 64  f39da1c65e8943ad
ab30: 32 65 39 30 38 38 38 63 33 64 38 30 62 35 65 33  2e90888c3d80b5e3
ab40: 62 33 62 31 62 66 66 35 39 34 30 38 62 35 39 64  b3b1bff59408b59d
ab50: 36 66 33 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  6f3..tcltest::te
ab60: 73 74 20 48 61 73 68 5f 53 48 41 35 31 32 2d 32  st Hash_SHA512-2
ab70: 35 36 2d 32 2e 31 31 35 20 7b 53 48 41 35 31 32  56-2.115 {SHA512
ab80: 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a  _256ShortMsg} \.
ab90: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48  .-constraints SH
aba0: 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74  A512_256 \..-set
abb0: 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69  up {set data [bi
abc0: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
abd0: 32 31 38 33 62 66 35 34 36 35 62 31 38 33 35 39  2183bf5465b18359
abe0: 61 34 35 31 63 66 33 30 33 30 62 61 62 30 37 66  a451cf3030bab07f
abf0: 61 37 36 31 64 31 31 39 32 36 34 34 34 63 37 64  a761d11926444c7d
ac00: 62 61 38 38 63 30 61 30 31 37 36 30 61 34 65 63  ba88c0a01760a4ec
ac10: 38 64 33 32 64 62 38 38 33 37 66 35 38 38 64 61  8d32db8837f588da
ac20: 37 36 64 65 32 33 34 61 39 64 33 62 63 64 34 39  76de234a9d3bcd49
ac30: 65 65 39 66 65 30 39 32 63 36 33 66 63 62 62 30  ee9fe092c63fcbb0
ac40: 31 34 39 63 31 64 63 31 30 66 36 32 64 66 37 39  149c1dc10f62df79
ac50: 32 39 39 30 32 37 36 61 33 65 64 61 65 61 38 32  2990276a3edaea82
ac60: 31 32 34 63 31 32 64 35 66 61 32 66 64 30 39 63  124c12d5fa2fd09c
ac70: 64 39 33 30 33 34 37 65 34 65 62 66 66 62 30 66  d930347e4ebffb0f
ac80: 32 63 62 36 61 38 39 37 32 62 33 62 64 36 31 34  2cb6a8972b3bd614
ac90: 64 64 65 37 63 63 38 32 65 33 32 38 35 32 35 39  dde7cc82e3285259
aca0: 36 30 65 33 63 33 35 38 61 65 35 65 36 34 38 31  60e3c358ae5e6481
acb0: 35 30 35 65 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  505e]} \..-body 
acc0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
acd0: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
ace0: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
acf0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
ad00: 73 75 6c 74 20 37 65 35 62 34 62 64 38 30 38 62  sult 7e5b4bd808b
ad10: 39 30 30 37 33 35 63 30 66 65 36 36 35 64 61 39  900735c0fe665da9
ad20: 34 33 37 64 61 63 61 66 38 35 32 34 39 64 66 36  437dacaf85249df6
ad30: 35 33 63 36 65 65 37 32 66 62 32 39 36 65 38 61  53c6ee72fb296e8a
ad40: 39 62 38 62 62 0a 0a 74 63 6c 74 65 73 74 3a 3a  9b8bb..tcltest::
ad50: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
ad60: 2d 32 35 36 2d 32 2e 31 31 36 20 7b 53 48 41 35  -256-2.116 {SHA5
ad70: 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  12_256ShortMsg} 
ad80: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
ad90: 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73  SHA512_256 \..-s
ada0: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
adb0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
adc0: 78 20 39 35 39 62 61 39 34 62 37 32 38 61 38 61  x 959ba94b728a8a
add0: 64 66 35 33 35 31 33 35 32 31 30 32 32 35 35 38  df53513521022558
ade0: 31 38 33 61 36 33 32 65 32 34 61 64 38 32 61 33  183a632e24ad82a3
adf0: 39 30 34 62 34 37 62 39 36 36 63 32 33 37 32 61  904b47b966c2372a
ae00: 38 37 34 31 35 32 34 66 66 61 38 32 66 65 34 30  8741524ffa82fe40
ae10: 38 35 30 37 34 32 33 64 37 61 61 34 33 34 34 64  8507423d7aa4344d
ae20: 64 34 33 64 62 35 32 34 38 32 64 31 35 62 34 61  d43db52482d15b4a
ae30: 30 33 62 37 61 66 37 61 33 33 32 38 39 39 34 39  03b7af7a33289949
ae40: 36 35 66 65 31 38 30 38 62 31 62 62 33 36 65 61  65fe1808b1bb36ea
ae50: 39 30 63 64 33 63 36 61 61 36 31 31 32 32 65 37  90cd3c6aa61122e7
ae60: 64 65 39 35 34 39 39 31 62 63 61 32 36 64 38 39  de954991bca26d89
ae70: 65 66 66 61 64 35 34 34 32 36 35 65 63 63 33 31  effad544265ecc31
ae80: 32 35 35 33 35 35 39 62 31 38 32 36 31 62 64 30  2553559b18261bd0
ae90: 32 37 32 65 61 37 38 33 34 61 35 31 64 35 36 66  272ea7834a51d56f
aea0: 35 66 63 39 38 39 33 64 5d 7d 20 5c 0a 09 2d 62  5fc9893d]} \..-b
aeb0: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
aec0: 20 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d   -digest SHA512-
aed0: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
aee0: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
aef0: 20 2d 72 65 73 75 6c 74 20 38 35 63 32 66 31 32   -result 85c2f12
af00: 35 65 36 64 31 31 66 38 33 31 38 30 37 38 32 30  5e6d11f831807820
af10: 63 63 66 30 61 35 33 39 33 32 37 31 33 64 62 63  ccf0a53932713dbc
af20: 65 66 33 65 32 33 62 30 65 33 63 30 61 61 64 38  ef3e23b0e3c0aad8
af30: 66 38 39 31 33 39 63 63 34 0a 0a 74 63 6c 74 65  f89139cc4..tclte
af40: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
af50: 41 35 31 32 2d 32 35 36 2d 32 2e 31 31 37 20 7b  A512-256-2.117 {
af60: 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d  SHA512_256ShortM
af70: 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69  sg} \..-constrai
af80: 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c  nts SHA512_256 \
af90: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
afa0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
afb0: 65 20 68 65 78 20 33 30 64 36 32 66 66 34 32 36  e hex 30d62ff426
afc0: 33 61 37 33 31 61 32 30 35 30 36 39 63 66 37 63  3a731a205069cf7c
afd0: 30 61 30 64 62 30 62 35 30 64 33 64 62 31 33 66  0a0db0b50d3db13f
afe0: 30 38 63 30 30 66 62 32 34 35 38 36 38 36 32 62  08c00fb24586862b
aff0: 37 65 33 31 63 35 65 66 66 31 64 35 31 66 35 32  7e31c5eff1d51f52
b000: 62 36 66 63 38 33 64 38 35 31 65 65 61 65 39 39  b6fc83d851eeae99
b010: 38 34 32 66 39 66 65 61 36 37 34 38 34 62 33 39  842f9fea67484b39
b020: 62 61 63 61 39 33 33 39 37 39 39 31 37 33 34 30  baca933979917340
b030: 62 31 34 36 37 63 65 64 39 33 32 37 38 34 30 64  b1467ced9327840d
b040: 63 36 30 62 39 63 62 66 30 32 61 30 34 32 64 37  c60b9cbf02a042d7
b050: 64 62 66 38 64 38 38 31 64 61 34 34 35 35 32 37  dbf8d881da445527
b060: 64 32 64 66 33 62 39 34 37 31 38 65 63 39 35 39  d2df3b94718ec959
b070: 31 36 30 36 37 31 36 66 65 32 61 65 38 63 31 66  1606716fe2ae8c1f
b080: 31 32 61 37 34 64 31 66 38 63 30 61 66 33 66 65  12a74d1f8c0af3fe
b090: 62 37 37 30 34 33 63 31 39 30 62 38 33 36 5d 7d  b77043c190b836]}
b0a0: 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a   \..-body {tls::
b0b0: 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53  digest -digest S
b0c0: 48 41 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20  HA512-256 -data 
b0d0: 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68  $data} \..-match
b0e0: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 34   exact -result 4
b0f0: 35 34 33 33 37 38 65 64 35 61 30 35 34 35 35 37  543378ed5a054557
b100: 38 38 39 62 34 36 33 34 64 34 61 61 37 37 62 64  889b4634d4aa77bd
b110: 33 30 37 32 36 62 37 39 37 32 33 35 30 31 30 64  30726b797235010d
b120: 36 61 34 39 32 30 62 66 39 63 63 33 62 34 30 0a  6a4920bf9cc3b40.
b130: 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48  .tcltest::test H
b140: 61 73 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32  ash_SHA512-256-2
b150: 2e 31 31 38 20 7b 53 48 41 35 31 32 5f 32 35 36  .118 {SHA512_256
b160: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
b170: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35 31 32  nstraints SHA512
b180: 5f 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  _256 \..-setup {
b190: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
b1a0: 20 64 65 63 6f 64 65 20 68 65 78 20 33 37 36 31   decode hex 3761
b1b0: 61 34 38 36 31 32 34 39 63 34 65 30 31 31 35 62  a4861249c4e0115b
b1c0: 39 39 37 63 32 63 38 37 65 38 35 65 35 65 61 32  997c2c87e85e5ea2
b1d0: 62 63 61 66 34 34 61 65 61 33 31 61 65 36 35 63  bcaf44aea31ae65c
b1e0: 31 39 37 35 64 35 63 66 34 35 61 34 37 36 61 33  1975d5cf45a476a3
b1f0: 65 33 62 61 39 64 32 65 38 32 36 32 35 64 30 35  e3ba9d2e82625d05
b200: 65 66 37 65 31 66 63 32 66 31 30 64 66 32 30 35  ef7e1fc2f10df205
b210: 33 36 35 32 32 32 62 39 38 65 33 33 30 63 39 39  365222b98e330c99
b220: 35 37 64 66 33 30 66 32 33 38 62 33 38 38 61 61  57df30f238b388aa
b230: 31 33 35 66 31 39 38 31 33 34 34 34 63 37 39 37  135f19813444c797
b240: 63 66 32 31 36 64 32 66 61 39 65 66 32 64 62 32  cf216d2fa9ef2db2
b250: 31 35 30 39 30 35 66 37 32 32 39 30 61 33 63 31  150905f72290a3c1
b260: 31 33 30 65 37 62 38 39 30 66 35 39 31 36 37 65  130e7b890f59167e
b270: 31 61 62 62 61 64 63 62 34 34 34 66 66 36 31 38  1abbadcb444ff618
b280: 32 30 61 65 33 65 35 33 37 38 63 62 62 38 62 30  20ae3e5378cbb8b0
b290: 33 66 31 63 31 35 5d 7d 20 5c 0a 09 2d 62 6f 64  3f1c15]} \..-bod
b2a0: 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d  y {tls::digest -
b2b0: 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32 35  digest SHA512-25
b2c0: 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  6 -data $data} \
b2d0: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
b2e0: 72 65 73 75 6c 74 20 30 38 38 31 36 37 66 31 32  result 088167f12
b2f0: 65 38 32 61 34 35 36 39 38 63 61 64 32 35 62 34  e82a45698cad25b4
b300: 30 35 64 61 35 65 32 34 61 30 66 34 35 31 35 62  05da5e24a0f4515b
b310: 32 38 62 39 31 35 62 66 65 37 39 39 64 30 39 39  28b915bfe799d099
b320: 30 37 32 33 35 39 38 0a 0a 74 63 6c 74 65 73 74  0723598..tcltest
b330: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 35  ::test Hash_SHA5
b340: 31 32 2d 32 35 36 2d 32 2e 31 31 39 20 7b 53 48  12-256-2.119 {SH
b350: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
b360: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
b370: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
b380: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
b390: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
b3a0: 68 65 78 20 36 65 32 36 65 32 62 34 31 62 38 30  hex 6e26e2b41b80
b3b0: 66 32 36 62 38 37 63 62 61 39 62 66 35 65 31 31  f26b87cba9bf5e11
b3c0: 62 37 33 34 36 31 31 65 38 39 31 31 30 63 39 32  b734611e89110c92
b3d0: 31 30 31 35 37 36 33 34 63 35 36 36 37 61 38 39  10157634c5667a89
b3e0: 65 61 63 61 31 34 61 36 31 32 31 39 30 64 34 32  eaca14a612190d42
b3f0: 65 33 66 33 64 62 30 66 31 62 61 65 63 33 34 62  e3f3db0f1baec34b
b400: 64 31 39 32 34 30 39 31 66 65 34 39 61 38 66 36  d1924091fe49a8f6
b410: 33 62 39 31 30 64 35 31 63 63 33 34 36 31 64 61  3b910d51cc3461da
b420: 64 65 33 61 64 65 66 37 30 64 35 64 61 35 35 32  de3adef70d5da552
b430: 32 39 62 64 61 36 32 66 33 61 64 35 62 66 66 64  29bda62f3ad5bffd
b440: 63 31 61 65 32 38 32 61 34 31 35 32 30 65 33 63  c1ae282a41520e3c
b450: 66 65 38 34 37 65 31 65 30 35 61 65 38 35 62 37  fe847e1e05ae85b7
b460: 36 63 31 62 39 36 63 31 64 62 36 36 32 62 64 39  6c1b96c1db662bd9
b470: 34 63 33 33 61 66 64 32 30 65 31 63 39 63 34 66  4c33afd20e1c9c4f
b480: 31 30 65 66 65 31 39 31 35 63 31 36 38 36 38 64  10efe1915c16868d
b490: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
b4a0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
b4b0: 20 53 48 41 35 31 32 2d 32 35 36 20 2d 64 61 74   SHA512-256 -dat
b4c0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
b4d0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
b4e0: 20 61 64 35 34 39 30 30 34 63 37 35 66 61 37 38   ad549004c75fa78
b4f0: 31 38 64 66 61 36 65 39 30 36 30 36 32 61 38 35  18dfa6e906062a85
b500: 30 35 38 39 66 37 61 38 64 31 37 61 31 63 34 31  0589f7a8d17a1c41
b510: 31 66 63 39 35 35 31 36 38 32 31 35 65 34 35 63  1fc955168215e45c
b520: 63 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  c..tcltest::test
b530: 20 48 61 73 68 5f 53 48 41 35 31 32 2d 32 35 36   Hash_SHA512-256
b540: 2d 32 2e 31 32 30 20 7b 53 48 41 35 31 32 5f 32  -2.120 {SHA512_2
b550: 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d  56ShortMsg} \..-
b560: 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35  constraints SHA5
b570: 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  12_256 \..-setup
b580: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
b590: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 66 65  ry decode hex fe
b5a0: 38 62 33 64 63 61 32 38 33 30 32 32 64 61 66 37  8b3dca283022daf7
b5b0: 30 32 32 61 38 38 64 66 62 38 66 66 36 31 38 34  022a88dfb8ff6184
b5c0: 37 35 30 39 63 34 31 65 39 63 65 63 34 66 32 32  7509c41e9cec4f22
b5d0: 65 36 35 32 39 37 31 66 62 32 65 61 31 63 65 35  e652971fb2ea1ce5
b5e0: 39 63 62 31 37 63 65 64 35 30 37 30 65 36 66 35  9cb17ced5070e6f5
b5f0: 61 31 38 35 64 32 65 62 64 35 65 37 65 66 30 63  a185d2ebd5e7ef0c
b600: 34 33 36 35 35 64 34 64 32 31 32 65 31 64 66 61  43655d4d212e1dfa
b610: 39 37 39 36 63 36 39 64 31 37 31 37 37 39 32 31  9796c69d17177921
b620: 66 31 39 36 31 36 33 37 32 32 65 38 62 30 66 39  f196163722e8b0f9
b630: 36 64 39 35 33 66 63 64 61 65 64 63 39 35 38 64  6d953fcdaedc958d
b640: 36 61 66 37 39 34 65 35 61 61 61 30 39 64 66 63  6af794e5aaa09dfc
b650: 30 61 64 33 34 62 35 36 30 64 64 36 36 32 66 39  0ad34b560dd662f9
b660: 62 33 37 37 30 32 63 65 34 65 39 35 32 31 34 62  b37702ce4e95214b
b670: 39 31 65 31 33 38 34 66 65 61 65 36 33 62 34 64  91e1384feae63b4d
b680: 31 32 34 37 63 66 61 64 65 32 34 38 5d 7d 20 5c  1247cfade248]} \
b690: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
b6a0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
b6b0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
b6c0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
b6d0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 33 37 61  xact -result 37a
b6e0: 38 39 61 36 33 62 34 61 33 30 65 36 61 32 31 35  89a63b4a30e6a215
b6f0: 34 39 61 32 34 35 61 32 36 33 33 65 65 35 66 64  49a245a2633ee5fd
b700: 62 36 31 38 65 36 37 34 39 66 36 30 35 32 32 66  b618e6749f60522f
b710: 35 61 64 30 33 61 33 34 64 34 34 36 35 0a 0a 74  5ad03a34d4465..t
b720: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
b730: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 31  h_SHA512-256-2.1
b740: 32 31 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68  21 {SHA512_256Sh
b750: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
b760: 74 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32  traints SHA512_2
b770: 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  56 \..-setup {se
b780: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
b790: 65 63 6f 64 65 20 68 65 78 20 30 34 63 34 38 62  ecode hex 04c48b
b7a0: 34 63 33 37 61 30 64 61 66 65 38 61 62 32 63 35  4c37a0dafe8ab2c5
b7b0: 31 37 65 65 62 34 37 32 33 38 35 36 36 31 30 30  17eeb47238566100
b7c0: 31 33 37 36 32 39 36 61 63 35 63 61 32 61 61 66  1376296ac5ca2aaf
b7d0: 36 37 64 62 35 63 33 30 64 66 62 65 30 62 35 39  67db5c30dfbe0b59
b7e0: 66 63 64 64 38 62 38 33 63 33 66 61 32 37 31 39  fcdd8b83c3fa2719
b7f0: 30 33 37 30 35 61 66 61 33 30 62 63 34 32 31 66  03705afa30bc421f
b800: 36 64 33 64 35 31 37 65 65 62 33 38 34 36 32 65  6d3d517eeb38462e
b810: 37 32 31 66 35 62 63 62 33 64 31 33 63 30 31 63  721f5bcb3d13c01c
b820: 30 62 61 37 34 39 66 33 37 33 65 37 36 34 35 35  0ba749f373e76455
b830: 37 38 39 39 34 64 64 62 35 64 63 32 38 35 35 38  78994ddb5dc28558
b840: 62 62 36 63 38 30 62 63 64 30 61 37 39 64 33 39  bb6c80bcd0a79d39
b850: 31 61 63 65 35 63 61 34 32 34 30 62 63 63 31 64  1ace5ca4240bcc1d
b860: 61 31 31 64 34 32 66 32 62 37 35 39 35 30 63 31  a11d42f2b75950c1
b870: 39 64 65 66 66 35 64 64 36 38 36 66 31 32 66 33  9deff5dd686f12f3
b880: 32 32 38 63 31 64 65 65 31 64 5d 7d 20 5c 0a 09  228c1dee1d]} \..
b890: 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65  -body {tls::dige
b8a0: 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 35 31  st -digest SHA51
b8b0: 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64 61 74  2-256 -data $dat
b8c0: 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61  a} \..-match exa
b8d0: 63 74 20 2d 72 65 73 75 6c 74 20 32 39 61 36 62  ct -result 29a6b
b8e0: 30 34 33 35 33 65 61 38 32 66 33 66 32 61 32 38  04353ea82f3f2a28
b8f0: 35 30 33 61 31 32 35 32 33 33 66 38 61 66 63 35  503a125233f8afc5
b900: 62 36 30 31 39 32 31 36 33 37 61 30 61 32 34 62  b601921637a0a24b
b910: 38 33 34 33 36 61 62 66 39 62 35 0a 0a 74 63 6c  83436abf9b5..tcl
b920: 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f  test::test Hash_
b930: 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 31 32 32  SHA512-256-2.122
b940: 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72   {SHA512_256Shor
b950: 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72  tMsg} \..-constr
b960: 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36  aints SHA512_256
b970: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
b980: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
b990: 6f 64 65 20 68 65 78 20 62 63 34 33 61 65 35 39  ode hex bc43ae59
b9a0: 63 31 62 65 64 37 34 66 64 34 65 62 36 31 62 65  c1bed74fd4eb61be
b9b0: 39 37 62 30 32 37 36 65 63 35 61 64 64 61 39 36  97b0276ec5adda96
b9c0: 63 36 37 63 33 62 34 36 38 30 33 37 38 65 30 32  c67c3b4680378e02
b9d0: 36 66 33 62 34 62 61 66 66 38 32 63 31 36 62 34  6f3b4baff82c16b4
b9e0: 66 61 33 61 66 31 35 39 61 37 61 32 62 31 37 32  fa3af159a7a2b172
b9f0: 39 32 37 37 61 65 34 32 30 38 61 32 62 66 39 61  9277ae4208a2bf9a
ba00: 61 34 32 38 36 36 34 31 31 65 61 62 34 37 39 38  a42866411eab4798
ba10: 36 34 33 34 64 66 37 65 65 63 32 66 37 32 37 32  6434df7eec2f7272
ba20: 34 38 62 37 34 35 66 37 66 62 31 34 30 65 33 64  48b745f7fb140e3d
ba30: 38 62 38 32 61 39 66 64 64 37 33 34 30 63 61 35  8b82a9fdd7340ca5
ba40: 61 62 39 39 37 64 62 35 39 32 64 65 30 33 36 39  ab997db592de0369
ba50: 65 62 62 34 31 61 39 38 33 66 35 33 61 61 64 63  ebb41a983f53aadc
ba60: 64 32 62 66 33 61 66 33 37 38 34 61 36 31 36 35  d2bf3af3784a6165
ba70: 61 61 35 61 37 65 36 37 64 39 36 63 61 39 30 30  aa5a7e67d96ca900
ba80: 30 32 35 39 65 61 36 61 38 33 5d 7d 20 5c 0a 09  0259ea6a83]} \..
ba90: 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65  -body {tls::dige
baa0: 73 74 20 2d 64 69 67 65 73 74 20 53 48 41 35 31  st -digest SHA51
bab0: 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64 61 74  2-256 -data $dat
bac0: 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61  a} \..-match exa
bad0: 63 74 20 2d 72 65 73 75 6c 74 20 36 65 31 32 34  ct -result 6e124
bae0: 34 35 38 37 31 37 39 65 66 66 32 38 38 38 31 62  4587179eff28881b
baf0: 62 38 30 62 30 32 64 31 39 33 39 30 38 61 34 63  b80b02d193908a4c
bb00: 34 64 30 31 34 62 34 64 61 35 62 37 65 39 33 63  4d014b4da5b7e93c
bb10: 30 39 65 32 62 32 39 36 34 66 35 0a 0a 74 63 6c  09e2b2964f5..tcl
bb20: 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f  test::test Hash_
bb30: 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 31 32 33  SHA512-256-2.123
bb40: 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72   {SHA512_256Shor
bb50: 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72  tMsg} \..-constr
bb60: 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36  aints SHA512_256
bb70: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20   \..-setup {set 
bb80: 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63  data [binary dec
bb90: 6f 64 65 20 68 65 78 20 64 64 61 64 37 38 39 37  ode hex ddad7897
bba0: 32 38 35 38 31 30 34 34 66 66 37 36 30 66 37 39  28581044ff760f79
bbb0: 30 39 39 65 30 31 61 32 63 66 63 39 34 62 61 32  099e01a2cfc94ba2
bbc0: 37 61 30 37 30 65 32 32 64 65 37 31 34 65 32 38  7a070e22de714e28
bbd0: 62 38 35 66 35 34 65 62 33 34 64 62 35 30 65 36  b85f54eb34db50e6
bbe0: 62 33 35 35 34 33 32 62 63 61 39 38 31 63 66 61  b355432bca981cfa
bbf0: 38 65 66 63 32 31 39 32 30 66 64 64 39 31 34 37  8efc21920fdd9147
bc00: 32 32 34 64 38 38 64 35 36 34 30 36 32 32 66 34  224d88d5640622f4
bc10: 37 62 61 32 65 33 32 63 39 66 30 66 35 37 65 62  7ba2e32c9f0f57eb
bc20: 35 61 33 64 66 35 64 35 38 62 31 39 34 39 35 62  5a3df5d58b19495b
bc30: 62 31 62 66 35 33 38 66 36 36 65 62 32 61 33 36  b1bf538f66eb2a36
bc40: 32 61 62 31 65 34 31 66 36 32 36 66 62 61 62 34  2ab1e41f626fbab4
bc50: 61 30 66 66 36 38 63 66 32 35 33 31 64 33 63 66  a0ff68cf2531d3cf
bc60: 61 35 37 38 65 65 65 61 34 61 65 33 64 65 63 35  a578eeea4ae3dec5
bc70: 66 62 34 66 35 64 34 31 64 64 64 63 35 63 39 38  fb4f5d41dddc5c98
bc80: 31 61 39 64 65 63 61 61 65 32 39 34 5d 7d 20 5c  1a9decaae294]} \
bc90: 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a 64 69  ..-body {tls::di
bca0: 67 65 73 74 20 2d 64 69 67 65 73 74 20 53 48 41  gest -digest SHA
bcb0: 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20 24 64  512-256 -data $d
bcc0: 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  ata} \..-match e
bcd0: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 36 65 33  xact -result 6e3
bce0: 66 66 39 36 66 34 65 34 61 37 32 32 63 39 31 32  ff96f4e4a722c912
bcf0: 33 39 32 62 33 62 35 66 61 32 30 61 65 37 36 32  392b3b5fa20ae762
bd00: 63 63 65 66 32 34 34 63 30 31 31 32 36 38 37 32  ccef244c01126872
bd10: 30 39 36 32 31 38 34 33 38 33 61 36 36 0a 0a 74  0962184383a66..t
bd20: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48 61 73  cltest::test Has
bd30: 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32 2e 31  h_SHA512-256-2.1
bd40: 32 34 20 7b 53 48 41 35 31 32 5f 32 35 36 53 68  24 {SHA512_256Sh
bd50: 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73  ortMsg} \..-cons
bd60: 74 72 61 69 6e 74 73 20 53 48 41 35 31 32 5f 32  traints SHA512_2
bd70: 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b 73 65  56 \..-setup {se
bd80: 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79 20 64  t data [binary d
bd90: 65 63 6f 64 65 20 68 65 78 20 38 63 37 32 31 34  ecode hex 8c7214
bda0: 65 31 34 65 62 36 65 30 65 65 31 34 64 65 33 63  e14eb6e0ee14de3c
bdb0: 61 30 65 64 63 62 35 31 30 61 65 63 35 30 37 39  a0edcb510aec5079
bdc0: 62 33 64 31 34 33 66 66 34 38 65 35 64 33 32 36  b3d143ff48e5d326
bdd0: 38 64 32 36 31 62 36 63 39 39 61 34 66 38 30 66  8d261b6c99a4f80f
bde0: 34 33 32 62 31 38 64 31 64 38 32 32 35 34 66 38  432b18d1d82254f8
bdf0: 30 66 62 33 34 30 39 61 33 65 32 64 30 30 31 37  0fb3409a3e2d0017
be00: 63 64 61 36 35 64 65 37 65 62 65 34 31 38 39 36  cda65de7ebe41896
be10: 38 31 37 65 37 64 30 63 36 34 33 65 33 63 31 32  817e7d0c643e3c12
be20: 63 66 63 61 37 35 31 32 31 30 38 33 31 32 31 65  cfca75121083121e
be30: 38 31 61 65 35 39 33 34 62 61 64 32 63 31 63 31  81ae5934bad2c1c1
be40: 30 35 36 30 30 35 36 33 31 33 39 39 37 38 66 33  05600563139978f3
be50: 65 64 61 64 39 38 63 33 32 63 32 30 65 35 32 34  edad98c32c20e524
be60: 36 64 37 32 66 34 32 63 30 30 66 66 62 66 62 36  6d72f42c00ffbfb6
be70: 65 30 32 34 33 66 61 39 65 38 61 33 33 64 37 65  e0243fa9e8a33d7e
be80: 34 33 34 39 36 35 66 63 32 35 63 65 39 63 34 36  434965fc25ce9c46
be90: 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  ]} \..-body {tls
bea0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
beb0: 20 53 48 41 35 31 32 2d 32 35 36 20 2d 64 61 74   SHA512-256 -dat
bec0: 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74  a $data} \..-mat
bed0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
bee0: 20 62 34 62 34 65 35 65 64 64 61 34 66 62 34 66   b4b4e5edda4fb4f
bef0: 37 63 30 65 37 33 34 63 62 63 63 61 33 63 37 38  7c0e734cbcca3c78
bf00: 64 62 64 36 66 32 63 39 61 39 39 37 61 65 38 35  dbd6f2c9a997ae85
bf10: 61 36 33 39 34 31 30 38 63 62 63 35 63 35 36 37  a6394108cbc5c567
bf20: 64 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  d..tcltest::test
bf30: 20 48 61 73 68 5f 53 48 41 35 31 32 2d 32 35 36   Hash_SHA512-256
bf40: 2d 32 2e 31 32 35 20 7b 53 48 41 35 31 32 5f 32  -2.125 {SHA512_2
bf50: 35 36 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d  56ShortMsg} \..-
bf60: 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35  constraints SHA5
bf70: 31 32 5f 32 35 36 20 5c 0a 09 2d 73 65 74 75 70  12_256 \..-setup
bf80: 20 7b 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61   {set data [bina
bf90: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 33 62  ry decode hex 3b
bfa0: 37 36 36 66 62 62 61 33 33 33 39 39 35 39 62 31  766fbba3339959b1
bfb0: 39 34 31 36 33 63 33 36 62 34 65 62 36 35 30 35  94163c36b4eb6505
bfc0: 61 63 31 37 65 37 62 32 34 65 37 35 33 65 39 39  ac17e7b24e753e99
bfd0: 31 36 65 33 65 31 32 32 35 64 61 34 31 62 34 34  16e3e1225da41b44
bfe0: 64 30 30 33 31 36 34 38 32 31 33 39 33 39 64 30  d0031648213939d0
bff0: 66 63 39 31 62 33 31 37 33 64 63 61 35 38 37 61  fc91b3173dca587a
c000: 36 30 62 64 61 64 33 38 33 38 34 30 33 65 37 36  60bdad3838403e76
c010: 65 34 34 39 33 38 38 36 30 30 35 37 33 33 36 38  e449388600573368
c020: 31 38 30 64 35 30 39 31 36 32 32 30 38 34 65 63  180d5091622084ec
c030: 61 63 37 34 33 33 31 66 39 33 38 32 30 31 30 66  ac74331f9382010f
c040: 66 36 66 64 65 35 61 36 61 61 62 35 37 66 64 34  f6fde5a6aab57fd4
c050: 36 66 62 62 61 62 64 33 32 33 63 36 35 36 62 30  6fbbabd323c656b0
c060: 33 36 64 35 39 30 30 37 35 65 31 36 65 33 30 65  36d590075e16e30e
c070: 38 63 30 37 65 33 64 34 31 65 64 62 30 37 63 62  8c07e3d41edb07cb
c080: 35 36 31 66 62 37 38 35 30 62 39 64 61 36 62 62  561fb7850b9da6bb
c090: 39 65 38 31 36 32 5d 7d 20 5c 0a 09 2d 62 6f 64  9e8162]} \..-bod
c0a0: 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d  y {tls::digest -
c0b0: 64 69 67 65 73 74 20 53 48 41 35 31 32 2d 32 35  digest SHA512-25
c0c0: 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c  6 -data $data} \
c0d0: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
c0e0: 72 65 73 75 6c 74 20 62 34 35 30 65 30 38 33 64  result b450e083d
c0f0: 39 66 33 66 35 38 32 38 34 65 66 38 30 30 32 33  9f3f58284ef80023
c100: 65 33 62 61 63 62 31 38 32 36 65 35 36 30 61 32  e3bacb1826e560a2
c110: 32 66 36 65 36 36 32 35 64 31 34 61 64 31 33 34  2f6e6625d14ad134
c120: 38 64 66 39 36 62 31 0a 0a 74 63 6c 74 65 73 74  8df96b1..tcltest
c130: 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48 41 35  ::test Hash_SHA5
c140: 31 32 2d 32 35 36 2d 32 2e 31 32 36 20 7b 53 48  12-256-2.126 {SH
c150: 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67  A512_256ShortMsg
c160: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
c170: 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09  s SHA512_256 \..
c180: 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61 74 61  -setup {set data
c190: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
c1a0: 68 65 78 20 36 65 64 38 61 39 66 39 66 32 62 61  hex 6ed8a9f9f2ba
c1b0: 66 35 37 65 36 35 39 61 65 64 31 32 37 38 33 33  f57e659aed127833
c1c0: 65 64 65 65 39 30 32 35 61 38 34 38 31 63 66 36  edee9025a8481cf6
c1d0: 31 64 37 37 32 35 35 36 63 37 35 38 32 36 61 37  1d772556c75826a7
c1e0: 31 34 66 30 31 66 62 63 31 39 35 33 65 35 65 31  14f01fbc1953e5e1
c1f0: 38 34 63 34 62 63 31 63 64 32 31 64 32 37 62 33  84c4bc1cd21d27b3
c200: 63 32 37 32 66 66 65 65 30 39 66 31 63 33 31 65  c272ffee09f1c31e
c210: 34 37 30 63 32 66 64 65 33 61 64 62 31 30 39 39  470c2fde3adb1099
c220: 33 31 62 62 35 36 34 64 63 34 33 63 36 62 38 65  31bb564dc43c6b8e
c230: 63 33 33 61 63 33 63 64 36 63 34 39 62 35 64 61  c33ac3cd6c49b5da
c240: 65 31 35 37 38 39 61 38 64 39 38 63 64 32 35 31  e15789a8d98cd251
c250: 39 35 37 35 66 65 35 39 31 36 36 32 32 62 33 37  9575fe5916622b37
c260: 38 64 30 63 33 63 31 31 31 33 37 62 32 63 63 38  8d0c3c11137b2cc8
c270: 39 61 32 37 61 33 33 34 32 33 35 65 63 37 62 31  9a27a334235ec7b1
c280: 33 32 65 35 35 35 64 61 37 66 65 32 66 30 39 34  32e555da7fe2f094
c290: 65 66 66 39 62 39 34 66 63 32 62 36 31 66 5d 7d  eff9b94fc2b61f]}
c2a0: 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73 3a 3a   \..-body {tls::
c2b0: 64 69 67 65 73 74 20 2d 64 69 67 65 73 74 20 53  digest -digest S
c2c0: 48 41 35 31 32 2d 32 35 36 20 2d 64 61 74 61 20  HA512-256 -data 
c2d0: 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68  $data} \..-match
c2e0: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 31   exact -result 1
c2f0: 37 33 31 32 61 32 36 65 66 39 62 34 31 66 66 65  7312a26ef9b41ffe
c300: 62 65 33 31 65 65 37 65 65 35 31 31 36 32 37 30  be31ee7ee5116270
c310: 34 61 32 66 30 35 61 35 39 30 35 66 66 38 62 36  4a2f05a5905ff8b6
c320: 39 32 66 64 36 30 33 39 34 32 65 39 36 36 38 0a  92fd603942e9668.
c330: 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48  .tcltest::test H
c340: 61 73 68 5f 53 48 41 35 31 32 2d 32 35 36 2d 32  ash_SHA512-256-2
c350: 2e 31 32 37 20 7b 53 48 41 35 31 32 5f 32 35 36  .127 {SHA512_256
c360: 53 68 6f 72 74 4d 73 67 7d 20 5c 0a 09 2d 63 6f  ShortMsg} \..-co
c370: 6e 73 74 72 61 69 6e 74 73 20 53 48 41 35 31 32  nstraints SHA512
c380: 5f 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  _256 \..-setup {
c390: 73 65 74 20 64 61 74 61 20 5b 62 69 6e 61 72 79  set data [binary
c3a0: 20 64 65 63 6f 64 65 20 68 65 78 20 64 63 62 34   decode hex dcb4
c3b0: 35 38 31 39 33 63 34 62 61 38 32 61 34 35 62 66  58193c4ba82a45bf
c3c0: 64 66 30 32 38 30 30 30 38 34 31 65 34 61 38 63  df028000841e4a8c
c3d0: 36 37 31 66 38 65 32 62 38 34 31 64 64 34 64 63  671f8e2b841dd4dc
c3e0: 32 61 33 64 37 62 30 66 35 64 38 36 34 32 31 34  2a3d7b0f5d864214
c3f0: 37 38 66 30 30 65 64 34 31 37 62 65 65 37 62 66  78f00ed417bee7bf
c400: 33 33 30 65 34 33 30 35 38 66 61 66 38 37 30 39  330e43058faf8709
c410: 35 33 33 32 63 62 31 33 66 37 34 34 64 64 34 34  5332cb13f744dd44
c420: 36 33 33 62 38 39 64 30 35 35 65 65 31 38 36 37  633b89d055ee1867
c430: 30 32 63 61 31 37 66 34 30 30 32 32 35 61 38 61  02ca17f400225a8a
c440: 36 33 63 37 34 30 39 62 32 37 64 39 33 37 36 63  63c7409b27d9376c
c450: 63 65 64 63 38 33 63 35 34 39 30 65 33 63 65 64  cedc83c5490e3ced
c460: 31 63 66 38 39 36 64 36 62 65 34 34 36 36 39 34  1cf896d6be446694
c470: 33 65 63 65 65 31 31 33 32 63 66 65 61 36 30 61  3ecee1132cfea60a
c480: 62 37 35 34 66 66 32 62 31 33 34 34 36 33 39 64  b754ff2b1344639d
c490: 31 65 34 35 34 30 61 62 34 32 32 35 66 38 62 65  1e4540ab4225f8be
c4a0: 39 64 39 66 32 39 38 38 5d 7d 20 5c 0a 09 2d 62  9d9f2988]} \..-b
c4b0: 6f 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74  ody {tls::digest
c4c0: 20 2d 64 69 67 65 73 74 20 53 48 41 35 31 32 2d   -digest SHA512-
c4d0: 32 35 36 20 2d 64 61 74 61 20 24 64 61 74 61 7d  256 -data $data}
c4e0: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
c4f0: 20 2d 72 65 73 75 6c 74 20 39 33 39 32 63 65 31   -result 9392ce1
c500: 34 64 33 34 34 64 65 30 35 65 34 66 38 37 66 36  4d344de05e4f87f6
c510: 33 34 62 34 35 37 30 37 39 33 34 33 65 32 37 30  34b457079343e270
c520: 66 66 66 35 62 35 63 37 62 37 33 31 65 39 66 65  fff5b5c7b731e9fe
c530: 66 31 33 37 31 31 35 64 64 0a 0a 74 63 6c 74 65  f137115dd..tclte
c540: 73 74 3a 3a 74 65 73 74 20 48 61 73 68 5f 53 48  st::test Hash_SH
c550: 41 35 31 32 2d 32 35 36 2d 32 2e 31 32 38 20 7b  A512-256-2.128 {
c560: 53 48 41 35 31 32 5f 32 35 36 53 68 6f 72 74 4d  SHA512_256ShortM
c570: 73 67 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69  sg} \..-constrai
c580: 6e 74 73 20 53 48 41 35 31 32 5f 32 35 36 20 5c  nts SHA512_256 \
c590: 0a 09 2d 73 65 74 75 70 20 7b 73 65 74 20 64 61  ..-setup {set da
c5a0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ta [binary decod
c5b0: 65 20 68 65 78 20 33 65 33 61 35 32 64 33 32 36  e hex 3e3a52d326
c5c0: 31 65 31 31 39 34 32 34 39 37 38 36 64 36 63 30  1e1194249786d6c0
c5d0: 65 31 38 64 35 32 64 39 32 66 31 63 37 36 33 39  e18d52d92f1c7639
c5e0: 66 30 37 39 63 32 36 63 35 31 61 61 37 32 64 31  f079c26c51aa72d1
c5f0: 30 33 32 65 35 64 66 31 33 65 65 61 31 64 31 30  032e5df13eea1d10
c600: 30 36 36 36 37 30 30 32 61 64 33 39 64 65 34 30  06667002ad39de40
c610: 39 39 63 32 39 63 33 62 34 37 31 39 62 31 66 30  99c29c3b4719b1f0
c620: 39 30 34 35 35 37 62 64 32 62 62 30 61 34 37 33  904557bd2bb0a473
c630: 37 34 64 38 36 39 61 63 36 62 34 36 35 62 35 66  74d869ac6b465b5f
c640: 30 30 63 34 37 30 62 31 38 65 63 62 38 63 30 65  00c470b18ecb8c0e
c650: 61 35 33 62 35 64 37 39 30 63 34 65 38 33 32 30  a53b5d790c4e8320
c660: 30 36 63 66 66 35 33 34 64 35 38 37 61 30 66 37  06cff534d587a0f7
c670: 37 64 66 39 35 31 31 37 63 61 34 66 64 34 33 61  7df95117ca4fd43a
c680: 39 34 39 33 35 65 64 61 34 32 32 32 32 38 35 33  94935eda42222853
c690: 38 64 35 65 35 64 33 61 38 37 61 34 33 36 66 31  8d5e5d3a87a436f1
c6a0: 64 62 37 65 36 33 37 38 35 36 31 39 61 65 38 36  db7e63785619ae86
c6b0: 61 36 66 39 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20  a6f9]} \..-body 
c6c0: 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69  {tls::digest -di
c6d0: 67 65 73 74 20 53 48 41 35 31 32 2d 32 35 36 20  gest SHA512-256 
c6e0: 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09  -data $data} \..
c6f0: 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65  -match exact -re
c700: 73 75 6c 74 20 62 33 34 65 37 32 63 65 66 65 66  sult b34e72cefef
c710: 62 36 33 64 36 65 33 30 39 62 63 66 62 34 66 30  b63d6e309bcfb4f0
c720: 62 31 64 33 35 30 66 32 63 35 63 35 38 32 64 65  b1d350f2c5c582de
c730: 33 62 39 33 61 64 31 33 37 66 39 32 31 61 39 32  3b93ad137f921a92
c740: 61 37 65 37 39 0a 0a 74 63 6c 74 65 73 74 3a 3a  a7e79..tcltest::
c750: 74 65 73 74 20 48 61 73 68 5f 53 48 41 35 31 32  test Hash_SHA512
c760: 2d 32 35 36 2d 32 2e 31 32 39 20 7b 53 48 41 35  -256-2.129 {SHA5
c770: 31 32 5f 32 35 36 53 68 6f 72 74 4d 73 67 7d 20  12_256ShortMsg} 
c780: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
c790: 53 48 41 35 31 32 5f 32 35 36 20 5c 0a 09 2d 73  SHA512_256 \..-s
c7a0: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b  etup {set data [
c7b0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
c7c0: 78 20 62 63 38 31 37 33 63 38 37 38 63 61 36 30  x bc8173c878ca60
c7d0: 65 39 61 30 66 38 32 33 66 39 61 35 38 39 64 34  e9a0f823f9a589d4
c7e0: 66 66 38 34 35 34 37 62 33 38 39 62 31 31 37 66  ff84547b389b117f
c7f0: 62 36 62 62 31 62 36 31 34 65 37 65 37 35 61 39  b6bb1b614e7e75a9
c800: 62 31 64 62 30 62 32 31 64 39 66 37 33 62 34 32  b1db0b21d9f73b42
c810: 61 37 33 65 39 34 65 63 63 61 62 33 64 65 35 61  a73e94eccab3de5a
c820: 65 32 38 34 35 61 35 34 65 35 65 32 34 62 61 36  e2845a54e5e24ba6
c830: 63 32 30 66 62 34 64 32 34 35 62 39 36 34 30 32  c20fb4d245b96402
c840: 33 62 38 36 33 30 34 30 64 36 66 30 38 30 65 39  3b863040d6f080e9
c850: 35 33 35 33 30 64 35 66 64 39 34 34 65 38 66 66  53530d5fd944e8ff
c860: 61 35 32 35 62 66 35 33 36 34 66 36 35 63 38 38  a525bf5364f65c88
c870: 65 30 36 65 36 65 32 32 64 66 34 62 38 63 65 65  e06e6e22df4b8cee
c880: 34 38 65 36 37 37 33 38 38 38 30 61 39 66 33 66  48e67738880a9f3f
c890: 33 34 30 36 65 39 65 36 66 30 30 31 62 30 61 63  3406e9e6f001b0ac
c8a0: 38 66 38 65 30 61 64 65 37 63 38 31 34 63 30 63  8f8e0ade7c814c0c
c8b0: 35 38 30 30 64 30 62 39 65 34 64 64 66 35 35 36  5800d0b9e4ddf556
c8c0: 32 32 5d 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74  22]} \..-body {t
c8d0: 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65  ls::digest -dige
c8e0: 73 74 20 53 48 41 35 31 32 2d 32 35 36 20 2d 64  st SHA512-256 -d
c8f0: 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d 6d  ata $data} \..-m
c900: 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73 75  atch exact -resu
c910: 6c 74 20 66 36 39 31 64 30 31 65 65 39 61 62 36  lt f691d01ee9ab6
c920: 37 35 66 33 38 37 32 33 31 33 62 37 37 65 36 61  75f3872313b77e6a
c930: 34 35 34 33 63 37 31 65 33 65 38 39 61 61 39 34  4543c71e3e89aa94
c940: 63 34 38 66 39 31 64 36 65 65 37 66 61 31 61 62  c48f91d6ee7fa1ab
c950: 34 66 62 0a 0a 23 20 43 6c 65 61 6e 75 70 0a 3a  4fb..# Cleanup.:
c960: 3a 74 63 6c 74 65 73 74 3a 3a 63 6c 65 61 6e 75  :tcltest::cleanu
c970: 70 54 65 73 74 73 0a 72 65 74 75 72 6e 0a        pTests.return.