Hex Artifact Content

Artifact c1f67f25c94928f332cee0f6cd12414a5db2a5cf0f2a8cfb2bcd3b8b40a25ed2:


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 32   from "HKDF-SHA2
0020: 35 36 2e 74 78 74 22 0a 70 61 63 6b 61 67 65 20  56.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 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73  }]..tcltest::tes
00b0: 74 20 4b 44 46 5f 48 4b 44 46 2d 53 48 41 32 35  t KDF_HKDF-SHA25
00c0: 36 2d 31 2e 31 20 7b 48 4b 44 46 2d 53 48 41 32  6-1.1 {HKDF-SHA2
00d0: 35 36 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69  56} \..-constrai
00e0: 6e 74 73 20 48 4b 44 46 20 5c 0a 09 2d 73 65 74  nts HKDF \..-set
00f0: 75 70 20 7b 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b  up {} \..-body {
0100: 62 69 6e 61 72 79 20 65 6e 63 6f 64 65 20 68 65  binary encode he
0110: 78 20 5b 74 6c 73 3a 3a 68 6b 64 66 20 2d 64 69  x [tls::hkdf -di
0120: 67 65 73 74 20 53 48 41 32 35 36 20 2d 6b 65 79  gest SHA256 -key
0130: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20   [binary decode 
0140: 68 65 78 20 30 62 30 62 30 62 30 62 30 62 30 62  hex 0b0b0b0b0b0b
0150: 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62  0b0b0b0b0b0b0b0b
0160: 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62  0b0b0b0b0b0b0b0b
0170: 5d 20 2d 69 6e 66 6f 20 5b 62 69 6e 61 72 79 20  ] -info [binary 
0180: 64 65 63 6f 64 65 20 68 65 78 20 66 30 66 31 66  decode hex f0f1f
0190: 32 66 33 66 34 66 35 66 36 66 37 66 38 66 39 5d  2f3f4f5f6f7f8f9]
01a0: 20 2d 73 61 6c 74 20 5b 62 69 6e 61 72 79 20 64   -salt [binary d
01b0: 65 63 6f 64 65 20 68 65 78 20 30 30 30 31 30 32  ecode hex 000102
01c0: 30 33 30 34 30 35 30 36 30 37 30 38 30 39 30 61  030405060708090a
01d0: 30 62 30 63 5d 20 2d 73 69 7a 65 20 34 32 5d 7d  0b0c] -size 42]}
01e0: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
01f0: 20 2d 72 65 73 75 6c 74 20 33 63 62 32 35 66 32   -result 3cb25f2
0200: 35 66 61 61 63 64 35 37 61 39 30 34 33 34 66 36  5faacd57a90434f6
0210: 34 64 30 33 36 32 66 32 61 32 64 32 64 30 61 39  4d0362f2a2d2d0a9
0220: 30 63 66 31 61 35 61 34 63 35 64 62 30 32 64 35  0cf1a5a4c5db02d5
0230: 36 65 63 63 34 63 35 62 66 33 34 30 30 37 32 30  6ecc4c5bf3400720
0240: 38 64 35 62 38 38 37 31 38 35 38 36 35 0a 0a 74  8d5b887185865..t
0250: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 4b 44 46  cltest::test KDF
0260: 5f 48 4b 44 46 2d 53 48 41 32 35 36 2d 31 2e 32  _HKDF-SHA256-1.2
0270: 20 7b 48 4b 44 46 2d 53 48 41 32 35 36 7d 20 5c   {HKDF-SHA256} \
0280: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 48  ..-constraints H
0290: 4b 44 46 20 5c 0a 09 2d 73 65 74 75 70 20 7b 7d  KDF \..-setup {}
02a0: 20 5c 0a 09 2d 62 6f 64 79 20 7b 62 69 6e 61 72   \..-body {binar
02b0: 79 20 65 6e 63 6f 64 65 20 68 65 78 20 5b 74 6c  y encode hex [tl
02c0: 73 3a 3a 68 6b 64 66 20 2d 64 69 67 65 73 74 20  s::hkdf -digest 
02d0: 53 48 41 32 35 36 20 2d 6b 65 79 20 5b 62 69 6e  SHA256 -key [bin
02e0: 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 30  ary decode hex 0
02f0: 30 30 31 30 32 30 33 30 34 30 35 30 36 30 37 30  0010203040506070
0300: 38 30 39 30 61 30 62 30 63 30 64 30 65 30 66 31  8090a0b0c0d0e0f1
0310: 30 31 31 31 32 31 33 31 34 31 35 31 36 31 37 31  0111213141516171
0320: 38 31 39 31 61 31 62 31 63 31 64 31 65 31 66 32  8191a1b1c1d1e1f2
0330: 30 32 31 32 32 32 33 32 34 32 35 32 36 32 37 32  0212223242526272
0340: 38 32 39 32 61 32 62 32 63 32 64 32 65 32 66 33  8292a2b2c2d2e2f3
0350: 30 33 31 33 32 33 33 33 34 33 35 33 36 33 37 33  0313233343536373
0360: 38 33 39 33 61 33 62 33 63 33 64 33 65 33 66 34  8393a3b3c3d3e3f4
0370: 30 34 31 34 32 34 33 34 34 34 35 34 36 34 37 34  0414243444546474
0380: 38 34 39 34 61 34 62 34 63 34 64 34 65 34 66 5d  8494a4b4c4d4e4f]
0390: 20 2d 69 6e 66 6f 20 5b 62 69 6e 61 72 79 20 64   -info [binary d
03a0: 65 63 6f 64 65 20 68 65 78 20 62 30 62 31 62 32  ecode hex b0b1b2
03b0: 62 33 62 34 62 35 62 36 62 37 62 38 62 39 62 61  b3b4b5b6b7b8b9ba
03c0: 62 62 62 63 62 64 62 65 62 66 63 30 63 31 63 32  bbbcbdbebfc0c1c2
03d0: 63 33 63 34 63 35 63 36 63 37 63 38 63 39 63 61  c3c4c5c6c7c8c9ca
03e0: 63 62 63 63 63 64 63 65 63 66 64 30 64 31 64 32  cbcccdcecfd0d1d2
03f0: 64 33 64 34 64 35 64 36 64 37 64 38 64 39 64 61  d3d4d5d6d7d8d9da
0400: 64 62 64 63 64 64 64 65 64 66 65 30 65 31 65 32  dbdcdddedfe0e1e2
0410: 65 33 65 34 65 35 65 36 65 37 65 38 65 39 65 61  e3e4e5e6e7e8e9ea
0420: 65 62 65 63 65 64 65 65 65 66 66 30 66 31 66 32  ebecedeeeff0f1f2
0430: 66 33 66 34 66 35 66 36 66 37 66 38 66 39 66 61  f3f4f5f6f7f8f9fa
0440: 66 62 66 63 66 64 66 65 66 66 5d 20 2d 73 61 6c  fbfcfdfeff] -sal
0450: 74 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65  t [binary decode
0460: 20 68 65 78 20 36 30 36 31 36 32 36 33 36 34 36   hex 60616263646
0470: 35 36 36 36 37 36 38 36 39 36 61 36 62 36 63 36  5666768696a6b6c6
0480: 64 36 65 36 66 37 30 37 31 37 32 37 33 37 34 37  d6e6f70717273747
0490: 35 37 36 37 37 37 38 37 39 37 61 37 62 37 63 37  5767778797a7b7c7
04a0: 64 37 65 37 66 38 30 38 31 38 32 38 33 38 34 38  d7e7f80818283848
04b0: 35 38 36 38 37 38 38 38 39 38 61 38 62 38 63 38  5868788898a8b8c8
04c0: 64 38 65 38 66 39 30 39 31 39 32 39 33 39 34 39  d8e8f90919293949
04d0: 35 39 36 39 37 39 38 39 39 39 61 39 62 39 63 39  5969798999a9b9c9
04e0: 64 39 65 39 66 61 30 61 31 61 32 61 33 61 34 61  d9e9fa0a1a2a3a4a
04f0: 35 61 36 61 37 61 38 61 39 61 61 61 62 61 63 61  5a6a7a8a9aaabaca
0500: 64 61 65 61 66 5d 20 2d 73 69 7a 65 20 38 32 5d  daeaf] -size 82]
0510: 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63  } \..-match exac
0520: 74 20 2d 72 65 73 75 6c 74 20 62 31 31 65 33 39  t -result b11e39
0530: 38 64 63 38 30 33 32 37 61 31 63 38 65 37 66 37  8dc80327a1c8e7f7
0540: 38 63 35 39 36 61 34 39 33 34 34 66 30 31 32 65  8c596a49344f012e
0550: 64 61 32 64 34 65 66 61 64 38 61 30 35 30 63 63  da2d4efad8a050cc
0560: 34 63 31 39 61 66 61 39 37 63 35 39 30 34 35 61  4c19afa97c59045a
0570: 39 39 63 61 63 37 38 32 37 32 37 31 63 62 34 31  99cac7827271cb41
0580: 63 36 35 65 35 39 30 65 30 39 64 61 33 32 37 35  c65e590e09da3275
0590: 36 30 30 63 32 66 30 39 62 38 33 36 37 37 39 33  600c2f09b8367793
05a0: 61 39 61 63 61 33 64 62 37 31 63 63 33 30 63 35  a9aca3db71cc30c5
05b0: 38 31 37 39 65 63 33 65 38 37 63 31 34 63 30 31  8179ec3e87c14c01
05c0: 64 35 63 31 66 33 34 33 34 66 31 64 38 37 0a 0a  d5c1f3434f1d87..
05d0: 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 4b 44  tcltest::test KD
05e0: 46 5f 48 4b 44 46 2d 53 48 41 32 35 36 2d 31 2e  F_HKDF-SHA256-1.
05f0: 33 20 7b 48 4b 44 46 2d 53 48 41 32 35 36 7d 20  3 {HKDF-SHA256} 
0600: 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20  \..-constraints 
0610: 48 4b 44 46 20 5c 0a 09 2d 73 65 74 75 70 20 7b  HKDF \..-setup {
0620: 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 62 69 6e 61  } \..-body {bina
0630: 72 79 20 65 6e 63 6f 64 65 20 68 65 78 20 5b 74  ry encode hex [t
0640: 6c 73 3a 3a 68 6b 64 66 20 2d 64 69 67 65 73 74  ls::hkdf -digest
0650: 20 53 48 41 32 35 36 20 2d 6b 65 79 20 5b 62 69   SHA256 -key [bi
0660: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20  nary decode hex 
0670: 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62  0b0b0b0b0b0b0b0b
0680: 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62  0b0b0b0b0b0b0b0b
0690: 30 62 30 62 30 62 30 62 30 62 30 62 5d 20 2d 73  0b0b0b0b0b0b] -s
06a0: 69 7a 65 20 34 32 5d 7d 20 5c 0a 09 2d 6d 61 74  ize 42]} \..-mat
06b0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74  ch exact -result
06c0: 20 38 64 61 34 65 37 37 35 61 35 36 33 63 31 38   8da4e775a563c18
06d0: 66 37 31 35 66 38 30 32 61 30 36 33 63 35 61 33  f715f802a063c5a3
06e0: 31 62 38 61 31 31 66 35 63 35 65 65 31 38 37 39  1b8a11f5c5ee1879
06f0: 65 63 33 34 35 34 65 35 66 33 63 37 33 38 64 32  ec3454e5f3c738d2
0700: 64 39 64 32 30 31 33 39 35 66 61 61 34 62 36 31  d9d201395faa4b61
0710: 61 39 36 63 38 0a 0a 74 63 6c 74 65 73 74 3a 3a  a96c8..tcltest::
0720: 74 65 73 74 20 4b 44 46 5f 48 4b 44 46 2d 53 48  test KDF_HKDF-SH
0730: 41 32 35 36 2d 31 2e 34 20 7b 48 4b 44 46 2d 53  A256-1.4 {HKDF-S
0740: 48 41 32 35 36 7d 20 5c 0a 09 2d 63 6f 6e 73 74  HA256} \..-const
0750: 72 61 69 6e 74 73 20 48 4b 44 46 20 5c 0a 09 2d  raints HKDF \..-
0760: 73 65 74 75 70 20 7b 7d 20 5c 0a 09 2d 62 6f 64  setup {} \..-bod
0770: 79 20 7b 62 69 6e 61 72 79 20 65 6e 63 6f 64 65  y {binary encode
0780: 20 68 65 78 20 5b 74 6c 73 3a 3a 68 6b 64 66 20   hex [tls::hkdf 
0790: 2d 64 69 67 65 73 74 20 53 48 41 32 35 36 20 2d  -digest SHA256 -
07a0: 6b 65 79 20 5b 62 69 6e 61 72 79 20 64 65 63 6f  key [binary deco
07b0: 64 65 20 68 65 78 20 30 62 30 62 30 62 30 62 30  de hex 0b0b0b0b0
07c0: 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30  b0b0b0b0b0b0b0b0
07d0: 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30  b0b0b0b0b0b0b0b0
07e0: 62 30 62 5d 20 2d 69 6e 66 6f 20 5b 62 69 6e 61  b0b] -info [bina
07f0: 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 66 30  ry decode hex f0
0800: 66 31 66 32 66 33 66 34 66 35 66 36 66 37 66 38  f1f2f3f4f5f6f7f8
0810: 66 39 5d 20 2d 73 61 6c 74 20 5b 62 69 6e 61 72  f9] -salt [binar
0820: 79 20 64 65 63 6f 64 65 20 68 65 78 20 30 30 30  y decode hex 000
0830: 31 30 32 30 33 30 34 30 35 30 36 30 37 30 38 30  1020304050607080
0840: 39 30 61 30 62 30 63 5d 20 2d 73 69 7a 65 20 34  90a0b0c] -size 4
0850: 32 5d 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78  2]} \..-match ex
0860: 61 63 74 20 2d 72 65 73 75 6c 74 20 33 63 62 32  act -result 3cb2
0870: 35 66 32 35 66 61 61 63 64 35 37 61 39 30 34 33  5f25faacd57a9043
0880: 34 66 36 34 64 30 33 36 32 66 32 61 32 64 32 64  4f64d0362f2a2d2d
0890: 30 61 39 30 63 66 31 61 35 61 34 63 35 64 62 30  0a90cf1a5a4c5db0
08a0: 32 64 35 36 65 63 63 34 63 35 62 66 33 34 30 30  2d56ecc4c5bf3400
08b0: 37 32 30 38 64 35 62 38 38 37 31 38 35 38 36 35  7208d5b887185865
08c0: 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 20  ..tcltest::test 
08d0: 4b 44 46 5f 48 4b 44 46 2d 53 48 41 32 35 36 2d  KDF_HKDF-SHA256-
08e0: 31 2e 35 20 7b 48 4b 44 46 2d 53 48 41 32 35 36  1.5 {HKDF-SHA256
08f0: 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74  } \..-constraint
0900: 73 20 48 4b 44 46 20 5c 0a 09 2d 73 65 74 75 70  s HKDF \..-setup
0910: 20 7b 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 62 69   {} \..-body {bi
0920: 6e 61 72 79 20 65 6e 63 6f 64 65 20 68 65 78 20  nary encode hex 
0930: 5b 74 6c 73 3a 3a 68 6b 64 66 20 2d 64 69 67 65  [tls::hkdf -dige
0940: 73 74 20 53 48 41 32 35 36 20 2d 6b 65 79 20 5b  st SHA256 -key [
0950: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65  binary decode he
0960: 78 20 30 30 30 31 30 32 30 33 30 34 30 35 30 36  x 00010203040506
0970: 30 37 30 38 30 39 30 61 30 62 30 63 30 64 30 65  0708090a0b0c0d0e
0980: 30 66 31 30 31 31 31 32 31 33 31 34 31 35 31 36  0f10111213141516
0990: 31 37 31 38 31 39 31 61 31 62 31 63 31 64 31 65  1718191a1b1c1d1e
09a0: 31 66 32 30 32 31 32 32 32 33 32 34 32 35 32 36  1f20212223242526
09b0: 32 37 32 38 32 39 32 61 32 62 32 63 32 64 32 65  2728292a2b2c2d2e
09c0: 32 66 33 30 33 31 33 32 33 33 33 34 33 35 33 36  2f30313233343536
09d0: 33 37 33 38 33 39 33 61 33 62 33 63 33 64 33 65  3738393a3b3c3d3e
09e0: 33 66 34 30 34 31 34 32 34 33 34 34 34 35 34 36  3f40414243444546
09f0: 34 37 34 38 34 39 34 61 34 62 34 63 34 64 34 65  4748494a4b4c4d4e
0a00: 34 66 5d 20 2d 69 6e 66 6f 20 5b 62 69 6e 61 72  4f] -info [binar
0a10: 79 20 64 65 63 6f 64 65 20 68 65 78 20 62 30 62  y decode hex b0b
0a20: 31 62 32 62 33 62 34 62 35 62 36 62 37 62 38 62  1b2b3b4b5b6b7b8b
0a30: 39 62 61 62 62 62 63 62 64 62 65 62 66 63 30 63  9babbbcbdbebfc0c
0a40: 31 63 32 63 33 63 34 63 35 63 36 63 37 63 38 63  1c2c3c4c5c6c7c8c
0a50: 39 63 61 63 62 63 63 63 64 63 65 63 66 64 30 64  9cacbcccdcecfd0d
0a60: 31 64 32 64 33 64 34 64 35 64 36 64 37 64 38 64  1d2d3d4d5d6d7d8d
0a70: 39 64 61 64 62 64 63 64 64 64 65 64 66 65 30 65  9dadbdcdddedfe0e
0a80: 31 65 32 65 33 65 34 65 35 65 36 65 37 65 38 65  1e2e3e4e5e6e7e8e
0a90: 39 65 61 65 62 65 63 65 64 65 65 65 66 66 30 66  9eaebecedeeeff0f
0aa0: 31 66 32 66 33 66 34 66 35 66 36 66 37 66 38 66  1f2f3f4f5f6f7f8f
0ab0: 39 66 61 66 62 66 63 66 64 66 65 66 66 5d 20 2d  9fafbfcfdfeff] -
0ac0: 73 61 6c 74 20 5b 62 69 6e 61 72 79 20 64 65 63  salt [binary dec
0ad0: 6f 64 65 20 68 65 78 20 36 30 36 31 36 32 36 33  ode hex 60616263
0ae0: 36 34 36 35 36 36 36 37 36 38 36 39 36 61 36 62  6465666768696a6b
0af0: 36 63 36 64 36 65 36 66 37 30 37 31 37 32 37 33  6c6d6e6f70717273
0b00: 37 34 37 35 37 36 37 37 37 38 37 39 37 61 37 62  7475767778797a7b
0b10: 37 63 37 64 37 65 37 66 38 30 38 31 38 32 38 33  7c7d7e7f80818283
0b20: 38 34 38 35 38 36 38 37 38 38 38 39 38 61 38 62  8485868788898a8b
0b30: 38 63 38 64 38 65 38 66 39 30 39 31 39 32 39 33  8c8d8e8f90919293
0b40: 39 34 39 35 39 36 39 37 39 38 39 39 39 61 39 62  9495969798999a9b
0b50: 39 63 39 64 39 65 39 66 61 30 61 31 61 32 61 33  9c9d9e9fa0a1a2a3
0b60: 61 34 61 35 61 36 61 37 61 38 61 39 61 61 61 62  a4a5a6a7a8a9aaab
0b70: 61 63 61 64 61 65 61 66 5d 20 2d 73 69 7a 65 20  acadaeaf] -size 
0b80: 38 32 5d 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65  82]} \..-match e
0b90: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 62 31 31  xact -result b11
0ba0: 65 33 39 38 64 63 38 30 33 32 37 61 31 63 38 65  e398dc80327a1c8e
0bb0: 37 66 37 38 63 35 39 36 61 34 39 33 34 34 66 30  7f78c596a49344f0
0bc0: 31 32 65 64 61 32 64 34 65 66 61 64 38 61 30 35  12eda2d4efad8a05
0bd0: 30 63 63 34 63 31 39 61 66 61 39 37 63 35 39 30  0cc4c19afa97c590
0be0: 34 35 61 39 39 63 61 63 37 38 32 37 32 37 31 63  45a99cac7827271c
0bf0: 62 34 31 63 36 35 65 35 39 30 65 30 39 64 61 33  b41c65e590e09da3
0c00: 32 37 35 36 30 30 63 32 66 30 39 62 38 33 36 37  275600c2f09b8367
0c10: 37 39 33 61 39 61 63 61 33 64 62 37 31 63 63 33  793a9aca3db71cc3
0c20: 30 63 35 38 31 37 39 65 63 33 65 38 37 63 31 34  0c58179ec3e87c14
0c30: 63 30 31 64 35 63 31 66 33 34 33 34 66 31 64 38  c01d5c1f3434f1d8
0c40: 37 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74  7..tcltest::test
0c50: 20 4b 44 46 5f 48 4b 44 46 2d 53 48 41 32 35 36   KDF_HKDF-SHA256
0c60: 2d 31 2e 36 20 7b 48 4b 44 46 2d 53 48 41 32 35  -1.6 {HKDF-SHA25
0c70: 36 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e  6} \..-constrain
0c80: 74 73 20 48 4b 44 46 20 5c 0a 09 2d 73 65 74 75  ts HKDF \..-setu
0c90: 70 20 7b 7d 20 5c 0a 09 2d 62 6f 64 79 20 7b 62  p {} \..-body {b
0ca0: 69 6e 61 72 79 20 65 6e 63 6f 64 65 20 68 65 78  inary encode hex
0cb0: 20 5b 74 6c 73 3a 3a 68 6b 64 66 20 2d 64 69 67   [tls::hkdf -dig
0cc0: 65 73 74 20 53 48 41 32 35 36 20 2d 6b 65 79 20  est SHA256 -key 
0cd0: 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68  [binary decode h
0ce0: 65 78 20 30 62 30 62 30 62 30 62 30 62 30 62 30  ex 0b0b0b0b0b0b0
0cf0: 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30  b0b0b0b0b0b0b0b0
0d00: 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62 5d  b0b0b0b0b0b0b0b]
0d10: 20 2d 73 69 7a 65 20 34 32 5d 7d 20 5c 0a 09 2d   -size 42]} \..-
0d20: 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 65 73  match exact -res
0d30: 75 6c 74 20 38 64 61 34 65 37 37 35 61 35 36 33  ult 8da4e775a563
0d40: 63 31 38 66 37 31 35 66 38 30 32 61 30 36 33 63  c18f715f802a063c
0d50: 35 61 33 31 62 38 61 31 31 66 35 63 35 65 65 31  5a31b8a11f5c5ee1
0d60: 38 37 39 65 63 33 34 35 34 65 35 66 33 63 37 33  879ec3454e5f3c73
0d70: 38 64 32 64 39 64 32 30 31 33 39 35 66 61 61 34  8d2d9d201395faa4
0d80: 62 36 31 61 39 36 63 38 0a 0a 74 63 6c 74 65 73  b61a96c8..tcltes
0d90: 74 3a 3a 74 65 73 74 20 4b 44 46 5f 48 4b 44 46  t::test KDF_HKDF
0da0: 2d 53 48 41 32 35 36 2d 31 2e 37 20 7b 48 4b 44  -SHA256-1.7 {HKD
0db0: 46 2d 53 48 41 32 35 36 7d 20 5c 0a 09 2d 63 6f  F-SHA256} \..-co
0dc0: 6e 73 74 72 61 69 6e 74 73 20 48 4b 44 46 20 5c  nstraints HKDF \
0dd0: 0a 09 2d 73 65 74 75 70 20 7b 7d 20 5c 0a 09 2d  ..-setup {} \..-
0de0: 62 6f 64 79 20 7b 62 69 6e 61 72 79 20 65 6e 63  body {binary enc
0df0: 6f 64 65 20 68 65 78 20 5b 74 6c 73 3a 3a 68 6b  ode hex [tls::hk
0e00: 64 66 20 2d 64 69 67 65 73 74 20 53 48 41 32 35  df -digest SHA25
0e10: 36 20 2d 6b 65 79 20 5b 62 69 6e 61 72 79 20 64  6 -key [binary d
0e20: 65 63 6f 64 65 20 68 65 78 20 30 62 30 62 30 62  ecode hex 0b0b0b
0e30: 30 62 30 62 30 62 30 62 30 62 30 62 30 62 30 62  0b0b0b0b0b0b0b0b
0e40: 5d 20 2d 69 6e 66 6f 20 5b 62 69 6e 61 72 79 20  ] -info [binary 
0e50: 64 65 63 6f 64 65 20 68 65 78 20 66 30 66 31 66  decode hex f0f1f
0e60: 32 66 33 66 34 66 35 66 36 66 37 66 38 66 39 5d  2f3f4f5f6f7f8f9]
0e70: 20 2d 73 61 6c 74 20 5b 62 69 6e 61 72 79 20 64   -salt [binary d
0e80: 65 63 6f 64 65 20 68 65 78 20 30 30 30 31 30 32  ecode hex 000102
0e90: 30 33 30 34 30 35 30 36 30 37 30 38 30 39 30 61  030405060708090a
0ea0: 30 62 30 63 5d 20 2d 73 69 7a 65 20 34 32 5d 7d  0b0c] -size 42]}
0eb0: 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74   \..-match exact
0ec0: 20 2d 72 65 73 75 6c 74 20 35 38 64 63 65 31 30   -result 58dce10
0ed0: 64 35 38 30 31 63 64 66 64 61 38 33 31 37 32 36  d5801cdfda831726
0ee0: 62 66 65 62 63 62 37 34 33 64 31 34 61 37 65 65  bfebcb743d14a7ee
0ef0: 38 33 61 61 30 35 37 61 39 33 64 35 39 62 30 61  83aa057a93d59b0a
0f00: 31 33 31 37 66 66 30 39 64 31 30 35 63 63 65 63  1317ff09d105ccec
0f10: 66 35 33 35 36 39 32 62 31 34 64 64 35 0a 0a 74  f535692b14dd5..t
0f20: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 4b 44 46  cltest::test KDF
0f30: 5f 48 4b 44 46 2d 53 48 41 32 35 36 2d 31 2e 38  _HKDF-SHA256-1.8
0f40: 20 7b 48 4b 44 46 2d 53 48 41 32 35 36 7d 20 5c   {HKDF-SHA256} \
0f50: 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 48  ..-constraints H
0f60: 4b 44 46 20 5c 0a 09 2d 73 65 74 75 70 20 7b 7d  KDF \..-setup {}
0f70: 20 5c 0a 09 2d 62 6f 64 79 20 7b 62 69 6e 61 72   \..-body {binar
0f80: 79 20 65 6e 63 6f 64 65 20 68 65 78 20 5b 74 6c  y encode hex [tl
0f90: 73 3a 3a 68 6b 64 66 20 2d 64 69 67 65 73 74 20  s::hkdf -digest 
0fa0: 53 48 41 32 35 36 20 2d 6b 65 79 20 5b 62 69 6e  SHA256 -key [bin
0fb0: 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 30  ary decode hex 0
0fc0: 63 30 63 30 63 30 63 30 63 30 63 30 63 30 63 30  c0c0c0c0c0c0c0c0
0fd0: 63 30 63 30 63 30 63 30 63 30 63 30 63 30 63 30  c0c0c0c0c0c0c0c0
0fe0: 63 30 63 30 63 30 63 30 63 30 63 5d 20 2d 73 69  c0c0c0c0c0c] -si
0ff0: 7a 65 20 34 32 5d 7d 20 5c 0a 09 2d 6d 61 74 63  ze 42]} \..-matc
1000: 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 20  h exact -result 
1010: 35 39 36 38 39 39 31 37 39 61 62 31 62 63 30 30  596899179ab1bc00
1020: 61 37 63 30 33 37 38 36 66 66 34 33 65 65 35 33  a7c03786ff43ee53
1030: 35 30 30 34 62 65 32 62 62 39 62 65 36 38 62 63  5004be2bb9be68bc
1040: 31 34 30 36 36 33 36 66 35 34 62 64 33 33 38 61  1406636f54bd338a
1050: 36 36 61 32 33 37 62 61 32 61 63 62 63 65 65 33  66a237ba2acbcee3
1060: 63 39 61 37 0a 0a 23 20 43 6c 65 61 6e 75 70 0a  c9a7..# Cleanup.
1070: 3a 3a 74 63 6c 74 65 73 74 3a 3a 63 6c 65 61 6e  ::tcltest::clean
1080: 75 70 54 65 73 74 73 0a 72 65 74 75 72 6e 0a     upTests.return.