Artifact
dbf7adce7ba9d48904cc99e88444aa950d44ef4fc56ccc24452761889be163db:
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: 32 34 2e 74 78 74 22 0a 70 61 63 6b 61 67 65 20 24.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 32 t KDF_HKDF-SHA22
00c0: 34 2d 31 2e 31 20 7b 48 4b 44 46 2d 53 48 41 32 4-1.1 {HKDF-SHA2
00d0: 32 34 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 24} \..-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 32 34 20 2d 6b 65 79 gest SHA224 -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 32 66 32 31 63 64 37 -result 2f21cd7
0200: 63 62 63 38 31 38 63 61 35 63 35 36 31 62 39 33 cbc818ca5c561b93
0210: 33 37 32 38 65 32 65 30 38 65 31 35 34 61 38 37 3728e2e08e154a87
0220: 65 31 34 33 32 33 39 39 61 38 32 30 64 65 65 31 e1432399a820dee1
0230: 33 61 61 32 32 32 64 30 63 65 65 36 31 35 32 66 3aa222d0cee6152f
0240: 61 35 33 39 61 62 37 30 66 38 65 38 30 0a 0a 74 a539ab70f8e80..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 32 34 2d 31 2e 32 _HKDF-SHA224-1.2
0270: 20 7b 48 4b 44 46 2d 53 48 41 32 32 34 7d 20 5c {HKDF-SHA224} \
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 32 34 20 2d 6b 65 79 20 5b 62 69 6e SHA224 -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 33 65 34 39 37 30 t -result 3e4970
0530: 33 63 32 34 33 61 33 38 39 34 39 31 36 33 34 39 3c243a3894916349
0540: 62 35 32 61 38 66 35 35 63 37 63 31 36 30 34 35 b52a8f55c7c16045
0550: 32 66 39 37 62 32 38 37 30 66 30 34 62 61 39 32 2f97b2870f04ba92
0560: 34 62 61 39 30 35 36 61 62 33 35 31 37 36 35 62 4ba9056ab351765b
0570: 30 34 32 30 37 32 33 31 31 35 38 64 63 62 30 33 04207231158dcb03
0580: 64 30 63 37 64 34 32 37 63 62 32 62 37 65 30 36 d0c7d427cb2b7e06
0590: 30 31 37 39 34 35 39 66 39 64 61 66 66 65 65 30 0179459f9daffee0
05a0: 35 65 38 37 30 35 31 31 33 66 37 62 63 34 35 62 5e8705113f7bc45b
05b0: 34 66 34 35 32 36 30 31 64 38 38 34 64 66 36 64 4f452601d884df6d
05c0: 66 64 34 66 66 39 64 61 63 66 64 65 36 39 0a 0a fd4ff9dacfde69..
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 32 34 2d 31 2e F_HKDF-SHA224-1.
05f0: 33 20 7b 48 4b 44 46 2d 53 48 41 32 32 34 7d 20 3 {HKDF-SHA224}
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 32 34 20 2d 6b 65 79 20 5b 62 69 SHA224 -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 32 61 32 36 38 30 38 33 65 61 37 38 37 65 30 2a268083ea787e0
06d0: 36 36 30 34 61 35 38 34 35 66 31 61 35 33 35 34 6604a5845f1a5354
06e0: 34 64 64 37 38 34 37 62 64 36 66 62 37 34 61 64 4dd7847bd6fb74ad
06f0: 66 63 63 31 31 37 38 62 61 61 63 35 61 30 66 65 fcc1178baac5a0fe
0700: 37 34 30 37 36 66 38 39 33 35 39 37 31 63 30 30 74076f8935971c00
0710: 63 32 62 31 39 0a 0a 74 63 6c 74 65 73 74 3a 3a c2b19..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 32 34 2d 31 2e 34 20 7b 48 4b 44 46 2d 53 A224-1.4 {HKDF-S
0740: 48 41 32 32 34 7d 20 5c 0a 09 2d 63 6f 6e 73 74 HA224} \..-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 32 34 20 2d -digest SHA224 -
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 5d 20 2d b0b0b0b0b0b0b] -
07d0: 69 6e 66 6f 20 5b 62 69 6e 61 72 79 20 64 65 63 info [binary dec
07e0: 6f 64 65 20 68 65 78 20 66 30 66 31 66 32 66 33 ode hex f0f1f2f3
07f0: 66 34 66 35 66 36 66 37 66 38 66 39 5d 20 2d 73 f4f5f6f7f8f9] -s
0800: 61 6c 74 20 5b 62 69 6e 61 72 79 20 64 65 63 6f alt [binary deco
0810: 64 65 20 68 65 78 20 30 30 30 31 30 32 30 33 30 de hex 000102030
0820: 34 30 35 30 36 30 37 30 38 30 39 30 61 30 62 30 405060708090a0b0
0830: 63 5d 20 2d 73 69 7a 65 20 34 32 5d 7d 20 5c 0a c] -size 42]} \.
0840: 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 2d 72 .-match exact -r
0850: 65 73 75 6c 74 20 37 66 63 38 61 65 30 33 33 35 esult 7fc8ae0335
0860: 65 64 34 36 38 63 65 66 35 36 62 65 30 39 31 66 ed468cef56be091f
0870: 36 34 37 38 61 31 61 61 65 38 34 63 30 64 61 35 6478a1aae84c0da5
0880: 34 63 65 35 31 37 36 61 61 33 38 39 34 36 63 37 4ce5176aa38946c7
0890: 39 65 32 31 30 65 61 33 32 61 34 34 38 37 65 32 9e210ea32a4487e2
08a0: 31 33 38 34 30 35 63 33 34 30 0a 0a 74 63 6c 74 138405c340..tclt
08b0: 65 73 74 3a 3a 74 65 73 74 20 4b 44 46 5f 48 4b est::test KDF_HK
08c0: 44 46 2d 53 48 41 32 32 34 2d 31 2e 35 20 7b 48 DF-SHA224-1.5 {H
08d0: 4b 44 46 2d 53 48 41 32 32 34 7d 20 5c 0a 09 2d KDF-SHA224} \..-
08e0: 63 6f 6e 73 74 72 61 69 6e 74 73 20 48 4b 44 46 constraints HKDF
08f0: 20 5c 0a 09 2d 73 65 74 75 70 20 7b 7d 20 5c 0a \..-setup {} \.
0900: 09 2d 62 6f 64 79 20 7b 62 69 6e 61 72 79 20 65 .-body {binary e
0910: 6e 63 6f 64 65 20 68 65 78 20 5b 74 6c 73 3a 3a ncode hex [tls::
0920: 68 6b 64 66 20 2d 64 69 67 65 73 74 20 53 48 41 hkdf -digest SHA
0930: 32 32 34 20 2d 6b 65 79 20 5b 62 69 6e 61 72 79 224 -key [binary
0940: 20 64 65 63 6f 64 65 20 68 65 78 20 30 63 30 63 decode hex 0c0c
0950: 30 63 30 63 30 63 30 63 30 63 30 63 30 63 30 63 0c0c0c0c0c0c0c0c
0960: 30 63 30 63 30 63 30 63 30 63 30 63 30 63 30 63 0c0c0c0c0c0c0c0c
0970: 30 63 30 63 30 63 30 63 5d 20 2d 73 69 7a 65 20 0c0c0c0c] -size
0980: 34 32 5d 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 42]} \..-match e
0990: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 63 61 38 xact -result ca8
09a0: 34 30 31 65 36 34 35 62 33 61 35 38 65 30 30 39 401e645b3a58e009
09b0: 39 32 38 35 37 66 65 30 30 33 38 63 62 31 62 66 92857fe0038cb1bf
09c0: 38 64 63 35 31 65 64 66 30 35 32 33 33 36 63 30 8dc51edf052336c0
09d0: 38 66 33 62 65 64 36 38 32 63 38 33 65 37 37 38 8f3bed682c83e778
09e0: 30 33 63 64 64 31 36 64 31 35 36 62 62 38 61 33 03cdd16d156bb8a3
09f0: 30 0a 0a 23 20 43 6c 65 61 6e 75 70 0a 3a 3a 74 0..# Cleanup.::t
0a00: 63 6c 74 65 73 74 3a 3a 63 6c 65 61 6e 75 70 54 cltest::cleanupT
0a10: 65 73 74 73 0a 72 65 74 75 72 6e 0a ests.return.