Hex Artifact Content

Artifact 2e2114455da9736b7b3fccf8d6d58eff915625c671bc8a98c2ca835cc53a48ac:


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 4b 45 32 35 36 2e   from "SHAKE256.
0020: 74 78 74 22 0a 6c 61 70 70 65 6e 64 20 61 75 74  txt".lappend aut
0030: 6f 5f 70 61 74 68 20 5b 66 69 6c 65 20 64 69 72  o_path [file dir
0040: 6e 61 6d 65 20 5b 66 69 6c 65 20 64 69 72 6e 61  name [file dirna
0050: 6d 65 20 5b 66 69 6c 65 20 64 69 72 6e 61 6d 65  me [file dirname
0060: 20 5b 66 69 6c 65 20 64 69 72 6e 61 6d 65 20 5b   [file dirname [
0070: 66 69 6c 65 20 6a 6f 69 6e 20 5b 70 77 64 5d 20  file join [pwd] 
0080: 5b 69 6e 66 6f 20 73 63 72 69 70 74 5d 5d 5d 5d  [info script]]]]
0090: 5d 5d 0a 70 61 63 6b 61 67 65 20 72 65 71 75 69  ]].package requi
00a0: 72 65 20 74 6c 73 0a 70 61 63 6b 61 67 65 20 72  re tls.package r
00b0: 65 71 75 69 72 65 20 74 63 6c 74 65 73 74 0a 0a  equire tcltest..
00c0: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 43 6f 6e  tcltest::testCon
00d0: 73 74 72 61 69 6e 74 20 53 48 41 4b 45 32 35 36  straint SHAKE256
00e0: 20 5b 65 78 70 72 20 7b 5b 6c 73 65 61 72 63 68   [expr {[lsearch
00f0: 20 2d 6e 6f 63 61 73 65 20 5b 74 6c 73 3a 3a 64   -nocase [tls::d
0100: 69 67 65 73 74 73 5d 20 53 48 41 4b 45 32 35 36  igests] SHAKE256
0110: 5d 20 3e 20 2d 31 7d 5d 0a 63 61 74 63 68 20 7b  ] > -1}].catch {
0120: 74 6c 73 3a 3a 70 72 6f 76 69 64 65 72 20 6c 65  tls::provider le
0130: 67 61 63 79 7d 0a 0a 74 63 6c 74 65 73 74 3a 3a  gacy}..tcltest::
0140: 74 65 73 74 20 48 61 73 68 5f 53 48 41 4b 45 32  test Hash_SHAKE2
0150: 35 36 2d 31 2e 31 20 7b 53 48 41 4b 45 32 35 36  56-1.1 {SHAKE256
0160: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
0170: 73 20 53 48 41 4b 45 32 35 36 20 5c 0a 09 2d 73  s SHAKE256 \..-s
0180: 65 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 22  etup {set data "
0190: 22 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 74 6c 73  "} \..-body {tls
01a0: 3a 3a 64 69 67 65 73 74 20 2d 64 69 67 65 73 74  ::digest -digest
01b0: 20 53 48 41 4b 45 32 35 36 20 2d 64 61 74 61 20   SHAKE256 -data 
01c0: 24 64 61 74 61 7d 20 5c 0a 09 2d 6d 61 74 63 68  $data} \..-match
01d0: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 34   exact -result 4
01e0: 36 62 39 64 64 32 62 30 62 61 38 38 64 31 33 32  6b9dd2b0ba88d132
01f0: 33 33 62 33 66 65 62 37 34 33 65 65 62 32 34 33  33b3feb743eeb243
0200: 66 63 64 35 32 65 61 36 32 62 38 31 62 38 32 62  fcd52ea62b81b82b
0210: 35 30 63 32 37 36 34 36 65 64 35 37 36 32 66 64  50c27646ed5762fd
0220: 37 35 64 63 34 64 64 64 38 63 30 66 32 30 30 63  75dc4ddd8c0f200c
0230: 62 30 35 30 31 39 64 36 37 62 35 39 32 66 36 66  b05019d67b592f6f
0240: 63 38 32 31 63 34 39 34 37 39 61 62 34 38 36 34  c821c49479ab4864
0250: 30 32 39 32 65 61 63 62 33 62 37 63 34 62 65 0a  0292eacb3b7c4be.
0260: 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48  .tcltest::test H
0270: 61 73 68 5f 53 48 41 4b 45 32 35 36 2d 31 2e 32  ash_SHAKE256-1.2
0280: 20 7b 53 48 41 4b 45 32 35 36 7d 20 5c 0a 09 2d   {SHAKE256} \..-
0290: 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 4b  constraints SHAK
02a0: 45 32 35 36 20 5c 0a 09 2d 73 65 74 75 70 20 7b  E256 \..-setup {
02b0: 73 65 74 20 64 61 74 61 20 22 54 68 65 20 71 75  set data "The qu
02c0: 69 63 6b 20 62 72 6f 77 6e 20 66 6f 78 20 6a 75  ick brown fox ju
02d0: 6d 70 73 20 6f 76 65 72 20 74 68 65 20 6c 61 7a  mps over the laz
02e0: 79 20 64 6f 67 22 7d 20 5c 0a 09 2d 62 6f 64 79  y dog"} \..-body
02f0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
0300: 69 67 65 73 74 20 53 48 41 4b 45 32 35 36 20 2d  igest SHAKE256 -
0310: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
0320: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
0330: 75 6c 74 20 32 66 36 37 31 33 34 33 64 39 62 32  ult 2f671343d9b2
0340: 65 31 36 30 34 64 63 39 64 63 66 30 37 35 33 65  e1604dc9dcf0753e
0350: 35 66 65 31 35 63 37 63 36 34 61 30 64 32 38 33  5fe15c7c64a0d283
0360: 63 62 62 66 37 32 32 64 34 31 31 61 30 65 33 36  cbbf722d411a0e36
0370: 66 36 63 61 31 64 30 31 64 31 33 36 39 61 32 33  f6ca1d01d1369a23
0380: 35 33 39 63 64 38 30 66 37 63 30 35 34 62 36 65  539cd80f7c054b6e
0390: 35 64 61 66 39 63 39 36 32 63 61 64 35 62 38 65  5daf9c962cad5b8e
03a0: 64 35 62 64 31 31 39 39 38 62 34 30 64 35 37 33  d5bd11998b40d573
03b0: 34 34 34 32 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  4442..tcltest::t
03c0: 65 73 74 20 48 61 73 68 5f 53 48 41 4b 45 32 35  est Hash_SHAKE25
03d0: 36 2d 31 2e 33 20 7b 53 48 41 4b 45 32 35 36 7d  6-1.3 {SHAKE256}
03e0: 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73   \..-constraints
03f0: 20 53 48 41 4b 45 32 35 36 20 5c 0a 09 2d 73 65   SHAKE256 \..-se
0400: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
0410: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
0420: 20 5b 73 74 72 69 6e 67 20 72 65 70 65 61 74 20   [string repeat 
0430: 61 33 20 32 30 30 5d 5d 7d 20 5c 0a 09 2d 62 6f  a3 200]]} \..-bo
0440: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
0450: 2d 64 69 67 65 73 74 20 53 48 41 4b 45 32 35 36  -digest SHAKE256
0460: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
0470: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
0480: 65 73 75 6c 74 20 63 64 38 61 39 32 30 65 64 31  esult cd8a920ed1
0490: 34 31 61 61 30 34 30 37 61 32 32 64 35 39 32 38  41aa0407a22d5928
04a0: 38 36 35 32 65 39 64 39 66 31 61 37 65 65 30 63  8652e9d9f1a7ee0c
04b0: 31 65 37 63 31 63 61 36 39 39 34 32 34 64 61 38  1e7c1ca699424da8
04c0: 34 61 39 30 34 64 32 64 37 30 30 63 61 61 65 37  4a904d2d700caae7
04d0: 33 39 36 65 63 65 39 36 36 30 34 34 34 30 35 37  396ece9660444057
04e0: 37 64 61 34 66 33 61 61 32 32 61 65 62 38 38 35  7da4f3aa22aeb885
04f0: 37 66 39 36 31 63 34 63 64 38 65 30 36 66 30 61  7f961c4cd8e06f0a
0500: 65 36 36 31 30 62 0a 0a 23 20 43 6c 65 61 6e 75  e6610b..# Cleanu
0510: 70 0a 3a 3a 74 63 6c 74 65 73 74 3a 3a 63 6c 65  p.::tcltest::cle
0520: 61 6e 75 70 54 65 73 74 73 0a 72 65 74 75 72 6e  anupTests.return
0530: 0a                                               .