OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 // Library tag to allow the test to run on Dartium. | 5 // Library tag to allow the test to run on Dartium. |
6 library hmac_md5_test; | 6 #library('hmac_md5_test'); |
7 | 7 |
8 import "dart:crypto"; | 8 #import("dart:crypto"); |
9 | 9 |
10 // Data from http://tools.ietf.org/html/rfc2202. | 10 // Data from http://tools.ietf.org/html/rfc2202. |
11 var hmac_md5_inputs = | 11 var hmac_md5_inputs = |
12 const [ | 12 const [ |
13 const [ 0x48, 0x69, 0x20, 0x54, 0x68, 0x65, 0x72, 0x65 ], | 13 const [ 0x48, 0x69, 0x20, 0x54, 0x68, 0x65, 0x72, 0x65 ], |
14 const [ 0x77, 0x68, 0x61, 0x74, 0x20, 0x64, 0x6f, 0x20, 0x79, 0x61, | 14 const [ 0x77, 0x68, 0x61, 0x74, 0x20, 0x64, 0x6f, 0x20, 0x79, 0x61, |
15 0x20, 0x77, 0x61, 0x6e, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, | 15 0x20, 0x77, 0x61, 0x6e, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, |
16 0x6e, 0x6f, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x3f ], | 16 0x6e, 0x6f, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x3f ], |
17 const [ 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, | 17 const [ 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, |
18 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, | 18 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
83 void testStandardVectors(inputs, keys, macs) { | 83 void testStandardVectors(inputs, keys, macs) { |
84 for (var i = 0; i < inputs.length; i++) { | 84 for (var i = 0; i < inputs.length; i++) { |
85 var d = new HMAC(new MD5(), keys[i]).update(inputs[i]).digest(); | 85 var d = new HMAC(new MD5(), keys[i]).update(inputs[i]).digest(); |
86 Expect.isTrue(CryptoUtils.bytesToHex(d).startsWith(macs[i]), '$i'); | 86 Expect.isTrue(CryptoUtils.bytesToHex(d).startsWith(macs[i]), '$i'); |
87 } | 87 } |
88 } | 88 } |
89 | 89 |
90 void main() { | 90 void main() { |
91 testStandardVectors(hmac_md5_inputs, hmac_md5_keys, hmac_md5_macs); | 91 testStandardVectors(hmac_md5_inputs, hmac_md5_keys, hmac_md5_macs); |
92 } | 92 } |
OLD | NEW |