Hex Artifact Content

Artifact f781b822470340647cce2d562f537ce58860a59edc241b281a68b3ed90074897:


0000: 23 20 53 48 41 31 0a 23 20 46 72 6f 6d 20 68 74  # SHA1.# From ht
0010: 74 70 73 3a 2f 2f 63 73 72 63 2e 6e 69 73 74 2e  tps://csrc.nist.
0020: 67 6f 76 2f 70 72 6f 6a 65 63 74 73 2f 63 72 79  gov/projects/cry
0030: 70 74 6f 67 72 61 70 68 69 63 2d 73 74 61 6e 64  ptographic-stand
0040: 61 72 64 73 2d 61 6e 64 2d 67 75 69 64 65 6c 69  ards-and-guideli
0050: 6e 65 73 2f 65 78 61 6d 70 6c 65 2d 76 61 6c 75  nes/example-valu
0060: 65 73 0a 23 20 61 6e 64 20 52 46 43 20 36 32 33  es.# and RFC 623
0070: 34 20 53 48 41 20 61 6e 64 20 53 48 41 2d 62 61  4 SHA and SHA-ba
0080: 73 65 64 20 48 4d 41 43 20 61 6e 64 20 48 4b 44  sed HMAC and HKD
0090: 46 0a 0a 5b 4c 20 3d 20 32 30 5d 0a 0a 4c 65 6e  F..[L = 20]..Len
00a0: 20 3d 20 30 0a 4d 73 67 20 3d 20 22 22 0a 4d 44   = 0.Msg = "".MD
00b0: 20 3d 20 64 61 33 39 61 33 65 65 35 65 36 62 34   = da39a3ee5e6b4
00c0: 62 30 64 33 32 35 35 62 66 65 66 39 35 36 30 31  b0d3255bfef95601
00d0: 38 39 30 61 66 64 38 30 37 30 39 0a 0a 4c 65 6e  890afd80709..Len
00e0: 20 3d 20 33 0a 4d 73 67 20 3d 20 22 61 62 63 22   = 3.Msg = "abc"
00f0: 0a 4d 44 20 3d 20 61 39 39 39 33 65 33 36 34 37  .MD = a9993e3647
0100: 30 36 38 31 36 61 62 61 33 65 32 35 37 31 37 38  06816aba3e257178
0110: 35 30 63 32 36 63 39 63 64 30 64 38 39 64 0a 0a  50c26c9cd0d89d..
0120: 4c 65 6e 20 3d 20 35 36 0a 4d 73 67 20 3d 20 22  Len = 56.Msg = "
0130: 61 62 63 64 62 63 64 65 63 64 65 66 64 65 66 67  abcdbcdecdefdefg
0140: 65 66 67 68 66 67 68 69 67 68 69 6a 68 69 6a 6b  efghfghighijhijk
0150: 69 6a 6b 6c 6a 6b 6c 6d 6b 6c 6d 6e 6c 6d 6e 6f  ijkljklmklmnlmno
0160: 6d 6e 6f 70 6e 6f 70 71 22 0a 4d 44 20 3d 20 38  mnopnopq".MD = 8
0170: 34 39 38 33 65 34 34 31 63 33 62 64 32 36 65 62  4983e441c3bd26eb
0180: 61 61 65 34 61 61 31 66 39 35 31 32 39 65 35 65  aae4aa1f95129e5e
0190: 35 34 36 37 30 66 31 0a 0a 4c 65 6e 20 3d 20 31  54670f1..Len = 1
01a0: 31 32 0a 4d 73 67 20 3d 20 22 61 62 63 64 65 66  12.Msg = "abcdef
01b0: 67 68 62 63 64 65 66 67 68 69 63 64 65 66 67 68  ghbcdefghicdefgh
01c0: 69 6a 64 65 66 67 68 69 6a 6b 65 66 67 68 69 6a  ijdefghijkefghij
01d0: 6b 6c 66 67 68 69 6a 6b 6c 6d 67 68 69 6a 6b 6c  klfghijklmghijkl
01e0: 6d 6e 68 69 6a 6b 6c 6d 6e 6f 69 6a 6b 6c 6d 6e  mnhijklmnoijklmn
01f0: 6f 70 6a 6b 6c 6d 6e 6f 70 71 6b 6c 6d 6e 6f 70  opjklmnopqklmnop
0200: 71 72 6c 6d 6e 6f 70 71 72 73 6d 6e 6f 70 71 72  qrlmnopqrsmnopqr
0210: 73 74 6e 6f 70 71 72 73 74 75 22 0a 4d 44 20 3d  stnopqrstu".MD =
0220: 20 61 34 39 62 32 34 34 36 61 30 32 63 36 34 35   a49b2446a02c645
0230: 62 66 34 31 39 66 39 39 35 62 36 37 30 39 31 32  bf419f995b670912
0240: 35 33 61 30 34 61 32 35 39 0a 0a 4c 65 6e 20 3d  53a04a259..Len =
0250: 20 31 30 30 30 30 30 30 0a 52 65 70 65 61 74 20   1000000.Repeat 
0260: 3d 20 31 30 30 30 30 30 30 0a 4d 73 67 20 3d 20  = 1000000.Msg = 
0270: 22 61 22 0a 4d 44 20 3d 20 33 34 61 61 39 37 33  "a".MD = 34aa973
0280: 63 64 34 63 34 64 61 61 34 66 36 31 65 65 62 32  cd4c4daa4f61eeb2
0290: 62 64 62 61 64 32 37 33 31 36 35 33 34 30 31 36  bdbad27316534016
02a0: 66 0a 0a 4c 65 6e 20 3d 20 31 30 37 33 37 34 31  f..Len = 1073741
02b0: 38 32 34 0a 52 65 70 65 61 74 20 3d 20 31 36 37  824.Repeat = 167
02c0: 37 37 32 31 36 0a 4d 73 67 20 3d 20 22 61 62 63  77216.Msg = "abc
02d0: 64 65 66 67 68 62 63 64 65 66 67 68 69 63 64 65  defghbcdefghicde
02e0: 66 67 68 69 6a 64 65 66 67 68 69 6a 6b 65 66 67  fghijdefghijkefg
02f0: 68 69 6a 6b 6c 66 67 68 69 6a 6b 6c 6d 67 68 69  hijklfghijklmghi
0300: 6a 6b 6c 6d 6e 68 69 6a 6b 6c 6d 6e 6f 22 0a 4d  jklmnhijklmno".M
0310: 44 20 3d 20 37 37 38 39 66 30 63 39 65 66 37 62  D = 7789f0c9ef7b
0320: 66 63 34 30 64 39 33 33 31 31 31 34 33 64 66 62  fc40d93311143dfb
0330: 65 36 39 65 32 30 31 37 66 35 39 32 0a 0a 4c 65  e69e2017f592..Le
0340: 6e 20 3d 20 34 33 0a 4d 73 67 20 3d 20 22 54 68  n = 43.Msg = "Th
0350: 65 20 71 75 69 63 6b 20 62 72 6f 77 6e 20 66 6f  e quick brown fo
0360: 78 20 6a 75 6d 70 73 20 6f 76 65 72 20 74 68 65  x jumps over the
0370: 20 6c 61 7a 79 20 64 6f 67 22 0a 4d 44 20 3d 20   lazy dog".MD = 
0380: 32 66 64 34 65 31 63 36 37 61 32 64 32 38 66 63  2fd4e1c67a2d28fc
0390: 65 64 38 34 39 65 65 31 62 62 37 36 65 37 33 39  ed849ee1bb76e739
03a0: 31 62 39 33 65 62 31 32 0a 0a 23 20 52 46 43 20  1b93eb12..# RFC 
03b0: 36 32 33 34 20 54 65 73 74 20 43 61 73 65 20 31  6234 Test Case 1
03c0: 0a 4c 65 6e 20 3d 20 33 0a 4d 73 67 20 3d 20 22  .Len = 3.Msg = "
03d0: 61 62 63 22 0a 4d 44 20 3d 20 61 39 39 39 33 65  abc".MD = a9993e
03e0: 33 36 34 37 30 36 38 31 36 61 62 61 33 65 32 35  364706816aba3e25
03f0: 37 31 37 38 35 30 63 32 36 63 39 63 64 30 64 38  717850c26c9cd0d8
0400: 39 64 0a 0a 23 20 52 46 43 20 36 32 33 34 20 54  9d..# RFC 6234 T
0410: 65 73 74 20 43 61 73 65 20 32 0a 4c 65 6e 20 3d  est Case 2.Len =
0420: 20 35 36 0a 4d 73 67 20 3d 20 22 61 62 63 64 62   56.Msg = "abcdb
0430: 63 64 65 63 64 65 66 64 65 66 67 65 66 67 68 66  cdecdefdefgefghf
0440: 67 68 69 67 68 69 6a 68 69 6a 6b 69 6a 6b 6c 6a  ghighijhijkijklj
0450: 6b 6c 6d 6b 6c 6d 6e 6c 6d 6e 6f 6d 6e 6f 70 6e  klmklmnlmnomnopn
0460: 6f 70 71 22 0a 4d 44 20 3d 20 38 34 39 38 33 65  opq".MD = 84983e
0470: 34 34 31 63 33 62 64 32 36 65 62 61 61 65 34 61  441c3bd26ebaae4a
0480: 61 31 66 39 35 31 32 39 65 35 65 35 34 36 37 30  a1f95129e5e54670
0490: 66 31 0a 0a 23 20 52 46 43 20 36 32 33 34 20 54  f1..# RFC 6234 T
04a0: 65 73 74 20 43 61 73 65 20 33 0a 4c 65 6e 20 3d  est Case 3.Len =
04b0: 20 31 30 30 30 30 30 30 0a 52 65 70 65 61 74 20   1000000.Repeat 
04c0: 3d 20 31 30 30 30 30 30 30 0a 4d 73 67 20 3d 20  = 1000000.Msg = 
04d0: 22 61 22 0a 4d 44 20 3d 20 33 34 61 61 39 37 33  "a".MD = 34aa973
04e0: 63 64 34 63 34 64 61 61 34 66 36 31 65 65 62 32  cd4c4daa4f61eeb2
04f0: 62 64 62 61 64 32 37 33 31 36 35 33 34 30 31 36  bdbad27316534016
0500: 66 0a 0a 23 20 52 46 43 20 36 32 33 34 20 54 65  f..# RFC 6234 Te
0510: 73 74 20 43 61 73 65 20 34 0a 4c 65 6e 20 3d 20  st Case 4.Len = 
0520: 36 34 30 0a 52 65 70 65 61 74 20 3d 20 31 30 0a  640.Repeat = 10.
0530: 4d 73 67 20 3d 20 22 30 31 32 33 34 35 36 37 30  Msg = "012345670
0540: 31 32 33 34 35 36 37 30 31 32 33 34 35 36 37 30  1234567012345670
0550: 31 32 33 34 35 36 37 30 31 32 33 34 35 36 37 30  1234567012345670
0560: 31 32 33 34 35 36 37 30 31 32 33 34 35 36 37 30  1234567012345670
0570: 31 32 33 34 35 36 37 22 0a 4d 44 20 3d 20 64 65  1234567".MD = de
0580: 61 33 35 36 61 32 63 64 64 64 39 30 63 37 61 37  a356a2cddd90c7a7
0590: 65 63 65 64 63 35 65 62 62 35 36 33 39 33 34 66  ecedc5ebb563934f
05a0: 34 36 30 34 35 32 0a 0a 23 20 52 46 43 20 36 32  460452..# RFC 62
05b0: 33 34 20 54 65 73 74 20 43 61 73 65 20 36 0a 4c  34 Test Case 6.L
05c0: 65 6e 20 3d 20 31 0a 4d 73 67 20 3d 20 35 65 0a  en = 1.Msg = 5e.
05d0: 4d 44 20 3d 20 35 65 36 66 38 30 61 33 34 61 39  MD = 5e6f80a34a9
05e0: 37 39 38 63 61 66 63 36 61 35 64 62 39 36 63 63  798cafc6a5db96cc
05f0: 35 37 62 61 34 63 34 64 62 35 39 63 32 0a 0a 23  57ba4c4db59c2..#
0600: 20 52 46 43 20 36 32 33 34 20 54 65 73 74 20 43   RFC 6234 Test C
0610: 61 73 65 20 38 0a 4c 65 6e 20 3d 20 31 36 0a 4d  ase 8.Len = 16.M
0620: 73 67 20 3d 20 39 61 37 64 66 64 66 31 65 63 65  sg = 9a7dfdf1ece
0630: 61 64 30 36 65 64 36 34 36 61 61 35 35 66 65 37  ad06ed646aa55fe7
0640: 35 37 31 34 36 0a 4d 44 20 3d 20 38 32 61 62 66  57146.MD = 82abf
0650: 66 36 36 30 35 64 62 65 31 63 31 37 64 65 66 31  f6605dbe1c17def1
0660: 32 61 33 39 34 66 61 32 32 61 38 32 62 35 34 34  2a394fa22a82b544
0670: 61 33 35 0a 0a 23 20 52 46 43 20 36 32 33 34 20  a35..# RFC 6234 
0680: 54 65 73 74 20 43 61 73 65 20 31 30 0a 4c 65 6e  Test Case 10.Len
0690: 20 3d 20 31 36 33 0a 4d 73 67 20 3d 20 66 37 38   = 163.Msg = f78
06a0: 66 39 32 31 34 31 62 63 64 31 37 30 61 65 38 39  f92141bcd170ae89
06b0: 62 34 66 62 61 31 35 61 31 64 35 39 66 33 66 64  b4fba15a1d59f3fd
06c0: 38 34 64 32 32 33 63 39 32 35 31 62 64 61 63 62  84d223c9251bdacb
06d0: 62 61 65 36 31 64 30 35 65 64 31 31 35 61 30 36  bae61d05ed115a06
06e0: 61 37 63 65 31 31 37 62 37 62 65 65 61 64 32 34  a7ce117b7beead24
06f0: 34 32 31 64 65 64 39 63 33 32 35 39 32 62 64 35  421ded9c32592bd5
0700: 37 65 64 65 61 65 33 39 63 33 39 66 61 31 66 65  7edeae39c39fa1fe
0710: 38 39 34 36 61 38 34 64 30 63 66 31 66 37 62 65  8946a84d0cf1f7be
0720: 65 61 64 31 37 31 33 65 32 65 30 39 35 39 38 39  ead1713e2e095989
0730: 37 33 34 37 66 36 37 63 38 30 62 30 34 30 30 63  7347f67c80b0400c
0740: 32 30 39 38 31 35 64 36 62 31 30 61 36 38 33 38  209815d6b10a6838
0750: 33 36 66 64 35 35 36 32 61 35 36 63 61 62 31 61  36fd5562a56cab1a
0760: 32 38 65 38 31 62 36 35 37 36 36 35 34 36 33 31  28e81b6576654631
0770: 63 66 31 36 35 36 36 62 38 36 65 33 62 33 33 61  cf16566b86e3b33a
0780: 31 30 38 62 30 35 33 30 37 63 30 30 61 66 66 31  108b05307c00aff1
0790: 34 61 37 36 38 65 64 37 33 35 30 36 30 36 61 30  4a768ed7350606a0
07a0: 66 38 35 65 36 61 39 31 64 33 39 36 66 35 62 35  f85e6a91d396f5b5
07b0: 63 62 65 35 37 37 66 39 62 33 38 38 30 37 63 37  cbe577f9b38807c7
07c0: 64 35 32 33 64 36 64 37 39 32 66 36 65 62 63 32  d523d6d792f6ebc2
07d0: 34 61 34 65 63 66 32 62 33 61 34 32 37 63 64 62  4a4ecf2b3a427cdb
07e0: 62 66 62 0a 4d 44 20 3d 20 63 62 30 30 38 32 63  bfb.MD = cb0082c
07f0: 38 66 31 39 37 64 32 36 30 39 39 31 62 61 36 61  8f197d260991ba6a
0800: 34 36 30 65 37 36 65 32 30 32 62 61 64 32 37 62  460e76e202bad27b
0810: 33 0a                                            3.