OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <script src="../resources/js-test.js"></script> | 4 <script src="../resources/js-test.js"></script> |
5 <script src="resources/common.js"></script> | 5 <script src="resources/common.js"></script> |
6 </head> | 6 </head> |
7 <body> | 7 <body> |
8 <p id="description"></p> | 8 <p id="description"></p> |
9 <div id="console"></div> | 9 <div id="console"></div> |
10 | 10 |
11 <script> | 11 <script> |
12 description("Tests cypto.subtle.digest."); | 12 description("Tests cypto.subtle.digest."); |
13 | 13 |
14 jsTestIsAsync = true; | 14 jsTestIsAsync = true; |
15 | 15 |
16 // These SHA-* test vectors were taking from: | 16 // These SHA-* test vectors were taking from: |
17 // http://csrc.nist.gov/groups/STM/cavp/documents/shs/shabytetestvectors.zip | 17 // http://csrc.nist.gov/groups/STM/cavp/documents/shs/shabytetestvectors.zip |
18 // | 18 // |
19 // This is not intended to be an exhaustive test, but rather give basic | 19 // This is not intended to be an exhaustive test, but rather give basic |
20 // confidence that things work. | 20 // confidence that things work. |
21 // | 21 // |
22 // Both inputs and outputs are written as a hex-encoded string. | 22 // Both inputs and outputs are written as a hex-encoded string. |
23 kDigestTestVectors = [ | 23 kDigestTestVectors = [ |
24 { | 24 { |
25 algorithm: "SHA-1", | 25 algorithm: "SHA-1", |
26 input: "", | 26 input: "", |
27 output: "da39a3ee5e6b4b0d3255bfef95601890afd80709" | 27 output: "da39a3ee5e6b4b0d3255bfef95601890afd80709" |
28 }, | 28 }, |
29 { | 29 { |
30 algorithm: "SHA-224", | |
31 input: "", | |
32 output: "d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42f" | |
33 }, | |
34 { | |
35 algorithm: "SHA-256", | 30 algorithm: "SHA-256", |
36 input: "", | 31 input: "", |
37 output: "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" | 32 output: "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" |
38 }, | 33 }, |
39 { | 34 { |
40 algorithm: "SHA-384", | 35 algorithm: "SHA-384", |
41 input: "", | 36 input: "", |
42 output: "38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274
edebfe76f65fbd51ad2f14898b95b" | 37 output: "38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274
edebfe76f65fbd51ad2f14898b95b" |
43 }, | 38 }, |
44 { | 39 { |
45 algorithm: "SHA-512", | 40 algorithm: "SHA-512", |
46 input: "", | 41 input: "", |
47 output: "cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d
0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" | 42 output: "cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d
0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" |
48 }, | 43 }, |
49 { | 44 { |
50 algorithm: "SHA-1", | 45 algorithm: "SHA-1", |
51 input: "00", | 46 input: "00", |
52 output: "5ba93c9db0cff93f52b521d7420e43f6eda2784f" | 47 output: "5ba93c9db0cff93f52b521d7420e43f6eda2784f" |
53 }, | 48 }, |
54 { | 49 { |
55 algorithm: "SHA-224", | |
56 input: "00", | |
57 output: "fff9292b4201617bdc4d3053fce02734166a683d7d858a7f5f59b073" | |
58 }, | |
59 { | |
60 algorithm: "SHA-256", | 50 algorithm: "SHA-256", |
61 input: "00", | 51 input: "00", |
62 output: "6e340b9cffb37a989ca544e6bb780a2c78901d3fb33738768511a30617afa01d" | 52 output: "6e340b9cffb37a989ca544e6bb780a2c78901d3fb33738768511a30617afa01d" |
63 }, | 53 }, |
64 { | 54 { |
65 algorithm: "SHA-384", | 55 algorithm: "SHA-384", |
66 input: "00", | 56 input: "00", |
67 output: "bec021b4f368e3069134e012c2b4307083d3a9bdd206e24e5f0d86e13d663665593
3ec2b413465966817a9c208a11717" | 57 output: "bec021b4f368e3069134e012c2b4307083d3a9bdd206e24e5f0d86e13d663665593
3ec2b413465966817a9c208a11717" |
68 }, | 58 }, |
69 { | 59 { |
70 algorithm: "SHA-512", | 60 algorithm: "SHA-512", |
71 input: "00", | 61 input: "00", |
72 output: "b8244d028981d693af7b456af8efa4cad63d282e19ff14942c246e50d9351d22704
a802a71c3580b6370de4ceb293c324a8423342557d4e5c38438f0e36910ee" | 62 output: "b8244d028981d693af7b456af8efa4cad63d282e19ff14942c246e50d9351d22704
a802a71c3580b6370de4ceb293c324a8423342557d4e5c38438f0e36910ee" |
73 }, | 63 }, |
74 { | 64 { |
75 algorithm: "SHA-1", | 65 algorithm: "SHA-1", |
76 input: "000102030405", | 66 input: "000102030405", |
77 output: "868460d98d09d8bbb93d7b6cdd15cc7fbec676b9" | 67 output: "868460d98d09d8bbb93d7b6cdd15cc7fbec676b9" |
78 }, | 68 }, |
79 { | 69 { |
80 algorithm: "SHA-224", | |
81 input: "000102030405", | |
82 output: "7d92e7f1cad1818ed1d13ab41f04ebabfe1fef6bb4cbeebac34c29bc" | |
83 }, | |
84 { | |
85 algorithm: "SHA-256", | 70 algorithm: "SHA-256", |
86 input: "000102030405", | 71 input: "000102030405", |
87 output: "17e88db187afd62c16e5debf3e6527cd006bc012bc90b51a810cd80c2d511f43" | 72 output: "17e88db187afd62c16e5debf3e6527cd006bc012bc90b51a810cd80c2d511f43" |
88 }, | 73 }, |
89 { | 74 { |
90 algorithm: "SHA-384", | 75 algorithm: "SHA-384", |
91 input: "000102030405", | 76 input: "000102030405", |
92 output: "79f4738706fce9650ac60266675c3cd07298b09923850d525604d040e6e448adc7d
c22780d7e1b95bfeaa86a678e4552" | 77 output: "79f4738706fce9650ac60266675c3cd07298b09923850d525604d040e6e448adc7d
c22780d7e1b95bfeaa86a678e4552" |
93 }, | 78 }, |
94 { | 79 { |
(...skipping 26 matching lines...) Expand all Loading... |
121 shouldRejectPromiseWithNull("crypto.subtle.digest({name: 'sha'}, data)"); | 106 shouldRejectPromiseWithNull("crypto.subtle.digest({name: 'sha'}, data)"); |
122 shouldThrow("crypto.subtle.digest(null, data)"); | 107 shouldThrow("crypto.subtle.digest(null, data)"); |
123 shouldRejectPromiseWithNull("crypto.subtle.digest({}, data)"); | 108 shouldRejectPromiseWithNull("crypto.subtle.digest({}, data)"); |
124 | 109 |
125 completeTestWhenAllTasksDone(); | 110 completeTestWhenAllTasksDone(); |
126 | 111 |
127 </script> | 112 </script> |
128 | 113 |
129 </body> | 114 </body> |
130 </html> | 115 </html> |
OLD | NEW |