0000: 23 20 47 72 6f 75 70 2c 4e 61 6d 65 2c 43 6f 6e # Group,Name,Con
0010: 73 74 72 61 69 6e 74 73 2c 53 65 74 75 70 2c 42 straints,Setup,B
0020: 6f 64 79 2c 43 6c 65 61 6e 75 70 2c 4d 61 74 63 ody,Cleanup,Matc
0030: 68 2c 52 65 73 75 6c 74 2c 4f 75 74 70 75 74 2c h,Result,Output,
0040: 45 72 72 6f 72 20 4f 75 74 70 75 74 2c 52 65 74 Error Output,Ret
0050: 75 72 6e 20 43 6f 64 65 73 0a 63 6f 6d 6d 61 6e urn Codes.comman
0060: 64 2c 70 61 63 6b 61 67 65 20 72 65 71 75 69 72 d,package requir
0070: 65 20 74 6c 73 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 2c e tls,,,,,,,,,.,
0080: 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e ,,,,,,,,,.comman
0090: 64 2c 23 20 43 6f 6e 73 74 72 61 69 6e 74 73 2c d,# Constraints,
00a0: 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 ,,,,,,,,.command
00b0: 2c 73 6f 75 72 63 65 20 63 6f 6d 6d 6f 6e 2e 74 ,source common.t
00c0: 63 6c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 2c 2c 2c 2c cl,,,,,,,,,.,,,,
00d0: 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 ,,,,,,.command,#
00e0: 20 48 65 6c 70 65 72 20 66 75 6e 63 74 69 6f 6e Helper function
00f0: 73 20 2d 20 53 65 65 20 63 6f 6d 6d 6f 6e 2e 74 s - See common.t
0100: 63 6c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d cl,,,,,,,,,.comm
0110: 61 6e 64 2c 70 72 6f 63 20 64 69 67 65 73 74 5f and,proc digest_
0120: 72 65 61 64 5f 63 68 61 6e 20 7b 63 6d 64 20 66 read_chan {cmd f
0130: 69 6c 65 6e 61 6d 65 20 61 72 67 73 7d 20 7b 3b ilename args} {;
0140: 73 65 74 20 63 68 20 5b 6f 70 65 6e 20 24 66 69 set ch [open $fi
0150: 6c 65 6e 61 6d 65 20 72 62 5d 3b 73 65 74 20 62 lename rb];set b
0160: 73 69 7a 65 20 5b 66 63 6f 6e 66 69 67 75 72 65 size [fconfigure
0170: 20 24 63 68 20 2d 62 75 66 66 65 72 73 69 7a 65 $ch -buffersize
0180: 5d 3b 73 65 74 20 6e 65 77 20 5b 24 63 6d 64 20 ];set new [$cmd
0190: 7b 2a 7d 24 61 72 67 73 20 2d 63 68 61 6e 20 24 {*}$args -chan $
01a0: 63 68 5d 3b 77 68 69 6c 65 20 7b 21 5b 65 6f 66 ch];while {![eof
01b0: 20 24 6e 65 77 5d 7d 20 7b 73 65 74 20 6d 64 20 $new]} {set md
01c0: 5b 72 65 61 64 20 24 6e 65 77 20 24 62 73 69 7a [read $new $bsiz
01d0: 65 5d 7d 3b 63 6c 6f 73 65 20 24 6e 65 77 3b 72 e]};close $new;r
01e0: 65 74 75 72 6e 20 24 6d 64 7d 2c 2c 2c 2c 2c 2c eturn $md},,,,,,
01f0: 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 70 72 6f 63 ,,,.command,proc
0200: 20 64 69 67 65 73 74 5f 77 72 69 74 65 5f 63 68 digest_write_ch
0210: 61 6e 20 7b 63 6d 64 20 66 69 6c 65 6e 61 6d 65 an {cmd filename
0220: 20 64 61 74 61 20 61 72 67 73 7d 20 7b 3b 73 65 data args} {;se
0230: 74 20 63 68 20 5b 6f 70 65 6e 20 24 66 69 6c 65 t ch [open $file
0240: 6e 61 6d 65 20 77 62 5d 3b 73 65 74 20 6e 65 77 name wb];set new
0250: 20 5b 24 63 6d 64 20 7b 2a 7d 24 61 72 67 73 20 [$cmd {*}$args
0260: 2d 63 68 61 6e 20 24 63 68 5d 3b 70 75 74 73 20 -chan $ch];puts
0270: 2d 6e 6f 6e 65 77 6c 69 6e 65 20 24 6e 65 77 20 -nonewline $new
0280: 24 64 61 74 61 3b 66 6c 75 73 68 20 24 6e 65 77 $data;flush $new
0290: 3b 63 6c 6f 73 65 20 24 6e 65 77 3b 73 65 74 20 ;close $new;set
02a0: 63 68 20 5b 6f 70 65 6e 20 24 66 69 6c 65 6e 61 ch [open $filena
02b0: 6d 65 20 72 62 5d 3b 73 65 74 20 6d 64 20 5b 72 me rb];set md [r
02c0: 65 61 64 20 24 63 68 5d 3b 63 6c 6f 73 65 20 24 ead $ch];close $
02d0: 63 68 3b 72 65 74 75 72 6e 20 24 6d 64 7d 2c 2c ch;return $md},,
02e0: 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c ,,,,,,,.command,
02f0: 70 72 6f 63 20 64 69 67 65 73 74 5f 61 63 63 75 proc digest_accu
0300: 6d 75 6c 61 74 65 20 7b 73 74 72 69 6e 67 20 61 mulate {string a
0310: 72 67 73 7d 20 7b 3b 73 65 74 20 63 6d 64 20 5b rgs} {;set cmd [
0320: 7b 2a 7d 24 61 72 67 73 20 2d 63 6f 6d 6d 61 6e {*}$args -comman
0330: 64 20 64 63 6d 64 5d 3b 20 24 63 6d 64 20 75 70 d dcmd]; $cmd up
0340: 64 61 74 65 20 5b 73 74 72 69 6e 67 20 72 61 6e date [string ran
0350: 67 65 20 24 73 74 72 69 6e 67 20 30 20 32 30 5d ge $string 0 20]
0360: 3b 24 63 6d 64 20 75 70 64 61 74 65 20 5b 73 74 ;$cmd update [st
0370: 72 69 6e 67 20 72 61 6e 67 65 20 24 73 74 72 69 ring range $stri
0380: 6e 67 20 32 31 20 65 6e 64 5d 3b 72 65 74 75 72 ng 21 end];retur
0390: 6e 20 5b 24 63 6d 64 20 66 69 6e 61 6c 69 7a 65 n [$cmd finalize
03a0: 5d 7d 2c 24 63 6d 64 20 75 70 64 61 74 65 20 5b ]},$cmd update [
03b0: 73 74 72 69 6e 67 20 72 61 6e 67 65 20 24 73 74 string range $st
03c0: 72 69 6e 67 20 30 20 32 30 5d 3b 24 63 6d 64 20 ring 0 20];$cmd
03d0: 75 70 64 61 74 65 20 5b 73 74 72 69 6e 67 20 72 update [string r
03e0: 61 6e 67 65 20 24 73 74 72 69 6e 67 20 32 31 20 ange $string 21
03f0: 65 6e 64 5d 3b 72 65 74 75 72 6e 20 5b 24 63 6d end];return [$cm
0400: 64 20 66 69 6e 61 6c 69 7a 65 5d 7d 2c 2c 2c 2c d finalize]},,,,
0410: 2c 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a ,,,,.,,,,,,,,,,.
0420: 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 74 65 73 command,"set tes
0430: 74 5f 64 61 74 61 20 22 22 45 78 61 6d 70 6c 65 t_data ""Example
0440: 20 73 74 72 69 6e 67 20 66 6f 72 20 6d 65 73 73 string for mess
0450: 61 67 65 20 64 69 67 65 73 74 20 74 65 73 74 73 age digest tests
0460: 2e 5c 6e 22 22 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a .\n""",,,,,,,,,.
0470: 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 74 65 73 command,"set tes
0480: 74 5f 66 69 6c 65 20 22 22 6d 64 5f 64 61 74 61 t_file ""md_data
0490: 2e 64 61 74 22 22 22 2c 2c 2c 2c 2c 2c 2c 2c 2c .dat""",,,,,,,,,
04a0: 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 74 65 .command,"set te
04b0: 73 74 5f 61 6c 74 5f 66 69 6c 65 20 22 22 6d 64 st_alt_file ""md
04c0: 5f 61 6c 74 5f 64 61 74 61 2e 64 61 74 22 22 22 _alt_data.dat"""
04d0: 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e ,,,,,,,,,.comman
04e0: 64 2c 22 73 65 74 20 74 65 73 74 5f 6b 65 79 20 d,"set test_key
04f0: 22 22 45 78 61 6d 70 6c 65 20 6b 65 79 22 22 22 ""Example key"""
0500: 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e ,,,,,,,,,.comman
0510: 64 2c 3a 3a 74 63 6c 74 65 73 74 3a 3a 6d 61 6b d,::tcltest::mak
0520: 65 46 69 6c 65 20 24 74 65 73 74 5f 64 61 74 61 eFile $test_data
0530: 20 24 74 65 73 74 5f 66 69 6c 65 2c 2c 2c 2c 2c $test_file,,,,,
0540: 2c 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a ,,,,.,,,,,,,,,,.
0550: 63 6f 6d 6d 61 6e 64 2c 23 20 54 65 73 74 20 73 command,# Test s
0560: 68 6f 72 74 2d 63 75 74 20 63 6f 6d 6d 61 6e 64 hort-cut command
0570: 73 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 53 68 6f 72 74 s,,,,,,,,,.Short
0580: 63 75 74 20 43 6d 64 73 2c 6d 64 34 20 63 6d 64 cut Cmds,md4 cmd
0590: 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 34 20 24 74 ,,,::tls::md4 $t
05a0: 65 73 74 5f 64 61 74 61 2c 2c 2c 37 39 33 33 39 est_data,,,79339
05b0: 39 66 37 39 32 65 63 61 32 37 35 32 63 36 61 66 9f792eca2752c6af
05c0: 33 32 33 34 62 61 37 30 38 35 38 2c 2c 2c 0a 53 3234ba70858,,,.S
05d0: 68 6f 72 74 63 75 74 20 43 6d 64 73 2c 6d 64 35 hortcut Cmds,md5
05e0: 20 63 6d 64 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 cmd,,,::tls::md
05f0: 35 20 24 74 65 73 74 5f 64 61 74 61 2c 2c 2c 39 5 $test_data,,,9
0600: 36 32 62 66 30 38 30 33 62 34 32 33 32 65 63 32 62bf0803b4232ec2
0610: 33 62 64 38 34 32 37 62 62 39 34 65 61 30 39 2c 3bd8427bb94ea09,
0620: 2c 2c 0a 53 68 6f 72 74 63 75 74 20 43 6d 64 73 ,,.Shortcut Cmds
0630: 2c 73 68 61 31 20 63 6d 64 2c 2c 2c 3a 3a 74 6c ,sha1 cmd,,,::tl
0640: 73 3a 3a 73 68 61 31 20 24 74 65 73 74 5f 64 61 s::sha1 $test_da
0650: 74 61 2c 2c 2c 34 66 65 30 33 62 37 66 32 35 36 ta,,,4fe03b7f256
0660: 38 35 35 31 64 66 61 66 62 39 38 63 61 36 30 30 8551dfafb98ca600
0670: 34 65 36 35 63 34 62 37 31 61 61 37 64 2c 2c 2c 4e65c4b71aa7d,,,
0680: 0a 53 68 6f 72 74 63 75 74 20 43 6d 64 73 2c 73 .Shortcut Cmds,s
0690: 68 61 32 35 36 20 63 6d 64 2c 2c 2c 3a 3a 74 6c ha256 cmd,,,::tl
06a0: 73 3a 3a 73 68 61 32 35 36 20 24 74 65 73 74 5f s::sha256 $test_
06b0: 64 61 74 61 2c 2c 2c 39 64 33 35 37 38 66 63 31 data,,,9d3578fc1
06c0: 33 38 32 30 35 63 66 30 65 65 34 62 34 63 65 66 38205cf0ee4b4cef
06d0: 33 35 66 65 31 30 31 62 62 34 65 63 61 63 37 62 35fe101bb4ecac7b
06e0: 31 36 31 34 63 31 38 65 36 66 61 34 38 62 35 63 1614c18e6fa48b5c
06f0: 37 66 39 35 65 31 39 2c 2c 2c 0a 53 68 6f 72 74 7f95e19,,,.Short
0700: 63 75 74 20 43 6d 64 73 2c 73 68 61 35 31 32 20 cut Cmds,sha512
0710: 63 6d 64 2c 2c 2c 3a 3a 74 6c 73 3a 3a 73 68 61 cmd,,,::tls::sha
0720: 35 31 32 20 24 74 65 73 74 5f 64 61 74 61 2c 2c 512 $test_data,,
0730: 2c 64 31 37 38 65 37 35 39 64 63 35 39 31 32 37 ,d178e759dc59127
0740: 30 37 31 35 38 38 64 32 66 61 64 31 37 33 63 30 071588d2fad173c0
0750: 36 32 33 38 64 38 37 65 38 30 30 61 36 34 30 33 6238d87e800a6403
0760: 63 30 61 33 30 64 61 61 34 66 61 61 66 30 35 64 c0a30daa4faaf05d
0770: 30 65 37 63 65 30 34 39 31 36 61 66 61 61 36 61 0e7ce04916afaa6a
0780: 35 38 61 33 30 63 62 65 62 35 39 37 64 61 63 62 58a30cbeb597dacb
0790: 30 31 63 36 32 66 39 66 62 39 64 38 39 62 61 62 01c62f9fb9d89bab
07a0: 39 64 61 36 33 30 63 36 39 39 65 34 38 31 36 66 9da630c699e4816f
07b0: 31 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 1,,,.,,,,,,,,,,.
07c0: 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 ,,,,,,,,,,.comma
07d0: 6e 64 2c 23 20 54 65 73 74 20 4d 44 20 63 6f 6d nd,# Test MD com
07e0: 6d 61 6e 64 20 66 6f 72 20 72 65 61 64 20 63 68 mand for read ch
07f0: 61 6e 6e 65 6c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 4d annel,,,,,,,,,.M
0800: 44 20 43 68 61 6e 20 52 65 61 64 2c 6d 64 34 2c D Chan Read,md4,
0810: 2c 2c 64 69 67 65 73 74 5f 72 65 61 64 5f 63 68 ,,digest_read_ch
0820: 61 6e 20 3a 3a 74 6c 73 3a 3a 6d 64 20 24 74 65 an ::tls::md $te
0830: 73 74 5f 66 69 6c 65 20 2d 64 69 67 65 73 74 20 st_file -digest
0840: 6d 64 34 2c 2c 2c 37 39 33 33 39 39 66 37 39 32 md4,,,793399f792
0850: 65 63 61 32 37 35 32 63 36 61 66 33 32 33 34 62 eca2752c6af3234b
0860: 61 37 30 38 35 38 2c 2c 2c 0a 4d 44 20 43 68 61 a70858,,,.MD Cha
0870: 6e 20 52 65 61 64 2c 6d 64 35 2c 2c 2c 64 69 67 n Read,md5,,,dig
0880: 65 73 74 5f 72 65 61 64 5f 63 68 61 6e 20 3a 3a est_read_chan ::
0890: 74 6c 73 3a 3a 6d 64 20 24 74 65 73 74 5f 66 69 tls::md $test_fi
08a0: 6c 65 20 2d 64 69 67 65 73 74 20 6d 64 35 2c 2c le -digest md5,,
08b0: 2c 39 36 32 62 66 30 38 30 33 62 34 32 33 32 65 ,962bf0803b4232e
08c0: 63 32 33 62 64 38 34 32 37 62 62 39 34 65 61 30 c23bd8427bb94ea0
08d0: 39 2c 2c 2c 0a 4d 44 20 43 68 61 6e 20 52 65 61 9,,,.MD Chan Rea
08e0: 64 2c 73 68 61 31 2c 2c 2c 64 69 67 65 73 74 5f d,sha1,,,digest_
08f0: 72 65 61 64 5f 63 68 61 6e 20 3a 3a 74 6c 73 3a read_chan ::tls:
0900: 3a 6d 64 20 24 74 65 73 74 5f 66 69 6c 65 20 2d :md $test_file -
0910: 64 69 67 65 73 74 20 73 68 61 31 2c 2c 2c 34 66 digest sha1,,,4f
0920: 65 30 33 62 37 66 32 35 36 38 35 35 31 64 66 61 e03b7f2568551dfa
0930: 66 62 39 38 63 61 36 30 30 34 65 36 35 63 34 62 fb98ca6004e65c4b
0940: 37 31 61 61 37 64 2c 2c 2c 0a 4d 44 20 43 68 61 71aa7d,,,.MD Cha
0950: 6e 20 52 65 61 64 2c 73 68 61 32 35 36 2c 2c 2c n Read,sha256,,,
0960: 64 69 67 65 73 74 5f 72 65 61 64 5f 63 68 61 6e digest_read_chan
0970: 20 3a 3a 74 6c 73 3a 3a 6d 64 20 24 74 65 73 74 ::tls::md $test
0980: 5f 66 69 6c 65 20 2d 64 69 67 65 73 74 20 73 68 _file -digest sh
0990: 61 32 35 36 2c 2c 2c 39 64 33 35 37 38 66 63 31 a256,,,9d3578fc1
09a0: 33 38 32 30 35 63 66 30 65 65 34 62 34 63 65 66 38205cf0ee4b4cef
09b0: 33 35 66 65 31 30 31 62 62 34 65 63 61 63 37 62 35fe101bb4ecac7b
09c0: 31 36 31 34 63 31 38 65 36 66 61 34 38 62 35 63 1614c18e6fa48b5c
09d0: 37 66 39 35 65 31 39 2c 2c 2c 0a 4d 44 20 43 68 7f95e19,,,.MD Ch
09e0: 61 6e 20 52 65 61 64 2c 73 68 61 35 31 32 2c 2c an Read,sha512,,
09f0: 2c 64 69 67 65 73 74 5f 72 65 61 64 5f 63 68 61 ,digest_read_cha
0a00: 6e 20 3a 3a 74 6c 73 3a 3a 6d 64 20 24 74 65 73 n ::tls::md $tes
0a10: 74 5f 66 69 6c 65 20 2d 64 69 67 65 73 74 20 73 t_file -digest s
0a20: 68 61 35 31 32 2c 2c 2c 64 31 37 38 65 37 35 39 ha512,,,d178e759
0a30: 64 63 35 39 31 32 37 30 37 31 35 38 38 64 32 66 dc59127071588d2f
0a40: 61 64 31 37 33 63 30 36 32 33 38 64 38 37 65 38 ad173c06238d87e8
0a50: 30 30 61 36 34 30 33 63 30 61 33 30 64 61 61 34 00a6403c0a30daa4
0a60: 66 61 61 66 30 35 64 30 65 37 63 65 30 34 39 31 faaf05d0e7ce0491
0a70: 36 61 66 61 61 36 61 35 38 61 33 30 63 62 65 62 6afaa6a58a30cbeb
0a80: 35 39 37 64 61 63 62 30 31 63 36 32 66 39 66 62 597dacb01c62f9fb
0a90: 39 64 38 39 62 61 62 39 64 61 36 33 30 63 36 39 9d89bab9da630c69
0aa0: 39 65 34 38 31 36 66 31 2c 2c 2c 0a 4d 44 20 43 9e4816f1,,,.MD C
0ab0: 68 61 6e 20 52 65 61 64 2c 6d 64 35 20 62 69 6e han Read,md5 bin
0ac0: 2c 2c 2c 62 69 6e 61 72 79 20 65 6e 63 6f 64 65 ,,,binary encode
0ad0: 20 68 65 78 20 5b 64 69 67 65 73 74 5f 72 65 61 hex [digest_rea
0ae0: 64 5f 63 68 61 6e 20 3a 3a 74 6c 73 3a 3a 6d 64 d_chan ::tls::md
0af0: 20 24 74 65 73 74 5f 66 69 6c 65 20 2d 62 69 6e $test_file -bin
0b00: 20 2d 64 69 67 65 73 74 20 6d 64 35 5d 2c 2c 2c -digest md5],,,
0b10: 39 36 32 62 66 30 38 30 33 62 34 32 33 32 65 63 962bf0803b4232ec
0b20: 32 33 62 64 38 34 32 37 62 62 39 34 65 61 30 39 23bd8427bb94ea09
0b30: 2c 2c 2c 0a 4d 44 20 43 68 61 6e 20 52 65 61 64 ,,,.MD Chan Read
0b40: 2c 6d 64 35 20 68 65 78 2c 2c 2c 64 69 67 65 73 ,md5 hex,,,diges
0b50: 74 5f 72 65 61 64 5f 63 68 61 6e 20 3a 3a 74 6c t_read_chan ::tl
0b60: 73 3a 3a 6d 64 20 24 74 65 73 74 5f 66 69 6c 65 s::md $test_file
0b70: 20 2d 68 65 78 20 2d 64 69 67 65 73 74 20 6d 64 -hex -digest md
0b80: 35 2c 2c 2c 39 36 32 62 66 30 38 30 33 62 34 32 5,,,962bf0803b42
0b90: 33 32 65 63 32 33 62 64 38 34 32 37 62 62 39 34 32ec23bd8427bb94
0ba0: 65 61 30 39 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c ea09,,,.,,,,,,,,
0bb0: 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 54 65 73 ,,.command,# Tes
0bc0: 74 20 4d 44 20 63 6f 6d 6d 61 6e 64 20 66 6f 72 t MD command for
0bd0: 20 77 72 69 74 65 20 63 68 61 6e 6e 65 6c 2c 2c write channel,,
0be0: 2c 2c 2c 2c 2c 2c 2c 0a 4d 44 20 43 68 61 6e 20 ,,,,,,,.MD Chan
0bf0: 57 72 69 74 65 2c 6d 64 34 2c 2c 2c 64 69 67 65 Write,md4,,,dige
0c00: 73 74 5f 77 72 69 74 65 5f 63 68 61 6e 20 3a 3a st_write_chan ::
0c10: 74 6c 73 3a 3a 6d 64 20 24 74 65 73 74 5f 61 6c tls::md $test_al
0c20: 74 5f 66 69 6c 65 20 24 74 65 73 74 5f 64 61 74 t_file $test_dat
0c30: 61 20 2d 64 69 67 65 73 74 20 6d 64 34 2c 2c 2c a -digest md4,,,
0c40: 37 39 33 33 39 39 66 37 39 32 65 63 61 32 37 35 793399f792eca275
0c50: 32 63 36 61 66 33 32 33 34 62 61 37 30 38 35 38 2c6af3234ba70858
0c60: 2c 2c 2c 0a 4d 44 20 43 68 61 6e 20 57 72 69 74 ,,,.MD Chan Writ
0c70: 65 2c 6d 64 35 2c 2c 2c 64 69 67 65 73 74 5f 77 e,md5,,,digest_w
0c80: 72 69 74 65 5f 63 68 61 6e 20 3a 3a 74 6c 73 3a rite_chan ::tls:
0c90: 3a 6d 64 20 24 74 65 73 74 5f 61 6c 74 5f 66 69 :md $test_alt_fi
0ca0: 6c 65 20 24 74 65 73 74 5f 64 61 74 61 20 2d 64 le $test_data -d
0cb0: 69 67 65 73 74 20 6d 64 35 2c 2c 2c 39 36 32 62 igest md5,,,962b
0cc0: 66 30 38 30 33 62 34 32 33 32 65 63 32 33 62 64 f0803b4232ec23bd
0cd0: 38 34 32 37 62 62 39 34 65 61 30 39 2c 2c 2c 0a 8427bb94ea09,,,.
0ce0: 4d 44 20 43 68 61 6e 20 57 72 69 74 65 2c 73 68 MD Chan Write,sh
0cf0: 61 31 2c 2c 2c 64 69 67 65 73 74 5f 77 72 69 74 a1,,,digest_writ
0d00: 65 5f 63 68 61 6e 20 3a 3a 74 6c 73 3a 3a 6d 64 e_chan ::tls::md
0d10: 20 24 74 65 73 74 5f 61 6c 74 5f 66 69 6c 65 20 $test_alt_file
0d20: 24 74 65 73 74 5f 64 61 74 61 20 2d 64 69 67 65 $test_data -dige
0d30: 73 74 20 73 68 61 31 2c 2c 2c 34 66 65 30 33 62 st sha1,,,4fe03b
0d40: 37 66 32 35 36 38 35 35 31 64 66 61 66 62 39 38 7f2568551dfafb98
0d50: 63 61 36 30 30 34 65 36 35 63 34 62 37 31 61 61 ca6004e65c4b71aa
0d60: 37 64 2c 2c 2c 0a 4d 44 20 43 68 61 6e 20 57 72 7d,,,.MD Chan Wr
0d70: 69 74 65 2c 73 68 61 32 35 36 2c 2c 2c 64 69 67 ite,sha256,,,dig
0d80: 65 73 74 5f 77 72 69 74 65 5f 63 68 61 6e 20 3a est_write_chan :
0d90: 3a 74 6c 73 3a 3a 6d 64 20 24 74 65 73 74 5f 61 :tls::md $test_a
0da0: 6c 74 5f 66 69 6c 65 20 24 74 65 73 74 5f 64 61 lt_file $test_da
0db0: 74 61 20 2d 64 69 67 65 73 74 20 73 68 61 32 35 ta -digest sha25
0dc0: 36 2c 2c 2c 39 64 33 35 37 38 66 63 31 33 38 32 6,,,9d3578fc1382
0dd0: 30 35 63 66 30 65 65 34 62 34 63 65 66 33 35 66 05cf0ee4b4cef35f
0de0: 65 31 30 31 62 62 34 65 63 61 63 37 62 31 36 31 e101bb4ecac7b161
0df0: 34 63 31 38 65 36 66 61 34 38 62 35 63 37 66 39 4c18e6fa48b5c7f9
0e00: 35 65 31 39 2c 2c 2c 0a 4d 44 20 43 68 61 6e 20 5e19,,,.MD Chan
0e10: 57 72 69 74 65 2c 73 68 61 35 31 32 2c 2c 2c 64 Write,sha512,,,d
0e20: 69 67 65 73 74 5f 77 72 69 74 65 5f 63 68 61 6e igest_write_chan
0e30: 20 3a 3a 74 6c 73 3a 3a 6d 64 20 24 74 65 73 74 ::tls::md $test
0e40: 5f 61 6c 74 5f 66 69 6c 65 20 24 74 65 73 74 5f _alt_file $test_
0e50: 64 61 74 61 20 2d 64 69 67 65 73 74 20 73 68 61 data -digest sha
0e60: 35 31 32 2c 2c 2c 64 31 37 38 65 37 35 39 64 63 512,,,d178e759dc
0e70: 35 39 31 32 37 30 37 31 35 38 38 64 32 66 61 64 59127071588d2fad
0e80: 31 37 33 63 30 36 32 33 38 64 38 37 65 38 30 30 173c06238d87e800
0e90: 61 36 34 30 33 63 30 61 33 30 64 61 61 34 66 61 a6403c0a30daa4fa
0ea0: 61 66 30 35 64 30 65 37 63 65 30 34 39 31 36 61 af05d0e7ce04916a
0eb0: 66 61 61 36 61 35 38 61 33 30 63 62 65 62 35 39 faa6a58a30cbeb59
0ec0: 37 64 61 63 62 30 31 63 36 32 66 39 66 62 39 64 7dacb01c62f9fb9d
0ed0: 38 39 62 61 62 39 64 61 36 33 30 63 36 39 39 65 89bab9da630c699e
0ee0: 34 38 31 36 66 31 2c 2c 2c 0a 4d 44 20 43 68 61 4816f1,,,.MD Cha
0ef0: 6e 20 57 72 69 74 65 2c 6d 64 35 20 62 69 6e 2c n Write,md5 bin,
0f00: 2c 2c 62 69 6e 61 72 79 20 65 6e 63 6f 64 65 20 ,,binary encode
0f10: 68 65 78 20 5b 64 69 67 65 73 74 5f 77 72 69 74 hex [digest_writ
0f20: 65 5f 63 68 61 6e 20 3a 3a 74 6c 73 3a 3a 6d 64 e_chan ::tls::md
0f30: 20 24 74 65 73 74 5f 61 6c 74 5f 66 69 6c 65 20 $test_alt_file
0f40: 24 74 65 73 74 5f 64 61 74 61 20 2d 62 69 6e 20 $test_data -bin
0f50: 2d 64 69 67 65 73 74 20 6d 64 35 5d 2c 2c 2c 39 -digest md5],,,9
0f60: 36 32 62 66 30 38 30 33 62 34 32 33 32 65 63 32 62bf0803b4232ec2
0f70: 33 62 64 38 34 32 37 62 62 39 34 65 61 30 39 2c 3bd8427bb94ea09,
0f80: 2c 2c 0a 4d 44 20 43 68 61 6e 20 57 72 69 74 65 ,,.MD Chan Write
0f90: 2c 6d 64 35 20 68 65 78 2c 2c 2c 64 69 67 65 73 ,md5 hex,,,diges
0fa0: 74 5f 77 72 69 74 65 5f 63 68 61 6e 20 3a 3a 74 t_write_chan ::t
0fb0: 6c 73 3a 3a 6d 64 20 24 74 65 73 74 5f 61 6c 74 ls::md $test_alt
0fc0: 5f 66 69 6c 65 20 24 74 65 73 74 5f 64 61 74 61 _file $test_data
0fd0: 20 2d 68 65 78 20 2d 64 69 67 65 73 74 20 6d 64 -hex -digest md
0fe0: 35 2c 2c 2c 39 36 32 62 66 30 38 30 33 62 34 32 5,,,962bf0803b42
0ff0: 33 32 65 63 32 33 62 64 38 34 32 37 62 62 39 34 32ec23bd8427bb94
1000: 65 61 30 39 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c ea09,,,.,,,,,,,,
1010: 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 54 65 73 ,,.command,# Tes
1020: 74 20 4d 44 20 63 6f 6d 6d 61 6e 64 20 66 6f 72 t MD command for
1030: 20 6f 62 6a 65 63 74 20 63 6f 6d 6d 61 6e 64 2c object command,
1040: 2c 2c 2c 2c 2c 2c 2c 2c 0a 4d 44 20 43 6f 6d 6d ,,,,,,,,.MD Comm
1050: 61 6e 64 2c 6d 64 34 2c 2c 2c 64 69 67 65 73 74 and,md4,,,digest
1060: 5f 61 63 63 75 6d 75 6c 61 74 65 20 24 74 65 73 _accumulate $tes
1070: 74 5f 64 61 74 61 20 3a 3a 74 6c 73 3a 3a 6d 64 t_data ::tls::md
1080: 20 2d 64 69 67 65 73 74 20 6d 64 34 2c 2c 2c 37 -digest md4,,,7
1090: 39 33 33 39 39 66 37 39 32 65 63 61 32 37 35 32 93399f792eca2752
10a0: 63 36 61 66 33 32 33 34 62 61 37 30 38 35 38 2c c6af3234ba70858,
10b0: 2c 2c 0a 4d 44 20 43 6f 6d 6d 61 6e 64 2c 6d 64 ,,.MD Command,md
10c0: 35 2c 2c 2c 64 69 67 65 73 74 5f 61 63 63 75 6d 5,,,digest_accum
10d0: 75 6c 61 74 65 20 24 74 65 73 74 5f 64 61 74 61 ulate $test_data
10e0: 20 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 65 ::tls::md -dige
10f0: 73 74 20 6d 64 35 2c 2c 2c 39 36 32 62 66 30 38 st md5,,,962bf08
1100: 30 33 62 34 32 33 32 65 63 32 33 62 64 38 34 32 03b4232ec23bd842
1110: 37 62 62 39 34 65 61 30 39 2c 2c 2c 0a 4d 44 20 7bb94ea09,,,.MD
1120: 43 6f 6d 6d 61 6e 64 2c 73 68 61 31 2c 2c 2c 64 Command,sha1,,,d
1130: 69 67 65 73 74 5f 61 63 63 75 6d 75 6c 61 74 65 igest_accumulate
1140: 20 24 74 65 73 74 5f 64 61 74 61 20 3a 3a 74 6c $test_data ::tl
1150: 73 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 68 s::md -digest sh
1160: 61 31 2c 2c 2c 34 66 65 30 33 62 37 66 32 35 36 a1,,,4fe03b7f256
1170: 38 35 35 31 64 66 61 66 62 39 38 63 61 36 30 30 8551dfafb98ca600
1180: 34 65 36 35 63 34 62 37 31 61 61 37 64 2c 2c 2c 4e65c4b71aa7d,,,
1190: 0a 4d 44 20 43 6f 6d 6d 61 6e 64 2c 73 68 61 32 .MD Command,sha2
11a0: 35 36 2c 2c 2c 64 69 67 65 73 74 5f 61 63 63 75 56,,,digest_accu
11b0: 6d 75 6c 61 74 65 20 24 74 65 73 74 5f 64 61 74 mulate $test_dat
11c0: 61 20 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 a ::tls::md -dig
11d0: 65 73 74 20 73 68 61 32 35 36 2c 2c 2c 39 64 33 est sha256,,,9d3
11e0: 35 37 38 66 63 31 33 38 32 30 35 63 66 30 65 65 578fc138205cf0ee
11f0: 34 62 34 63 65 66 33 35 66 65 31 30 31 62 62 34 4b4cef35fe101bb4
1200: 65 63 61 63 37 62 31 36 31 34 63 31 38 65 36 66 ecac7b1614c18e6f
1210: 61 34 38 62 35 63 37 66 39 35 65 31 39 2c 2c 2c a48b5c7f95e19,,,
1220: 0a 4d 44 20 43 6f 6d 6d 61 6e 64 2c 73 68 61 35 .MD Command,sha5
1230: 31 32 2c 2c 2c 64 69 67 65 73 74 5f 61 63 63 75 12,,,digest_accu
1240: 6d 75 6c 61 74 65 20 24 74 65 73 74 5f 64 61 74 mulate $test_dat
1250: 61 20 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 a ::tls::md -dig
1260: 65 73 74 20 73 68 61 35 31 32 2c 2c 2c 64 31 37 est sha512,,,d17
1270: 38 65 37 35 39 64 63 35 39 31 32 37 30 37 31 35 8e759dc591270715
1280: 38 38 64 32 66 61 64 31 37 33 63 30 36 32 33 38 88d2fad173c06238
1290: 64 38 37 65 38 30 30 61 36 34 30 33 63 30 61 33 d87e800a6403c0a3
12a0: 30 64 61 61 34 66 61 61 66 30 35 64 30 65 37 63 0daa4faaf05d0e7c
12b0: 65 30 34 39 31 36 61 66 61 61 36 61 35 38 61 33 e04916afaa6a58a3
12c0: 30 63 62 65 62 35 39 37 64 61 63 62 30 31 63 36 0cbeb597dacb01c6
12d0: 32 66 39 66 62 39 64 38 39 62 61 62 39 64 61 36 2f9fb9d89bab9da6
12e0: 33 30 63 36 39 39 65 34 38 31 36 66 31 2c 2c 2c 30c699e4816f1,,,
12f0: 0a 4d 44 20 43 6f 6d 6d 61 6e 64 2c 6d 64 35 20 .MD Command,md5
1300: 62 69 6e 2c 2c 2c 62 69 6e 61 72 79 20 65 6e 63 bin,,,binary enc
1310: 6f 64 65 20 68 65 78 20 5b 64 69 67 65 73 74 5f ode hex [digest_
1320: 61 63 63 75 6d 75 6c 61 74 65 20 24 74 65 73 74 accumulate $test
1330: 5f 64 61 74 61 20 3a 3a 74 6c 73 3a 3a 6d 64 20 _data ::tls::md
1340: 2d 64 69 67 65 73 74 20 6d 64 35 20 2d 62 69 6e -digest md5 -bin
1350: 5d 2c 2c 2c 39 36 32 62 66 30 38 30 33 62 34 32 ],,,962bf0803b42
1360: 33 32 65 63 32 33 62 64 38 34 32 37 62 62 39 34 32ec23bd8427bb94
1370: 65 61 30 39 2c 2c 2c 0a 4d 44 20 43 6f 6d 6d 61 ea09,,,.MD Comma
1380: 6e 64 2c 6d 64 35 20 68 65 78 2c 2c 2c 64 69 67 nd,md5 hex,,,dig
1390: 65 73 74 5f 61 63 63 75 6d 75 6c 61 74 65 20 24 est_accumulate $
13a0: 74 65 73 74 5f 64 61 74 61 20 3a 3a 74 6c 73 3a test_data ::tls:
13b0: 3a 6d 64 20 2d 64 69 67 65 73 74 20 6d 64 35 20 :md -digest md5
13c0: 2d 68 65 78 2c 2c 2c 39 36 32 62 66 30 38 30 33 -hex,,,962bf0803
13d0: 62 34 32 33 32 65 63 32 33 62 64 38 34 32 37 62 b4232ec23bd8427b
13e0: 62 39 34 65 61 30 39 2c 2c 2c 0a 2c 2c 2c 2c 2c b94ea09,,,.,,,,,
13f0: 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 ,,,,,.command,#
1400: 54 65 73 74 20 4d 44 20 63 6f 6d 6d 61 6e 64 20 Test MD command
1410: 66 6f 72 20 64 61 74 61 20 73 68 6f 72 74 63 75 for data shortcu
1420: 74 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 4d 44 20 53 68 t,,,,,,,,,.MD Sh
1430: 6f 72 74 63 75 74 2c 6d 64 34 2c 2c 2c 3a 3a 74 ortcut,md4,,,::t
1440: 6c 73 3a 3a 6d 64 20 6d 64 34 20 24 74 65 73 74 ls::md md4 $test
1450: 5f 64 61 74 61 2c 2c 2c 37 39 33 33 39 39 66 37 _data,,,793399f7
1460: 39 32 65 63 61 32 37 35 32 63 36 61 66 33 32 33 92eca2752c6af323
1470: 34 62 61 37 30 38 35 38 2c 2c 2c 0a 4d 44 20 53 4ba70858,,,.MD S
1480: 68 6f 72 74 63 75 74 2c 6d 64 35 2c 2c 2c 3a 3a hortcut,md5,,,::
1490: 74 6c 73 3a 3a 6d 64 20 6d 64 35 20 24 74 65 73 tls::md md5 $tes
14a0: 74 5f 64 61 74 61 2c 2c 2c 39 36 32 62 66 30 38 t_data,,,962bf08
14b0: 30 33 62 34 32 33 32 65 63 32 33 62 64 38 34 32 03b4232ec23bd842
14c0: 37 62 62 39 34 65 61 30 39 2c 2c 2c 0a 4d 44 20 7bb94ea09,,,.MD
14d0: 53 68 6f 72 74 63 75 74 2c 73 68 61 31 2c 2c 2c Shortcut,sha1,,,
14e0: 3a 3a 74 6c 73 3a 3a 6d 64 20 73 68 61 31 20 24 ::tls::md sha1 $
14f0: 74 65 73 74 5f 64 61 74 61 2c 2c 2c 34 66 65 30 test_data,,,4fe0
1500: 33 62 37 66 32 35 36 38 35 35 31 64 66 61 66 62 3b7f2568551dfafb
1510: 39 38 63 61 36 30 30 34 65 36 35 63 34 62 37 31 98ca6004e65c4b71
1520: 61 61 37 64 2c 2c 2c 0a 4d 44 20 53 68 6f 72 74 aa7d,,,.MD Short
1530: 63 75 74 2c 73 68 61 32 35 36 2c 2c 2c 3a 3a 74 cut,sha256,,,::t
1540: 6c 73 3a 3a 6d 64 20 73 68 61 32 35 36 20 24 74 ls::md sha256 $t
1550: 65 73 74 5f 64 61 74 61 2c 2c 2c 39 64 33 35 37 est_data,,,9d357
1560: 38 66 63 31 33 38 32 30 35 63 66 30 65 65 34 62 8fc138205cf0ee4b
1570: 34 63 65 66 33 35 66 65 31 30 31 62 62 34 65 63 4cef35fe101bb4ec
1580: 61 63 37 62 31 36 31 34 63 31 38 65 36 66 61 34 ac7b1614c18e6fa4
1590: 38 62 35 63 37 66 39 35 65 31 39 2c 2c 2c 0a 4d 8b5c7f95e19,,,.M
15a0: 44 20 53 68 6f 72 74 63 75 74 2c 73 68 61 35 31 D Shortcut,sha51
15b0: 32 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 73 68 2,,,::tls::md sh
15c0: 61 35 31 32 20 24 74 65 73 74 5f 64 61 74 61 2c a512 $test_data,
15d0: 2c 2c 64 31 37 38 65 37 35 39 64 63 35 39 31 32 ,,d178e759dc5912
15e0: 37 30 37 31 35 38 38 64 32 66 61 64 31 37 33 63 7071588d2fad173c
15f0: 30 36 32 33 38 64 38 37 65 38 30 30 61 36 34 30 06238d87e800a640
1600: 33 63 30 61 33 30 64 61 61 34 66 61 61 66 30 35 3c0a30daa4faaf05
1610: 64 30 65 37 63 65 30 34 39 31 36 61 66 61 61 36 d0e7ce04916afaa6
1620: 61 35 38 61 33 30 63 62 65 62 35 39 37 64 61 63 a58a30cbeb597dac
1630: 62 30 31 63 36 32 66 39 66 62 39 64 38 39 62 61 b01c62f9fb9d89ba
1640: 62 39 64 61 36 33 30 63 36 39 39 65 34 38 31 36 b9da630c699e4816
1650: 66 31 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c f1,,,.,,,,,,,,,,
1660: 0a 63 6f 6d 6d 61 6e 64 2c 23 20 54 65 73 74 20 .command,# Test
1670: 4d 44 20 63 6f 6d 6d 61 6e 64 20 66 6f 72 20 64 MD command for d
1680: 61 74 61 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 4d 44 20 ata,,,,,,,,,.MD
1690: 44 61 74 61 2c 6d 64 34 2c 2c 2c 3a 3a 74 6c 73 Data,md4,,,::tls
16a0: 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 6d 64 34 ::md -digest md4
16b0: 20 2d 64 61 74 61 20 24 74 65 73 74 5f 64 61 74 -data $test_dat
16c0: 61 2c 2c 2c 37 39 33 33 39 39 66 37 39 32 65 63 a,,,793399f792ec
16d0: 61 32 37 35 32 63 36 61 66 33 32 33 34 62 61 37 a2752c6af3234ba7
16e0: 30 38 35 38 2c 2c 2c 0a 4d 44 20 44 61 74 61 2c 0858,,,.MD Data,
16f0: 6d 64 35 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 md5,,,::tls::md
1700: 2d 64 69 67 65 73 74 20 6d 64 35 20 2d 64 61 74 -digest md5 -dat
1710: 61 20 24 74 65 73 74 5f 64 61 74 61 2c 2c 2c 39 a $test_data,,,9
1720: 36 32 62 66 30 38 30 33 62 34 32 33 32 65 63 32 62bf0803b4232ec2
1730: 33 62 64 38 34 32 37 62 62 39 34 65 61 30 39 2c 3bd8427bb94ea09,
1740: 2c 2c 0a 4d 44 20 44 61 74 61 2c 73 68 61 31 2c ,,.MD Data,sha1,
1750: 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 ,,::tls::md -dig
1760: 65 73 74 20 73 68 61 31 20 2d 64 61 74 61 20 24 est sha1 -data $
1770: 74 65 73 74 5f 64 61 74 61 2c 2c 2c 34 66 65 30 test_data,,,4fe0
1780: 33 62 37 66 32 35 36 38 35 35 31 64 66 61 66 62 3b7f2568551dfafb
1790: 39 38 63 61 36 30 30 34 65 36 35 63 34 62 37 31 98ca6004e65c4b71
17a0: 61 61 37 64 2c 2c 2c 0a 4d 44 20 44 61 74 61 2c aa7d,,,.MD Data,
17b0: 73 68 61 32 35 36 2c 2c 2c 3a 3a 74 6c 73 3a 3a sha256,,,::tls::
17c0: 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 32 35 md -digest sha25
17d0: 36 20 2d 64 61 74 61 20 24 74 65 73 74 5f 64 61 6 -data $test_da
17e0: 74 61 2c 2c 2c 39 64 33 35 37 38 66 63 31 33 38 ta,,,9d3578fc138
17f0: 32 30 35 63 66 30 65 65 34 62 34 63 65 66 33 35 205cf0ee4b4cef35
1800: 66 65 31 30 31 62 62 34 65 63 61 63 37 62 31 36 fe101bb4ecac7b16
1810: 31 34 63 31 38 65 36 66 61 34 38 62 35 63 37 66 14c18e6fa48b5c7f
1820: 39 35 65 31 39 2c 2c 2c 0a 4d 44 20 44 61 74 61 95e19,,,.MD Data
1830: 2c 73 68 61 35 31 32 2c 2c 2c 3a 3a 74 6c 73 3a ,sha512,,,::tls:
1840: 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 35 :md -digest sha5
1850: 31 32 20 2d 64 61 74 61 20 24 74 65 73 74 5f 64 12 -data $test_d
1860: 61 74 61 2c 2c 2c 64 31 37 38 65 37 35 39 64 63 ata,,,d178e759dc
1870: 35 39 31 32 37 30 37 31 35 38 38 64 32 66 61 64 59127071588d2fad
1880: 31 37 33 63 30 36 32 33 38 64 38 37 65 38 30 30 173c06238d87e800
1890: 61 36 34 30 33 63 30 61 33 30 64 61 61 34 66 61 a6403c0a30daa4fa
18a0: 61 66 30 35 64 30 65 37 63 65 30 34 39 31 36 61 af05d0e7ce04916a
18b0: 66 61 61 36 61 35 38 61 33 30 63 62 65 62 35 39 faa6a58a30cbeb59
18c0: 37 64 61 63 62 30 31 63 36 32 66 39 66 62 39 64 7dacb01c62f9fb9d
18d0: 38 39 62 61 62 39 64 61 36 33 30 63 36 39 39 65 89bab9da630c699e
18e0: 34 38 31 36 66 31 2c 2c 2c 0a 4d 44 20 44 61 74 4816f1,,,.MD Dat
18f0: 61 2c 6d 64 35 20 62 69 6e 2c 2c 2c 62 69 6e 61 a,md5 bin,,,bina
1900: 72 79 20 65 6e 63 6f 64 65 20 68 65 78 20 5b 3a ry encode hex [:
1910: 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 65 73 74 :tls::md -digest
1920: 20 6d 64 35 20 2d 64 61 74 61 20 24 74 65 73 74 md5 -data $test
1930: 5f 64 61 74 61 20 2d 62 69 6e 5d 2c 2c 2c 39 36 _data -bin],,,96
1940: 32 62 66 30 38 30 33 62 34 32 33 32 65 63 32 33 2bf0803b4232ec23
1950: 62 64 38 34 32 37 62 62 39 34 65 61 30 39 2c 2c bd8427bb94ea09,,
1960: 2c 0a 4d 44 20 44 61 74 61 2c 6d 64 35 20 68 65 ,.MD Data,md5 he
1970: 78 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 x,,,::tls::md -d
1980: 69 67 65 73 74 20 6d 64 35 20 2d 64 61 74 61 20 igest md5 -data
1990: 24 74 65 73 74 5f 64 61 74 61 20 2d 68 65 78 2c $test_data -hex,
19a0: 2c 2c 39 36 32 62 66 30 38 30 33 62 34 32 33 32 ,,962bf0803b4232
19b0: 65 63 32 33 62 64 38 34 32 37 62 62 39 34 65 61 ec23bd8427bb94ea
19c0: 30 39 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 09,,,.,,,,,,,,,,
19d0: 0a 63 6f 6d 6d 61 6e 64 2c 23 20 54 65 73 74 20 .command,# Test
19e0: 4d 44 20 63 6f 6d 6d 61 6e 64 20 66 6f 72 20 66 MD command for f
19f0: 69 6c 65 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 4d 44 20 ile,,,,,,,,,.MD
1a00: 46 69 6c 65 2c 6d 64 34 2c 2c 2c 3a 3a 74 6c 73 File,md4,,,::tls
1a10: 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 6d 64 34 ::md -digest md4
1a20: 20 2d 66 69 6c 65 20 24 74 65 73 74 5f 66 69 6c -file $test_fil
1a30: 65 2c 2c 2c 37 39 33 33 39 39 66 37 39 32 65 63 e,,,793399f792ec
1a40: 61 32 37 35 32 63 36 61 66 33 32 33 34 62 61 37 a2752c6af3234ba7
1a50: 30 38 35 38 2c 2c 2c 0a 4d 44 20 46 69 6c 65 2c 0858,,,.MD File,
1a60: 6d 64 35 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 md5,,,::tls::md
1a70: 2d 64 69 67 65 73 74 20 6d 64 35 20 2d 66 69 6c -digest md5 -fil
1a80: 65 20 24 74 65 73 74 5f 66 69 6c 65 2c 2c 2c 39 e $test_file,,,9
1a90: 36 32 62 66 30 38 30 33 62 34 32 33 32 65 63 32 62bf0803b4232ec2
1aa0: 33 62 64 38 34 32 37 62 62 39 34 65 61 30 39 2c 3bd8427bb94ea09,
1ab0: 2c 2c 0a 4d 44 20 46 69 6c 65 2c 73 68 61 31 2c ,,.MD File,sha1,
1ac0: 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 ,,::tls::md -dig
1ad0: 65 73 74 20 73 68 61 31 20 2d 66 69 6c 65 20 24 est sha1 -file $
1ae0: 74 65 73 74 5f 66 69 6c 65 2c 2c 2c 34 66 65 30 test_file,,,4fe0
1af0: 33 62 37 66 32 35 36 38 35 35 31 64 66 61 66 62 3b7f2568551dfafb
1b00: 39 38 63 61 36 30 30 34 65 36 35 63 34 62 37 31 98ca6004e65c4b71
1b10: 61 61 37 64 2c 2c 2c 0a 4d 44 20 46 69 6c 65 2c aa7d,,,.MD File,
1b20: 73 68 61 32 35 36 2c 2c 2c 3a 3a 74 6c 73 3a 3a sha256,,,::tls::
1b30: 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 32 35 md -digest sha25
1b40: 36 20 2d 66 69 6c 65 20 24 74 65 73 74 5f 66 69 6 -file $test_fi
1b50: 6c 65 2c 2c 2c 39 64 33 35 37 38 66 63 31 33 38 le,,,9d3578fc138
1b60: 32 30 35 63 66 30 65 65 34 62 34 63 65 66 33 35 205cf0ee4b4cef35
1b70: 66 65 31 30 31 62 62 34 65 63 61 63 37 62 31 36 fe101bb4ecac7b16
1b80: 31 34 63 31 38 65 36 66 61 34 38 62 35 63 37 66 14c18e6fa48b5c7f
1b90: 39 35 65 31 39 2c 2c 2c 0a 4d 44 20 46 69 6c 65 95e19,,,.MD File
1ba0: 2c 73 68 61 35 31 32 2c 2c 2c 3a 3a 74 6c 73 3a ,sha512,,,::tls:
1bb0: 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 35 :md -digest sha5
1bc0: 31 32 20 2d 66 69 6c 65 20 24 74 65 73 74 5f 66 12 -file $test_f
1bd0: 69 6c 65 2c 2c 2c 64 31 37 38 65 37 35 39 64 63 ile,,,d178e759dc
1be0: 35 39 31 32 37 30 37 31 35 38 38 64 32 66 61 64 59127071588d2fad
1bf0: 31 37 33 63 30 36 32 33 38 64 38 37 65 38 30 30 173c06238d87e800
1c00: 61 36 34 30 33 63 30 61 33 30 64 61 61 34 66 61 a6403c0a30daa4fa
1c10: 61 66 30 35 64 30 65 37 63 65 30 34 39 31 36 61 af05d0e7ce04916a
1c20: 66 61 61 36 61 35 38 61 33 30 63 62 65 62 35 39 faa6a58a30cbeb59
1c30: 37 64 61 63 62 30 31 63 36 32 66 39 66 62 39 64 7dacb01c62f9fb9d
1c40: 38 39 62 61 62 39 64 61 36 33 30 63 36 39 39 65 89bab9da630c699e
1c50: 34 38 31 36 66 31 2c 2c 2c 0a 4d 44 20 46 69 6c 4816f1,,,.MD Fil
1c60: 65 2c 6d 64 35 20 62 69 6e 2c 2c 2c 62 69 6e 61 e,md5 bin,,,bina
1c70: 72 79 20 65 6e 63 6f 64 65 20 68 65 78 20 5b 3a ry encode hex [:
1c80: 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 65 73 74 :tls::md -digest
1c90: 20 6d 64 35 20 2d 66 69 6c 65 20 24 74 65 73 74 md5 -file $test
1ca0: 5f 66 69 6c 65 20 2d 62 69 6e 5d 2c 2c 2c 39 36 _file -bin],,,96
1cb0: 32 62 66 30 38 30 33 62 34 32 33 32 65 63 32 33 2bf0803b4232ec23
1cc0: 62 64 38 34 32 37 62 62 39 34 65 61 30 39 2c 2c bd8427bb94ea09,,
1cd0: 2c 0a 4d 44 20 46 69 6c 65 2c 6d 64 35 20 68 65 ,.MD File,md5 he
1ce0: 78 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 x,,,::tls::md -d
1cf0: 69 67 65 73 74 20 6d 64 35 20 2d 66 69 6c 65 20 igest md5 -file
1d00: 24 74 65 73 74 5f 66 69 6c 65 20 2d 68 65 78 2c $test_file -hex,
1d10: 2c 2c 39 36 32 62 66 30 38 30 33 62 34 32 33 32 ,,962bf0803b4232
1d20: 65 63 32 33 62 64 38 34 32 37 62 62 39 34 65 61 ec23bd8427bb94ea
1d30: 30 39 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 09,,,.,,,,,,,,,,
1d40: 0a 63 6f 6d 6d 61 6e 64 2c 23 20 4d 44 20 45 72 .command,# MD Er
1d50: 72 6f 72 20 43 61 73 65 73 2c 2c 2c 2c 2c 2c 2c ror Cases,,,,,,,
1d60: 2c 2c 0a 4d 44 20 45 72 72 6f 72 73 2c 54 6f 6f ,,.MD Errors,Too
1d70: 20 66 65 77 20 61 72 67 73 2c 2c 2c 3a 3a 74 6c few args,,,::tl
1d80: 73 3a 3a 6d 64 2c 2c 2c 22 77 72 6f 6e 67 20 23 s::md,,,"wrong #
1d90: 20 61 72 67 73 3a 20 73 68 6f 75 6c 64 20 62 65 args: should be
1da0: 20 22 22 3a 3a 74 6c 73 3a 3a 6d 64 20 3f 2d 62 ""::tls::md ?-b
1db0: 69 6e 7c 2d 68 65 78 3f 20 3f 2d 63 69 70 68 65 in|-hex? ?-ciphe
1dc0: 72 20 6e 61 6d 65 3f 20 3f 2d 64 69 67 65 73 74 r name? ?-digest
1dd0: 20 6e 61 6d 65 3f 20 3f 2d 6b 65 79 20 6b 65 79 name? ?-key key
1de0: 3f 20 3f 2d 6d 61 63 20 6e 61 6d 65 3f 20 5b 2d ? ?-mac name? [-
1df0: 63 68 61 6e 6e 65 6c 20 63 68 61 6e 20 7c 20 2d channel chan | -
1e00: 63 6f 6d 6d 61 6e 64 20 63 6d 64 4e 61 6d 65 20 command cmdName
1e10: 7c 20 2d 66 69 6c 65 20 66 69 6c 65 6e 61 6d 65 | -file filename
1e20: 20 7c 20 3f 2d 64 61 74 61 3f 20 64 61 74 61 5d | ?-data? data]
1e30: 22 22 22 2c 2c 2c 31 0a 4d 44 20 45 72 72 6f 72 """,,,1.MD Error
1e40: 73 2c 54 6f 6f 20 6d 61 6e 79 20 61 72 67 73 2c s,Too many args,
1e50: 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 74 6f 6f 20 ,,::tls::md too
1e60: 6d 61 6e 79 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e many command lin
1e70: 65 20 61 72 67 73 20 74 6f 20 70 61 73 73 20 74 e args to pass t
1e80: 68 65 20 74 65 73 74 20 77 69 74 68 6f 75 74 20 he test without
1e90: 61 6e 20 65 72 72 6f 72 20 6f 72 20 66 61 69 6c an error or fail
1ea0: 69 6e 67 2c 2c 2c 22 77 72 6f 6e 67 20 23 20 61 ing,,,"wrong # a
1eb0: 72 67 73 3a 20 73 68 6f 75 6c 64 20 62 65 20 22 rgs: should be "
1ec0: 22 3a 3a 74 6c 73 3a 3a 6d 64 20 3f 2d 62 69 6e "::tls::md ?-bin
1ed0: 7c 2d 68 65 78 3f 20 3f 2d 63 69 70 68 65 72 20 |-hex? ?-cipher
1ee0: 6e 61 6d 65 3f 20 3f 2d 64 69 67 65 73 74 20 6e name? ?-digest n
1ef0: 61 6d 65 3f 20 3f 2d 6b 65 79 20 6b 65 79 3f 20 ame? ?-key key?
1f00: 3f 2d 6d 61 63 20 6e 61 6d 65 3f 20 5b 2d 63 68 ?-mac name? [-ch
1f10: 61 6e 6e 65 6c 20 63 68 61 6e 20 7c 20 2d 63 6f annel chan | -co
1f20: 6d 6d 61 6e 64 20 63 6d 64 4e 61 6d 65 20 7c 20 mmand cmdName |
1f30: 2d 66 69 6c 65 20 66 69 6c 65 6e 61 6d 65 20 7c -file filename |
1f40: 20 3f 2d 64 61 74 61 3f 20 64 61 74 61 5d 22 22 ?-data? data]""
1f50: 22 2c 2c 2c 31 0a 4d 44 20 45 72 72 6f 72 73 2c ",,,1.MD Errors,
1f60: 49 6e 76 61 6c 69 64 20 64 69 67 65 73 74 2c 2c Invalid digest,,
1f70: 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 62 6f 67 75 73 ,::tls::md bogus
1f80: 20 64 61 74 61 2c 2c 2c 22 69 6e 76 61 6c 69 64 data,,,"invalid
1f90: 20 64 69 67 65 73 74 20 22 22 62 6f 67 75 73 22 digest ""bogus"
1fa0: 22 22 2c 2c 2c 31 0a 4d 44 20 45 72 72 6f 72 73 "",,,1.MD Errors
1fb0: 2c 49 6e 76 61 6c 69 64 20 64 69 67 65 73 74 20 ,Invalid digest
1fc0: 41 72 67 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 Arg,,,::tls::md
1fd0: 2d 64 69 67 65 73 74 20 62 6f 67 75 73 20 2d 64 -digest bogus -d
1fe0: 61 74 61 20 64 61 74 61 2c 2c 2c 22 69 6e 76 61 ata data,,,"inva
1ff0: 6c 69 64 20 64 69 67 65 73 74 20 22 22 62 6f 67 lid digest ""bog
2000: 75 73 22 22 22 2c 2c 2c 31 0a 4d 44 20 45 72 72 us""",,,1.MD Err
2010: 6f 72 73 2c 4e 6f 20 64 69 67 65 73 74 2c 2c 2c ors,No digest,,,
2020: 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 68 65 78 20 2d ::tls::md -hex -
2030: 64 61 74 61 20 76 61 6c 75 65 2c 2c 2c 6e 6f 20 data value,,,no
2040: 64 69 67 65 73 74 2c 2c 2c 31 0a 4d 44 20 45 72 digest,,,1.MD Er
2050: 72 6f 72 73 2c 49 6e 76 61 6c 69 64 20 6f 70 74 rors,Invalid opt
2060: 69 6f 6e 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 ion,,,::tls::md
2070: 2d 64 69 67 65 73 74 20 73 68 61 32 35 36 20 2d -digest sha256 -
2080: 62 6f 67 75 73 20 76 61 6c 75 65 2c 2c 2c 22 62 bogus value,,,"b
2090: 61 64 20 6f 70 74 69 6f 6e 20 22 22 2d 62 6f 67 ad option ""-bog
20a0: 75 73 22 22 3a 20 6d 75 73 74 20 62 65 20 2d 62 us"": must be -b
20b0: 69 6e 2c 20 2d 62 69 6e 61 72 79 2c 20 2d 68 65 in, -binary, -he
20c0: 78 2c 20 2d 68 65 78 61 64 65 63 69 6d 61 6c 2c x, -hexadecimal,
20d0: 20 2d 63 68 61 6e 2c 20 2d 63 68 61 6e 6e 65 6c -chan, -channel
20e0: 2c 20 2d 63 69 70 68 65 72 2c 20 2d 63 6f 6d 6d , -cipher, -comm
20f0: 61 6e 64 2c 20 2d 64 61 74 61 2c 20 2d 64 69 67 and, -data, -dig
2100: 65 73 74 2c 20 2d 66 69 6c 65 2c 20 2d 66 69 6c est, -file, -fil
2110: 65 6e 61 6d 65 2c 20 2d 68 61 73 68 2c 20 2d 6b ename, -hash, -k
2120: 65 79 2c 20 6f 72 20 2d 6d 61 63 22 2c 2c 2c 31 ey, or -mac",,,1
2130: 0a 4d 44 20 45 72 72 6f 72 73 2c 49 6e 76 61 6c .MD Errors,Inval
2140: 69 64 20 66 69 6c 65 2c 2c 2c 3a 3a 74 6c 73 3a id file,,,::tls:
2150: 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 32 :md -digest sha2
2160: 35 36 20 2d 66 69 6c 65 20 62 6f 67 75 73 2c 2c 56 -file bogus,,
2170: 2c 22 63 6f 75 6c 64 6e 27 74 20 6f 70 65 6e 20 ,"couldn't open
2180: 22 22 62 6f 67 75 73 22 22 3a 20 6e 6f 20 73 75 ""bogus"": no su
2190: 63 68 20 66 69 6c 65 20 6f 72 20 64 69 72 65 63 ch file or direc
21a0: 74 6f 72 79 22 2c 2c 2c 31 0a 4d 44 20 45 72 72 tory",,,1.MD Err
21b0: 6f 72 73 2c 49 6e 76 61 6c 69 64 20 63 68 61 6e ors,Invalid chan
21c0: 6e 65 6c 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 nel,,,::tls::md
21d0: 2d 64 69 67 65 73 74 20 73 68 61 32 35 36 20 2d -digest sha256 -
21e0: 63 68 61 6e 6e 65 6c 20 62 6f 67 75 73 2c 2c 2c channel bogus,,,
21f0: 22 63 61 6e 20 6e 6f 74 20 66 69 6e 64 20 63 68 "can not find ch
2200: 61 6e 6e 65 6c 20 6e 61 6d 65 64 20 22 22 62 6f annel named ""bo
2210: 67 75 73 22 22 22 2c 2c 2c 31 0a 4d 44 20 45 72 gus""",,,1.MD Er
2220: 72 6f 72 73 2c 4e 6f 20 6f 70 65 72 61 74 69 6f rors,No operatio
2230: 6e 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 n,,,::tls::md -d
2240: 69 67 65 73 74 20 73 68 61 32 35 36 20 2d 62 69 igest sha256 -bi
2250: 6e 2c 2c 2c 22 4e 6f 20 6f 70 65 72 61 74 69 6f n,,,"No operatio
2260: 6e 3a 20 55 73 65 20 2d 63 68 61 6e 6e 65 6c 2c n: Use -channel,
2270: 20 2d 63 6f 6d 6d 61 6e 64 2c 20 2d 64 61 74 61 -command, -data
2280: 2c 20 6f 72 20 2d 66 69 6c 65 20 6f 70 74 69 6f , or -file optio
2290: 6e 22 2c 2c 2c 31 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c n",,,1.,,,,,,,,,
22a0: 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d ,.,,,,,,,,,,.com
22b0: 6d 61 6e 64 2c 23 20 54 65 73 74 20 43 4d 41 43 mand,# Test CMAC
22c0: 20 63 6f 6d 6d 61 6e 64 2c 2c 2c 2c 2c 2c 2c 2c command,,,,,,,,
22d0: 2c 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 74 ,.command,"set t
22e0: 65 73 74 5f 63 69 70 68 65 72 20 22 22 61 65 73 est_cipher ""aes
22f0: 2d 31 32 38 2d 63 62 63 22 22 22 2c 2c 2c 2c 2c -128-cbc""",,,,,
2300: 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 ,,,,.command,"se
2310: 74 20 74 65 73 74 5f 6b 65 79 20 22 22 45 78 61 t test_key ""Exa
2320: 6d 70 6c 65 20 6b 65 79 20 31 32 33 34 22 22 22 mple key 1234"""
2330: 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 43 4d 41 43 2c 64 ,,,,,,,,,.CMAC,d
2340: 61 74 61 2c 2c 2c 3a 3a 74 6c 73 3a 3a 63 6d 61 ata,,,::tls::cma
2350: 63 20 2d 63 69 70 68 65 72 20 24 74 65 73 74 5f c -cipher $test_
2360: 63 69 70 68 65 72 20 2d 6b 65 79 20 24 74 65 73 cipher -key $tes
2370: 74 5f 6b 65 79 20 2d 64 61 74 61 20 24 74 65 73 t_key -data $tes
2380: 74 5f 64 61 74 61 2c 2c 2c 62 61 66 35 63 32 30 t_data,,,baf5c20
2390: 66 39 39 37 33 65 32 64 36 30 36 62 31 34 63 37 f9973e2d606b14c7
23a0: 65 66 64 66 65 35 32 66 61 2c 2c 2c 0a 43 4d 41 efdfe52fa,,,.CMA
23b0: 43 2c 66 69 6c 65 2c 2c 2c 3a 3a 74 6c 73 3a 3a C,file,,,::tls::
23c0: 63 6d 61 63 20 2d 63 69 70 68 65 72 20 24 74 65 cmac -cipher $te
23d0: 73 74 5f 63 69 70 68 65 72 20 2d 6b 65 79 20 24 st_cipher -key $
23e0: 74 65 73 74 5f 6b 65 79 20 2d 66 69 6c 65 20 24 test_key -file $
23f0: 74 65 73 74 5f 66 69 6c 65 2c 2c 2c 62 61 66 35 test_file,,,baf5
2400: 63 32 30 66 39 39 37 33 65 32 64 36 30 36 62 31 c20f9973e2d606b1
2410: 34 63 37 65 66 64 66 65 35 32 66 61 2c 2c 2c 0a 4c7efdfe52fa,,,.
2420: 43 4d 41 43 2c 63 68 61 6e 6e 65 6c 2c 2c 2c 64 CMAC,channel,,,d
2430: 69 67 65 73 74 5f 72 65 61 64 5f 63 68 61 6e 20 igest_read_chan
2440: 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 24 74 65 73 ::tls::cmac $tes
2450: 74 5f 66 69 6c 65 20 2d 63 69 70 68 65 72 20 24 t_file -cipher $
2460: 74 65 73 74 5f 63 69 70 68 65 72 20 2d 6b 65 79 test_cipher -key
2470: 20 24 74 65 73 74 5f 6b 65 79 2c 2c 2c 62 61 66 $test_key,,,baf
2480: 35 63 32 30 66 39 39 37 33 65 32 64 36 30 36 62 5c20f9973e2d606b
2490: 31 34 63 37 65 66 64 66 65 35 32 66 61 2c 2c 2c 14c7efdfe52fa,,,
24a0: 0a 43 4d 41 43 2c 63 6f 6d 6d 61 6e 64 2c 2c 2c .CMAC,command,,,
24b0: 64 69 67 65 73 74 5f 61 63 63 75 6d 75 6c 61 74 digest_accumulat
24c0: 65 20 24 74 65 73 74 5f 64 61 74 61 20 3a 3a 74 e $test_data ::t
24d0: 6c 73 3a 3a 63 6d 61 63 20 2d 63 69 70 68 65 72 ls::cmac -cipher
24e0: 20 24 74 65 73 74 5f 63 69 70 68 65 72 20 2d 6b $test_cipher -k
24f0: 65 79 20 24 74 65 73 74 5f 6b 65 79 2c 2c 2c 62 ey $test_key,,,b
2500: 61 66 35 63 32 30 66 39 39 37 33 65 32 64 36 30 af5c20f9973e2d60
2510: 36 62 31 34 63 37 65 66 64 66 65 35 32 66 61 2c 6b14c7efdfe52fa,
2520: 2c 2c 0a 43 4d 41 43 2c 64 61 74 61 20 62 69 6e ,,.CMAC,data bin
2530: 2c 2c 2c 62 69 6e 61 72 79 20 65 6e 63 6f 64 65 ,,,binary encode
2540: 20 68 65 78 20 5b 3a 3a 74 6c 73 3a 3a 63 6d 61 hex [::tls::cma
2550: 63 20 2d 62 69 6e 20 2d 63 69 70 68 65 72 20 24 c -bin -cipher $
2560: 74 65 73 74 5f 63 69 70 68 65 72 20 2d 6b 65 79 test_cipher -key
2570: 20 24 74 65 73 74 5f 6b 65 79 20 2d 64 61 74 61 $test_key -data
2580: 20 24 74 65 73 74 5f 64 61 74 61 5d 2c 2c 2c 62 $test_data],,,b
2590: 61 66 35 63 32 30 66 39 39 37 33 65 32 64 36 30 af5c20f9973e2d60
25a0: 36 62 31 34 63 37 65 66 64 66 65 35 32 66 61 2c 6b14c7efdfe52fa,
25b0: 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f ,,.,,,,,,,,,,.co
25c0: 6d 6d 61 6e 64 2c 23 20 54 65 73 74 20 4d 44 20 mmand,# Test MD
25d0: 43 4d 41 43 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 4d 44 CMAC,,,,,,,,,.MD
25e0: 20 43 4d 41 43 2c 64 61 74 61 2c 2c 2c 3a 3a 74 CMAC,data,,,::t
25f0: 6c 73 3a 3a 6d 64 20 2d 63 69 70 68 65 72 20 24 ls::md -cipher $
2600: 74 65 73 74 5f 63 69 70 68 65 72 20 2d 6b 65 79 test_cipher -key
2610: 20 24 74 65 73 74 5f 6b 65 79 20 2d 64 61 74 61 $test_key -data
2620: 20 24 74 65 73 74 5f 64 61 74 61 2c 2c 2c 62 61 $test_data,,,ba
2630: 66 35 63 32 30 66 39 39 37 33 65 32 64 36 30 36 f5c20f9973e2d606
2640: 62 31 34 63 37 65 66 64 66 65 35 32 66 61 2c 2c b14c7efdfe52fa,,
2650: 2c 0a 4d 44 20 43 4d 41 43 2c 66 69 6c 65 2c 2c ,.MD CMAC,file,,
2660: 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 63 69 70 68 ,::tls::md -ciph
2670: 65 72 20 24 74 65 73 74 5f 63 69 70 68 65 72 20 er $test_cipher
2680: 2d 6b 65 79 20 24 74 65 73 74 5f 6b 65 79 20 2d -key $test_key -
2690: 66 69 6c 65 20 24 74 65 73 74 5f 66 69 6c 65 2c file $test_file,
26a0: 2c 2c 62 61 66 35 63 32 30 66 39 39 37 33 65 32 ,,baf5c20f9973e2
26b0: 64 36 30 36 62 31 34 63 37 65 66 64 66 65 35 32 d606b14c7efdfe52
26c0: 66 61 2c 2c 2c 0a 4d 44 20 43 4d 41 43 2c 63 68 fa,,,.MD CMAC,ch
26d0: 61 6e 6e 65 6c 2c 2c 2c 64 69 67 65 73 74 5f 72 annel,,,digest_r
26e0: 65 61 64 5f 63 68 61 6e 20 3a 3a 74 6c 73 3a 3a ead_chan ::tls::
26f0: 6d 64 20 24 74 65 73 74 5f 66 69 6c 65 20 2d 63 md $test_file -c
2700: 69 70 68 65 72 20 24 74 65 73 74 5f 63 69 70 68 ipher $test_ciph
2710: 65 72 20 2d 6b 65 79 20 24 74 65 73 74 5f 6b 65 er -key $test_ke
2720: 79 2c 2c 2c 62 61 66 35 63 32 30 66 39 39 37 33 y,,,baf5c20f9973
2730: 65 32 64 36 30 36 62 31 34 63 37 65 66 64 66 65 e2d606b14c7efdfe
2740: 35 32 66 61 2c 2c 2c 0a 4d 44 20 43 4d 41 43 2c 52fa,,,.MD CMAC,
2750: 63 6f 6d 6d 61 6e 64 2c 2c 2c 64 69 67 65 73 74 command,,,digest
2760: 5f 61 63 63 75 6d 75 6c 61 74 65 20 24 74 65 73 _accumulate $tes
2770: 74 5f 64 61 74 61 20 3a 3a 74 6c 73 3a 3a 6d 64 t_data ::tls::md
2780: 20 2d 63 69 70 68 65 72 20 24 74 65 73 74 5f 63 -cipher $test_c
2790: 69 70 68 65 72 20 2d 6b 65 79 20 24 74 65 73 74 ipher -key $test
27a0: 5f 6b 65 79 2c 2c 2c 62 61 66 35 63 32 30 66 39 _key,,,baf5c20f9
27b0: 39 37 33 65 32 64 36 30 36 62 31 34 63 37 65 66 973e2d606b14c7ef
27c0: 64 66 65 35 32 66 61 2c 2c 2c 0a 4d 44 20 43 4d dfe52fa,,,.MD CM
27d0: 41 43 2c 64 61 74 61 20 62 69 6e 2c 2c 2c 62 69 AC,data bin,,,bi
27e0: 6e 61 72 79 20 65 6e 63 6f 64 65 20 68 65 78 20 nary encode hex
27f0: 5b 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 62 69 6e 20 [::tls::md -bin
2800: 2d 63 69 70 68 65 72 20 24 74 65 73 74 5f 63 69 -cipher $test_ci
2810: 70 68 65 72 20 2d 6b 65 79 20 24 74 65 73 74 5f pher -key $test_
2820: 6b 65 79 20 2d 64 61 74 61 20 24 74 65 73 74 5f key -data $test_
2830: 64 61 74 61 5d 2c 2c 2c 62 61 66 35 63 32 30 66 data],,,baf5c20f
2840: 39 39 37 33 65 32 64 36 30 36 62 31 34 63 37 65 9973e2d606b14c7e
2850: 66 64 66 65 35 32 66 61 2c 2c 2c 0a 2c 2c 2c 2c fdfe52fa,,,.,,,,
2860: 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 ,,,,,,.command,#
2870: 20 54 65 73 74 20 43 4d 41 43 20 53 68 6f 72 74 Test CMAC Short
2880: 63 75 74 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 43 4d 41 cut,,,,,,,,,.CMA
2890: 43 20 53 68 6f 72 74 63 75 74 2c 64 61 74 61 2c C Shortcut,data,
28a0: 2c 2c 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 24 74 ,,::tls::cmac $t
28b0: 65 73 74 5f 63 69 70 68 65 72 20 2d 6b 65 79 20 est_cipher -key
28c0: 24 74 65 73 74 5f 6b 65 79 20 24 74 65 73 74 5f $test_key $test_
28d0: 64 61 74 61 2c 2c 2c 62 61 66 35 63 32 30 66 39 data,,,baf5c20f9
28e0: 39 37 33 65 32 64 36 30 36 62 31 34 63 37 65 66 973e2d606b14c7ef
28f0: 64 66 65 35 32 66 61 2c 2c 2c 0a 2c 2c 2c 2c 2c dfe52fa,,,.,,,,,
2900: 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 ,,,,,.command,#
2910: 43 4d 41 43 20 45 72 72 6f 72 20 43 61 73 65 73 CMAC Error Cases
2920: 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 43 4d 41 43 20 45 ,,,,,,,,,.CMAC E
2930: 72 72 6f 72 73 2c 54 6f 6f 20 66 65 77 20 61 72 rrors,Too few ar
2940: 67 73 2c 2c 2c 3a 3a 74 6c 73 3a 3a 63 6d 61 63 gs,,,::tls::cmac
2950: 2c 2c 2c 22 77 72 6f 6e 67 20 23 20 61 72 67 73 ,,,"wrong # args
2960: 3a 20 73 68 6f 75 6c 64 20 62 65 20 22 22 3a 3a : should be ""::
2970: 74 6c 73 3a 3a 63 6d 61 63 20 3f 2d 62 69 6e 7c tls::cmac ?-bin|
2980: 2d 68 65 78 3f 20 3f 2d 63 69 70 68 65 72 20 6e -hex? ?-cipher n
2990: 61 6d 65 3f 20 3f 2d 64 69 67 65 73 74 20 6e 61 ame? ?-digest na
29a0: 6d 65 3f 20 3f 2d 6b 65 79 20 6b 65 79 3f 20 3f me? ?-key key? ?
29b0: 2d 6d 61 63 20 6e 61 6d 65 3f 20 5b 2d 63 68 61 -mac name? [-cha
29c0: 6e 6e 65 6c 20 63 68 61 6e 20 7c 20 2d 63 6f 6d nnel chan | -com
29d0: 6d 61 6e 64 20 63 6d 64 4e 61 6d 65 20 7c 20 2d mand cmdName | -
29e0: 66 69 6c 65 20 66 69 6c 65 6e 61 6d 65 20 7c 20 file filename |
29f0: 3f 2d 64 61 74 61 3f 20 64 61 74 61 5d 22 22 22 ?-data? data]"""
2a00: 2c 2c 2c 31 0a 43 4d 41 43 20 45 72 72 6f 72 73 ,,,1.CMAC Errors
2a10: 2c 54 6f 6f 20 6d 61 6e 79 20 61 72 67 73 2c 2c ,Too many args,,
2a20: 2c 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 74 6f 6f ,::tls::cmac too
2a30: 20 6d 61 6e 79 20 63 6f 6d 6d 61 6e 64 20 6c 69 many command li
2a40: 6e 65 20 61 72 67 73 20 74 6f 20 70 61 73 73 20 ne args to pass
2a50: 74 68 65 20 74 65 73 74 20 77 69 74 68 6f 75 74 the test without
2a60: 20 61 6e 20 65 72 72 6f 72 20 6f 72 20 66 61 69 an error or fai
2a70: 6c 69 6e 67 2c 2c 2c 22 77 72 6f 6e 67 20 23 20 ling,,,"wrong #
2a80: 61 72 67 73 3a 20 73 68 6f 75 6c 64 20 62 65 20 args: should be
2a90: 22 22 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 3f 2d ""::tls::cmac ?-
2aa0: 62 69 6e 7c 2d 68 65 78 3f 20 3f 2d 63 69 70 68 bin|-hex? ?-ciph
2ab0: 65 72 20 6e 61 6d 65 3f 20 3f 2d 64 69 67 65 73 er name? ?-diges
2ac0: 74 20 6e 61 6d 65 3f 20 3f 2d 6b 65 79 20 6b 65 t name? ?-key ke
2ad0: 79 3f 20 3f 2d 6d 61 63 20 6e 61 6d 65 3f 20 5b y? ?-mac name? [
2ae0: 2d 63 68 61 6e 6e 65 6c 20 63 68 61 6e 20 7c 20 -channel chan |
2af0: 2d 63 6f 6d 6d 61 6e 64 20 63 6d 64 4e 61 6d 65 -command cmdName
2b00: 20 7c 20 2d 66 69 6c 65 20 66 69 6c 65 6e 61 6d | -file filenam
2b10: 65 20 7c 20 3f 2d 64 61 74 61 3f 20 64 61 74 61 e | ?-data? data
2b20: 5d 22 22 22 2c 2c 2c 31 0a 43 4d 41 43 20 45 72 ]""",,,1.CMAC Er
2b30: 72 6f 72 73 2c 4e 6f 20 63 69 70 68 65 72 2c 2c rors,No cipher,,
2b40: 2c 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 68 65 ,::tls::cmac -he
2b50: 78 20 2d 64 61 74 61 20 24 74 65 73 74 5f 64 61 x -data $test_da
2b60: 74 61 2c 2c 2c 6e 6f 20 63 69 70 68 65 72 2c 2c ta,,,no cipher,,
2b70: 2c 31 0a 43 4d 41 43 20 45 72 72 6f 72 73 2c 4e ,1.CMAC Errors,N
2b80: 6f 20 6b 65 79 2c 2c 2c 3a 3a 74 6c 73 3a 3a 63 o key,,,::tls::c
2b90: 6d 61 63 20 2d 63 69 70 68 65 72 20 24 74 65 73 mac -cipher $tes
2ba0: 74 5f 63 69 70 68 65 72 20 2d 64 61 74 61 20 24 t_cipher -data $
2bb0: 74 65 73 74 5f 64 61 74 61 2c 2c 2c 6e 6f 20 6b test_data,,,no k
2bc0: 65 79 2c 2c 2c 31 0a 43 4d 41 43 20 45 72 72 6f ey,,,1.CMAC Erro
2bd0: 72 73 2c 49 6e 76 61 6c 69 64 20 63 69 70 68 65 rs,Invalid ciphe
2be0: 72 2c 2c 2c 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 r,,,::tls::cmac
2bf0: 2d 63 69 70 68 65 72 20 62 6f 67 75 73 20 2d 64 -cipher bogus -d
2c00: 61 74 61 20 24 74 65 73 74 5f 64 61 74 61 2c 2c ata $test_data,,
2c10: 2c 22 69 6e 76 61 6c 69 64 20 63 69 70 68 65 72 ,"invalid cipher
2c20: 20 22 22 62 6f 67 75 73 22 22 22 2c 2c 2c 31 0a ""bogus""",,,1.
2c30: 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 2c 2c 2c 2c 2c ,,,,,,,,,,.,,,,,
2c40: 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 ,,,,,.command,#
2c50: 54 65 73 74 20 48 4d 41 43 20 63 6f 6d 6d 61 6e Test HMAC comman
2c60: 64 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 d,,,,,,,,,.comma
2c70: 6e 64 2c 73 65 74 20 74 65 73 74 5f 64 69 67 65 nd,set test_dige
2c80: 73 74 20 6d 64 35 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a st md5,,,,,,,,,.
2c90: 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 74 65 73 command,"set tes
2ca0: 74 5f 6b 65 79 20 22 22 45 78 61 6d 70 6c 65 20 t_key ""Example
2cb0: 6b 65 79 22 22 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a key""",,,,,,,,,.
2cc0: 48 4d 41 43 2c 64 61 74 61 2c 2c 2c 3a 3a 74 6c HMAC,data,,,::tl
2cd0: 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 73 74 20 s::hmac -digest
2ce0: 24 74 65 73 74 5f 64 69 67 65 73 74 20 2d 6b 65 $test_digest -ke
2cf0: 79 20 24 74 65 73 74 5f 6b 65 79 20 2d 64 61 74 y $test_key -dat
2d00: 61 20 24 74 65 73 74 5f 64 61 74 61 2c 2c 2c 66 a $test_data,,,f
2d10: 39 38 33 32 37 65 66 33 65 32 30 61 62 36 64 33 98327ef3e20ab6d3
2d20: 38 38 66 36 37 36 63 36 61 37 39 64 39 33 64 2c 88f676c6a79d93d,
2d30: 2c 2c 0a 48 4d 41 43 2c 66 69 6c 65 2c 2c 2c 3a ,,.HMAC,file,,,:
2d40: 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 :tls::hmac -dige
2d50: 73 74 20 24 74 65 73 74 5f 64 69 67 65 73 74 20 st $test_digest
2d60: 2d 6b 65 79 20 24 74 65 73 74 5f 6b 65 79 20 2d -key $test_key -
2d70: 66 69 6c 65 20 24 74 65 73 74 5f 66 69 6c 65 2c file $test_file,
2d80: 2c 2c 66 39 38 33 32 37 65 66 33 65 32 30 61 62 ,,f98327ef3e20ab
2d90: 36 64 33 38 38 66 36 37 36 63 36 61 37 39 64 39 6d388f676c6a79d9
2da0: 33 64 2c 2c 2c 0a 48 4d 41 43 2c 63 68 61 6e 6e 3d,,,.HMAC,chann
2db0: 65 6c 2c 2c 2c 64 69 67 65 73 74 5f 72 65 61 64 el,,,digest_read
2dc0: 5f 63 68 61 6e 20 3a 3a 74 6c 73 3a 3a 68 6d 61 _chan ::tls::hma
2dd0: 63 20 24 74 65 73 74 5f 66 69 6c 65 20 2d 64 69 c $test_file -di
2de0: 67 65 73 74 20 24 74 65 73 74 5f 64 69 67 65 73 gest $test_diges
2df0: 74 20 2d 6b 65 79 20 24 74 65 73 74 5f 6b 65 79 t -key $test_key
2e00: 2c 2c 2c 66 39 38 33 32 37 65 66 33 65 32 30 61 ,,,f98327ef3e20a
2e10: 62 36 64 33 38 38 66 36 37 36 63 36 61 37 39 64 b6d388f676c6a79d
2e20: 39 33 64 2c 2c 2c 0a 48 4d 41 43 2c 63 6f 6d 6d 93d,,,.HMAC,comm
2e30: 61 6e 64 2c 2c 2c 64 69 67 65 73 74 5f 61 63 63 and,,,digest_acc
2e40: 75 6d 75 6c 61 74 65 20 24 74 65 73 74 5f 64 61 umulate $test_da
2e50: 74 61 20 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d ta ::tls::hmac -
2e60: 64 69 67 65 73 74 20 24 74 65 73 74 5f 64 69 67 digest $test_dig
2e70: 65 73 74 20 2d 6b 65 79 20 24 74 65 73 74 5f 6b est -key $test_k
2e80: 65 79 2c 2c 2c 66 39 38 33 32 37 65 66 33 65 32 ey,,,f98327ef3e2
2e90: 30 61 62 36 64 33 38 38 66 36 37 36 63 36 61 37 0ab6d388f676c6a7
2ea0: 39 64 39 33 64 2c 2c 2c 0a 48 4d 41 43 2c 64 61 9d93d,,,.HMAC,da
2eb0: 74 61 20 62 69 6e 2c 2c 2c 62 69 6e 61 72 79 20 ta bin,,,binary
2ec0: 65 6e 63 6f 64 65 20 68 65 78 20 5b 3a 3a 74 6c encode hex [::tl
2ed0: 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 73 74 20 s::hmac -digest
2ee0: 24 74 65 73 74 5f 64 69 67 65 73 74 20 2d 62 69 $test_digest -bi
2ef0: 6e 20 2d 6b 65 79 20 24 74 65 73 74 5f 6b 65 79 n -key $test_key
2f00: 20 2d 64 61 74 61 20 24 74 65 73 74 5f 64 61 74 -data $test_dat
2f10: 61 5d 2c 2c 2c 66 39 38 33 32 37 65 66 33 65 32 a],,,f98327ef3e2
2f20: 30 61 62 36 64 33 38 38 66 36 37 36 63 36 61 37 0ab6d388f676c6a7
2f30: 39 64 39 33 64 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 9d93d,,,.,,,,,,,
2f40: 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 54 65 ,,,.command,# Te
2f50: 73 74 20 4d 44 20 48 4d 41 43 2c 2c 2c 2c 2c 2c st MD HMAC,,,,,,
2f60: 2c 2c 2c 0a 4d 44 20 48 4d 41 43 2c 64 61 74 61 ,,,.MD HMAC,data
2f70: 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 ,,,::tls::md -di
2f80: 67 65 73 74 20 24 74 65 73 74 5f 64 69 67 65 73 gest $test_diges
2f90: 74 20 2d 6b 65 79 20 24 74 65 73 74 5f 6b 65 79 t -key $test_key
2fa0: 20 2d 64 61 74 61 20 24 74 65 73 74 5f 64 61 74 -data $test_dat
2fb0: 61 2c 2c 2c 66 39 38 33 32 37 65 66 33 65 32 30 a,,,f98327ef3e20
2fc0: 61 62 36 64 33 38 38 66 36 37 36 63 36 61 37 39 ab6d388f676c6a79
2fd0: 64 39 33 64 2c 2c 2c 0a 4d 44 20 48 4d 41 43 2c d93d,,,.MD HMAC,
2fe0: 66 69 6c 65 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 file,,,::tls::md
2ff0: 20 2d 64 69 67 65 73 74 20 24 74 65 73 74 5f 64 -digest $test_d
3000: 69 67 65 73 74 20 2d 6b 65 79 20 24 74 65 73 74 igest -key $test
3010: 5f 6b 65 79 20 2d 66 69 6c 65 20 24 74 65 73 74 _key -file $test
3020: 5f 66 69 6c 65 2c 2c 2c 66 39 38 33 32 37 65 66 _file,,,f98327ef
3030: 33 65 32 30 61 62 36 64 33 38 38 66 36 37 36 63 3e20ab6d388f676c
3040: 36 61 37 39 64 39 33 64 2c 2c 2c 0a 4d 44 20 48 6a79d93d,,,.MD H
3050: 4d 41 43 2c 63 68 61 6e 6e 65 6c 2c 2c 2c 64 69 MAC,channel,,,di
3060: 67 65 73 74 5f 72 65 61 64 5f 63 68 61 6e 20 3a gest_read_chan :
3070: 3a 74 6c 73 3a 3a 6d 64 20 24 74 65 73 74 5f 66 :tls::md $test_f
3080: 69 6c 65 20 2d 64 69 67 65 73 74 20 24 74 65 73 ile -digest $tes
3090: 74 5f 64 69 67 65 73 74 20 2d 6b 65 79 20 24 74 t_digest -key $t
30a0: 65 73 74 5f 6b 65 79 2c 2c 2c 66 39 38 33 32 37 est_key,,,f98327
30b0: 65 66 33 65 32 30 61 62 36 64 33 38 38 66 36 37 ef3e20ab6d388f67
30c0: 36 63 36 61 37 39 64 39 33 64 2c 2c 2c 0a 4d 44 6c6a79d93d,,,.MD
30d0: 20 48 4d 41 43 2c 63 6f 6d 6d 61 6e 64 2c 2c 2c HMAC,command,,,
30e0: 64 69 67 65 73 74 5f 61 63 63 75 6d 75 6c 61 74 digest_accumulat
30f0: 65 20 24 74 65 73 74 5f 64 61 74 61 20 3a 3a 74 e $test_data ::t
3100: 6c 73 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 24 ls::md -digest $
3110: 74 65 73 74 5f 64 69 67 65 73 74 20 2d 6b 65 79 test_digest -key
3120: 20 24 74 65 73 74 5f 6b 65 79 2c 2c 2c 66 39 38 $test_key,,,f98
3130: 33 32 37 65 66 33 65 32 30 61 62 36 64 33 38 38 327ef3e20ab6d388
3140: 66 36 37 36 63 36 61 37 39 64 39 33 64 2c 2c 2c f676c6a79d93d,,,
3150: 0a 4d 44 20 48 4d 41 43 2c 64 61 74 61 20 62 69 .MD HMAC,data bi
3160: 6e 2c 2c 2c 62 69 6e 61 72 79 20 65 6e 63 6f 64 n,,,binary encod
3170: 65 20 68 65 78 20 5b 3a 3a 74 6c 73 3a 3a 6d 64 e hex [::tls::md
3180: 20 2d 64 69 67 65 73 74 20 24 74 65 73 74 5f 64 -digest $test_d
3190: 69 67 65 73 74 20 2d 62 69 6e 20 2d 6b 65 79 20 igest -bin -key
31a0: 24 74 65 73 74 5f 6b 65 79 20 2d 64 61 74 61 20 $test_key -data
31b0: 24 74 65 73 74 5f 64 61 74 61 5d 2c 2c 2c 66 39 $test_data],,,f9
31c0: 38 33 32 37 65 66 33 65 32 30 61 62 36 64 33 38 8327ef3e20ab6d38
31d0: 38 66 36 37 36 63 36 61 37 39 64 39 33 64 2c 2c 8f676c6a79d93d,,
31e0: 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d ,.,,,,,,,,,,.com
31f0: 6d 61 6e 64 2c 23 20 54 65 73 74 20 48 4d 41 43 mand,# Test HMAC
3200: 20 53 68 6f 72 74 63 75 74 2c 2c 2c 2c 2c 2c 2c Shortcut,,,,,,,
3210: 2c 2c 0a 48 4d 41 43 20 53 68 6f 72 74 63 75 74 ,,.HMAC Shortcut
3220: 2c 64 61 74 61 2c 2c 2c 3a 3a 74 6c 73 3a 3a 68 ,data,,,::tls::h
3230: 6d 61 63 20 24 74 65 73 74 5f 64 69 67 65 73 74 mac $test_digest
3240: 20 2d 6b 65 79 20 24 74 65 73 74 5f 6b 65 79 20 -key $test_key
3250: 24 74 65 73 74 5f 64 61 74 61 2c 2c 2c 66 39 38 $test_data,,,f98
3260: 33 32 37 65 66 33 65 32 30 61 62 36 64 33 38 38 327ef3e20ab6d388
3270: 66 36 37 36 63 36 61 37 39 64 39 33 64 2c 2c 2c f676c6a79d93d,,,
3280: 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d .,,,,,,,,,,.comm
3290: 61 6e 64 2c 23 20 48 4d 41 43 20 45 72 72 6f 72 and,# HMAC Error
32a0: 20 43 61 73 65 73 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a Cases,,,,,,,,,.
32b0: 48 4d 41 43 20 45 72 72 6f 72 73 2c 54 6f 6f 20 HMAC Errors,Too
32c0: 66 65 77 20 61 72 67 73 2c 2c 2c 3a 3a 74 6c 73 few args,,,::tls
32d0: 3a 3a 68 6d 61 63 2c 2c 2c 22 77 72 6f 6e 67 20 ::hmac,,,"wrong
32e0: 23 20 61 72 67 73 3a 20 73 68 6f 75 6c 64 20 62 # args: should b
32f0: 65 20 22 22 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 e ""::tls::hmac
3300: 3f 2d 62 69 6e 7c 2d 68 65 78 3f 20 3f 2d 63 69 ?-bin|-hex? ?-ci
3310: 70 68 65 72 20 6e 61 6d 65 3f 20 3f 2d 64 69 67 pher name? ?-dig
3320: 65 73 74 20 6e 61 6d 65 3f 20 3f 2d 6b 65 79 20 est name? ?-key
3330: 6b 65 79 3f 20 3f 2d 6d 61 63 20 6e 61 6d 65 3f key? ?-mac name?
3340: 20 5b 2d 63 68 61 6e 6e 65 6c 20 63 68 61 6e 20 [-channel chan
3350: 7c 20 2d 63 6f 6d 6d 61 6e 64 20 63 6d 64 4e 61 | -command cmdNa
3360: 6d 65 20 7c 20 2d 66 69 6c 65 20 66 69 6c 65 6e me | -file filen
3370: 61 6d 65 20 7c 20 3f 2d 64 61 74 61 3f 20 64 61 ame | ?-data? da
3380: 74 61 5d 22 22 22 2c 2c 2c 31 0a 48 4d 41 43 20 ta]""",,,1.HMAC
3390: 45 72 72 6f 72 73 2c 54 6f 6f 20 6d 61 6e 79 20 Errors,Too many
33a0: 61 72 67 73 2c 2c 2c 3a 3a 74 6c 73 3a 3a 68 6d args,,,::tls::hm
33b0: 61 63 20 74 6f 6f 20 6d 61 6e 79 20 63 6f 6d 6d ac too many comm
33c0: 61 6e 64 20 6c 69 6e 65 20 61 72 67 73 20 74 6f and line args to
33d0: 20 70 61 73 73 20 74 68 65 20 74 65 73 74 20 77 pass the test w
33e0: 69 74 68 6f 75 74 20 61 6e 20 65 72 72 6f 72 20 ithout an error
33f0: 6f 72 20 66 61 69 6c 69 6e 67 2c 2c 2c 22 77 72 or failing,,,"wr
3400: 6f 6e 67 20 23 20 61 72 67 73 3a 20 73 68 6f 75 ong # args: shou
3410: 6c 64 20 62 65 20 22 22 3a 3a 74 6c 73 3a 3a 68 ld be ""::tls::h
3420: 6d 61 63 20 3f 2d 62 69 6e 7c 2d 68 65 78 3f 20 mac ?-bin|-hex?
3430: 3f 2d 63 69 70 68 65 72 20 6e 61 6d 65 3f 20 3f ?-cipher name? ?
3440: 2d 64 69 67 65 73 74 20 6e 61 6d 65 3f 20 3f 2d -digest name? ?-
3450: 6b 65 79 20 6b 65 79 3f 20 3f 2d 6d 61 63 20 6e key key? ?-mac n
3460: 61 6d 65 3f 20 5b 2d 63 68 61 6e 6e 65 6c 20 63 ame? [-channel c
3470: 68 61 6e 20 7c 20 2d 63 6f 6d 6d 61 6e 64 20 63 han | -command c
3480: 6d 64 4e 61 6d 65 20 7c 20 2d 66 69 6c 65 20 66 mdName | -file f
3490: 69 6c 65 6e 61 6d 65 20 7c 20 3f 2d 64 61 74 61 ilename | ?-data
34a0: 3f 20 64 61 74 61 5d 22 22 22 2c 2c 2c 31 0a 48 ? data]""",,,1.H
34b0: 4d 41 43 20 45 72 72 6f 72 73 2c 4e 6f 20 64 69 MAC Errors,No di
34c0: 67 65 73 74 2c 2c 2c 3a 3a 74 6c 73 3a 3a 68 6d gest,,,::tls::hm
34d0: 61 63 20 2d 68 65 78 20 2d 64 61 74 61 20 24 74 ac -hex -data $t
34e0: 65 73 74 5f 64 61 74 61 2c 2c 2c 6e 6f 20 64 69 est_data,,,no di
34f0: 67 65 73 74 2c 2c 2c 31 0a 48 4d 41 43 20 45 72 gest,,,1.HMAC Er
3500: 72 6f 72 73 2c 4e 6f 20 6b 65 79 2c 2c 2c 3a 3a rors,No key,,,::
3510: 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 73 tls::hmac -diges
3520: 74 20 73 68 61 32 35 36 20 2d 64 61 74 61 20 24 t sha256 -data $
3530: 74 65 73 74 5f 64 61 74 61 2c 2c 2c 6e 6f 20 6b test_data,,,no k
3540: 65 79 2c 2c 2c 31 0a 48 4d 41 43 20 45 72 72 6f ey,,,1.HMAC Erro
3550: 72 73 2c 49 6e 76 61 6c 69 64 20 64 69 67 65 73 rs,Invalid diges
3560: 74 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 t,,,::tls::md -d
3570: 69 67 65 73 74 20 62 6f 67 75 73 20 2d 6b 65 79 igest bogus -key
3580: 20 24 74 65 73 74 5f 6b 65 79 20 2d 64 61 74 61 $test_key -data
3590: 20 24 74 65 73 74 5f 64 61 74 61 2c 2c 2c 22 69 $test_data,,,"i
35a0: 6e 76 61 6c 69 64 20 64 69 67 65 73 74 20 22 22 nvalid digest ""
35b0: 62 6f 67 75 73 22 22 22 2c 2c 2c 31 0a 2c 2c 2c bogus""",,,1.,,,
35c0: 2c 2c 2c 2c 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c ,,,,,,,.,,,,,,,,
35d0: 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 54 65 73 ,,.command,# Tes
35e0: 74 20 4d 41 43 20 63 6f 6d 6d 61 6e 64 2c 2c 2c t MAC command,,,
35f0: 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 22 ,,,,,,.command,"
3600: 73 65 74 20 74 65 73 74 5f 63 69 70 68 65 72 20 set test_cipher
3610: 22 22 61 65 73 2d 31 32 38 2d 63 62 63 22 22 22 ""aes-128-cbc"""
3620: 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e ,,,,,,,,,.comman
3630: 64 2c 73 65 74 20 74 65 73 74 5f 64 69 67 65 73 d,set test_diges
3640: 74 20 73 68 61 32 35 36 2c 2c 2c 2c 2c 2c 2c 2c t sha256,,,,,,,,
3650: 2c 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 74 ,.command,"set t
3660: 65 73 74 5f 6b 65 79 20 22 22 45 78 61 6d 70 6c est_key ""Exampl
3670: 65 20 6b 65 79 20 31 32 33 34 22 22 22 2c 2c 2c e key 1234""",,,
3680: 2c 2c 2c 2c 2c 2c 0a 4d 41 43 2c 43 4d 41 43 2c ,,,,,,.MAC,CMAC,
3690: 2c 2c 3a 3a 74 6c 73 3a 3a 6d 61 63 20 2d 63 69 ,,::tls::mac -ci
36a0: 70 68 65 72 20 24 74 65 73 74 5f 63 69 70 68 65 pher $test_ciphe
36b0: 72 20 2d 6b 65 79 20 24 74 65 73 74 5f 6b 65 79 r -key $test_key
36c0: 20 2d 6d 61 63 20 63 6d 61 63 20 2d 64 61 74 61 -mac cmac -data
36d0: 20 24 74 65 73 74 5f 64 61 74 61 2c 2c 2c 62 61 $test_data,,,ba
36e0: 66 35 63 32 30 66 39 39 37 33 65 32 64 36 30 36 f5c20f9973e2d606
36f0: 62 31 34 63 37 65 66 64 66 65 35 32 66 61 2c 2c b14c7efdfe52fa,,
3700: 2c 0a 4d 41 43 2c 48 4d 41 43 2c 2c 2c 3a 3a 74 ,.MAC,HMAC,,,::t
3710: 6c 73 3a 3a 6d 61 63 20 2d 64 69 67 65 73 74 20 ls::mac -digest
3720: 24 74 65 73 74 5f 64 69 67 65 73 74 20 2d 6b 65 $test_digest -ke
3730: 79 20 24 74 65 73 74 5f 6b 65 79 20 2d 6d 61 63 y $test_key -mac
3740: 20 68 6d 61 63 20 2d 64 61 74 61 20 24 74 65 73 hmac -data $tes
3750: 74 5f 64 61 74 61 2c 2c 2c 36 37 36 64 61 66 39 t_data,,,676daf9
3760: 36 33 37 30 64 30 65 33 63 35 35 39 38 35 35 37 6370d0e3c5598557
3770: 64 61 33 38 61 39 61 38 31 30 61 34 66 62 61 63 da38a9a810a4fbac
3780: 62 62 32 64 31 30 63 36 37 66 36 64 66 61 38 33 bb2d10c67f6dfa83
3790: 66 31 30 66 34 38 65 39 36 2c 2c 2c 0a 4d 41 43 f10f48e96,,,.MAC
37a0: 2c 4d 44 2d 43 4d 41 43 2c 2c 2c 3a 3a 74 6c 73 ,MD-CMAC,,,::tls
37b0: 3a 3a 6d 64 20 2d 63 69 70 68 65 72 20 24 74 65 ::md -cipher $te
37c0: 73 74 5f 63 69 70 68 65 72 20 2d 6b 65 79 20 24 st_cipher -key $
37d0: 74 65 73 74 5f 6b 65 79 20 2d 6d 61 63 20 63 6d test_key -mac cm
37e0: 61 63 20 2d 64 61 74 61 20 24 74 65 73 74 5f 64 ac -data $test_d
37f0: 61 74 61 2c 2c 2c 62 61 66 35 63 32 30 66 39 39 ata,,,baf5c20f99
3800: 37 33 65 32 64 36 30 36 62 31 34 63 37 65 66 64 73e2d606b14c7efd
3810: 66 65 35 32 66 61 2c 2c 2c 0a 4d 41 43 2c 4d 44 fe52fa,,,.MAC,MD
3820: 2d 48 4d 41 43 2c 2c 2c 3a 3a 74 6c 73 3a 3a 6d -HMAC,,,::tls::m
3830: 64 20 2d 64 69 67 65 73 74 20 24 74 65 73 74 5f d -digest $test_
3840: 64 69 67 65 73 74 20 2d 6b 65 79 20 24 74 65 73 digest -key $tes
3850: 74 5f 6b 65 79 20 2d 6d 61 63 20 68 6d 61 63 20 t_key -mac hmac
3860: 2d 64 61 74 61 20 24 74 65 73 74 5f 64 61 74 61 -data $test_data
3870: 2c 2c 2c 36 37 36 64 61 66 39 36 33 37 30 64 30 ,,,676daf96370d0
3880: 65 33 63 35 35 39 38 35 35 37 64 61 33 38 61 39 e3c5598557da38a9
3890: 61 38 31 30 61 34 66 62 61 63 62 62 32 64 31 30 a810a4fbacbb2d10
38a0: 63 36 37 66 36 64 66 61 38 33 66 31 30 66 34 38 c67f6dfa83f10f48
38b0: 65 39 36 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c e96,,,.,,,,,,,,,
38c0: 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 4d 41 43 20 ,.command,# MAC
38d0: 45 72 72 6f 72 20 43 61 73 65 73 2c 2c 2c 2c 2c Error Cases,,,,,
38e0: 2c 2c 2c 2c 0a 4d 41 43 20 45 72 72 6f 72 73 2c ,,,,.MAC Errors,
38f0: 54 6f 6f 20 66 65 77 20 61 72 67 73 2c 2c 2c 3a Too few args,,,:
3900: 3a 74 6c 73 3a 3a 6d 61 63 2c 2c 2c 22 77 72 6f :tls::mac,,,"wro
3910: 6e 67 20 23 20 61 72 67 73 3a 20 73 68 6f 75 6c ng # args: shoul
3920: 64 20 62 65 20 22 22 3a 3a 74 6c 73 3a 3a 6d 61 d be ""::tls::ma
3930: 63 20 3f 2d 62 69 6e 7c 2d 68 65 78 3f 20 3f 2d c ?-bin|-hex? ?-
3940: 63 69 70 68 65 72 20 6e 61 6d 65 3f 20 3f 2d 64 cipher name? ?-d
3950: 69 67 65 73 74 20 6e 61 6d 65 3f 20 3f 2d 6b 65 igest name? ?-ke
3960: 79 20 6b 65 79 3f 20 3f 2d 6d 61 63 20 6e 61 6d y key? ?-mac nam
3970: 65 3f 20 5b 2d 63 68 61 6e 6e 65 6c 20 63 68 61 e? [-channel cha
3980: 6e 20 7c 20 2d 63 6f 6d 6d 61 6e 64 20 63 6d 64 n | -command cmd
3990: 4e 61 6d 65 20 7c 20 2d 66 69 6c 65 20 66 69 6c Name | -file fil
39a0: 65 6e 61 6d 65 20 7c 20 3f 2d 64 61 74 61 3f 20 ename | ?-data?
39b0: 64 61 74 61 5d 22 22 22 2c 2c 2c 31 0a 4d 41 43 data]""",,,1.MAC
39c0: 20 45 72 72 6f 72 73 2c 4e 6f 20 6d 61 63 2c 2c Errors,No mac,,
39d0: 2c 3a 3a 74 6c 73 3a 3a 6d 61 63 20 2d 6b 65 79 ,::tls::mac -key
39e0: 20 24 74 65 73 74 5f 6b 65 79 20 2d 64 61 74 61 $test_key -data
39f0: 20 24 74 65 73 74 5f 64 61 74 61 2c 2c 2c 6e 6f $test_data,,,no
3a00: 20 4d 41 43 2c 2c 2c 31 0a 4d 41 43 20 45 72 72 MAC,,,1.MAC Err
3a10: 6f 72 73 2c 4e 6f 20 6b 65 79 2c 2c 2c 3a 3a 74 ors,No key,,,::t
3a20: 6c 73 3a 3a 6d 61 63 20 2d 6d 61 63 20 68 6d 61 ls::mac -mac hma
3a30: 63 20 2d 64 69 67 65 73 74 20 24 74 65 73 74 5f c -digest $test_
3a40: 64 69 67 65 73 74 20 2d 64 61 74 61 20 24 74 65 digest -data $te
3a50: 73 74 5f 64 61 74 61 2c 2c 2c 6e 6f 20 6b 65 79 st_data,,,no key
3a60: 2c 2c 2c 31 0a 4d 41 43 20 45 72 72 6f 72 73 2c ,,,1.MAC Errors,
3a70: 49 6e 76 61 6c 69 64 20 4d 41 43 2c 2c 2c 3a 3a Invalid MAC,,,::
3a80: 74 6c 73 3a 3a 6d 61 63 20 2d 6d 61 63 20 62 6f tls::mac -mac bo
3a90: 67 75 73 20 2d 6b 65 79 20 24 74 65 73 74 5f 6b gus -key $test_k
3aa0: 65 79 20 2d 64 61 74 61 20 24 74 65 73 74 5f 64 ey -data $test_d
3ab0: 61 74 61 2c 2c 2c 22 69 6e 76 61 6c 69 64 20 4d ata,,,"invalid M
3ac0: 41 43 20 22 22 62 6f 67 75 73 22 22 22 2c 2c 2c AC ""bogus""",,,
3ad0: 31 0a 4d 41 43 20 45 72 72 6f 72 73 2c 54 6f 6f 1.MAC Errors,Too
3ae0: 20 6d 61 6e 79 20 61 72 67 73 2c 2c 2c 3a 3a 74 many args,,,::t
3af0: 6c 73 3a 3a 6d 61 63 20 74 6f 6f 20 6d 61 6e 79 ls::mac too many
3b00: 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 61 72 command line ar
3b10: 67 73 20 74 6f 20 70 61 73 73 20 74 68 65 20 74 gs to pass the t
3b20: 65 73 74 20 77 69 74 68 6f 75 74 20 61 6e 20 65 est without an e
3b30: 72 72 6f 72 20 6f 72 20 66 61 69 6c 69 6e 67 2c rror or failing,
3b40: 2c 2c 22 77 72 6f 6e 67 20 23 20 61 72 67 73 3a ,,"wrong # args:
3b50: 20 73 68 6f 75 6c 64 20 62 65 20 22 22 3a 3a 74 should be ""::t
3b60: 6c 73 3a 3a 6d 61 63 20 3f 2d 62 69 6e 7c 2d 68 ls::mac ?-bin|-h
3b70: 65 78 3f 20 3f 2d 63 69 70 68 65 72 20 6e 61 6d ex? ?-cipher nam
3b80: 65 3f 20 3f 2d 64 69 67 65 73 74 20 6e 61 6d 65 e? ?-digest name
3b90: 3f 20 3f 2d 6b 65 79 20 6b 65 79 3f 20 3f 2d 6d ? ?-key key? ?-m
3ba0: 61 63 20 6e 61 6d 65 3f 20 5b 2d 63 68 61 6e 6e ac name? [-chann
3bb0: 65 6c 20 63 68 61 6e 20 7c 20 2d 63 6f 6d 6d 61 el chan | -comma
3bc0: 6e 64 20 63 6d 64 4e 61 6d 65 20 7c 20 2d 66 69 nd cmdName | -fi
3bd0: 6c 65 20 66 69 6c 65 6e 61 6d 65 20 7c 20 3f 2d le filename | ?-
3be0: 64 61 74 61 3f 20 64 61 74 61 5d 22 22 22 2c 2c data? data]""",,
3bf0: 2c 31 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 2c 2c ,1.,,,,,,,,,,.,,
3c00: 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 ,,,,,,,,.command
3c10: 2c 23 20 52 46 43 20 31 33 32 31 20 4d 65 73 73 ,# RFC 1321 Mess
3c20: 61 67 65 20 44 69 67 65 73 74 20 35 2c 2c 2c 2c age Digest 5,,,,
3c30: 2c 2c 2c 2c 2c 0a 52 46 43 31 33 32 31 2d 4d 44 ,,,,,.RFC1321-MD
3c40: 35 2c 54 43 31 2c 2c 2c 22 3a 3a 74 6c 73 3a 3a 5,TC1,,,"::tls::
3c50: 6d 64 20 2d 64 69 67 65 73 74 20 6d 64 35 20 2d md -digest md5 -
3c60: 64 61 74 61 20 22 22 22 22 22 2c 2c 2c 64 34 31 data """"",,,d41
3c70: 64 38 63 64 39 38 66 30 30 62 32 30 34 65 39 38 d8cd98f00b204e98
3c80: 30 30 39 39 38 65 63 66 38 34 32 37 65 2c 2c 2c 00998ecf8427e,,,
3c90: 0a 52 46 43 31 33 32 31 2d 4d 44 35 2c 54 43 32 .RFC1321-MD5,TC2
3ca0: 2c 2c 2c 22 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 ,,,"::tls::md -d
3cb0: 69 67 65 73 74 20 6d 64 35 20 2d 64 61 74 61 20 igest md5 -data
3cc0: 22 22 61 22 22 22 2c 2c 2c 30 63 63 31 37 35 62 ""a""",,,0cc175b
3cd0: 39 63 30 66 31 62 36 61 38 33 31 63 33 39 39 65 9c0f1b6a831c399e
3ce0: 32 36 39 37 37 32 36 36 31 2c 2c 2c 0a 52 46 43 269772661,,,.RFC
3cf0: 31 33 32 31 2d 4d 44 35 2c 54 43 33 2c 2c 2c 22 1321-MD5,TC3,,,"
3d00: 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 65 73 ::tls::md -diges
3d10: 74 20 6d 64 35 20 2d 64 61 74 61 20 22 22 61 62 t md5 -data ""ab
3d20: 63 22 22 22 2c 2c 2c 39 30 30 31 35 30 39 38 33 c""",,,900150983
3d30: 63 64 32 34 66 62 30 64 36 39 36 33 66 37 64 32 cd24fb0d6963f7d2
3d40: 38 65 31 37 66 37 32 2c 2c 2c 0a 52 46 43 31 33 8e17f72,,,.RFC13
3d50: 32 31 2d 4d 44 35 2c 54 43 34 2c 2c 2c 22 3a 3a 21-MD5,TC4,,,"::
3d60: 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 tls::md -digest
3d70: 6d 64 35 20 2d 64 61 74 61 20 22 22 6d 65 73 73 md5 -data ""mess
3d80: 61 67 65 20 64 69 67 65 73 74 22 22 22 2c 2c 2c age digest""",,,
3d90: 66 39 36 62 36 39 37 64 37 63 62 37 39 33 38 64 f96b697d7cb7938d
3da0: 35 32 35 61 32 66 33 31 61 61 66 31 36 31 64 30 525a2f31aaf161d0
3db0: 2c 2c 2c 0a 52 46 43 31 33 32 31 2d 4d 44 35 2c ,,,.RFC1321-MD5,
3dc0: 54 43 35 2c 2c 2c 22 3a 3a 74 6c 73 3a 3a 6d 64 TC5,,,"::tls::md
3dd0: 20 2d 64 69 67 65 73 74 20 6d 64 35 20 2d 64 61 -digest md5 -da
3de0: 74 61 20 22 22 61 62 63 64 65 66 67 68 69 6a 6b ta ""abcdefghijk
3df0: 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a 22 lmnopqrstuvwxyz"
3e00: 22 22 2c 2c 2c 63 33 66 63 64 33 64 37 36 31 39 "",,,c3fcd3d7619
3e10: 32 65 34 30 30 37 64 66 62 34 39 36 63 63 61 36 2e4007dfb496cca6
3e20: 37 65 31 33 62 2c 2c 2c 0a 52 46 43 31 33 32 31 7e13b,,,.RFC1321
3e30: 2d 4d 44 35 2c 54 43 36 2c 2c 2c 22 3a 3a 74 6c -MD5,TC6,,,"::tl
3e40: 73 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 6d 64 s::md -digest md
3e50: 35 20 2d 64 61 74 61 20 22 22 41 42 43 44 45 46 5 -data ""ABCDEF
3e60: 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 GHIJKLMNOPQRSTUV
3e70: 57 58 59 5a 61 62 63 64 65 66 67 68 69 6a 6b 6c WXYZabcdefghijkl
3e80: 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a 30 31 mnopqrstuvwxyz01
3e90: 32 33 34 35 36 37 38 39 22 22 22 2c 2c 2c 64 31 23456789""",,,d1
3ea0: 37 34 61 62 39 38 64 32 37 37 64 39 66 35 61 35 74ab98d277d9f5a5
3eb0: 36 31 31 63 32 63 39 66 34 31 39 64 39 66 2c 2c 611c2c9f419d9f,,
3ec0: 2c 0a 52 46 43 31 33 32 31 2d 4d 44 35 2c 54 43 ,.RFC1321-MD5,TC
3ed0: 37 2c 2c 2c 22 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 7,,,"::tls::md -
3ee0: 64 69 67 65 73 74 20 6d 64 35 20 2d 64 61 74 61 digest md5 -data
3ef0: 20 5b 73 74 72 69 6e 67 20 72 65 70 65 61 74 20 [string repeat
3f00: 22 22 31 32 33 34 35 36 37 38 39 30 22 22 20 38 ""1234567890"" 8
3f10: 5d 22 2c 2c 2c 35 37 65 64 66 34 61 32 32 62 65 ]",,,57edf4a22be
3f20: 33 63 39 35 35 61 63 34 39 64 61 32 65 32 31 30 3c955ac49da2e210
3f30: 37 62 36 37 61 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 7b67a,,,.,,,,,,,
3f40: 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 52 46 ,,,.command,# RF
3f50: 43 20 36 32 33 34 20 53 48 41 31 2c 2c 2c 2c 2c C 6234 SHA1,,,,,
3f60: 2c 2c 2c 2c 0a 52 46 43 36 32 33 34 2d 4d 44 2d ,,,,.RFC6234-MD-
3f70: 53 48 41 31 2c 54 43 31 2c 2c 2c 22 3a 3a 74 6c SHA1,TC1,,,"::tl
3f80: 73 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 68 s::md -digest sh
3f90: 61 31 20 2d 64 61 74 61 20 22 22 61 62 63 22 22 a1 -data ""abc""
3fa0: 22 2c 2c 2c 61 39 39 39 33 65 33 36 34 37 30 36 ",,,a9993e364706
3fb0: 38 31 36 61 62 61 33 65 32 35 37 31 37 38 35 30 816aba3e25717850
3fc0: 63 32 36 63 39 63 64 30 64 38 39 64 2c 2c 2c 0a c26c9cd0d89d,,,.
3fd0: 52 46 43 36 32 33 34 2d 4d 44 2d 53 48 41 31 2c RFC6234-MD-SHA1,
3fe0: 54 43 32 5f 31 2c 2c 2c 22 3a 3a 74 6c 73 3a 3a TC2_1,,,"::tls::
3ff0: 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 31 20 md -digest sha1
4000: 2d 64 61 74 61 20 22 22 61 62 63 64 62 63 64 65 -data ""abcdbcde
4010: 63 64 65 66 64 65 66 67 65 66 67 68 66 67 68 69 cdefdefgefghfghi
4020: 67 68 69 6a 68 69 6a 6b 69 6a 6b 6c 6a 6b 6c 6d ghijhijkijkljklm
4030: 6b 6c 6d 6e 6c 6d 6e 6f 6d 6e 6f 70 6e 6f 70 71 klmnlmnomnopnopq
4040: 22 22 22 2c 2c 2c 38 34 39 38 33 65 34 34 31 63 """,,,84983e441c
4050: 33 62 64 32 36 65 62 61 61 65 34 61 61 31 66 39 3bd26ebaae4aa1f9
4060: 35 31 32 39 65 35 65 35 34 36 37 30 66 31 2c 2c 5129e5e54670f1,,
4070: 2c 0a 52 46 43 36 32 33 34 2d 4d 44 2d 53 48 41 ,.RFC6234-MD-SHA
4080: 31 2c 54 43 33 2c 2c 2c 22 3a 3a 74 6c 73 3a 3a 1,TC3,,,"::tls::
4090: 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 31 20 md -digest sha1
40a0: 2d 64 61 74 61 20 5b 73 74 72 69 6e 67 20 72 65 -data [string re
40b0: 70 65 61 74 20 22 22 61 22 22 20 31 30 30 30 30 peat ""a"" 10000
40c0: 30 30 5d 22 2c 2c 2c 33 34 61 61 39 37 33 63 64 00]",,,34aa973cd
40d0: 34 63 34 64 61 61 34 66 36 31 65 65 62 32 62 64 4c4daa4f61eeb2bd
40e0: 62 61 64 32 37 33 31 36 35 33 34 30 31 36 66 2c bad27316534016f,
40f0: 2c 2c 0a 52 46 43 36 32 33 34 2d 4d 44 2d 53 48 ,,.RFC6234-MD-SH
4100: 41 31 2c 54 43 34 2c 2c 2c 22 3a 3a 74 6c 73 3a A1,TC4,,,"::tls:
4110: 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 31 :md -digest sha1
4120: 20 2d 64 61 74 61 20 5b 73 74 72 69 6e 67 20 72 -data [string r
4130: 65 70 65 61 74 20 22 22 30 31 32 33 34 35 36 37 epeat ""01234567
4140: 22 22 20 38 30 5d 22 2c 2c 2c 64 65 61 33 35 36 "" 80]",,,dea356
4150: 61 32 63 64 64 64 39 30 63 37 61 37 65 63 65 64 a2cddd90c7a7eced
4160: 63 35 65 62 62 35 36 33 39 33 34 66 34 36 30 34 c5ebb563934f4604
4170: 35 32 2c 2c 2c 0a 52 46 43 36 32 33 34 2d 4d 44 52,,,.RFC6234-MD
4180: 2d 53 48 41 31 2c 54 43 36 2c 2c 2c 22 3a 3a 74 -SHA1,TC6,,,"::t
4190: 6c 73 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 ls::md -digest s
41a0: 68 61 31 20 2d 64 61 74 61 20 22 22 5c 78 35 65 ha1 -data ""\x5e
41b0: 22 22 22 2c 2c 2c 35 65 36 66 38 30 61 33 34 61 """,,,5e6f80a34a
41c0: 39 37 39 38 63 61 66 63 36 61 35 64 62 39 36 63 9798cafc6a5db96c
41d0: 63 35 37 62 61 34 63 34 64 62 35 39 63 32 2c 2c c57ba4c4db59c2,,
41e0: 2c 0a 52 46 43 36 32 33 34 2d 4d 44 2d 53 48 41 ,.RFC6234-MD-SHA
41f0: 31 2c 54 43 38 5f 31 2c 2c 2c 22 3a 3a 74 6c 73 1,TC8_1,,,"::tls
4200: 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 ::md -digest sha
4210: 31 20 2d 64 61 74 61 20 22 22 5c 78 39 61 5c 78 1 -data ""\x9a\x
4220: 37 64 5c 78 66 64 5c 78 66 31 5c 78 65 63 5c 78 7d\xfd\xf1\xec\x
4230: 65 61 5c 78 64 30 5c 78 36 65 5c 78 64 36 5c 78 ea\xd0\x6e\xd6\x
4240: 34 36 5c 78 61 61 5c 78 35 35 5c 78 66 65 5c 78 46\xaa\x55\xfe\x
4250: 37 35 5c 78 37 31 5c 78 34 36 22 22 22 2c 2c 2c 75\x71\x46""",,,
4260: 38 32 61 62 66 66 36 36 30 35 64 62 65 31 63 31 82abff6605dbe1c1
4270: 37 64 65 66 31 32 61 33 39 34 66 61 32 32 61 38 7def12a394fa22a8
4280: 32 62 35 34 34 61 33 35 2c 2c 2c 0a 52 46 43 36 2b544a35,,,.RFC6
4290: 32 33 34 2d 4d 44 2d 53 48 41 31 2c 54 43 31 30 234-MD-SHA1,TC10
42a0: 5f 31 2c 2c 2c 22 3a 3a 74 6c 73 3a 3a 6d 64 20 _1,,,"::tls::md
42b0: 2d 64 69 67 65 73 74 20 73 68 61 31 20 2d 64 61 -digest sha1 -da
42c0: 74 61 20 22 22 5c 78 66 37 5c 78 38 66 5c 78 39 ta ""\xf7\x8f\x9
42d0: 32 5c 78 31 34 5c 78 31 62 5c 78 63 64 5c 78 31 2\x14\x1b\xcd\x1
42e0: 37 5c 78 30 61 5c 78 65 38 5c 78 39 62 5c 78 34 7\x0a\xe8\x9b\x4
42f0: 66 5c 78 62 61 5c 78 31 35 5c 78 61 31 5c 78 64 f\xba\x15\xa1\xd
4300: 35 5c 78 39 66 5c 78 33 66 5c 78 64 38 5c 78 34 5\x9f\x3f\xd8\x4
4310: 64 5c 78 32 32 5c 78 33 63 5c 78 39 32 5c 78 35 d\x22\x3c\x92\x5
4320: 31 5c 78 62 64 5c 78 61 63 5c 78 62 62 5c 78 61 1\xbd\xac\xbb\xa
4330: 65 5c 78 36 31 5c 78 64 30 5c 78 35 65 5c 78 64 e\x61\xd0\x5e\xd
4340: 31 5c 78 31 35 5c 78 61 30 5c 78 36 61 5c 78 37 1\x15\xa0\x6a\x7
4350: 63 5c 78 65 31 5c 78 31 37 5c 78 62 37 5c 78 62 c\xe1\x17\xb7\xb
4360: 65 5c 78 65 61 5c 78 64 32 5c 78 34 34 5c 78 32 e\xea\xd2\x44\x2
4370: 31 5c 78 64 65 5c 78 64 39 5c 78 63 33 5c 78 32 1\xde\xd9\xc3\x2
4380: 35 5c 78 39 32 5c 78 62 64 5c 78 35 37 5c 78 65 5\x92\xbd\x57\xe
4390: 64 5c 78 65 61 5c 78 65 33 5c 78 39 63 5c 78 33 d\xea\xe3\x9c\x3
43a0: 39 5c 78 66 61 5c 78 31 66 5c 78 65 38 5c 78 39 9\xfa\x1f\xe8\x9
43b0: 34 5c 78 36 61 5c 78 38 34 5c 78 64 30 5c 78 63 4\x6a\x84\xd0\xc
43c0: 66 5c 78 31 66 5c 78 37 62 5c 78 65 65 5c 78 61 f\x1f\x7b\xee\xa
43d0: 64 5c 78 31 37 5c 78 31 33 5c 78 65 32 5c 78 65 d\x17\x13\xe2\xe
43e0: 30 5c 78 39 35 5c 78 39 38 5c 78 39 37 5c 78 33 0\x95\x98\x97\x3
43f0: 34 5c 78 37 66 5c 78 36 37 5c 78 63 38 5c 78 30 4\x7f\x67\xc8\x0
4400: 62 5c 78 30 34 5c 78 30 30 5c 78 63 32 5c 78 30 b\x04\x00\xc2\x0
4410: 39 5c 78 38 31 5c 78 35 64 5c 78 36 62 5c 78 31 9\x81\x5d\x6b\x1
4420: 30 5c 78 61 36 5c 78 38 33 5c 78 38 33 5c 78 36 0\xa6\x83\x83\x6
4430: 66 5c 78 64 35 5c 78 35 36 5c 78 32 61 5c 78 35 f\xd5\x56\x2a\x5
4440: 36 5c 78 63 61 5c 78 62 31 5c 78 61 32 5c 78 38 6\xca\xb1\xa2\x8
4450: 65 5c 78 38 31 5c 78 62 36 5c 78 35 37 5c 78 36 e\x81\xb6\x57\x6
4460: 36 5c 78 35 34 5c 78 36 33 5c 78 31 63 5c 78 66 6\x54\x63\x1c\xf
4470: 31 5c 78 36 35 5c 78 36 36 5c 78 62 38 5c 78 36 1\x65\x66\xb8\x6
4480: 65 5c 78 33 62 5c 78 33 33 5c 78 61 31 5c 78 30 e\x3b\x33\xa1\x0
4490: 38 5c 78 62 30 5c 78 35 33 5c 78 30 37 5c 78 63 8\xb0\x53\x07\xc
44a0: 30 5c 78 30 61 5c 78 66 66 5c 78 31 34 5c 78 61 0\x0a\xff\x14\xa
44b0: 37 5c 78 36 38 5c 78 65 64 5c 78 37 33 5c 78 35 7\x68\xed\x73\x5
44c0: 30 5c 78 36 30 5c 78 36 61 5c 78 30 66 5c 78 38 0\x60\x6a\x0f\x8
44d0: 35 5c 78 65 36 5c 78 61 39 5c 78 31 64 5c 78 33 5\xe6\xa9\x1d\x3
44e0: 39 5c 78 36 66 5c 78 35 62 5c 78 35 63 5c 78 62 9\x6f\x5b\x5c\xb
44f0: 65 5c 78 35 37 5c 78 37 66 5c 78 39 62 5c 78 33 e\x57\x7f\x9b\x3
4500: 38 5c 78 38 30 5c 78 37 63 5c 78 37 64 5c 78 35 8\x80\x7c\x7d\x5
4510: 32 5c 78 33 64 5c 78 36 64 5c 78 37 39 5c 78 32 2\x3d\x6d\x79\x2
4520: 66 5c 78 36 65 5c 78 62 63 5c 78 32 34 5c 78 61 f\x6e\xbc\x24\xa
4530: 34 5c 78 65 63 5c 78 66 32 5c 78 62 33 5c 78 61 4\xec\xf2\xb3\xa
4540: 34 5c 78 32 37 5c 78 63 64 5c 78 62 62 5c 78 66 4\x27\xcd\xbb\xf
4550: 62 22 22 22 2c 2c 2c 63 62 30 30 38 32 63 38 66 b""",,,cb0082c8f
4560: 31 39 37 64 32 36 30 39 39 31 62 61 36 61 34 36 197d260991ba6a46
4570: 30 65 37 36 65 32 30 32 62 61 64 32 37 62 33 2c 0e76e202bad27b3,
4580: 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f ,,.,,,,,,,,,,.co
4590: 6d 6d 61 6e 64 2c 23 20 52 46 43 20 36 32 33 34 mmand,# RFC 6234
45a0: 20 53 48 41 32 35 36 2c 2c 2c 2c 2c 2c 2c 2c 2c SHA256,,,,,,,,,
45b0: 0a 52 46 43 36 32 33 34 2d 4d 44 2d 53 48 41 32 .RFC6234-MD-SHA2
45c0: 35 36 2c 54 43 31 2c 2c 2c 22 3a 3a 74 6c 73 3a 56,TC1,,,"::tls:
45d0: 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 32 :md -digest sha2
45e0: 35 36 20 2d 64 61 74 61 20 22 22 61 62 63 22 22 56 -data ""abc""
45f0: 22 2c 2c 2c 62 61 37 38 31 36 62 66 38 66 30 31 ",,,ba7816bf8f01
4600: 63 66 65 61 34 31 34 31 34 30 64 65 35 64 61 65 cfea414140de5dae
4610: 32 32 32 33 62 30 30 33 36 31 61 33 39 36 31 37 2223b00361a39617
4620: 37 61 39 63 62 34 31 30 66 66 36 31 66 32 30 30 7a9cb410ff61f200
4630: 31 35 61 64 2c 2c 2c 0a 52 46 43 36 32 33 34 2d 15ad,,,.RFC6234-
4640: 4d 44 2d 53 48 41 32 35 36 2c 54 43 32 5f 31 2c MD-SHA256,TC2_1,
4650: 2c 2c 22 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 ,,"::tls::md -di
4660: 67 65 73 74 20 73 68 61 32 35 36 20 2d 64 61 74 gest sha256 -dat
4670: 61 20 22 22 61 62 63 64 62 63 64 65 63 64 65 66 a ""abcdbcdecdef
4680: 64 65 66 67 65 66 67 68 66 67 68 69 67 68 69 6a defgefghfghighij
4690: 68 69 6a 6b 69 6a 6b 6c 6a 6b 6c 6d 6b 6c 6d 6e hijkijkljklmklmn
46a0: 6c 6d 6e 6f 6d 6e 6f 70 6e 6f 70 71 22 22 22 2c lmnomnopnopq""",
46b0: 2c 2c 32 34 38 64 36 61 36 31 64 32 30 36 33 38 ,,248d6a61d20638
46c0: 62 38 65 35 63 30 32 36 39 33 30 63 33 65 36 30 b8e5c026930c3e60
46d0: 33 39 61 33 33 63 65 34 35 39 36 34 66 66 32 31 39a33ce45964ff21
46e0: 36 37 66 36 65 63 65 64 64 34 31 39 64 62 30 36 67f6ecedd419db06
46f0: 63 31 2c 2c 2c 0a 52 46 43 36 32 33 34 2d 4d 44 c1,,,.RFC6234-MD
4700: 2d 53 48 41 32 35 36 2c 54 43 33 2c 2c 2c 22 3a -SHA256,TC3,,,":
4710: 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 65 73 74 :tls::md -digest
4720: 20 73 68 61 32 35 36 20 2d 64 61 74 61 20 5b 73 sha256 -data [s
4730: 74 72 69 6e 67 20 72 65 70 65 61 74 20 22 22 61 tring repeat ""a
4740: 22 22 20 31 30 30 30 30 30 30 5d 22 2c 2c 2c 63 "" 1000000]",,,c
4750: 64 63 37 36 65 35 63 39 39 31 34 66 62 39 32 38 dc76e5c9914fb928
4760: 31 61 31 63 37 65 32 38 34 64 37 33 65 36 37 66 1a1c7e284d73e67f
4770: 31 38 30 39 61 34 38 61 34 39 37 32 30 30 65 30 1809a48a497200e0
4780: 34 36 64 33 39 63 63 63 37 31 31 32 63 64 30 2c 46d39ccc7112cd0,
4790: 2c 2c 0a 52 46 43 36 32 33 34 2d 4d 44 2d 53 48 ,,.RFC6234-MD-SH
47a0: 41 32 35 36 2c 54 43 34 2c 2c 2c 22 3a 3a 74 6c A256,TC4,,,"::tl
47b0: 73 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 68 s::md -digest sh
47c0: 61 32 35 36 20 2d 64 61 74 61 20 5b 73 74 72 69 a256 -data [stri
47d0: 6e 67 20 72 65 70 65 61 74 20 22 22 30 31 32 33 ng repeat ""0123
47e0: 34 35 36 37 22 22 20 38 30 5d 22 2c 2c 2c 35 39 4567"" 80]",,,59
47f0: 34 38 34 37 33 32 38 34 35 31 62 64 66 61 38 35 4847328451bdfa85
4800: 30 35 36 32 32 35 34 36 32 63 63 31 64 38 36 37 056225462cc1d867
4810: 64 38 37 37 66 62 33 38 38 64 66 30 63 65 33 35 d877fb388df0ce35
4820: 66 32 35 61 62 35 35 36 32 62 66 62 62 35 2c 2c f25ab5562bfbb5,,
4830: 2c 0a 52 46 43 36 32 33 34 2d 4d 44 2d 53 48 41 ,.RFC6234-MD-SHA
4840: 32 35 36 2c 54 43 36 2c 2c 2c 22 3a 3a 74 6c 73 256,TC6,,,"::tls
4850: 3a 3a 6d 64 20 2d 64 69 67 65 73 74 20 73 68 61 ::md -digest sha
4860: 32 35 36 20 2d 64 61 74 61 20 22 22 5c 78 31 39 256 -data ""\x19
4870: 22 22 22 2c 2c 2c 36 38 61 61 32 65 32 65 65 35 """,,,68aa2e2ee5
4880: 64 66 66 39 36 65 33 33 35 35 65 36 63 37 65 65 dff96e3355e6c7ee
4890: 33 37 33 65 33 64 36 61 34 65 31 37 66 37 35 66 373e3d6a4e17f75f
48a0: 39 35 31 38 64 38 34 33 37 30 39 63 30 63 39 62 9518d843709c0c9b
48b0: 63 33 65 33 64 34 2c 2c 2c 0a 52 46 43 36 32 33 c3e3d4,,,.RFC623
48c0: 34 2d 4d 44 2d 53 48 41 32 35 36 2c 54 43 38 5f 4-MD-SHA256,TC8_
48d0: 32 35 36 2c 2c 2c 22 3a 3a 74 6c 73 3a 3a 6d 64 256,,,"::tls::md
48e0: 20 2d 64 69 67 65 73 74 20 73 68 61 32 35 36 20 -digest sha256
48f0: 2d 64 61 74 61 20 22 22 5c 78 65 33 5c 78 64 37 -data ""\xe3\xd7
4900: 5c 78 32 35 5c 78 37 30 5c 78 64 63 5c 78 64 64 \x25\x70\xdc\xdd
4910: 5c 78 37 38 5c 78 37 63 5c 78 65 33 5c 78 38 38 \x78\x7c\xe3\x88
4920: 5c 78 37 61 5c 78 62 32 5c 78 63 64 5c 78 36 38 \x7a\xb2\xcd\x68
4930: 5c 78 34 36 5c 78 35 32 22 22 22 2c 2c 2c 31 37 \x46\x52""",,,17
4940: 35 65 65 36 39 62 30 32 62 61 39 62 35 38 65 32 5ee69b02ba9b58e2
4950: 62 30 61 35 66 64 31 33 38 31 39 63 65 61 35 37 b0a5fd13819cea57
4960: 33 66 33 39 34 30 61 39 34 66 38 32 35 31 32 38 3f3940a94f825128
4970: 63 66 34 32 30 39 62 65 61 62 62 34 65 38 2c 2c cf4209beabb4e8,,
4980: 2c 0a 52 46 43 36 32 33 34 2d 4d 44 2d 53 48 41 ,.RFC6234-MD-SHA
4990: 32 35 36 2c 54 43 31 30 5f 32 35 36 2c 2c 2c 22 256,TC10_256,,,"
49a0: 3a 3a 74 6c 73 3a 3a 6d 64 20 2d 64 69 67 65 73 ::tls::md -diges
49b0: 74 20 73 68 61 32 35 36 20 2d 64 61 74 61 20 22 t sha256 -data "
49c0: 22 5c 78 38 33 5c 78 32 36 5c 78 37 35 5c 78 34 "\x83\x26\x75\x4
49d0: 65 5c 78 32 32 5c 78 37 37 5c 78 33 37 5c 78 32 e\x22\x77\x37\x2
49e0: 66 5c 78 34 66 5c 78 63 31 5c 78 32 62 5c 78 32 f\x4f\xc1\x2b\x2
49f0: 30 5c 78 35 32 5c 78 37 61 5c 78 66 65 5c 78 66 0\x52\x7a\xfe\xf
4a00: 30 5c 78 34 64 5c 78 38 61 5c 78 30 35 5c 78 36 0\x4d\x8a\x05\x6
4a10: 39 5c 78 37 31 5c 78 62 31 5c 78 31 61 5c 78 64 9\x71\xb1\x1a\xd
4a20: 35 5c 78 37 31 5c 78 32 33 5c 78 61 37 5c 78 63 5\x71\x23\xa7\xc
4a30: 31 5c 78 33 37 5c 78 37 36 5c 78 30 30 5c 78 30 1\x37\x76\x00\x0
4a40: 30 5c 78 64 37 5c 78 62 65 5c 78 66 36 5c 78 66 0\xd7\xbe\xf6\xf
4a50: 33 5c 78 63 31 5c 78 66 37 5c 78 61 39 5c 78 30 3\xc1\xf7\xa9\x0
4a60: 38 5c 78 33 61 5c 78 61 33 5c 78 39 64 5c 78 38 8\x3a\xa3\x9d\x8
4a70: 31 5c 78 30 64 5c 78 62 33 5c 78 31 30 5c 78 37 1\x0d\xb3\x10\x7
4a80: 37 5c 78 37 64 5c 78 61 62 5c 78 38 62 5c 78 31 7\x7d\xab\x8b\x1
4a90: 65 5c 78 37 66 5c 78 30 32 5c 78 62 38 5c 78 34 e\x7f\x02\xb8\x4
4aa0: 61 5c 78 32 36 5c 78 63 37 5c 78 37 33 5c 78 33 a\x26\xc7\x73\x3
4ab0: 32 5c 78 35 66 5c 78 38 62 5c 78 32 33 5c 78 37 2\x5f\x8b\x23\x7
4ac0: 34 5c 78 64 65 5c 78 37 61 5c 78 34 62 5c 78 35 4\xde\x7a\x4b\x5
4ad0: 61 5c 78 35 38 5c 78 63 62 5c 78 35 63 5c 78 35 a\x58\xcb\x5c\x5
4ae0: 63 5c 78 66 33 5c 78 35 62 5c 78 63 65 5c 78 65 c\xf3\x5b\xce\xe
4af0: 36 5c 78 66 62 5c 78 39 34 5c 78 36 65 5c 78 35 6\xfb\x94\x6e\x5
4b00: 62 5c 78 64 36 5c 78 39 34 5c 78 66 61 5c 78 35 b\xd6\x94\xfa\x5
4b10: 39 5c 78 33 61 5c 78 38 62 5c 78 65 62 5c 78 33 9\x3a\x8b\xeb\x3
4b20: 66 5c 78 39 64 5c 78 36 35 5c 78 39 32 5c 78 65 f\x9d\x65\x92\xe
4b30: 63 5c 78 65 64 5c 78 61 61 5c 78 36 36 5c 78 63 c\xed\xaa\x66\xc
4b40: 61 5c 78 38 32 5c 78 61 32 5c 78 39 64 5c 78 30 a\x82\xa2\x9d\x0
4b50: 63 5c 78 35 31 5c 78 62 63 5c 78 66 39 5c 78 33 c\x51\xbc\xf9\x3
4b60: 33 5c 78 36 32 5c 78 33 30 5c 78 65 35 5c 78 64 3\x62\x30\xe5\xd
4b70: 37 5c 78 38 34 5c 78 65 34 5c 78 63 30 5c 78 61 7\x84\xe4\xc0\xa
4b80: 34 5c 78 33 66 5c 78 38 64 5c 78 37 39 5c 78 61 4\x3f\x8d\x79\xa
4b90: 33 5c 78 30 61 5c 78 31 36 5c 78 35 63 5c 78 62 3\x0a\x16\x5c\xb
4ba0: 61 5c 78 62 65 5c 78 34 35 5c 78 32 62 5c 78 37 a\xbe\x45\x2b\x7
4bb0: 37 5c 78 34 62 5c 78 39 63 5c 78 37 31 5c 78 30 7\x4b\x9c\x71\x0
4bc0: 39 5c 78 61 39 5c 78 37 64 5c 78 31 33 5c 78 38 9\xa9\x7d\x13\x8
4bd0: 66 5c 78 31 32 5c 78 39 32 5c 78 32 38 5c 78 39 f\x12\x92\x28\x9
4be0: 36 5c 78 36 66 5c 78 36 63 5c 78 30 61 5c 78 64 6\x6f\x6c\x0a\xd
4bf0: 63 5c 78 31 30 5c 78 36 61 5c 78 61 64 5c 78 35 c\x10\x6a\xad\x5
4c00: 61 5c 78 39 66 5c 78 64 64 5c 78 33 30 5c 78 38 a\x9f\xdd\x30\x8
4c10: 32 5c 78 35 37 5c 78 36 39 5c 78 62 32 5c 78 63 2\x57\x69\xb2\xc
4c20: 36 5c 78 37 31 5c 78 61 66 5c 78 36 37 5c 78 35 6\x71\xaf\x67\x5
4c30: 39 5c 78 64 66 5c 78 32 38 5c 78 65 62 5c 78 33 9\xdf\x28\xeb\x3
4c40: 39 5c 78 33 64 5c 78 35 34 5c 78 64 36 22 22 22 9\x3d\x54\xd6"""
4c50: 2c 2c 2c 39 37 64 62 63 61 37 64 66 34 36 64 36 ,,,97dbca7df46d6
4c60: 32 63 38 61 34 32 32 63 39 34 31 64 64 37 65 38 2c8a422c941dd7e8
4c70: 33 35 62 38 61 64 33 33 36 31 37 36 33 66 37 65 35b8ad3361763f7e
4c80: 39 62 32 64 39 35 66 34 66 30 64 61 36 65 31 63 9b2d95f4f0da6e1c
4c90: 63 62 63 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c cbc,,,.,,,,,,,,,
4ca0: 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 52 46 43 20 ,.command,# RFC
4cb0: 34 32 33 31 20 48 4d 41 43 20 45 78 61 6d 70 6c 4231 HMAC Exampl
4cc0: 65 73 20 54 65 73 74 20 43 61 73 65 20 23 31 2c es Test Case #1,
4cd0: 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 ,,,,,,,,.command
4ce0: 2c 22 73 65 74 20 6b 65 79 20 5b 62 69 6e 61 72 ,"set key [binar
4cf0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 5b 73 74 y decode hex [st
4d00: 72 69 6e 67 20 72 65 70 65 61 74 20 22 22 30 62 ring repeat ""0b
4d10: 22 22 20 32 30 5d 5d 22 2c 2c 2c 2c 2c 2c 2c 2c "" 20]]",,,,,,,,
4d20: 2c 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 64 ,.command,"set d
4d30: 61 74 61 20 22 22 48 69 20 54 68 65 72 65 22 22 ata ""Hi There""
4d40: 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 52 46 43 34 32 ",,,,,,,,,.RFC42
4d50: 33 31 20 48 4d 41 43 20 54 43 31 2c 73 68 61 32 31 HMAC TC1,sha2
4d60: 32 34 2c 2c 2c 3a 3a 74 6c 73 3a 3a 68 6d 61 63 24,,,::tls::hmac
4d70: 20 2d 64 69 67 65 73 74 20 73 68 61 32 32 34 20 -digest sha224
4d80: 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 20 -key $key -data
4d90: 24 64 61 74 61 2c 2c 2c 38 39 36 66 62 31 31 32 $data,,,896fb112
4da0: 38 61 62 62 64 66 31 39 36 38 33 32 31 30 37 63 8abbdf196832107c
4db0: 64 34 39 64 66 33 33 66 34 37 62 34 62 31 31 36 d49df33f47b4b116
4dc0: 39 39 31 32 62 61 34 66 35 33 36 38 34 62 32 32 9912ba4f53684b22
4dd0: 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d 41 43 ,,,.RFC4231 HMAC
4de0: 20 54 43 31 2c 73 68 61 32 35 36 2c 2c 2c 3a 3a TC1,sha256,,,::
4df0: 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 73 tls::hmac -diges
4e00: 74 20 73 68 61 32 35 36 20 2d 6b 65 79 20 24 6b t sha256 -key $k
4e10: 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 2c 2c ey -data $data,,
4e20: 2c 62 30 33 34 34 63 36 31 64 38 64 62 33 38 35 ,b0344c61d8db385
4e30: 33 35 63 61 38 61 66 63 65 61 66 30 62 66 31 32 35ca8afceaf0bf12
4e40: 62 38 38 31 64 63 32 30 30 63 39 38 33 33 64 61 b881dc200c9833da
4e50: 37 32 36 65 39 33 37 36 63 32 65 33 32 63 66 66 726e9376c2e32cff
4e60: 37 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d 41 7,,,.RFC4231 HMA
4e70: 43 20 54 43 31 2c 73 68 61 33 38 34 2c 2c 2c 3a C TC1,sha384,,,:
4e80: 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 :tls::hmac -dige
4e90: 73 74 20 73 68 61 33 38 34 20 2d 6b 65 79 20 24 st sha384 -key $
4ea0: 6b 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 2c key -data $data,
4eb0: 2c 2c 61 66 64 30 33 39 34 34 64 38 34 38 39 35 ,,afd03944d84895
4ec0: 36 32 36 62 30 38 32 35 66 34 61 62 34 36 39 30 626b0825f4ab4690
4ed0: 37 66 31 35 66 39 64 61 64 62 65 34 31 30 31 65 7f15f9dadbe4101e
4ee0: 63 36 38 32 61 61 30 33 34 63 37 63 65 62 63 35 c682aa034c7cebc5
4ef0: 39 63 66 61 65 61 39 65 61 39 30 37 36 65 64 65 9cfaea9ea9076ede
4f00: 37 66 34 61 66 31 35 32 65 38 62 32 66 61 39 63 7f4af152e8b2fa9c
4f10: 62 36 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d b6,,,.RFC4231 HM
4f20: 41 43 20 54 43 31 2c 73 68 61 35 31 32 2c 2c 2c AC TC1,sha512,,,
4f30: 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 ::tls::hmac -dig
4f40: 65 73 74 20 73 68 61 35 31 32 20 2d 6b 65 79 20 est sha512 -key
4f50: 24 6b 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 $key -data $data
4f60: 2c 2c 2c 38 37 61 61 37 63 64 65 61 35 65 66 36 ,,,87aa7cdea5ef6
4f70: 31 39 64 34 66 66 30 62 34 32 34 31 61 31 64 36 19d4ff0b4241a1d6
4f80: 63 62 30 32 33 37 39 66 34 65 32 63 65 34 65 63 cb02379f4e2ce4ec
4f90: 32 37 38 37 61 64 30 62 33 30 35 34 35 65 31 37 2787ad0b30545e17
4fa0: 63 64 65 64 61 61 38 33 33 62 37 64 36 62 38 61 cdedaa833b7d6b8a
4fb0: 37 30 32 30 33 38 62 32 37 34 65 61 65 61 33 66 702038b274eaea3f
4fc0: 34 65 34 62 65 39 64 39 31 34 65 65 62 36 31 66 4e4be9d914eeb61f
4fd0: 31 37 30 32 65 36 39 36 63 32 30 33 61 31 32 36 1702e696c203a126
4fe0: 38 35 34 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 854,,,.,,,,,,,,,
4ff0: 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 52 46 43 20 ,.command,# RFC
5000: 34 32 33 31 20 48 4d 41 43 20 45 78 61 6d 70 6c 4231 HMAC Exampl
5010: 65 73 20 54 65 73 74 20 43 61 73 65 20 23 32 20 es Test Case #2
5020: 2d 20 54 65 73 74 20 77 69 74 68 20 61 20 6b 65 - Test with a ke
5030: 79 20 73 68 6f 72 74 65 72 20 74 68 61 6e 20 74 y shorter than t
5040: 68 65 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 he length of the
5050: 20 48 4d 41 43 20 6f 75 74 70 75 74 2e 2c 2c 2c HMAC output.,,,
5060: 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 22 ,,,,,,.command,"
5070: 73 65 74 20 6b 65 79 20 22 22 4a 65 66 65 22 22 set key ""Jefe""
5080: 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 ",,,,,,,,,.comma
5090: 6e 64 2c 22 73 65 74 20 64 61 74 61 20 22 22 77 nd,"set data ""w
50a0: 68 61 74 20 64 6f 20 79 61 20 77 61 6e 74 20 66 hat do ya want f
50b0: 6f 72 20 6e 6f 74 68 69 6e 67 3f 22 22 22 2c 2c or nothing?""",,
50c0: 2c 2c 2c 2c 2c 2c 2c 0a 52 46 43 34 32 33 31 20 ,,,,,,,.RFC4231
50d0: 48 4d 41 43 20 54 43 32 2c 73 68 61 32 32 34 2c HMAC TC2,sha224,
50e0: 2c 2c 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 ,,::tls::hmac -d
50f0: 69 67 65 73 74 20 73 68 61 32 32 34 20 2d 6b 65 igest sha224 -ke
5100: 79 20 24 6b 65 79 20 2d 64 61 74 61 20 24 64 61 y $key -data $da
5110: 74 61 2c 2c 2c 61 33 30 65 30 31 30 39 38 62 63 ta,,,a30e01098bc
5120: 36 64 62 62 66 34 35 36 39 30 66 33 61 37 65 39 6dbbf45690f3a7e9
5130: 65 36 64 30 66 38 62 62 65 61 32 61 33 39 65 36 e6d0f8bbea2a39e6
5140: 31 34 38 30 30 38 66 64 30 35 65 34 34 2c 2c 2c 148008fd05e44,,,
5150: 0a 52 46 43 34 32 33 31 20 48 4d 41 43 20 54 43 .RFC4231 HMAC TC
5160: 32 2c 73 68 61 32 35 36 2c 2c 2c 3a 3a 74 6c 73 2,sha256,,,::tls
5170: 3a 3a 68 6d 61 63 20 2d 64 69 67 65 73 74 20 73 ::hmac -digest s
5180: 68 61 32 35 36 20 2d 6b 65 79 20 24 6b 65 79 20 ha256 -key $key
5190: 2d 64 61 74 61 20 24 64 61 74 61 2c 2c 2c 35 62 -data $data,,,5b
51a0: 64 63 63 31 34 36 62 66 36 30 37 35 34 65 36 61 dcc146bf60754e6a
51b0: 30 34 32 34 32 36 30 38 39 35 37 35 63 37 35 61 042426089575c75a
51c0: 30 30 33 66 30 38 39 64 32 37 33 39 38 33 39 64 003f089d2739839d
51d0: 65 63 35 38 62 39 36 34 65 63 33 38 34 33 2c 2c ec58b964ec3843,,
51e0: 2c 0a 52 46 43 34 32 33 31 20 48 4d 41 43 20 54 ,.RFC4231 HMAC T
51f0: 43 32 2c 73 68 61 33 38 34 2c 2c 2c 3a 3a 74 6c C2,sha384,,,::tl
5200: 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 73 74 20 s::hmac -digest
5210: 73 68 61 33 38 34 20 2d 6b 65 79 20 24 6b 65 79 sha384 -key $key
5220: 20 2d 64 61 74 61 20 24 64 61 74 61 2c 2c 2c 61 -data $data,,,a
5230: 66 34 35 64 32 65 33 37 36 34 38 34 30 33 31 36 f45d2e3764840316
5240: 31 37 66 37 38 64 32 62 35 38 61 36 62 31 62 39 17f78d2b58a6b1b9
5250: 63 37 65 66 34 36 34 66 35 61 30 31 62 34 37 65 c7ef464f5a01b47e
5260: 34 32 65 63 33 37 33 36 33 32 32 34 34 35 65 38 42ec3736322445e8
5270: 65 32 32 34 30 63 61 35 65 36 39 65 32 63 37 38 e2240ca5e69e2c78
5280: 62 33 32 33 39 65 63 66 61 62 32 31 36 34 39 2c b3239ecfab21649,
5290: 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d 41 43 20 ,,.RFC4231 HMAC
52a0: 54 43 32 2c 73 68 61 35 31 32 2c 2c 2c 3a 3a 74 TC2,sha512,,,::t
52b0: 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 73 74 ls::hmac -digest
52c0: 20 73 68 61 35 31 32 20 2d 6b 65 79 20 24 6b 65 sha512 -key $ke
52d0: 79 20 2d 64 61 74 61 20 24 64 61 74 61 2c 2c 2c y -data $data,,,
52e0: 31 36 34 62 37 61 37 62 66 63 66 38 31 39 65 32 164b7a7bfcf819e2
52f0: 65 33 39 35 66 62 65 37 33 62 35 36 65 30 61 33 e395fbe73b56e0a3
5300: 38 37 62 64 36 34 32 32 32 65 38 33 31 66 64 36 87bd64222e831fd6
5310: 31 30 32 37 30 63 64 37 65 61 32 35 30 35 35 34 10270cd7ea250554
5320: 39 37 35 38 62 66 37 35 63 30 35 61 39 39 34 61 9758bf75c05a994a
5330: 36 64 30 33 34 66 36 35 66 38 66 30 65 36 66 64 6d034f65f8f0e6fd
5340: 63 61 65 61 62 31 61 33 34 64 34 61 36 62 34 62 caeab1a34d4a6b4b
5350: 36 33 36 65 30 37 30 61 33 38 62 63 65 37 33 37 636e070a38bce737
5360: 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 ,,,.,,,,,,,,,,.c
5370: 6f 6d 6d 61 6e 64 2c 23 20 52 46 43 20 34 32 33 ommand,# RFC 423
5380: 31 20 48 4d 41 43 20 45 78 61 6d 70 6c 65 73 20 1 HMAC Examples
5390: 54 65 73 74 20 43 61 73 65 20 23 33 20 2d 20 54 Test Case #3 - T
53a0: 65 73 74 20 77 69 74 68 20 61 20 63 6f 6d 62 69 est with a combi
53b0: 6e 65 64 20 6c 65 6e 67 74 68 20 6f 66 20 6b 65 ned length of ke
53c0: 79 20 61 6e 64 20 64 61 74 61 20 74 68 61 74 20 y and data that
53d0: 69 73 20 6c 61 72 67 65 72 20 74 68 61 6e 20 36 is larger than 6
53e0: 34 20 62 79 74 65 73 20 28 3d 20 62 6c 6f 63 6b 4 bytes (= block
53f0: 2d 73 69 7a 65 20 6f 66 20 53 48 41 2d 32 32 34 -size of SHA-224
5400: 20 61 6e 64 20 53 48 41 2d 32 35 36 29 2e 2c 2c and SHA-256).,,
5410: 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c ,,,,,,,.command,
5420: 22 73 65 74 20 6b 65 79 20 5b 62 69 6e 61 72 79 "set key [binary
5430: 20 64 65 63 6f 64 65 20 68 65 78 20 5b 73 74 72 decode hex [str
5440: 69 6e 67 20 72 65 70 65 61 74 20 22 22 61 61 22 ing repeat ""aa"
5450: 22 20 32 30 5d 5d 22 2c 2c 2c 2c 2c 2c 2c 2c 2c " 20]]",,,,,,,,,
5460: 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 64 61 .command,"set da
5470: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 ta [binary decod
5480: 65 20 68 65 78 20 5b 73 74 72 69 6e 67 20 72 65 e hex [string re
5490: 70 65 61 74 20 22 22 64 64 22 22 20 35 30 5d 5d peat ""dd"" 50]]
54a0: 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 52 46 43 34 32 ",,,,,,,,,.RFC42
54b0: 33 31 20 48 4d 41 43 20 54 43 33 2c 73 68 61 32 31 HMAC TC3,sha2
54c0: 32 34 2c 2c 2c 3a 3a 74 6c 73 3a 3a 68 6d 61 63 24,,,::tls::hmac
54d0: 20 2d 64 69 67 65 73 74 20 73 68 61 32 32 34 20 -digest sha224
54e0: 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 20 -key $key -data
54f0: 24 64 61 74 61 2c 2c 2c 37 66 62 33 63 62 33 35 $data,,,7fb3cb35
5500: 38 38 63 36 63 31 66 36 66 66 61 39 36 39 34 64 88c6c1f6ffa9694d
5510: 37 64 36 61 64 32 36 34 39 33 36 35 62 30 63 31 7d6ad2649365b0c1
5520: 66 36 35 64 36 39 64 31 65 63 38 33 33 33 65 61 f65d69d1ec8333ea
5530: 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d 41 43 ,,,.RFC4231 HMAC
5540: 20 54 43 33 2c 73 68 61 32 35 36 2c 2c 2c 3a 3a TC3,sha256,,,::
5550: 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 73 tls::hmac -diges
5560: 74 20 73 68 61 32 35 36 20 2d 6b 65 79 20 24 6b t sha256 -key $k
5570: 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 2c 2c ey -data $data,,
5580: 2c 37 37 33 65 61 39 31 65 33 36 38 30 30 65 34 ,773ea91e36800e4
5590: 36 38 35 34 64 62 38 65 62 64 30 39 31 38 31 61 6854db8ebd09181a
55a0: 37 32 39 35 39 30 39 38 62 33 65 66 38 63 31 32 72959098b3ef8c12
55b0: 32 64 39 36 33 35 35 31 34 63 65 64 35 36 35 66 2d9635514ced565f
55c0: 65 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d 41 e,,,.RFC4231 HMA
55d0: 43 20 54 43 33 2c 73 68 61 33 38 34 2c 2c 2c 3a C TC3,sha384,,,:
55e0: 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 :tls::hmac -dige
55f0: 73 74 20 73 68 61 33 38 34 20 2d 6b 65 79 20 24 st sha384 -key $
5600: 6b 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 2c key -data $data,
5610: 2c 2c 38 38 30 36 32 36 30 38 64 33 65 36 61 64 ,,88062608d3e6ad
5620: 38 61 30 61 61 32 61 63 65 30 31 34 63 38 61 38 8a0aa2ace014c8a8
5630: 36 66 30 61 61 36 33 35 64 39 34 37 61 63 39 66 6f0aa635d947ac9f
5640: 65 62 65 38 33 65 66 34 65 35 35 39 36 36 31 34 ebe83ef4e5596614
5650: 34 62 32 61 35 61 62 33 39 64 63 31 33 38 31 34 4b2a5ab39dc13814
5660: 62 39 34 65 33 61 62 36 65 31 30 31 61 33 34 66 b94e3ab6e101a34f
5670: 32 37 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d 27,,,.RFC4231 HM
5680: 41 43 20 54 43 33 2c 73 68 61 35 31 32 2c 2c 2c AC TC3,sha512,,,
5690: 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 ::tls::hmac -dig
56a0: 65 73 74 20 73 68 61 35 31 32 20 2d 6b 65 79 20 est sha512 -key
56b0: 24 6b 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 $key -data $data
56c0: 2c 2c 2c 66 61 37 33 62 30 30 38 39 64 35 36 61 ,,,fa73b0089d56a
56d0: 32 38 34 65 66 62 30 66 30 37 35 36 63 38 39 30 284efb0f0756c890
56e0: 62 65 39 62 31 62 35 64 62 64 64 38 65 65 38 31 be9b1b5dbdd8ee81
56f0: 61 33 36 35 35 66 38 33 65 33 33 62 32 32 37 39 a3655f83e33b2279
5700: 64 33 39 62 66 33 65 38 34 38 32 37 39 61 37 32 d39bf3e848279a72
5710: 32 63 38 30 36 62 34 38 35 61 34 37 65 36 37 63 2c806b485a47e67c
5720: 38 30 37 62 39 34 36 61 33 33 37 62 65 65 38 39 807b946a337bee89
5730: 34 32 36 37 34 32 37 38 38 35 39 65 31 33 32 39 42674278859e1329
5740: 32 66 62 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 2fb,,,.,,,,,,,,,
5750: 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 52 46 43 20 ,.command,# RFC
5760: 34 32 33 31 20 48 4d 41 43 20 45 78 61 6d 70 6c 4231 HMAC Exampl
5770: 65 73 20 54 65 73 74 20 43 61 73 65 20 23 34 20 es Test Case #4
5780: 2d 20 54 65 73 74 20 77 69 74 68 20 61 20 63 6f - Test with a co
5790: 6d 62 69 6e 65 64 20 6c 65 6e 67 74 68 20 6f 66 mbined length of
57a0: 20 6b 65 79 20 61 6e 64 20 64 61 74 61 20 74 68 key and data th
57b0: 61 74 20 69 73 20 6c 61 72 67 65 72 20 74 68 61 at is larger tha
57c0: 6e 20 36 34 20 62 79 74 65 73 20 28 3d 20 62 6c n 64 bytes (= bl
57d0: 6f 63 6b 2d 73 69 7a 65 20 6f 66 20 53 48 41 2d ock-size of SHA-
57e0: 32 32 34 20 61 6e 64 20 53 48 41 2d 32 35 36 29 224 and SHA-256)
57f0: 2e 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 .,,,,,,,,,.comma
5800: 6e 64 2c 22 73 65 74 20 6b 65 79 20 5b 62 69 6e nd,"set key [bin
5810: 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 22 ary decode hex "
5820: 22 30 31 30 32 30 33 30 34 30 35 30 36 30 37 30 "010203040506070
5830: 38 30 39 30 61 30 62 30 63 30 64 30 65 30 66 31 8090a0b0c0d0e0f1
5840: 30 31 31 31 32 31 33 31 34 31 35 31 36 31 37 31 0111213141516171
5850: 38 31 39 22 22 5d 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 819""]",,,,,,,,,
5860: 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 64 61 .command,"set da
5870: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 ta [binary decod
5880: 65 20 68 65 78 20 5b 73 74 72 69 6e 67 20 72 65 e hex [string re
5890: 70 65 61 74 20 22 22 63 64 22 22 20 35 30 5d 5d peat ""cd"" 50]]
58a0: 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 52 46 43 34 32 ",,,,,,,,,.RFC42
58b0: 33 31 20 48 4d 41 43 20 54 43 34 2c 73 68 61 32 31 HMAC TC4,sha2
58c0: 32 34 2c 2c 2c 3a 3a 74 6c 73 3a 3a 68 6d 61 63 24,,,::tls::hmac
58d0: 20 2d 64 69 67 65 73 74 20 73 68 61 32 32 34 20 -digest sha224
58e0: 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 20 -key $key -data
58f0: 24 64 61 74 61 2c 2c 2c 36 63 31 31 35 30 36 38 $data,,,6c115068
5900: 37 34 30 31 33 63 61 63 36 61 32 61 62 63 31 62 74013cac6a2abc1b
5910: 62 33 38 32 36 32 37 63 65 63 36 61 39 30 64 38 b382627cec6a90d8
5920: 36 65 66 63 30 31 32 64 65 37 61 66 65 63 35 61 6efc012de7afec5a
5930: 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d 41 43 ,,,.RFC4231 HMAC
5940: 20 54 43 34 2c 73 68 61 32 35 36 2c 2c 2c 3a 3a TC4,sha256,,,::
5950: 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 73 tls::hmac -diges
5960: 74 20 73 68 61 32 35 36 20 2d 6b 65 79 20 24 6b t sha256 -key $k
5970: 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 2c 2c ey -data $data,,
5980: 2c 38 32 35 35 38 61 33 38 39 61 34 34 33 63 30 ,82558a389a443c0
5990: 65 61 34 63 63 38 31 39 38 39 39 66 32 30 38 33 ea4cc819899f2083
59a0: 61 38 35 66 30 66 61 61 33 65 35 37 38 66 38 30 a85f0faa3e578f80
59b0: 37 37 61 32 65 33 66 66 34 36 37 32 39 36 36 35 77a2e3ff46729665
59c0: 62 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d 41 b,,,.RFC4231 HMA
59d0: 43 20 54 43 34 2c 73 68 61 33 38 34 2c 2c 2c 3a C TC4,sha384,,,:
59e0: 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 :tls::hmac -dige
59f0: 73 74 20 73 68 61 33 38 34 20 2d 6b 65 79 20 24 st sha384 -key $
5a00: 6b 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 2c key -data $data,
5a10: 2c 2c 33 65 38 61 36 39 62 37 37 38 33 63 32 35 ,,3e8a69b7783c25
5a20: 38 35 31 39 33 33 61 62 36 32 39 30 61 66 36 63 851933ab6290af6c
5a30: 61 37 37 61 39 39 38 31 34 38 30 38 35 30 30 30 a77a998148085000
5a40: 39 63 63 35 35 37 37 63 36 65 31 66 35 37 33 62 9cc5577c6e1f573b
5a50: 34 65 36 38 30 31 64 64 32 33 63 34 61 37 64 36 4e6801dd23c4a7d6
5a60: 37 39 63 63 66 38 61 33 38 36 63 36 37 34 63 66 79ccf8a386c674cf
5a70: 66 62 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d fb,,,.RFC4231 HM
5a80: 41 43 20 54 43 34 2c 73 68 61 35 31 32 2c 2c 2c AC TC4,sha512,,,
5a90: 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 ::tls::hmac -dig
5aa0: 65 73 74 20 73 68 61 35 31 32 20 2d 6b 65 79 20 est sha512 -key
5ab0: 24 6b 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 $key -data $data
5ac0: 2c 2c 2c 62 30 62 61 34 36 35 36 33 37 34 35 38 ,,,b0ba465637458
5ad0: 63 36 39 39 30 65 35 61 38 63 35 66 36 31 64 34 c6990e5a8c5f61d4
5ae0: 61 66 37 65 35 37 36 64 39 37 66 66 39 34 62 38 af7e576d97ff94b8
5af0: 37 32 64 65 37 36 66 38 30 35 30 33 36 31 65 65 72de76f8050361ee
5b00: 33 64 62 61 39 31 63 61 35 63 31 31 61 61 32 35 3dba91ca5c11aa25
5b10: 65 62 34 64 36 37 39 32 37 35 63 63 35 37 38 38 eb4d679275cc5788
5b20: 30 36 33 61 35 66 31 39 37 34 31 31 32 30 63 34 063a5f19741120c4
5b30: 66 32 64 65 32 61 64 65 62 65 62 31 30 61 32 39 f2de2adebeb10a29
5b40: 38 64 64 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 2c 2c 8dd,,,.,,,,,,,,,
5b50: 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 52 46 43 20 ,.command,# RFC
5b60: 34 32 33 31 20 48 4d 41 43 20 45 78 61 6d 70 6c 4231 HMAC Exampl
5b70: 65 73 20 54 65 73 74 20 43 61 73 65 20 23 35 20 es Test Case #5
5b80: 2d 20 54 65 73 74 20 77 69 74 68 20 61 20 74 72 - Test with a tr
5b90: 75 6e 63 61 74 69 6f 6e 20 6f 66 20 6f 75 74 70 uncation of outp
5ba0: 75 74 20 74 6f 20 31 32 38 20 62 69 74 73 2e 2c ut to 128 bits.,
5bb0: 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 ,,,,,,,,.command
5bc0: 2c 22 73 65 74 20 6b 65 79 20 5b 62 69 6e 61 72 ,"set key [binar
5bd0: 79 20 64 65 63 6f 64 65 20 68 65 78 20 5b 73 74 y decode hex [st
5be0: 72 69 6e 67 20 72 65 70 65 61 74 20 22 22 30 63 ring repeat ""0c
5bf0: 22 22 20 32 30 5d 5d 22 2c 2c 2c 2c 2c 2c 2c 2c "" 20]]",,,,,,,,
5c00: 2c 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 64 ,.command,"set d
5c10: 61 74 61 20 22 22 54 65 73 74 20 57 69 74 68 20 ata ""Test With
5c20: 54 72 75 6e 63 61 74 69 6f 6e 22 22 22 2c 2c 2c Truncation""",,,
5c30: 2c 2c 2c 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 ,,,,,,.RFC4231 H
5c40: 4d 41 43 20 54 43 35 2c 73 68 61 32 32 34 2c 2c MAC TC5,sha224,,
5c50: 2c 73 74 72 69 6e 67 20 72 61 6e 67 65 20 5b 3a ,string range [:
5c60: 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 :tls::hmac -dige
5c70: 73 74 20 73 68 61 32 32 34 20 2d 6b 65 79 20 24 st sha224 -key $
5c80: 6b 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 5d key -data $data]
5c90: 20 30 20 33 31 2c 2c 2c 30 65 32 61 65 61 36 38 0 31,,,0e2aea68
5ca0: 61 39 30 63 38 64 33 37 63 39 38 38 62 63 64 62 a90c8d37c988bcdb
5cb0: 39 66 63 61 36 66 61 38 2c 2c 2c 0a 52 46 43 34 9fca6fa8,,,.RFC4
5cc0: 32 33 31 20 48 4d 41 43 20 54 43 35 2c 73 68 61 231 HMAC TC5,sha
5cd0: 32 35 36 2c 2c 2c 73 74 72 69 6e 67 20 72 61 6e 256,,,string ran
5ce0: 67 65 20 5b 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 ge [::tls::hmac
5cf0: 2d 64 69 67 65 73 74 20 73 68 61 32 35 36 20 2d -digest sha256 -
5d00: 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 20 24 key $key -data $
5d10: 64 61 74 61 5d 20 30 20 33 31 2c 2c 2c 61 33 62 data] 0 31,,,a3b
5d20: 36 31 36 37 34 37 33 31 30 30 65 65 30 36 65 30 6167473100ee06e0
5d30: 63 37 39 36 63 32 39 35 35 35 35 32 62 2c 2c 2c c796c2955552b,,,
5d40: 0a 52 46 43 34 32 33 31 20 48 4d 41 43 20 54 43 .RFC4231 HMAC TC
5d50: 35 2c 73 68 61 33 38 34 2c 2c 2c 73 74 72 69 6e 5,sha384,,,strin
5d60: 67 20 72 61 6e 67 65 20 5b 3a 3a 74 6c 73 3a 3a g range [::tls::
5d70: 68 6d 61 63 20 2d 64 69 67 65 73 74 20 73 68 61 hmac -digest sha
5d80: 33 38 34 20 2d 6b 65 79 20 24 6b 65 79 20 2d 64 384 -key $key -d
5d90: 61 74 61 20 24 64 61 74 61 5d 20 30 20 33 31 2c ata $data] 0 31,
5da0: 2c 2c 33 61 62 66 33 34 63 33 35 30 33 62 32 61 ,,3abf34c3503b2a
5db0: 32 33 61 34 36 65 66 63 36 31 39 62 61 65 66 38 23a46efc619baef8
5dc0: 39 37 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d 97,,,.RFC4231 HM
5dd0: 41 43 20 54 43 35 2c 73 68 61 35 31 32 2c 2c 2c AC TC5,sha512,,,
5de0: 73 74 72 69 6e 67 20 72 61 6e 67 65 20 5b 3a 3a string range [::
5df0: 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 65 73 tls::hmac -diges
5e00: 74 20 73 68 61 35 31 32 20 2d 6b 65 79 20 24 6b t sha512 -key $k
5e10: 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 5d 20 ey -data $data]
5e20: 30 20 33 31 2c 2c 2c 34 31 35 66 61 64 36 32 37 0 31,,,415fad627
5e30: 31 35 38 30 61 35 33 31 64 34 31 37 39 62 63 38 1580a531d4179bc8
5e40: 39 31 64 38 37 61 36 2c 2c 2c 0a 2c 2c 2c 2c 2c 91d87a6,,,.,,,,,
5e50: 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 ,,,,,.command,#
5e60: 52 46 43 20 34 32 33 31 20 48 4d 41 43 20 45 78 RFC 4231 HMAC Ex
5e70: 61 6d 70 6c 65 73 20 54 65 73 74 20 43 61 73 65 amples Test Case
5e80: 20 23 36 20 2d 20 54 65 73 74 20 77 69 74 68 20 #6 - Test with
5e90: 61 20 6b 65 79 20 6c 61 72 67 65 72 20 74 68 61 a key larger tha
5ea0: 6e 20 31 32 38 20 62 79 74 65 73 20 28 3d 20 62 n 128 bytes (= b
5eb0: 6c 6f 63 6b 2d 73 69 7a 65 20 6f 66 20 53 48 41 lock-size of SHA
5ec0: 2d 33 38 34 20 61 6e 64 20 53 48 41 2d 35 31 32 -384 and SHA-512
5ed0: 29 2e 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d ).,,,,,,,,,.comm
5ee0: 61 6e 64 2c 22 73 65 74 20 6b 65 79 20 5b 62 69 and,"set key [bi
5ef0: 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 nary decode hex
5f00: 5b 73 74 72 69 6e 67 20 72 65 70 65 61 74 20 22 [string repeat "
5f10: 22 61 61 22 22 20 31 33 31 5d 5d 22 2c 2c 2c 2c "aa"" 131]]",,,,
5f20: 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 22 73 ,,,,,.command,"s
5f30: 65 74 20 64 61 74 61 20 22 22 54 65 73 74 20 55 et data ""Test U
5f40: 73 69 6e 67 20 4c 61 72 67 65 72 20 54 68 61 6e sing Larger Than
5f50: 20 42 6c 6f 63 6b 2d 53 69 7a 65 20 4b 65 79 20 Block-Size Key
5f60: 2d 20 48 61 73 68 20 4b 65 79 20 46 69 72 73 74 - Hash Key First
5f70: 22 22 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 52 46 43 """,,,,,,,,,.RFC
5f80: 34 32 33 31 20 48 4d 41 43 20 54 43 36 2c 73 68 4231 HMAC TC6,sh
5f90: 61 32 32 34 2c 2c 2c 3a 3a 74 6c 73 3a 3a 68 6d a224,,,::tls::hm
5fa0: 61 63 20 2d 64 69 67 65 73 74 20 73 68 61 32 32 ac -digest sha22
5fb0: 34 20 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 4 -key $key -dat
5fc0: 61 20 24 64 61 74 61 2c 2c 2c 39 35 65 39 61 30 a $data,,,95e9a0
5fd0: 64 62 39 36 32 30 39 35 61 64 61 65 62 65 39 62 db962095adaebe9b
5fe0: 32 64 36 66 30 64 62 63 65 32 64 34 39 39 66 31 2d6f0dbce2d499f1
5ff0: 31 32 66 32 64 32 62 37 32 37 33 66 61 36 38 37 12f2d2b7273fa687
6000: 30 65 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 4d 0e,,,.RFC4231 HM
6010: 41 43 20 54 43 36 2c 73 68 61 32 35 36 2c 2c 2c AC TC6,sha256,,,
6020: 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 67 ::tls::hmac -dig
6030: 65 73 74 20 73 68 61 32 35 36 20 2d 6b 65 79 20 est sha256 -key
6040: 24 6b 65 79 20 2d 64 61 74 61 20 24 64 61 74 61 $key -data $data
6050: 2c 2c 2c 36 30 65 34 33 31 35 39 31 65 65 30 62 ,,,60e431591ee0b
6060: 36 37 66 30 64 38 61 32 36 61 61 63 62 66 35 62 67f0d8a26aacbf5b
6070: 37 37 66 38 65 30 62 63 36 32 31 33 37 32 38 63 77f8e0bc6213728c
6080: 35 31 34 30 35 34 36 30 34 30 66 30 65 65 33 37 5140546040f0ee37
6090: 66 35 34 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 f54,,,.RFC4231 H
60a0: 4d 41 43 20 54 43 36 2c 73 68 61 33 38 34 2c 2c MAC TC6,sha384,,
60b0: 2c 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 ,::tls::hmac -di
60c0: 67 65 73 74 20 73 68 61 33 38 34 20 2d 6b 65 79 gest sha384 -key
60d0: 20 24 6b 65 79 20 2d 64 61 74 61 20 24 64 61 74 $key -data $dat
60e0: 61 2c 2c 2c 34 65 63 65 30 38 34 34 38 35 38 31 a,,,4ece08448581
60f0: 33 65 39 30 38 38 64 32 63 36 33 61 30 34 31 62 3e9088d2c63a041b
6100: 63 35 62 34 34 66 39 65 66 31 30 31 32 61 32 62 c5b44f9ef1012a2b
6110: 35 38 38 66 33 63 64 31 31 66 30 35 30 33 33 61 588f3cd11f05033a
6120: 63 34 63 36 30 63 32 65 66 36 61 62 34 30 33 30 c4c60c2ef6ab4030
6130: 66 65 38 32 39 36 32 34 38 64 66 31 36 33 66 34 fe8296248df163f4
6140: 34 39 35 32 2c 2c 2c 0a 52 46 43 34 32 33 31 20 4952,,,.RFC4231
6150: 48 4d 41 43 20 54 43 36 2c 73 68 61 35 31 32 2c HMAC TC6,sha512,
6160: 2c 2c 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 ,,::tls::hmac -d
6170: 69 67 65 73 74 20 73 68 61 35 31 32 20 2d 6b 65 igest sha512 -ke
6180: 79 20 24 6b 65 79 20 2d 64 61 74 61 20 24 64 61 y $key -data $da
6190: 74 61 2c 2c 2c 38 30 62 32 34 32 36 33 63 37 63 ta,,,80b24263c7c
61a0: 31 61 33 65 62 62 37 31 34 39 33 63 31 64 64 37 1a3ebb71493c1dd7
61b0: 62 65 38 62 34 39 62 34 36 64 31 66 34 31 62 34 be8b49b46d1f41b4
61c0: 61 65 65 63 31 31 32 31 62 30 31 33 37 38 33 66 aeec1121b013783f
61d0: 38 66 33 35 32 36 62 35 36 64 30 33 37 65 30 35 8f3526b56d037e05
61e0: 66 32 35 39 38 62 64 30 66 64 32 32 31 35 64 36 f2598bd0fd2215d6
61f0: 61 31 65 35 32 39 35 65 36 34 66 37 33 66 36 33 a1e5295e64f73f63
6200: 66 30 61 65 63 38 62 39 31 35 61 39 38 35 64 37 f0aec8b915a985d7
6210: 38 36 35 39 38 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 2c 86598,,,.,,,,,,,
6220: 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 52 46 ,,,.command,# RF
6230: 43 20 34 32 33 31 20 48 4d 41 43 20 45 78 61 6d C 4231 HMAC Exam
6240: 70 6c 65 73 20 54 65 73 74 20 43 61 73 65 20 23 ples Test Case #
6250: 37 20 2d 20 54 65 73 74 20 77 69 74 68 20 61 20 7 - Test with a
6260: 6b 65 79 20 61 6e 64 20 64 61 74 61 20 74 68 61 key and data tha
6270: 74 20 69 73 20 6c 61 72 67 65 72 20 74 68 61 6e t is larger than
6280: 20 31 32 38 20 62 79 74 65 73 20 28 3d 20 62 6c 128 bytes (= bl
6290: 6f 63 6b 2d 73 69 7a 65 20 6f 66 20 53 48 41 2d ock-size of SHA-
62a0: 33 38 34 20 61 6e 64 20 53 48 41 2d 35 31 32 29 384 and SHA-512)
62b0: 2e 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 .,,,,,,,,,.comma
62c0: 6e 64 2c 22 73 65 74 20 6b 65 79 20 5b 62 69 6e nd,"set key [bin
62d0: 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 20 5b ary decode hex [
62e0: 73 74 72 69 6e 67 20 72 65 70 65 61 74 20 22 22 string repeat ""
62f0: 61 61 22 22 20 31 33 31 5d 5d 22 2c 2c 2c 2c 2c aa"" 131]]",,,,,
6300: 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 ,,,,.command,"se
6310: 74 20 64 61 74 61 20 22 22 54 68 69 73 20 69 73 t data ""This is
6320: 20 61 20 74 65 73 74 20 75 73 69 6e 67 20 61 20 a test using a
6330: 6c 61 72 67 65 72 20 74 68 61 6e 20 62 6c 6f 63 larger than bloc
6340: 6b 2d 73 69 7a 65 20 6b 65 79 20 61 6e 64 20 61 k-size key and a
6350: 20 6c 61 72 67 65 72 20 74 68 61 6e 20 62 6c 6f larger than blo
6360: 63 6b 2d 73 69 7a 65 20 64 61 74 61 2e 20 54 68 ck-size data. Th
6370: 65 20 6b 65 79 20 6e 65 65 64 73 20 74 6f 20 62 e key needs to b
6380: 65 20 68 61 73 68 65 64 20 62 65 66 6f 72 65 20 e hashed before
6390: 62 65 69 6e 67 20 75 73 65 64 20 62 79 20 74 68 being used by th
63a0: 65 20 48 4d 41 43 20 61 6c 67 6f 72 69 74 68 6d e HMAC algorithm
63b0: 2e 22 22 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 52 46 .""",,,,,,,,,.RF
63c0: 43 34 32 33 31 20 48 4d 41 43 20 54 43 37 2c 73 C4231 HMAC TC7,s
63d0: 68 61 32 32 34 2c 2c 2c 3a 3a 74 6c 73 3a 3a 68 ha224,,,::tls::h
63e0: 6d 61 63 20 2d 64 69 67 65 73 74 20 73 68 61 32 mac -digest sha2
63f0: 32 34 20 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 24 -key $key -da
6400: 74 61 20 24 64 61 74 61 2c 2c 2c 33 61 38 35 34 ta $data,,,3a854
6410: 31 36 36 61 63 35 64 39 66 30 32 33 66 35 34 64 166ac5d9f023f54d
6420: 35 31 37 64 30 62 33 39 64 62 64 39 34 36 37 37 517d0b39dbd94677
6430: 30 64 62 39 63 32 62 39 35 63 39 66 36 66 35 36 0db9c2b95c9f6f56
6440: 35 64 31 2c 2c 2c 0a 52 46 43 34 32 33 31 20 48 5d1,,,.RFC4231 H
6450: 4d 41 43 20 54 43 37 2c 73 68 61 32 35 36 2c 2c MAC TC7,sha256,,
6460: 2c 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 69 ,::tls::hmac -di
6470: 67 65 73 74 20 73 68 61 32 35 36 20 2d 6b 65 79 gest sha256 -key
6480: 20 24 6b 65 79 20 2d 64 61 74 61 20 24 64 61 74 $key -data $dat
6490: 61 2c 2c 2c 39 62 30 39 66 66 61 37 31 62 39 34 a,,,9b09ffa71b94
64a0: 32 66 63 62 32 37 36 33 35 66 62 63 64 35 62 30 2fcb27635fbcd5b0
64b0: 65 39 34 34 62 66 64 63 36 33 36 34 34 66 30 37 e944bfdc63644f07
64c0: 31 33 39 33 38 61 37 66 35 31 35 33 35 63 33 61 13938a7f51535c3a
64d0: 33 35 65 32 2c 2c 2c 0a 52 46 43 34 32 33 31 20 35e2,,,.RFC4231
64e0: 48 4d 41 43 20 54 43 37 2c 73 68 61 33 38 34 2c HMAC TC7,sha384,
64f0: 2c 2c 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d 64 ,,::tls::hmac -d
6500: 69 67 65 73 74 20 73 68 61 33 38 34 20 2d 6b 65 igest sha384 -ke
6510: 79 20 24 6b 65 79 20 2d 64 61 74 61 20 24 64 61 y $key -data $da
6520: 74 61 2c 2c 2c 36 36 31 37 31 37 38 65 39 34 31 ta,,,6617178e941
6530: 66 30 32 30 64 33 35 31 65 32 66 32 35 34 65 38 f020d351e2f254e8
6540: 66 64 33 32 63 36 30 32 34 32 30 66 65 62 30 62 fd32c602420feb0b
6550: 38 66 62 39 61 64 63 63 65 62 62 38 32 34 36 31 8fb9adccebb82461
6560: 65 39 39 63 35 61 36 37 38 63 63 33 31 65 37 39 e99c5a678cc31e79
6570: 39 31 37 36 64 33 38 36 30 65 36 31 31 30 63 34 9176d3860e6110c4
6580: 36 35 32 33 65 2c 2c 2c 0a 52 46 43 34 32 33 31 6523e,,,.RFC4231
6590: 20 48 4d 41 43 20 54 43 37 2c 73 68 61 35 31 32 HMAC TC7,sha512
65a0: 2c 2c 2c 3a 3a 74 6c 73 3a 3a 68 6d 61 63 20 2d ,,,::tls::hmac -
65b0: 64 69 67 65 73 74 20 73 68 61 35 31 32 20 2d 6b digest sha512 -k
65c0: 65 79 20 24 6b 65 79 20 2d 64 61 74 61 20 24 64 ey $key -data $d
65d0: 61 74 61 2c 2c 2c 65 33 37 62 36 61 37 37 35 64 ata,,,e37b6a775d
65e0: 63 38 37 64 62 61 61 34 64 66 61 39 66 39 36 65 c87dbaa4dfa9f96e
65f0: 35 65 33 66 66 64 64 65 62 64 37 31 66 38 38 36 5e3ffddebd71f886
6600: 37 32 38 39 38 36 35 64 66 35 61 33 32 64 32 30 7289865df5a32d20
6610: 63 64 63 39 34 34 62 36 30 32 32 63 61 63 33 63 cdc944b6022cac3c
6620: 34 39 38 32 62 31 30 64 35 65 65 62 35 35 63 33 4982b10d5eeb55c3
6630: 65 34 64 65 31 35 31 33 34 36 37 36 66 62 36 64 e4de15134676fb6d
6640: 65 30 34 34 36 30 36 35 63 39 37 34 34 30 66 61 e0446065c97440fa
6650: 38 63 36 61 35 38 2c 2c 2c 0a 2c 2c 2c 2c 2c 2c 8c6a58,,,.,,,,,,
6660: 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 4e ,,,,.command,# N
6670: 49 53 54 20 38 30 30 2d 33 38 62 20 52 65 63 6f IST 800-38b Reco
6680: 6d 6d 65 6e 64 61 74 69 6f 6e 20 66 6f 72 20 42 mmendation for B
6690: 6c 6f 63 6b 20 43 69 70 68 65 72 20 4d 6f 64 65 lock Cipher Mode
66a0: 73 20 6f 66 20 4f 70 65 72 61 74 69 6f 6e 3a 20 s of Operation:
66b0: 54 68 65 20 43 4d 41 43 20 4d 6f 64 65 20 66 6f The CMAC Mode fo
66c0: 72 20 41 75 74 68 65 6e 74 69 63 61 74 69 6f 6e r Authentication
66d0: 2c 2c 2c 2c 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e ,,,,,,,,,.comman
66e0: 64 2c 23 20 41 45 53 2d 31 32 38 2c 2c 2c 2c 2c d,# AES-128,,,,,
66f0: 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 ,,,,.command,"se
6700: 74 20 6b 65 79 20 5b 62 69 6e 61 72 79 20 64 65 t key [binary de
6710: 63 6f 64 65 20 68 65 78 20 22 22 32 62 37 65 31 code hex ""2b7e1
6720: 35 31 36 32 38 61 65 64 32 61 36 61 62 66 37 31 51628aed2a6abf71
6730: 35 38 38 30 39 63 66 34 66 33 63 22 22 5d 22 2c 58809cf4f3c""]",
6740: 2c 2c 2c 2c 2c 2c 2c 2c 0a 4e 49 53 54 38 30 30 ,,,,,,,,.NIST800
6750: 2d 33 38 62 2d 41 45 53 31 32 38 2c 6c 65 6e 3d -38b-AES128,len=
6760: 30 2c 2c 2c 22 3a 3a 74 6c 73 3a 3a 63 6d 61 63 0,,,"::tls::cmac
6770: 20 2d 63 69 70 68 65 72 20 61 65 73 2d 31 32 38 -cipher aes-128
6780: 2d 63 62 63 20 2d 6b 65 79 20 24 6b 65 79 20 2d -cbc -key $key -
6790: 64 61 74 61 20 22 22 22 22 22 2c 2c 2c 62 62 31 data """"",,,bb1
67a0: 64 36 39 32 39 65 39 35 39 33 37 32 38 37 66 61 d6929e95937287fa
67b0: 33 37 64 31 32 39 62 37 35 36 37 34 36 2c 2c 2c 37d129b756746,,,
67c0: 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 64 61 .command,"set da
67d0: 74 61 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 ta [binary decod
67e0: 65 20 68 65 78 20 22 22 36 62 63 31 62 65 65 32 e hex ""6bc1bee2
67f0: 32 65 34 30 39 66 39 36 65 39 33 64 37 65 31 31 2e409f96e93d7e11
6800: 37 33 39 33 31 37 32 61 22 22 5d 22 2c 2c 2c 2c 7393172a""]",,,,
6810: 2c 2c 2c 2c 2c 0a 4e 49 53 54 38 30 30 2d 33 38 ,,,,,.NIST800-38
6820: 62 2d 41 45 53 31 32 38 2c 6c 65 6e 3d 31 32 38 b-AES128,len=128
6830: 2c 2c 2c 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d ,,,::tls::cmac -
6840: 63 69 70 68 65 72 20 61 65 73 2d 31 32 38 2d 63 cipher aes-128-c
6850: 62 63 20 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 bc -key $key -da
6860: 74 61 20 24 64 61 74 61 2c 2c 2c 30 37 30 61 31 ta $data,,,070a1
6870: 36 62 34 36 62 34 64 34 31 34 34 66 37 39 62 64 6b46b4d4144f79bd
6880: 64 39 64 64 30 34 61 32 38 37 63 2c 2c 2c 0a 63 d9dd04a287c,,,.c
6890: 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 64 61 74 61 ommand,"set data
68a0: 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 [binary decode
68b0: 68 65 78 20 22 22 36 62 63 31 62 65 65 32 32 65 hex ""6bc1bee22e
68c0: 34 30 39 66 39 36 65 39 33 64 37 65 31 31 37 33 409f96e93d7e1173
68d0: 39 33 31 37 32 61 61 65 32 64 38 61 35 37 31 65 93172aae2d8a571e
68e0: 30 33 61 63 39 63 39 65 62 37 36 66 61 63 34 35 03ac9c9eb76fac45
68f0: 61 66 38 65 35 31 33 30 63 38 31 63 34 36 61 33 af8e5130c81c46a3
6900: 35 63 65 34 31 31 22 22 5d 22 2c 2c 2c 2c 2c 2c 5ce411""]",,,,,,
6910: 2c 2c 2c 0a 4e 49 53 54 38 30 30 2d 33 38 62 2d ,,,.NIST800-38b-
6920: 41 45 53 31 32 38 2c 6c 65 6e 3d 33 32 30 2c 2c AES128,len=320,,
6930: 2c 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 63 69 ,::tls::cmac -ci
6940: 70 68 65 72 20 61 65 73 2d 31 32 38 2d 63 62 63 pher aes-128-cbc
6950: 20 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 -key $key -data
6960: 20 24 64 61 74 61 2c 2c 2c 64 66 61 36 36 37 34 $data,,,dfa6674
6970: 37 64 65 39 61 65 36 33 30 33 30 63 61 33 32 36 7de9ae63030ca326
6980: 31 31 34 39 37 63 38 32 37 2c 2c 2c 0a 63 6f 6d 11497c827,,,.com
6990: 6d 61 6e 64 2c 22 73 65 74 20 64 61 74 61 20 5b mand,"set data [
69a0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 binary decode he
69b0: 78 20 22 22 36 62 63 31 62 65 65 32 32 65 34 30 x ""6bc1bee22e40
69c0: 39 66 39 36 65 39 33 64 37 65 31 31 37 33 39 33 9f96e93d7e117393
69d0: 31 37 32 61 61 65 32 64 38 61 35 37 31 65 30 33 172aae2d8a571e03
69e0: 61 63 39 63 39 65 62 37 36 66 61 63 34 35 61 66 ac9c9eb76fac45af
69f0: 38 65 35 31 33 30 63 38 31 63 34 36 61 33 35 63 8e5130c81c46a35c
6a00: 65 34 31 31 65 35 66 62 63 31 31 39 31 61 30 61 e411e5fbc1191a0a
6a10: 35 32 65 66 66 36 39 66 32 34 34 35 64 66 34 66 52eff69f2445df4f
6a20: 39 62 31 37 61 64 32 62 34 31 37 62 65 36 36 63 9b17ad2b417be66c
6a30: 33 37 31 30 22 22 5d 22 2c 2c 2c 2c 2c 2c 2c 2c 3710""]",,,,,,,,
6a40: 2c 0a 4e 49 53 54 38 30 30 2d 33 38 62 2d 41 45 ,.NIST800-38b-AE
6a50: 53 31 32 38 2c 6c 65 6e 3d 35 31 32 2c 2c 2c 3a S128,len=512,,,:
6a60: 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 63 69 70 68 :tls::cmac -ciph
6a70: 65 72 20 61 65 73 2d 31 32 38 2d 63 62 63 20 2d er aes-128-cbc -
6a80: 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 20 24 key $key -data $
6a90: 64 61 74 61 2c 2c 2c 35 31 66 30 62 65 62 66 37 data,,,51f0bebf7
6aa0: 65 33 62 39 64 39 32 66 63 34 39 37 34 31 37 37 e3b9d92fc4974177
6ab0: 39 33 36 33 63 66 65 2c 2c 2c 0a 2c 2c 2c 2c 2c 9363cfe,,,.,,,,,
6ac0: 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 ,,,,,.command,#
6ad0: 41 45 53 2d 31 39 32 2c 2c 2c 2c 2c 2c 2c 2c 2c AES-192,,,,,,,,,
6ae0: 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 6b 65 .command,"set ke
6af0: 79 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 y [binary decode
6b00: 20 68 65 78 20 22 22 38 65 37 33 62 30 66 37 64 hex ""8e73b0f7d
6b10: 61 30 65 36 34 35 32 63 38 31 30 66 33 32 62 38 a0e6452c810f32b8
6b20: 30 39 30 37 39 65 35 36 32 66 38 65 61 64 32 35 09079e562f8ead25
6b30: 32 32 63 36 62 37 62 22 22 5d 22 2c 2c 2c 2c 2c 22c6b7b""]",,,,,
6b40: 2c 2c 2c 2c 0a 4e 49 53 54 38 30 30 2d 33 38 62 ,,,,.NIST800-38b
6b50: 2d 41 45 53 2d 31 39 32 2c 6c 65 6e 3d 30 2c 2c -AES-192,len=0,,
6b60: 2c 22 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 63 ,"::tls::cmac -c
6b70: 69 70 68 65 72 20 61 65 73 2d 31 39 32 2d 63 62 ipher aes-192-cb
6b80: 63 20 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 c -key $key -dat
6b90: 61 20 22 22 22 22 22 2c 2c 2c 64 31 37 64 64 66 a """"",,,d17ddf
6ba0: 34 36 61 64 61 61 63 64 65 35 33 31 63 61 63 34 46adaacde531cac4
6bb0: 38 33 64 65 37 61 39 33 36 37 2c 2c 2c 0a 63 6f 83de7a9367,,,.co
6bc0: 6d 6d 61 6e 64 2c 22 73 65 74 20 64 61 74 61 20 mmand,"set data
6bd0: 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 [binary decode h
6be0: 65 78 20 22 22 36 62 63 31 62 65 65 32 32 65 34 ex ""6bc1bee22e4
6bf0: 30 39 66 39 36 65 39 33 64 37 65 31 31 37 33 39 09f96e93d7e11739
6c00: 33 31 37 32 61 22 22 5d 22 2c 2c 2c 2c 2c 2c 2c 3172a""]",,,,,,,
6c10: 2c 2c 0a 4e 49 53 54 38 30 30 2d 33 38 62 2d 41 ,,.NIST800-38b-A
6c20: 45 53 2d 31 39 32 2c 6c 65 6e 3d 31 32 38 2c 2c ES-192,len=128,,
6c30: 2c 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 63 69 ,::tls::cmac -ci
6c40: 70 68 65 72 20 61 65 73 2d 31 39 32 2d 63 62 63 pher aes-192-cbc
6c50: 20 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 -key $key -data
6c60: 20 24 64 61 74 61 2c 2c 2c 39 65 39 39 61 37 62 $data,,,9e99a7b
6c70: 66 33 31 65 37 31 30 39 30 30 36 36 32 66 36 35 f31e710900662f65
6c80: 65 36 31 37 63 35 31 38 34 2c 2c 2c 0a 63 6f 6d e617c5184,,,.com
6c90: 6d 61 6e 64 2c 22 73 65 74 20 64 61 74 61 20 5b mand,"set data [
6ca0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 binary decode he
6cb0: 78 20 22 22 36 62 63 31 62 65 65 32 32 65 34 30 x ""6bc1bee22e40
6cc0: 39 66 39 36 65 39 33 64 37 65 31 31 37 33 39 33 9f96e93d7e117393
6cd0: 31 37 32 61 61 65 32 64 38 61 35 37 31 65 30 33 172aae2d8a571e03
6ce0: 61 63 39 63 39 65 62 37 36 66 61 63 34 35 61 66 ac9c9eb76fac45af
6cf0: 38 65 35 31 33 30 63 38 31 63 34 36 61 33 35 63 8e5130c81c46a35c
6d00: 65 34 31 31 22 22 5d 22 2c 2c 2c 2c 2c 2c 2c 2c e411""]",,,,,,,,
6d10: 2c 0a 4e 49 53 54 38 30 30 2d 33 38 62 2d 41 45 ,.NIST800-38b-AE
6d20: 53 2d 31 39 32 2c 6c 65 6e 3d 33 32 30 2c 2c 2c S-192,len=320,,,
6d30: 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 63 69 70 ::tls::cmac -cip
6d40: 68 65 72 20 61 65 73 2d 31 39 32 2d 63 62 63 20 her aes-192-cbc
6d50: 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 20 -key $key -data
6d60: 24 64 61 74 61 2c 2c 2c 38 61 31 64 65 35 62 65 $data,,,8a1de5be
6d70: 32 65 62 33 31 61 61 64 30 38 39 61 38 32 65 36 2eb31aad089a82e6
6d80: 65 65 39 30 38 62 30 65 2c 2c 2c 0a 63 6f 6d 6d ee908b0e,,,.comm
6d90: 61 6e 64 2c 22 73 65 74 20 64 61 74 61 20 5b 62 and,"set data [b
6da0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 inary decode hex
6db0: 20 22 22 36 62 63 31 62 65 65 32 32 65 34 30 39 ""6bc1bee22e409
6dc0: 66 39 36 65 39 33 64 37 65 31 31 37 33 39 33 31 f96e93d7e1173931
6dd0: 37 32 61 61 65 32 64 38 61 35 37 31 65 30 33 61 72aae2d8a571e03a
6de0: 63 39 63 39 65 62 37 36 66 61 63 34 35 61 66 38 c9c9eb76fac45af8
6df0: 65 35 31 33 30 63 38 31 63 34 36 61 33 35 63 65 e5130c81c46a35ce
6e00: 34 31 31 65 35 66 62 63 31 31 39 31 61 30 61 35 411e5fbc1191a0a5
6e10: 32 65 66 66 36 39 66 32 34 34 35 64 66 34 66 39 2eff69f2445df4f9
6e20: 62 31 37 61 64 32 62 34 31 37 62 65 36 36 63 33 b17ad2b417be66c3
6e30: 37 31 30 22 22 5d 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 710""]",,,,,,,,,
6e40: 0a 4e 49 53 54 38 30 30 2d 33 38 62 2d 41 45 53 .NIST800-38b-AES
6e50: 2d 31 39 32 2c 6c 65 6e 3d 35 31 32 2c 2c 2c 3a -192,len=512,,,:
6e60: 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 63 69 70 68 :tls::cmac -ciph
6e70: 65 72 20 61 65 73 2d 31 39 32 2d 63 62 63 20 2d er aes-192-cbc -
6e80: 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 20 24 key $key -data $
6e90: 64 61 74 61 2c 2c 2c 61 31 64 35 64 66 30 65 65 data,,,a1d5df0ee
6ea0: 64 37 39 30 66 37 39 34 64 37 37 35 38 39 36 35 d790f794d7758965
6eb0: 39 66 33 39 61 31 31 2c 2c 2c 0a 2c 2c 2c 2c 2c 9f39a11,,,.,,,,,
6ec0: 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 ,,,,,.command,#
6ed0: 41 45 53 2d 32 35 36 2c 2c 2c 2c 2c 2c 2c 2c 2c AES-256,,,,,,,,,
6ee0: 0a 63 6f 6d 6d 61 6e 64 2c 22 73 65 74 20 6b 65 .command,"set ke
6ef0: 79 20 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 y [binary decode
6f00: 20 68 65 78 20 22 22 36 30 33 64 65 62 31 30 31 hex ""603deb101
6f10: 35 63 61 37 31 62 65 32 62 37 33 61 65 66 30 38 5ca71be2b73aef08
6f20: 35 37 64 37 37 38 31 31 66 33 35 32 63 30 37 33 57d77811f352c073
6f30: 62 36 31 30 38 64 37 32 64 39 38 31 30 61 33 30 b6108d72d9810a30
6f40: 39 31 34 64 66 66 34 22 22 5d 22 2c 2c 2c 2c 2c 914dff4""]",,,,,
6f50: 2c 2c 2c 2c 0a 4e 49 53 54 38 30 30 2d 33 38 62 ,,,,.NIST800-38b
6f60: 2d 41 45 53 2d 32 35 36 2c 6c 65 6e 3d 30 2c 2c -AES-256,len=0,,
6f70: 2c 22 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 63 ,"::tls::cmac -c
6f80: 69 70 68 65 72 20 61 65 73 2d 32 35 36 2d 63 62 ipher aes-256-cb
6f90: 63 20 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 c -key $key -dat
6fa0: 61 20 22 22 22 22 22 2c 2c 2c 30 32 38 39 36 32 a """"",,,028962
6fb0: 66 36 31 62 37 62 66 38 39 65 66 63 36 62 35 35 f61b7bf89efc6b55
6fc0: 31 66 34 36 36 37 64 39 38 33 2c 2c 2c 0a 63 6f 1f4667d983,,,.co
6fd0: 6d 6d 61 6e 64 2c 22 73 65 74 20 64 61 74 61 20 mmand,"set data
6fe0: 5b 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 [binary decode h
6ff0: 65 78 20 22 22 36 62 63 31 62 65 65 32 32 65 34 ex ""6bc1bee22e4
7000: 30 39 66 39 36 65 39 33 64 37 65 31 31 37 33 39 09f96e93d7e11739
7010: 33 31 37 32 61 22 22 5d 22 2c 2c 2c 2c 2c 2c 2c 3172a""]",,,,,,,
7020: 2c 2c 0a 4e 49 53 54 38 30 30 2d 33 38 62 2d 41 ,,.NIST800-38b-A
7030: 45 53 2d 32 35 36 2c 6c 65 6e 3d 31 32 38 2c 2c ES-256,len=128,,
7040: 2c 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 63 69 ,::tls::cmac -ci
7050: 70 68 65 72 20 61 65 73 2d 32 35 36 2d 63 62 63 pher aes-256-cbc
7060: 20 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 -key $key -data
7070: 20 24 64 61 74 61 2c 2c 2c 32 38 61 37 30 32 33 $data,,,28a7023
7080: 66 34 35 32 65 38 66 38 32 62 64 34 62 66 32 38 f452e8f82bd4bf28
7090: 64 38 63 33 37 63 33 35 63 2c 2c 2c 0a 63 6f 6d d8c37c35c,,,.com
70a0: 6d 61 6e 64 2c 22 73 65 74 20 64 61 74 61 20 5b mand,"set data [
70b0: 62 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 binary decode he
70c0: 78 20 22 22 36 62 63 31 62 65 65 32 32 65 34 30 x ""6bc1bee22e40
70d0: 39 66 39 36 65 39 33 64 37 65 31 31 37 33 39 33 9f96e93d7e117393
70e0: 31 37 32 61 61 65 32 64 38 61 35 37 31 65 30 33 172aae2d8a571e03
70f0: 61 63 39 63 39 65 62 37 36 66 61 63 34 35 61 66 ac9c9eb76fac45af
7100: 38 65 35 31 33 30 63 38 31 63 34 36 61 33 35 63 8e5130c81c46a35c
7110: 65 34 31 31 22 22 5d 22 2c 2c 2c 2c 2c 2c 2c 2c e411""]",,,,,,,,
7120: 2c 0a 4e 49 53 54 38 30 30 2d 33 38 62 2d 41 45 ,.NIST800-38b-AE
7130: 53 2d 32 35 36 2c 6c 65 6e 3d 33 32 30 2c 2c 2c S-256,len=320,,,
7140: 3a 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 63 69 70 ::tls::cmac -cip
7150: 68 65 72 20 61 65 73 2d 32 35 36 2d 63 62 63 20 her aes-256-cbc
7160: 2d 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 20 -key $key -data
7170: 24 64 61 74 61 2c 2c 2c 61 61 66 33 64 38 66 31 $data,,,aaf3d8f1
7180: 64 65 35 36 34 30 63 32 33 32 66 35 62 31 36 39 de5640c232f5b169
7190: 62 39 63 39 31 31 65 36 2c 2c 2c 0a 63 6f 6d 6d b9c911e6,,,.comm
71a0: 61 6e 64 2c 22 73 65 74 20 64 61 74 61 20 5b 62 and,"set data [b
71b0: 69 6e 61 72 79 20 64 65 63 6f 64 65 20 68 65 78 inary decode hex
71c0: 20 22 22 36 62 63 31 62 65 65 32 32 65 34 30 39 ""6bc1bee22e409
71d0: 66 39 36 65 39 33 64 37 65 31 31 37 33 39 33 31 f96e93d7e1173931
71e0: 37 32 61 61 65 32 64 38 61 35 37 31 65 30 33 61 72aae2d8a571e03a
71f0: 63 39 63 39 65 62 37 36 66 61 63 34 35 61 66 38 c9c9eb76fac45af8
7200: 65 35 31 33 30 63 38 31 63 34 36 61 33 35 63 65 e5130c81c46a35ce
7210: 34 31 31 65 35 66 62 63 31 31 39 31 61 30 61 35 411e5fbc1191a0a5
7220: 32 65 66 66 36 39 66 32 34 34 35 64 66 34 66 39 2eff69f2445df4f9
7230: 62 31 37 61 64 32 62 34 31 37 62 65 36 36 63 33 b17ad2b417be66c3
7240: 37 31 30 22 22 5d 22 2c 2c 2c 2c 2c 2c 2c 2c 2c 710""]",,,,,,,,,
7250: 0a 4e 49 53 54 38 30 30 2d 33 38 62 2d 41 45 53 .NIST800-38b-AES
7260: 2d 32 35 36 2c 6c 65 6e 3d 35 31 32 2c 2c 2c 3a -256,len=512,,,:
7270: 3a 74 6c 73 3a 3a 63 6d 61 63 20 2d 63 69 70 68 :tls::cmac -ciph
7280: 65 72 20 61 65 73 2d 32 35 36 2d 63 62 63 20 2d er aes-256-cbc -
7290: 6b 65 79 20 24 6b 65 79 20 2d 64 61 74 61 20 24 key $key -data $
72a0: 64 61 74 61 2c 2c 2c 65 31 39 39 32 31 39 30 35 data,,,e19921905
72b0: 34 39 66 36 65 64 35 36 39 36 61 32 63 30 35 36 49f6ed5696a2c056
72c0: 63 33 31 35 34 31 30 2c 2c 2c 0a 2c 2c 2c 2c 2c c315410,,,.,,,,,
72d0: 2c 2c 2c 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 23 20 ,,,,,.command,#
72e0: 43 6c 65 61 6e 75 70 2c 2c 2c 2c 2c 2c 2c 2c 2c Cleanup,,,,,,,,,
72f0: 0a 63 6f 6d 6d 61 6e 64 2c 3a 3a 74 63 6c 74 65 .command,::tclte
7300: 73 74 3a 3a 72 65 6d 6f 76 65 46 69 6c 65 20 24 st::removeFile $
7310: 74 65 73 74 5f 66 69 6c 65 2c 2c 2c 2c 2c 2c 2c test_file,,,,,,,
7320: 2c 2c 0a 63 6f 6d 6d 61 6e 64 2c 3a 3a 74 63 6c ,,.command,::tcl
7330: 74 65 73 74 3a 3a 72 65 6d 6f 76 65 46 69 6c 65 test::removeFile
7340: 20 24 74 65 73 74 5f 61 6c 74 5f 66 69 6c 65 2c $test_alt_file,
7350: 2c 2c 2c 2c 2c 2c 2c 2c 0a ,,,,,,,,.