Hex Artifact Content

Artifact 6b50020add4619734bbd03bb8ebfb7b9e01c8c6ed9001f432b5535d1053914c8:


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 48 4b 44 46 2d 53 48 41 33   from "HKDF-SHA3
0020: 38 34 2e 74 78 74 22 0a 70 61 63 6b 61 67 65 20  84.txt".package 
0030: 72 65 71 75 69 72 65 20 74 6c 73 0a 70 61 63 6b  require tls.pack
0040: 61 67 65 20 72 65 71 75 69 72 65 20 74 63 6c 74  age require tclt
0050: 65 73 74 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  est..tcltest::te
0060: 73 74 43 6f 6e 73 74 72 61 69 6e 74 20 48 4b 44  stConstraint HKD
0070: 46 20 5b 65 78 70 72 20 7b 5b 6c 73 65 61 72 63  F [expr {[lsearc
0080: 68 20 2d 6e 6f 63 61 73 65 20 5b 74 6c 73 3a 3a  h -nocase [tls::
0090: 6b 64 66 73 5d 20 48 4b 44 46 5d 20 3e 20 2d 31  kdfs] HKDF] > -1
00a0: 7d 5d 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  }].tcltest::test
00b0: 43 6f 6e 73 74 72 61 69 6e 74 20 53 48 41 33 38  Constraint SHA38
00c0: 34 20 5b 65 78 70 72 20 7b 5b 6c 73 65 61 72 63  4 [expr {[lsearc
00d0: 68 20 2d 6e 6f 63 61 73 65 20 5b 74 6c 73 3a 3a  h -nocase [tls::
00e0: 64 69 67 65 73 74 73 5d 20 53 48 41 33 38 34 5d  digests] SHA384]
00f0: 20 3e 20 2d 31 7d 5d 0a 0a 74 63 6c 74 65 73 74   > -1}]..tcltest
0100: 3a 3a 74 65 73 74 20 4b 44 46 5f 48 4b 44 46 2d  ::test KDF_HKDF-
0110: 53 48 41 33 38 34 2d 31 2e 31 20 7b 48 4b 44 46  SHA384-1.1 {HKDF
0120: 2d 53 48 41 33 38 34 7d 20 5c 0a 09 2d 63 6f 6e  -SHA384} \..-con
0130: 73 74 72 61 69 6e 74 73 20 7b 48 4b 44 46 20 53  straints {HKDF S
0140: 48 41 33 38 34 7d 20 5c 0a 09 2d 73 65 74 75 70  HA384} \..-setup
0150: 20 7b 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 62 69   {} \..-body {bi
0160: 6e 61 72 79 20 65 6e 63 6f 64 65 20 68 65 78 20  nary encode hex 
0170: 5b 74 6c 73 3a 3a 68 6b 64 66 20 2d 64 69 67 65  [tls::hkdf -dige
0180: 73 74 20 53 48 41 33 38 34 20 2d 6b 65 79 20 5b  st SHA384 -key [
0190: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
01a0: 78 20 30 62 30 62 30 62 30 62 30 62 30 62 30 62  x 0b0b0b0b0b0b0b
01b0: 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62  0b0b0b0b0b0b0b0b
01c0: 30 62 30 62 30 62 30 62 30 62 30 62 30 62 5d 20  0b0b0b0b0b0b0b] 
01d0: 2d 69 6e 66 6f 20 5b 62 69 6e 61 72 79 20 64 65  -info [binary de
01e0: 63 6f 64 65 20 68 65 78 20 66 30 66 31 66 32 66  code hex f0f1f2f
01f0: 33 66 34 66 35 66 36 66 37 66 38 66 39 5d 20 2d  3f4f5f6f7f8f9] -
0200: 73 61 6c 74 20 5b 62 69 6e 61 72 79 20 64 65 63  salt [binary dec
0210: 6f 64 65 20 68 65 78 20 30 30 30 31 30 32 30 33  ode hex 00010203
0220: 30 34 30 35 30 36 30 37 30 38 30 39 30 61 30 62  0405060708090a0b
0230: 30 63 5d 20 2d 73 69 7a 65 20 34 32 5d 7d 20 5c  0c] -size 42]} \
0240: 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d  ..-match exact -
0250: 72 65 73 75 6c 74 20 39 62 35 30 39 37 61 38 36  result 9b5097a86
0260: 30 33 38 62 38 30 35 33 30 39 30 37 36 61 34 34  038b805309076a44
0270: 62 33 61 39 66 33 38 30 36 33 65 32 35 62 35 31  b3a9f38063e25b51
0280: 36 64 63 62 66 33 36 39 66 33 39 34 63 66 61 62  6dcbf369f394cfab
0290: 34 33 36 38 35 66 37 34 38 62 36 34 35 37 37 36  43685f748b645776
02a0: 33 65 34 66 30 32 30 34 66 63 35 0a 0a 74 63 6c  3e4f0204fc5..tcl
02b0: 74 65 73 74 3a 3a 74 65 73 74 20 4b 44 46 5f 48  test::test KDF_H
02c0: 4b 44 46 2d 53 48 41 33 38 34 2d 31 2e 32 20 7b  KDF-SHA384-1.2 {
02d0: 48 4b 44 46 2d 53 48 41 33 38 34 7d 20 5c 0a 09  HKDF-SHA384} \..
02e0: 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 7b 48 4b  -constraints {HK
02f0: 44 46 20 53 48 41 33 38 34 7d 20 5c 0a 09 2d 73  DF SHA384} \..-s
0300: 65 74 75 70 20 7b 7d 20 5c 0a 09 2d 62 6f 64 79  etup {} \..-body
0310: 20 7b 62 69 6e 61 72 79 20 65 6e 63 6f 64 65 20   {binary encode 
0320: 68 65 78 20 5b 74 6c 73 3a 3a 68 6b 64 66 20 2d  hex [tls::hkdf -
0330: 64 69 67 65 73 74 20 53 48 41 33 38 34 20 2d 6b  digest SHA384 -k
0340: 65 79 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64  ey [binary decod
0350: 65 20 68 65 78 20 30 30 30 31 30 32 30 33 30 34  e hex 0001020304
0360: 30 35 30 36 30 37 30 38 30 39 30 61 30 62 30 63  05060708090a0b0c
0370: 30 64 30 65 30 66 31 30 31 31 31 32 31 33 31 34  0d0e0f1011121314
0380: 31 35 31 36 31 37 31 38 31 39 31 61 31 62 31 63  15161718191a1b1c
0390: 31 64 31 65 31 66 32 30 32 31 32 32 32 33 32 34  1d1e1f2021222324
03a0: 32 35 32 36 32 37 32 38 32 39 32 61 32 62 32 63  25262728292a2b2c
03b0: 32 64 32 65 32 66 33 30 33 31 33 32 33 33 33 34  2d2e2f3031323334
03c0: 33 35 33 36 33 37 33 38 33 39 33 61 33 62 33 63  35363738393a3b3c
03d0: 33 64 33 65 33 66 34 30 34 31 34 32 34 33 34 34  3d3e3f4041424344
03e0: 34 35 34 36 34 37 34 38 34 39 34 61 34 62 34 63  45464748494a4b4c
03f0: 34 64 34 65 34 66 5d 20 2d 69 6e 66 6f 20 5b 62  4d4e4f] -info [b
0400: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
0410: 20 62 30 62 31 62 32 62 33 62 34 62 35 62 36 62   b0b1b2b3b4b5b6b
0420: 37 62 38 62 39 62 61 62 62 62 63 62 64 62 65 62  7b8b9babbbcbdbeb
0430: 66 63 30 63 31 63 32 63 33 63 34 63 35 63 36 63  fc0c1c2c3c4c5c6c
0440: 37 63 38 63 39 63 61 63 62 63 63 63 64 63 65 63  7c8c9cacbcccdcec
0450: 66 64 30 64 31 64 32 64 33 64 34 64 35 64 36 64  fd0d1d2d3d4d5d6d
0460: 37 64 38 64 39 64 61 64 62 64 63 64 64 64 65 64  7d8d9dadbdcddded
0470: 66 65 30 65 31 65 32 65 33 65 34 65 35 65 36 65  fe0e1e2e3e4e5e6e
0480: 37 65 38 65 39 65 61 65 62 65 63 65 64 65 65 65  7e8e9eaebecedeee
0490: 66 66 30 66 31 66 32 66 33 66 34 66 35 66 36 66  ff0f1f2f3f4f5f6f
04a0: 37 66 38 66 39 66 61 66 62 66 63 66 64 66 65 66  7f8f9fafbfcfdfef
04b0: 66 5d 20 2d 73 61 6c 74 20 5b 62 69 6e 61 72 79  f] -salt [binary
04c0: 20 64 65 63 6f 64 65 20 68 65 78 20 36 30 36 31   decode hex 6061
04d0: 36 32 36 33 36 34 36 35 36 36 36 37 36 38 36 39  6263646566676869
04e0: 36 61 36 62 36 63 36 64 36 65 36 66 37 30 37 31  6a6b6c6d6e6f7071
04f0: 37 32 37 33 37 34 37 35 37 36 37 37 37 38 37 39  7273747576777879
0500: 37 61 37 62 37 63 37 64 37 65 37 66 38 30 38 31  7a7b7c7d7e7f8081
0510: 38 32 38 33 38 34 38 35 38 36 38 37 38 38 38 39  8283848586878889
0520: 38 61 38 62 38 63 38 64 38 65 38 66 39 30 39 31  8a8b8c8d8e8f9091
0530: 39 32 39 33 39 34 39 35 39 36 39 37 39 38 39 39  9293949596979899
0540: 39 61 39 62 39 63 39 64 39 65 39 66 61 30 61 31  9a9b9c9d9e9fa0a1
0550: 61 32 61 33 61 34 61 35 61 36 61 37 61 38 61 39  a2a3a4a5a6a7a8a9
0560: 61 61 61 62 61 63 61 64 61 65 61 66 5d 20 2d 73  aaabacadaeaf] -s
0570: 69 7a 65 20 38 32 5d 7d 20 5c 0a 09 2d 6d 61 74  ize 82]} \..-mat
0580: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
0590: 20 34 38 34 63 61 30 35 32 62 38 63 63 37 32 34   484ca052b8cc724
05a0: 66 64 31 63 34 65 63 36 34 64 35 37 62 34 65 38  fd1c4ec64d57b4e8
05b0: 31 38 63 37 65 32 35 61 38 65 30 66 34 35 36 39  18c7e25a8e0f4569
05c0: 65 64 37 32 61 36 61 30 35 66 65 30 36 34 39 65  ed72a6a05fe0649e
05d0: 65 62 66 36 39 66 38 64 35 63 38 33 32 38 35 36  ebf69f8d5c832856
05e0: 62 66 34 65 34 66 62 63 31 37 39 36 37 64 35 34  bf4e4fbc17967d54
05f0: 39 37 35 33 32 34 61 39 34 39 38 37 66 37 66 34  975324a94987f7f4
0600: 31 38 33 35 38 31 37 64 38 39 39 34 66 64 62 64  1835817d8994fdbd
0610: 36 66 34 63 30 39 63 35 35 30 30 64 63 61 32 34  6f4c09c5500dca24
0620: 61 35 36 32 32 32 66 65 61 35 33 64 38 39 36 37  a56222fea53d8967
0630: 61 38 62 32 65 0a 0a 74 63 6c 74 65 73 74 3a 3a  a8b2e..tcltest::
0640: 74 65 73 74 20 4b 44 46 5f 48 4b 44 46 2d 53 48  test KDF_HKDF-SH
0650: 41 33 38 34 2d 31 2e 33 20 7b 48 4b 44 46 2d 53  A384-1.3 {HKDF-S
0660: 48 41 33 38 34 7d 20 5c 0a 09 2d 63 6f 6e 73 74  HA384} \..-const
0670: 72 61 69 6e 74 73 20 7b 48 4b 44 46 20 53 48 41  raints {HKDF SHA
0680: 33 38 34 7d 20 5c 0a 09 2d 73 65 74 75 70 20 7b  384} \..-setup {
0690: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 62 69 6e 61  } \..-body {bina
06a0: 72 79 20 65 6e 63 6f 64 65 20 68 65 78 20 5b 74  ry encode hex [t
06b0: 6c 73 3a 3a 68 6b 64 66 20 2d 64 69 67 65 73 74  ls::hkdf -digest
06c0: 20 53 48 41 33 38 34 20 2d 6b 65 79 20 5b 62 69   SHA384 -key [bi
06d0: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
06e0: 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62  0b0b0b0b0b0b0b0b
06f0: 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62  0b0b0b0b0b0b0b0b
0700: 30 62 30 62 30 62 30 62 30 62 30 62 5d 20 2d 73  0b0b0b0b0b0b] -s
0710: 69 7a 65 20 34 32 5d 7d 20 5c 0a 09 2d 6d 61 74  ize 42]} \..-mat
0720: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
0730: 20 63 38 63 39 36 65 37 31 30 66 38 39 62 30 64   c8c96e710f89b0d
0740: 37 39 39 30 62 63 61 36 38 62 63 64 65 63 38 63  7990bca68bcdec8c
0750: 66 38 35 34 30 36 32 65 35 34 63 37 33 61 37 61  f854062e54c73a7a
0760: 62 63 37 34 33 66 61 64 65 39 62 32 34 32 64 61  bc743fade9b242da
0770: 61 63 63 31 63 65 61 35 36 37 30 34 31 35 62 35  acc1cea5670415b5
0780: 32 38 34 39 63 0a 0a 74 63 6c 74 65 73 74 3a 3a  2849c..tcltest::
0790: 74 65 73 74 20 4b 44 46 5f 48 4b 44 46 2d 53 48  test KDF_HKDF-SH
07a0: 41 33 38 34 2d 31 2e 34 20 7b 48 4b 44 46 2d 53  A384-1.4 {HKDF-S
07b0: 48 41 33 38 34 7d 20 5c 0a 09 2d 63 6f 6e 73 74  HA384} \..-const
07c0: 72 61 69 6e 74 73 20 7b 48 4b 44 46 20 53 48 41  raints {HKDF SHA
07d0: 33 38 34 7d 20 5c 0a 09 2d 73 65 74 75 70 20 7b  384} \..-setup {
07e0: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 62 69 6e 61  } \..-body {bina
07f0: 72 79 20 65 6e 63 6f 64 65 20 68 65 78 20 5b 74  ry encode hex [t
0800: 6c 73 3a 3a 68 6b 64 66 20 2d 64 69 67 65 73 74  ls::hkdf -digest
0810: 20 53 48 41 33 38 34 20 2d 6b 65 79 20 5b 62 69   SHA384 -key [bi
0820: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
0830: 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62  0b0b0b0b0b0b0b0b
0840: 30 62 30 62 30 62 5d 20 2d 69 6e 66 6f 20 5b 62  0b0b0b] -info [b
0850: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78  inary decode hex
0860: 20 66 30 66 31 66 32 66 33 66 34 66 35 66 36 66   f0f1f2f3f4f5f6f
0870: 37 66 38 66 39 5d 20 2d 73 61 6c 74 20 5b 62 69  7f8f9] -salt [bi
0880: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
0890: 30 30 30 31 30 32 30 33 30 34 30 35 30 36 30 37  0001020304050607
08a0: 30 38 30 39 30 61 30 62 30 63 5d 20 2d 73 69 7a  08090a0b0c] -siz
08b0: 65 20 34 32 5d 7d 20 5c 0a 09 2d 6d 61 74 63 68  e 42]} \..-match
08c0: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 66   exact -result f
08d0: 62 37 65 36 37 34 33 65 62 34 32 63 64 65 39 36  b7e6743eb42cde96
08e0: 66 31 62 37 30 37 37 38 39 35 32 61 62 37 35 34  f1b70778952ab754
08f0: 38 63 61 66 65 35 33 32 34 39 66 37 66 66 65 31  8cafe53249f7ffe1
0900: 34 39 37 61 31 36 33 35 62 32 30 31 66 66 31 38  497a1635b201ff18
0910: 35 62 39 33 65 39 35 31 39 39 32 64 38 35 38 66  5b93e951992d858f
0920: 31 31 61 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65  11a..tcltest::te
0930: 73 74 20 4b 44 46 5f 48 4b 44 46 2d 53 48 41 33  st KDF_HKDF-SHA3
0940: 38 34 2d 31 2e 35 20 7b 48 4b 44 46 2d 53 48 41  84-1.5 {HKDF-SHA
0950: 33 38 34 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61  384} \..-constra
0960: 69 6e 74 73 20 7b 48 4b 44 46 20 53 48 41 33 38  ints {HKDF SHA38
0970: 34 7d 20 5c 0a 09 2d 73 65 74 75 70 20 7b 7d 20  4} \..-setup {} 
0980: 5c 0a 09 2d 62 6f 64 79 20 7b 62 69 6e 61 72 79  \..-body {binary
0990: 20 65 6e 63 6f 64 65 20 68 65 78 20 5b 74 6c 73   encode hex [tls
09a0: 3a 3a 68 6b 64 66 20 2d 64 69 67 65 73 74 20 53  ::hkdf -digest S
09b0: 48 41 33 38 34 20 2d 6b 65 79 20 5b 62 69 6e 61  HA384 -key [bina
09c0: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 30 63  ry decode hex 0c
09d0: 30 63 30 63 30 63 30 63 30 63 30 63 30 63 30 63  0c0c0c0c0c0c0c0c
09e0: 30 63 30 63 30 63 30 63 30 63 30 63 30 63 30 63  0c0c0c0c0c0c0c0c
09f0: 30 63 30 63 30 63 30 63 30 63 5d 20 2d 73 69 7a  0c0c0c0c0c] -siz
0a00: 65 20 34 32 5d 7d 20 5c 0a 09 2d 6d 61 74 63 68  e 42]} \..-match
0a10: 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20 36   exact -result 6
0a20: 61 64 37 63 37 32 36 63 38 34 30 30 39 35 34 36  ad7c726c84009546
0a30: 61 37 36 65 30 35 34 35 64 66 32 36 36 37 38 37  a76e0545df266787
0a40: 65 32 62 32 63 64 36 63 61 34 33 37 33 61 31 66  e2b2cd6ca4373a1f
0a50: 33 31 34 35 30 61 37 62 64 66 39 34 38 32 62 66  31450a7bdf9482bf
0a60: 61 62 38 31 31 66 35 35 34 32 30 30 65 61 64 38  ab811f554200ead8
0a70: 66 35 33 0a 0a 23 20 43 6c 65 61 6e 75 70 0a 3a  f53..# Cleanup.:
0a80: 3a 74 63 6c 74 65 73 74 3a 3a 63 6c 65 61 6e 75  :tcltest::cleanu
0a90: 70 54 65 73 74 73 0a 72 65 74 75 72 6e 0a        pTests.return.