Artifact
fc1173d0644773ee1e6b5efbdd6762e6e6a31cf3e1ecf618407fe065b36c4b44:
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 32 35 36 2e 74 78 74 22 0a 70 61 63 6b 61 67 -256.txt".packag
0030: 65 20 72 65 71 75 69 72 65 20 74 6c 73 0a 70 61 e require tls.pa
0040: 63 6b 61 67 65 20 72 65 71 75 69 72 65 20 74 63 ckage require tc
0050: 6c 74 65 73 74 0a 0a 74 63 6c 74 65 73 74 3a 3a ltest..tcltest::
0060: 74 65 73 74 43 6f 6e 73 74 72 61 69 6e 74 20 48 testConstraint H
0070: 4d 41 43 20 5b 65 78 70 72 20 7b 5b 6c 73 65 61 MAC [expr {[lsea
0080: 72 63 68 20 2d 6e 6f 63 61 73 65 20 5b 74 6c 73 rch -nocase [tls
0090: 3a 3a 6d 61 63 73 5d 20 48 4d 41 43 5d 20 3e 20 ::macs] HMAC] >
00a0: 2d 31 7d 5d 0a 74 63 6c 74 65 73 74 3a 3a 74 65 -1}].tcltest::te
00b0: 73 74 43 6f 6e 73 74 72 61 69 6e 74 20 53 48 41 stConstraint SHA
00c0: 33 5f 32 35 36 20 5b 65 78 70 72 20 7b 5b 6c 73 3_256 [expr {[ls
00d0: 65 61 72 63 68 20 2d 6e 6f 63 61 73 65 20 5b 74 earch -nocase [t
00e0: 6c 73 3a 3a 64 69 67 65 73 74 73 5d 20 53 48 41 ls::digests] SHA
00f0: 33 2d 32 35 36 5d 20 3e 20 2d 31 7d 5d 0a 0a 74 3-256] > -1}]..t
0100: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 4d 41 43 cltest::test MAC
0110: 5f 48 4d 41 43 2d 53 48 41 33 2d 32 35 36 2d 31 _HMAC-SHA3-256-1
0120: 2e 31 20 7b 48 4d 41 43 5f 53 48 41 33 2d 32 35 .1 {HMAC_SHA3-25
0130: 36 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 6} \..-constrain
0140: 74 73 20 7b 48 4d 41 43 20 53 48 41 33 5f 32 35 ts {HMAC SHA3_25
0150: 36 20 7d 20 5c 0a 09 2d 73 65 74 75 70 20 7b 7d 6 } \..-setup {}
0160: 20 5c 0a 09 2d 62 6f 64 79 20 7b 73 74 72 69 6e \..-body {strin
0170: 67 20 72 61 6e 67 65 20 5b 74 6c 73 3a 3a 68 6d g range [tls::hm
0180: 61 63 20 2d 68 65 78 20 2d 64 69 67 65 73 74 20 ac -hex -digest
0190: 53 48 41 33 2d 32 35 36 20 2d 6b 65 79 20 5b 62 SHA3-256 -key [b
01a0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 inary decode hex
01b0: 20 30 30 30 31 30 32 30 33 30 34 30 35 30 36 30 000102030405060
01c0: 37 30 38 30 39 30 61 30 62 30 63 30 64 30 65 30 708090a0b0c0d0e0
01d0: 66 31 30 31 31 31 32 31 33 31 34 31 35 31 36 31 f101112131415161
01e0: 37 31 38 31 39 31 61 31 62 31 63 31 64 31 65 31 718191a1b1c1d1e1
01f0: 66 5d 20 2d 64 61 74 61 20 22 53 61 6d 70 6c 65 f] -data "Sample
0200: 20 6d 65 73 73 61 67 65 20 66 6f 72 20 6b 65 79 message for key
0210: 6c 65 6e 3c 62 6c 6f 63 6b 6c 65 6e 22 5d 20 30 len<blocklen"] 0
0220: 20 36 33 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 63} \..-match e
0230: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 34 66 65 xact -result 4fe
0240: 38 65 32 30 32 63 34 66 30 35 38 65 38 64 64 64 8e202c4f058e8ddd
0250: 63 32 33 64 38 63 33 34 65 34 36 37 33 34 33 65 c23d8c34e467343e
0260: 32 33 35 35 35 65 32 34 66 63 32 66 30 32 35 64 23555e24fc2f025d
0270: 35 39 38 66 35 35 38 66 36 37 32 30 35 0a 0a 74 598f558f67205..t
0280: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 4d 41 43 cltest::test MAC
0290: 5f 48 4d 41 43 2d 53 48 41 33 2d 32 35 36 2d 31 _HMAC-SHA3-256-1
02a0: 2e 32 20 7b 48 4d 41 43 5f 53 48 41 33 2d 32 35 .2 {HMAC_SHA3-25
02b0: 36 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 6} \..-constrain
02c0: 74 73 20 7b 48 4d 41 43 20 53 48 41 33 5f 32 35 ts {HMAC SHA3_25
02d0: 36 20 7d 20 5c 0a 09 2d 73 65 74 75 70 20 7b 7d 6 } \..-setup {}
02e0: 20 5c 0a 09 2d 62 6f 64 79 20 7b 73 74 72 69 6e \..-body {strin
02f0: 67 20 72 61 6e 67 65 20 5b 74 6c 73 3a 3a 68 6d g range [tls::hm
0300: 61 63 20 2d 68 65 78 20 2d 64 69 67 65 73 74 20 ac -hex -digest
0310: 53 48 41 33 2d 32 35 36 20 2d 6b 65 79 20 5b 62 SHA3-256 -key [b
0320: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 inary decode hex
0330: 20 30 30 30 31 30 32 30 33 30 34 30 35 30 36 30 000102030405060
0340: 37 30 38 30 39 30 61 30 62 30 63 30 64 30 65 30 708090a0b0c0d0e0
0350: 66 31 30 31 31 31 32 31 33 31 34 31 35 31 36 31 f101112131415161
0360: 37 31 38 31 39 31 61 31 62 31 63 31 64 31 65 31 718191a1b1c1d1e1
0370: 66 32 30 32 31 32 32 32 33 32 34 32 35 32 36 32 f202122232425262
0380: 37 32 38 32 39 32 61 32 62 32 63 32 64 32 65 32 728292a2b2c2d2e2
0390: 66 33 30 33 31 33 32 33 33 33 34 33 35 33 36 33 f303132333435363
03a0: 37 33 38 33 39 33 61 33 62 33 63 33 64 33 65 33 738393a3b3c3d3e3
03b0: 66 34 30 34 31 34 32 34 33 34 34 34 35 34 36 34 f404142434445464
03c0: 37 34 38 34 39 34 61 34 62 34 63 34 64 34 65 34 748494a4b4c4d4e4
03d0: 66 35 30 35 31 35 32 35 33 35 34 35 35 35 36 35 f505152535455565
03e0: 37 35 38 35 39 35 61 35 62 35 63 35 64 35 65 35 758595a5b5c5d5e5
03f0: 66 36 30 36 31 36 32 36 33 36 34 36 35 36 36 36 f606162636465666
0400: 37 36 38 36 39 36 61 36 62 36 63 36 64 36 65 36 768696a6b6c6d6e6
0410: 66 37 30 37 31 37 32 37 33 37 34 37 35 37 36 37 f707172737475767
0420: 37 37 38 37 39 37 61 37 62 37 63 37 64 37 65 37 778797a7b7c7d7e7
0430: 66 38 30 38 31 38 32 38 33 38 34 38 35 38 36 38 f808182838485868
0440: 37 5d 20 2d 64 61 74 61 20 22 53 61 6d 70 6c 65 7] -data "Sample
0450: 20 6d 65 73 73 61 67 65 20 66 6f 72 20 6b 65 79 message for key
0460: 6c 65 6e 3d 62 6c 6f 63 6b 6c 65 6e 22 5d 20 30 len=blocklen"] 0
0470: 20 36 33 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 63} \..-match e
0480: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 36 38 62 xact -result 68b
0490: 39 34 65 32 65 35 33 38 61 39 62 65 34 31 30 33 94e2e538a9be4103
04a0: 62 65 62 62 35 61 61 30 31 36 64 34 37 39 36 31 bebb5aa016d47961
04b0: 64 34 64 31 61 61 39 30 36 30 36 31 33 31 33 62 d4d1aa906061313b
04c0: 35 35 37 66 38 61 66 32 63 33 66 61 61 0a 0a 74 557f8af2c3faa..t
04d0: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 4d 41 43 cltest::test MAC
04e0: 5f 48 4d 41 43 2d 53 48 41 33 2d 32 35 36 2d 31 _HMAC-SHA3-256-1
04f0: 2e 33 20 7b 48 4d 41 43 5f 53 48 41 33 2d 32 35 .3 {HMAC_SHA3-25
0500: 36 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 6} \..-constrain
0510: 74 73 20 7b 48 4d 41 43 20 53 48 41 33 5f 32 35 ts {HMAC SHA3_25
0520: 36 20 7d 20 5c 0a 09 2d 73 65 74 75 70 20 7b 7d 6 } \..-setup {}
0530: 20 5c 0a 09 2d 62 6f 64 79 20 7b 73 74 72 69 6e \..-body {strin
0540: 67 20 72 61 6e 67 65 20 5b 74 6c 73 3a 3a 68 6d g range [tls::hm
0550: 61 63 20 2d 68 65 78 20 2d 64 69 67 65 73 74 20 ac -hex -digest
0560: 53 48 41 33 2d 32 35 36 20 2d 6b 65 79 20 5b 62 SHA3-256 -key [b
0570: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 inary decode hex
0580: 20 30 30 30 31 30 32 30 33 30 34 30 35 30 36 30 000102030405060
0590: 37 30 38 30 39 30 61 30 62 30 63 30 64 30 65 30 708090a0b0c0d0e0
05a0: 66 31 30 31 31 31 32 31 33 31 34 31 35 31 36 31 f101112131415161
05b0: 37 31 38 31 39 31 61 31 62 31 63 31 64 31 65 31 718191a1b1c1d1e1
05c0: 66 32 30 32 31 32 32 32 33 32 34 32 35 32 36 32 f202122232425262
05d0: 37 32 38 32 39 32 61 32 62 32 63 32 64 32 65 32 728292a2b2c2d2e2
05e0: 66 33 30 33 31 33 32 33 33 33 34 33 35 33 36 33 f303132333435363
05f0: 37 33 38 33 39 33 61 33 62 33 63 33 64 33 65 33 738393a3b3c3d3e3
0600: 66 34 30 34 31 34 32 34 33 34 34 34 35 34 36 34 f404142434445464
0610: 37 34 38 34 39 34 61 34 62 34 63 34 64 34 65 34 748494a4b4c4d4e4
0620: 66 35 30 35 31 35 32 35 33 35 34 35 35 35 36 35 f505152535455565
0630: 37 35 38 35 39 35 61 35 62 35 63 35 64 35 65 35 758595a5b5c5d5e5
0640: 66 36 30 36 31 36 32 36 33 36 34 36 35 36 36 36 f606162636465666
0650: 37 36 38 36 39 36 61 36 62 36 63 36 64 36 65 36 768696a6b6c6d6e6
0660: 66 37 30 37 31 37 32 37 33 37 34 37 35 37 36 37 f707172737475767
0670: 37 37 38 37 39 37 61 37 62 37 63 37 64 37 65 37 778797a7b7c7d7e7
0680: 66 38 30 38 31 38 32 38 33 38 34 38 35 38 36 38 f808182838485868
0690: 37 38 38 38 39 38 61 38 62 38 63 38 64 38 65 38 788898a8b8c8d8e8
06a0: 66 39 30 39 31 39 32 39 33 39 34 39 35 39 36 39 f909192939495969
06b0: 37 39 38 39 39 39 61 39 62 39 63 39 64 39 65 39 798999a9b9c9d9e9
06c0: 66 61 30 61 31 61 32 61 33 61 34 61 35 61 36 61 fa0a1a2a3a4a5a6a
06d0: 37 5d 20 2d 64 61 74 61 20 22 53 61 6d 70 6c 65 7] -data "Sample
06e0: 20 6d 65 73 73 61 67 65 20 66 6f 72 20 6b 65 79 message for key
06f0: 6c 65 6e 3e 62 6c 6f 63 6b 6c 65 6e 22 5d 20 30 len>blocklen"] 0
0700: 20 36 33 7d 20 5c 0a 09 2d 6d 61 74 63 68 20 65 63} \..-match e
0710: 78 61 63 74 20 2d 72 65 73 75 6c 74 20 39 62 63 xact -result 9bc
0720: 66 32 63 32 33 38 65 32 33 35 63 33 63 65 38 38 f2c238e235c3ce88
0730: 34 30 34 65 38 31 33 62 64 32 66 33 61 39 37 31 404e813bd2f3a971
0740: 38 35 61 63 36 66 32 33 38 63 36 33 64 36 32 32 85ac6f238c63d622
0750: 39 61 30 30 62 30 37 39 37 34 32 35 38 0a 0a 74 9a00b07974258..t
0760: 63 6c 74 65 73 74 3a 3a 74 65 73 74 20 4d 41 43 cltest::test MAC
0770: 5f 48 4d 41 43 2d 53 48 41 33 2d 32 35 36 2d 31 _HMAC-SHA3-256-1
0780: 2e 34 20 7b 48 4d 41 43 5f 53 48 41 33 2d 32 35 .4 {HMAC_SHA3-25
0790: 36 7d 20 5c 0a 09 2d 63 6f 6e 73 74 72 61 69 6e 6} \..-constrain
07a0: 74 73 20 7b 48 4d 41 43 20 53 48 41 33 5f 32 35 ts {HMAC SHA3_25
07b0: 36 20 7d 20 5c 0a 09 2d 73 65 74 75 70 20 7b 7d 6 } \..-setup {}
07c0: 20 5c 0a 09 2d 62 6f 64 79 20 7b 73 74 72 69 6e \..-body {strin
07d0: 67 20 72 61 6e 67 65 20 5b 74 6c 73 3a 3a 68 6d g range [tls::hm
07e0: 61 63 20 2d 68 65 78 20 2d 64 69 67 65 73 74 20 ac -hex -digest
07f0: 53 48 41 33 2d 32 35 36 20 2d 6b 65 79 20 5b 62 SHA3-256 -key [b
0800: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 inary decode hex
0810: 20 30 30 30 31 30 32 30 33 30 34 30 35 30 36 30 000102030405060
0820: 37 30 38 30 39 30 61 30 62 30 63 30 64 30 65 30 708090a0b0c0d0e0
0830: 66 31 30 31 31 31 32 31 33 31 34 31 35 31 36 31 f101112131415161
0840: 37 31 38 31 39 31 61 31 62 31 63 31 64 31 65 31 718191a1b1c1d1e1
0850: 66 5d 20 2d 64 61 74 61 20 22 53 61 6d 70 6c 65 f] -data "Sample
0860: 20 6d 65 73 73 61 67 65 20 66 6f 72 20 6b 65 79 message for key
0870: 6c 65 6e 3c 62 6c 6f 63 6b 6c 65 6e 2c 20 77 69 len<blocklen, wi
0880: 74 68 20 74 72 75 6e 63 61 74 65 64 20 74 61 67 th truncated tag
0890: 22 5d 20 30 20 33 31 7d 20 5c 0a 09 2d 6d 61 74 "] 0 31} \..-mat
08a0: 63 68 20 65 78 61 63 74 20 2d 72 65 73 75 6c 74 ch exact -result
08b0: 20 63 38 64 63 37 31 34 38 64 38 63 31 34 32 33 c8dc7148d8c1423
08c0: 61 61 35 34 39 31 30 35 64 61 66 64 66 39 63 61 aa549105dafdf9ca
08d0: 64 0a 0a 23 20 43 6c 65 61 6e 75 70 0a 3a 3a 74 d..# Cleanup.::t
08e0: 63 6c 74 65 73 74 3a 3a 63 6c 65 61 6e 75 70 54 cltest::cleanupT
08f0: 65 73 74 73 0a 72 65 74 75 72 6e 0a ests.return.