Artifact
3b78c7f734f72f51ea373306685510d8f93e62378d1630abf0443f459fc230ad:
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 4d 41 43 5f 53 48 41 33 from "HMAC_SHA3
0020: 2d 33 38 34 2e 74 78 74 22 0a 6c 61 70 70 65 6e -384.txt".lappen
0030: 64 20 61 75 74 6f 5f 70 61 74 68 20 5b 66 69 6c d auto_path [fil
0040: 65 20 64 69 72 6e 61 6d 65 20 5b 66 69 6c 65 20 e dirname [file
0050: 64 69 72 6e 61 6d 65 20 5b 66 69 6c 65 20 64 69 dirname [file di
0060: 72 6e 61 6d 65 20 5b 66 69 6c 65 20 64 69 72 6e rname [file dirn
0070: 61 6d 65 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 5b ame [file join [
0080: 70 77 64 5d 20 5b 69 6e 66 6f 20 73 63 72 69 70 pwd] [info scrip
0090: 74 5d 5d 5d 5d 5d 5d 0a 70 61 63 6b 61 67 65 20 t]]]]]].package
00a0: 72 65 71 75 69 72 65 20 74 6c 73 0a 70 61 63 6b require tls.pack
00b0: 61 67 65 20 72 65 71 75 69 72 65 20 74 63 6c 74 age require tclt
00c0: 65 73 74 0a 0a 74 63 6c 74 65 73 74 3a 3a 74 65 est..tcltest::te
00d0: 73 74 43 6f 6e 73 74 72 61 69 6e 74 20 48 4d 41 stConstraint HMA
00e0: 43 20 5b 65 78 70 72 20 7b 5b 6c 73 65 61 72 63 C [expr {[lsearc
00f0: 68 20 2d 6e 6f 63 61 73 65 20 5b 74 6c 73 3a 3a h -nocase [tls::
0100: 6d 61 63 73 5d 20 48 4d 41 43 5d 20 3e 20 2d 31 macs] HMAC] > -1
0110: 7d 5d 0a 74 63 6c 74 65 73 74 3a 3a 74 65 73 74 }].tcltest::test
0120: 43 6f 6e 73 74 72 61 69 6e 74 20 53 48 41 33 5f Constraint SHA3_
0130: 33 38 34 20 5b 65 78 70 72 20 7b 5b 6c 73 65 61 384 [expr {[lsea
0140: 72 63 68 20 2d 6e 6f 63 61 73 65 20 5b 74 6c 73 rch -nocase [tls
0150: 3a 3a 64 69 67 65 73 74 73 5d 20 53 48 41 33 2d ::digests] SHA3-
0160: 33 38 34 5d 20 3e 20 2d 31 7d 5d 0a 63 61 74 63 384] > -1}].catc
0170: 68 20 7b 74 6c 73 3a 3a 70 72 6f 76 69 64 65 72 h {tls::provider
0180: 20 6c 65 67 61 63 79 7d 0a 0a 74 63 6c 74 65 73 legacy}..tcltes
0190: 74 3a 3a 74 65 73 74 20 4d 41 43 5f 48 4d 41 43 t::test MAC_HMAC
01a0: 2d 53 48 41 33 2d 33 38 34 2d 31 2e 31 20 7b 48 -SHA3-384-1.1 {H
01b0: 4d 41 43 5f 53 48 41 33 2d 33 38 34 7d 20 5c 0a MAC_SHA3-384} \.
01c0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 7b 48 .-constraints {H
01d0: 4d 41 43 20 53 48 41 33 5f 33 38 34 20 7d 20 5c MAC SHA3_384 } \
01e0: 0a 09 2d 73 65 74 75 70 20 7b 7d 20 5c 0a 09 2d ..-setup {} \..-
01f0: 62 6f 64 79 20 7b 73 74 72 69 6e 67 20 72 61 6e body {string ran
0200: 67 65 20 5b 74 6c 73 3a 3a 68 6d 61 63 20 2d 68 ge [tls::hmac -h
0210: 65 78 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d ex -digest SHA3-
0220: 33 38 34 20 2d 6b 65 79 20 5b 62 69 6e 61 72 79 384 -key [binary
0230: 20 64 65 63 6f 64 65 20 68 65 78 20 30 30 30 31 decode hex 0001
0240: 30 32 30 33 30 34 30 35 30 36 30 37 30 38 30 39 0203040506070809
0250: 30 61 30 62 30 63 30 64 30 65 30 66 31 30 31 31 0a0b0c0d0e0f1011
0260: 31 32 31 33 31 34 31 35 31 36 31 37 31 38 31 39 1213141516171819
0270: 31 61 31 62 31 63 31 64 31 65 31 66 32 30 32 31 1a1b1c1d1e1f2021
0280: 32 32 32 33 32 34 32 35 32 36 32 37 32 38 32 39 2223242526272829
0290: 32 61 32 62 32 63 32 64 32 65 32 66 5d 20 2d 64 2a2b2c2d2e2f] -d
02a0: 61 74 61 20 22 53 61 6d 70 6c 65 20 6d 65 73 73 ata "Sample mess
02b0: 61 67 65 20 66 6f 72 20 6b 65 79 6c 65 6e 3c 62 age for keylen<b
02c0: 6c 6f 63 6b 6c 65 6e 22 5d 20 30 20 39 35 7d 20 locklen"] 0 95}
02d0: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 \..-match exact
02e0: 2d 72 65 73 75 6c 74 20 64 35 38 38 61 33 63 35 -result d588a3c5
02f0: 31 66 33 66 32 64 39 30 36 65 38 32 39 38 63 31 1f3f2d906e8298c1
0300: 31 39 39 61 61 38 66 66 36 32 39 36 32 31 38 31 199aa8ff62962181
0310: 32 37 66 36 62 33 38 61 39 30 62 36 61 66 65 32 27f6b38a90b6afe2
0320: 63 35 36 31 37 37 32 35 62 63 39 39 39 38 37 66 c5617725bc99987f
0330: 37 39 62 32 32 61 35 35 37 62 36 35 32 30 64 62 79b22a557b6520db
0340: 37 31 30 62 37 66 34 32 0a 0a 74 63 6c 74 65 73 710b7f42..tcltes
0350: 74 3a 3a 74 65 73 74 20 4d 41 43 5f 48 4d 41 43 t::test MAC_HMAC
0360: 2d 53 48 41 33 2d 33 38 34 2d 31 2e 32 20 7b 48 -SHA3-384-1.2 {H
0370: 4d 41 43 5f 53 48 41 33 2d 33 38 34 7d 20 5c 0a MAC_SHA3-384} \.
0380: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 7b 48 .-constraints {H
0390: 4d 41 43 20 53 48 41 33 5f 33 38 34 20 7d 20 5c MAC SHA3_384 } \
03a0: 0a 09 2d 73 65 74 75 70 20 7b 7d 20 5c 0a 09 2d ..-setup {} \..-
03b0: 62 6f 64 79 20 7b 73 74 72 69 6e 67 20 72 61 6e body {string ran
03c0: 67 65 20 5b 74 6c 73 3a 3a 68 6d 61 63 20 2d 68 ge [tls::hmac -h
03d0: 65 78 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d ex -digest SHA3-
03e0: 33 38 34 20 2d 6b 65 79 20 5b 62 69 6e 61 72 79 384 -key [binary
03f0: 20 64 65 63 6f 64 65 20 68 65 78 20 30 30 30 31 decode hex 0001
0400: 30 32 30 33 30 34 30 35 30 36 30 37 30 38 30 39 0203040506070809
0410: 30 61 30 62 30 63 30 64 30 65 30 66 31 30 31 31 0a0b0c0d0e0f1011
0420: 31 32 31 33 31 34 31 35 31 36 31 37 31 38 31 39 1213141516171819
0430: 31 61 31 62 31 63 31 64 31 65 31 66 32 30 32 31 1a1b1c1d1e1f2021
0440: 32 32 32 33 32 34 32 35 32 36 32 37 32 38 32 39 2223242526272829
0450: 32 61 32 62 32 63 32 64 32 65 32 66 33 30 33 31 2a2b2c2d2e2f3031
0460: 33 32 33 33 33 34 33 35 33 36 33 37 33 38 33 39 3233343536373839
0470: 33 61 33 62 33 63 33 64 33 65 33 66 34 30 34 31 3a3b3c3d3e3f4041
0480: 34 32 34 33 34 34 34 35 34 36 34 37 34 38 34 39 4243444546474849
0490: 34 61 34 62 34 63 34 64 34 65 34 66 35 30 35 31 4a4b4c4d4e4f5051
04a0: 35 32 35 33 35 34 35 35 35 36 35 37 35 38 35 39 5253545556575859
04b0: 35 61 35 62 35 63 35 64 35 65 35 66 36 30 36 31 5a5b5c5d5e5f6061
04c0: 36 32 36 33 36 34 36 35 36 36 36 37 5d 20 2d 64 626364656667] -d
04d0: 61 74 61 20 22 53 61 6d 70 6c 65 20 6d 65 73 73 ata "Sample mess
04e0: 61 67 65 20 66 6f 72 20 6b 65 79 6c 65 6e 3d 62 age for keylen=b
04f0: 6c 6f 63 6b 6c 65 6e 22 5d 20 30 20 39 35 7d 20 locklen"] 0 95}
0500: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 \..-match exact
0510: 2d 72 65 73 75 6c 74 20 61 32 37 64 32 34 62 35 -result a27d24b5
0520: 39 32 65 38 63 38 63 62 66 36 64 34 63 65 36 66 92e8c8cbf6d4ce6f
0530: 63 35 62 66 36 32 64 38 66 63 39 38 62 66 32 64 c5bf62d8fc98bf2d
0540: 34 38 36 36 34 30 64 39 65 62 38 30 39 39 65 32 486640d9eb8099e2
0550: 34 30 34 37 38 33 37 66 35 66 33 62 66 66 62 65 4047837f5f3bffbe
0560: 39 32 64 63 63 65 39 30 62 34 65 64 35 62 31 65 92dcce90b4ed5b1e
0570: 37 65 34 34 66 61 39 30 0a 0a 74 63 6c 74 65 73 7e44fa90..tcltes
0580: 74 3a 3a 74 65 73 74 20 4d 41 43 5f 48 4d 41 43 t::test MAC_HMAC
0590: 2d 53 48 41 33 2d 33 38 34 2d 31 2e 33 20 7b 48 -SHA3-384-1.3 {H
05a0: 4d 41 43 5f 53 48 41 33 2d 33 38 34 7d 20 5c 0a MAC_SHA3-384} \.
05b0: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 7b 48 .-constraints {H
05c0: 4d 41 43 20 53 48 41 33 5f 33 38 34 20 7d 20 5c MAC SHA3_384 } \
05d0: 0a 09 2d 73 65 74 75 70 20 7b 7d 20 5c 0a 09 2d ..-setup {} \..-
05e0: 62 6f 64 79 20 7b 73 74 72 69 6e 67 20 72 61 6e body {string ran
05f0: 67 65 20 5b 74 6c 73 3a 3a 68 6d 61 63 20 2d 68 ge [tls::hmac -h
0600: 65 78 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d ex -digest SHA3-
0610: 33 38 34 20 2d 6b 65 79 20 5b 62 69 6e 61 72 79 384 -key [binary
0620: 20 64 65 63 6f 64 65 20 68 65 78 20 30 30 30 31 decode hex 0001
0630: 30 32 30 33 30 34 30 35 30 36 30 37 30 38 30 39 0203040506070809
0640: 30 61 30 62 30 63 30 64 30 65 30 66 31 30 31 31 0a0b0c0d0e0f1011
0650: 31 32 31 33 31 34 31 35 31 36 31 37 31 38 31 39 1213141516171819
0660: 31 61 31 62 31 63 31 64 31 65 31 66 32 30 32 31 1a1b1c1d1e1f2021
0670: 32 32 32 33 32 34 32 35 32 36 32 37 32 38 32 39 2223242526272829
0680: 32 61 32 62 32 63 32 64 32 65 32 66 33 30 33 31 2a2b2c2d2e2f3031
0690: 33 32 33 33 33 34 33 35 33 36 33 37 33 38 33 39 3233343536373839
06a0: 33 61 33 62 33 63 33 64 33 65 33 66 34 30 34 31 3a3b3c3d3e3f4041
06b0: 34 32 34 33 34 34 34 35 34 36 34 37 34 38 34 39 4243444546474849
06c0: 34 61 34 62 34 63 34 64 34 65 34 66 35 30 35 31 4a4b4c4d4e4f5051
06d0: 35 32 35 33 35 34 35 35 35 36 35 37 35 38 35 39 5253545556575859
06e0: 35 61 35 62 35 63 35 64 35 65 35 66 36 30 36 31 5a5b5c5d5e5f6061
06f0: 36 32 36 33 36 34 36 35 36 36 36 37 36 38 36 39 6263646566676869
0700: 36 61 36 62 36 63 36 64 36 65 36 66 37 30 37 31 6a6b6c6d6e6f7071
0710: 37 32 37 33 37 34 37 35 37 36 37 37 37 38 37 39 7273747576777879
0720: 37 61 37 62 37 63 37 64 37 65 37 66 38 30 38 31 7a7b7c7d7e7f8081
0730: 38 32 38 33 38 34 38 35 38 36 38 37 38 38 38 39 8283848586878889
0740: 38 61 38 62 38 63 38 64 38 65 38 66 39 30 39 31 8a8b8c8d8e8f9091
0750: 39 32 39 33 39 34 39 35 39 36 39 37 5d 20 2d 64 929394959697] -d
0760: 61 74 61 20 22 53 61 6d 70 6c 65 20 6d 65 73 73 ata "Sample mess
0770: 61 67 65 20 66 6f 72 20 6b 65 79 6c 65 6e 3e 62 age for keylen>b
0780: 6c 6f 63 6b 6c 65 6e 22 5d 20 30 20 39 35 7d 20 locklen"] 0 95}
0790: 5c 0a 09 2d 6d 61 74 63 68 20 65 78 61 63 74 20 \..-match exact
07a0: 2d 72 65 73 75 6c 74 20 65 35 61 65 34 63 37 33 -result e5ae4c73
07b0: 39 66 34 35 35 32 37 39 33 36 38 65 62 66 33 36 9f455279368ebf36
07c0: 64 34 66 35 33 35 34 63 39 35 61 61 31 38 34 63 d4f5354c95aa184c
07d0: 38 39 39 64 33 38 37 30 65 34 36 30 65 62 63 32 899d3870e460ebc2
07e0: 38 38 65 66 31 66 39 34 37 30 30 35 33 66 37 33 88ef1f9470053f73
07f0: 66 37 63 36 64 61 32 61 37 31 62 63 61 65 63 33 f7c6da2a71bcaec3
0800: 38 63 65 37 64 36 61 63 0a 0a 74 63 6c 74 65 73 8ce7d6ac..tcltes
0810: 74 3a 3a 74 65 73 74 20 4d 41 43 5f 48 4d 41 43 t::test MAC_HMAC
0820: 2d 53 48 41 33 2d 33 38 34 2d 31 2e 34 20 7b 48 -SHA3-384-1.4 {H
0830: 4d 41 43 5f 53 48 41 33 2d 33 38 34 7d 20 5c 0a MAC_SHA3-384} \.
0840: 09 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 7b 48 .-constraints {H
0850: 4d 41 43 20 53 48 41 33 5f 33 38 34 20 7d 20 5c MAC SHA3_384 } \
0860: 0a 09 2d 73 65 74 75 70 20 7b 7d 20 5c 0a 09 2d ..-setup {} \..-
0870: 62 6f 64 79 20 7b 73 74 72 69 6e 67 20 72 61 6e body {string ran
0880: 67 65 20 5b 74 6c 73 3a 3a 68 6d 61 63 20 2d 68 ge [tls::hmac -h
0890: 65 78 20 2d 64 69 67 65 73 74 20 53 48 41 33 2d ex -digest SHA3-
08a0: 33 38 34 20 2d 6b 65 79 20 5b 62 69 6e 61 72 79 384 -key [binary
08b0: 20 64 65 63 6f 64 65 20 68 65 78 20 30 30 30 31 decode hex 0001
08c0: 30 32 30 33 30 34 30 35 30 36 30 37 30 38 30 39 0203040506070809
08d0: 30 61 30 62 30 63 30 64 30 65 30 66 31 30 31 31 0a0b0c0d0e0f1011
08e0: 31 32 31 33 31 34 31 35 31 36 31 37 31 38 31 39 1213141516171819
08f0: 31 61 31 62 31 63 31 64 31 65 31 66 32 30 32 31 1a1b1c1d1e1f2021
0900: 32 32 32 33 32 34 32 35 32 36 32 37 32 38 32 39 2223242526272829
0910: 32 61 32 62 32 63 32 64 32 65 32 66 5d 20 2d 64 2a2b2c2d2e2f] -d
0920: 61 74 61 20 22 53 61 6d 70 6c 65 20 6d 65 73 73 ata "Sample mess
0930: 61 67 65 20 66 6f 72 20 6b 65 79 6c 65 6e 3c 62 age for keylen<b
0940: 6c 6f 63 6b 6c 65 6e 2c 20 77 69 74 68 20 74 72 locklen, with tr
0950: 75 6e 63 61 74 65 64 20 74 61 67 22 5d 20 30 20 uncated tag"] 0
0960: 34 37 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 78 47} \..-match ex
0970: 61 63 74 20 2d 72 65 73 75 6c 74 20 32 35 66 34 act -result 25f4
0980: 62 66 35 33 36 30 36 65 39 31 61 66 37 39 64 32 bf53606e91af79d2
0990: 34 61 34 62 62 31 66 64 36 61 65 63 64 34 34 34 4a4bb1fd6aecd444
09a0: 31 34 61 33 30 63 38 65 62 62 30 61 0a 0a 23 20 14a30c8ebb0a..#
09b0: 43 6c 65 61 6e 75 70 0a 3a 3a 74 63 6c 74 65 73 Cleanup.::tcltes
09c0: 74 3a 3a 63 6c 65 61 6e 75 70 54 65 73 74 73 0a t::cleanupTests.
09d0: 72 65 74 75 72 6e 0a return.