Hex Artifact Content

Artifact 4b0878e01e35b82ba255ab6c1d2e354e58d280d3c66516029d6b040492726425:


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 31 32 38 2e   from "SHAKE128.
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 31 32 38  straint SHAKE128
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 31 32 38  igests] SHAKE128
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 31  test Hash_SHAKE1
0150: 32 38 2d 31 2e 31 20 7b 53 48 41 4b 45 31 32 38  28-1.1 {SHAKE128
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 31 32 38 20 5c 0a 09 2d 73  s SHAKE128 \..-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 31 32 38 20 2d 64 61 74 61 20   SHAKE128 -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 37   exact -result 7
01e0: 66 39 63 32 62 61 34 65 38 38 66 38 32 37 64 36  f9c2ba4e88f827d6
01f0: 31 36 30 34 35 35 30 37 36 30 35 38 35 33 65 64  16045507605853ed
0200: 37 33 62 38 30 39 33 66 36 65 66 62 63 38 38 65  73b8093f6efbc88e
0210: 62 31 61 36 65 61 63 66 61 36 36 65 66 32 36 0a  b1a6eacfa66ef26.
0220: 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 48  .tcltest::test H
0230: 61 73 68 5f 53 48 41 4b 45 31 32 38 2d 31 2e 32  ash_SHAKE128-1.2
0240: 20 7b 53 48 41 4b 45 31 32 38 7d 20 5c 0a 09 2d   {SHAKE128} \..-
0250: 63 6f 6e 73 74 72 61 69 6e 74 73 20 53 48 41 4b  constraints SHAK
0260: 45 31 32 38 20 5c 0a 09 2d 73 65 74 75 70 20 7b  E128 \..-setup {
0270: 73 65 74 20 64 61 74 61 20 22 54 68 65 20 71 75  set data "The qu
0280: 69 63 6b 20 62 72 6f 77 6e 20 66 6f 78 20 6a 75  ick brown fox ju
0290: 6d 70 73 20 6f 76 65 72 20 74 68 65 20 6c 61 7a  mps over the laz
02a0: 79 20 64 6f 67 22 7d 20 5c 0a 09 2d 62 6f 64 79  y dog"} \..-body
02b0: 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20 2d 64   {tls::digest -d
02c0: 69 67 65 73 74 20 53 48 41 4b 45 31 32 38 20 2d  igest SHAKE128 -
02d0: 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a 09 2d  data $data} \..-
02e0: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
02f0: 75 6c 74 20 66 34 32 30 32 65 33 63 35 38 35 32  ult f4202e3c5852
0300: 66 39 31 38 32 61 30 34 33 30 66 64 38 31 34 34  f9182a0430fd8144
0310: 66 30 61 37 34 62 39 35 65 37 34 31 37 65 63 61  f0a74b95e7417eca
0320: 65 31 37 64 62 30 66 38 63 66 65 65 64 30 65 33  e17db0f8cfeed0e3
0330: 65 36 36 65 0a 0a 74 63 6c 74 65 73 74 3a 3a 74  e66e..tcltest::t
0340: 65 73 74 20 48 61 73 68 5f 53 48 41 4b 45 31 32  est Hash_SHAKE12
0350: 38 2d 31 2e 33 20 7b 53 48 41 4b 45 31 32 38 7d  8-1.3 {SHAKE128}
0360: 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73   \..-constraints
0370: 20 53 48 41 4b 45 31 32 38 20 5c 0a 09 2d 73 65   SHAKE128 \..-se
0380: 74 75 70 20 7b 73 65 74 20 64 61 74 61 20 5b 62  tup {set data [b
0390: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
03a0: 20 5b 73 74 72 69 6e 67 20 72 65 70 65 61 74 20   [string repeat 
03b0: 61 33 20 32 30 30 5d 5d 7d 20 5c 0a 09 2d 62 6f  a3 200]]} \..-bo
03c0: 64 79 20 7b 74 6c 73 3a 3a 64 69 67 65 73 74 20  dy {tls::digest 
03d0: 2d 64 69 67 65 73 74 20 53 48 41 4b 45 31 32 38  -digest SHAKE128
03e0: 20 2d 64 61 74 61 20 24 64 61 74 61 7d 20 5c 0a   -data $data} \.
03f0: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72  .-match exact -r
0400: 65 73 75 6c 74 20 31 33 31 61 62 38 64 32 62 35  esult 131ab8d2b5
0410: 39 34 39 34 36 62 39 63 38 31 33 33 33 66 39 62  94946b9c81333f9b
0420: 62 36 65 30 63 65 37 35 63 33 62 39 33 31 30 34  b6e0ce75c3b93104
0430: 66 61 33 34 36 39 64 33 39 31 37 34 35 37 33 38  fa3469d391745738
0440: 35 64 61 30 33 37 0a 0a 23 20 43 6c 65 61 6e 75  5da037..# Cleanu
0450: 70 0a 3a 3a 74 63 6c 74 65 73 74 3a 3a 63 6c 65  p.::tcltest::cle
0460: 61 6e 75 70 54 65 73 74 73 0a 72 65 74 75 72 6e  anupTests.return
0470: 0a                                               .