1
1
package src .test .java .com .crypto .hash ;
2
2
3
- import java .lang .StringBuilder ;
4
- import org .junit .Test ;
3
+ import org .junit .Assert ;
5
4
import org .junit .BeforeClass ;
5
+ import org .junit .Test ;
6
6
import src .main .java .com .crypto .hash .Sha2 ;
7
7
8
- import static junit .framework .Assert .assertEquals ;
9
-
10
8
11
9
public class Sha2Test {
12
- /*
10
+
11
+ /**
13
12
* The following test vectors for the SHA-2 family are taken from:
14
13
* https://www.di-mgt.com.au/sha_testvectors.html
15
14
*/
16
-
17
15
private static byte [][] vector ;
18
16
19
17
@ BeforeClass
20
18
public static void setUpClass () {
21
19
System .out .println ("@BeforeClass setUpClass" );
22
20
23
21
StringBuilder builder = new StringBuilder ();
24
- vector = new byte [6 ][];
22
+ vector = new byte [5 ][];
25
23
26
24
vector [0 ] = "abc" .getBytes ();
27
25
vector [1 ] = "" .getBytes ();
@@ -31,161 +29,135 @@ public static void setUpClass() {
31
29
builder .append ("a" );
32
30
}
33
31
vector [4 ] = builder .toString ().getBytes ();
34
- builder = new StringBuilder ();
35
- for (int i = 0 ; i < 16_777_216 ; i ++) {
36
- builder .append ("abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmno" );
37
- }
38
- vector [5 ] = builder .toString ().getBytes ();
32
+
39
33
}
40
34
41
35
@ Test
42
36
public void TestSha224Vector1 () {
43
37
String digest = "23097d223405d8228642a477bda255b32aadbce4bda0b3f7e36c9da7" ;
44
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [0 ]));
38
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [0 ]));
45
39
}
46
40
47
41
@ Test
48
42
public void TestSha224Vector2 () {
49
43
String digest = "d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42f" ;
50
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [1 ]));
44
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [1 ]));
51
45
}
52
46
53
47
@ Test
54
48
public void TestSha224Vector3 () {
55
49
String digest = "75388b16512776cc5dba5da1fd890150b0c6455cb4f58b1952522525" ;
56
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [2 ]));
50
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [2 ]));
57
51
}
58
52
59
53
@ Test
60
54
public void TestSha224Vector4 () {
61
55
String digest = "c97ca9a559850ce97a04a96def6d99a9e0e0e2ab14e6b8df265fc0b3" ;
62
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [3 ]));
56
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [3 ]));
63
57
}
64
58
65
59
@ Test
66
60
public void TestSha224Vector5 () {
67
61
String digest = "20794655980c91d8bbb4c1ea97618a4bf03f42581948b2ee4ee7ad67" ;
68
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [4 ]));
62
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [4 ]));
69
63
}
70
64
71
- @ Test
72
- public void TestSha224Vector6 () {
73
- String digest = "b5989713ca4fe47a009f8621980b34e6d63ed3063b2a0a2c867d8a85" ;
74
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA224 (vector [5 ]));
75
- }
76
65
77
66
@ Test
78
67
public void TestSha256Vector1 () {
79
68
String digest = "ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad" ;
80
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [0 ]));
69
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [0 ]));
81
70
}
82
71
83
72
@ Test
84
73
public void TestSha256Vector2 () {
85
74
String digest = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" ;
86
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [1 ]));
75
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [1 ]));
87
76
}
88
77
89
78
@ Test
90
79
public void TestSha256Vector3 () {
91
80
String digest = "248d6a61d20638b8e5c026930c3e6039a33ce45964ff2167f6ecedd419db06c1" ;
92
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [2 ]));
81
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [2 ]));
93
82
}
94
83
95
84
@ Test
96
85
public void TestSha256Vector4 () {
97
86
String digest = "cf5b16a778af8380036ce59e7b0492370b249b11e8f07a51afac45037afee9d1" ;
98
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [3 ]));
87
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [3 ]));
99
88
}
100
89
101
90
@ Test
102
91
public void TestSha256Vector5 () {
103
92
String digest = "cdc76e5c9914fb9281a1c7e284d73e67f1809a48a497200e046d39ccc7112cd0" ;
104
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [4 ]));
105
- }
106
-
107
- @ Test
108
- public void TestSha256Vector6 () {
109
- String digest = "50e72a0e26442fe2552dc3938ac58658228c0cbfb1d2ca872ae435266fcd055e" ;
110
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [5 ]));
93
+ Assert .assertEquals ("message digests are not equal" , digest , Sha2 .SHA256 (vector [4 ]));
111
94
}
112
95
113
96
@ Test
114
97
public void TestSha384Vector1 () {
115
98
String digest = "cb00753f45a35e8bb5a03d699ac65007272c32ab0eded1631a8b605a43ff5bed8086072ba1e7cc2358baeca134c825a7" ;
116
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [0 ]));
99
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [0 ]));
117
100
}
118
101
119
102
@ Test
120
103
public void TestSha384Vector2 () {
121
104
String digest = "38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95b" ;
122
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [1 ]));
105
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [1 ]));
123
106
}
124
107
125
108
@ Test
126
109
public void TestSha384Vector3 () {
127
110
String digest = "3391fdddfc8dc7393707a65b1b4709397cf8b1d162af05abfe8f450de5f36bc6b0455a8520bc4e6f5fe95b1fe3c8452b" ;
128
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [2 ]));
111
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [2 ]));
129
112
}
130
113
131
114
@ Test
132
115
public void TestSha384Vector4 () {
133
116
String digest = "09330c33f71147e83d192fc782cd1b4753111b173b3b05d22fa08086e3b0f712fcc7c71a557e2db966c3e9fa91746039" ;
134
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [3 ]));
117
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [3 ]));
135
118
}
136
119
137
120
@ Test
138
121
public void TestSha384Vector5 () {
139
122
String digest = "9d0e1809716474cb086e834e310a4a1ced149e9c00f248527972cec5704c2a5b07b8b3dc38ecc4ebae97ddd87f3d8985" ;
140
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [4 ]));
123
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [4 ]));
141
124
}
142
125
143
- @ Test
144
- public void TestSha384Vector6 () {
145
- String digest = "5441235cc0235341ed806a64fb354742b5e5c02a3c5cb71b5f63fb793458d8fdae599c8cd8884943c04f11b31b89f023" ;
146
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA384 (vector [5 ]));
147
- }
148
126
149
127
@ Test
150
128
public void TestSha512Vector1 () {
151
129
String digest = "ddaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f" ;
152
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [0 ]));
130
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [0 ]));
153
131
}
154
132
155
133
@ Test
156
134
public void TestSha512Vector2 () {
157
135
String digest = "cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" ;
158
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [1 ]));
136
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [1 ]));
159
137
}
160
138
161
139
@ Test
162
140
public void TestSha512Vector3 () {
163
141
String digest = "204a8fc6dda82f0a0ced7beb8e08a41657c16ef468b228a8279be331a703c33596fd15c13b1b07f9aa1d3bea57789ca031ad85c7a71dd70354ec631238ca3445" ;
164
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [2 ]));
142
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [2 ]));
165
143
}
166
144
167
145
@ Test
168
146
public void TestSha512Vector4 () {
169
147
String digest = "8e959b75dae313da8cf4f72814fc143f8f7779c6eb9f7fa17299aeadb6889018501d289e4900f7e4331b99dec4b5433ac7d329eeb6dd26545e96e55b874be909" ;
170
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [3 ]));
148
+ Assert . assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [3 ]));
171
149
}
172
150
173
151
@ Test
174
152
public void TestSha512Vector5 () {
175
153
String digest = "e718483d0ce769644e2e42c7bc15b4638e1f98b13b2044285632a803afa973ebde0ff244877ea60a4cb0432ce577c31beb009c5c2c49aa2e4eadb217ad8cc09b" ;
176
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [4 ]));
177
- }
178
-
179
- @ Test
180
- public void TestSha512Vector6 () {
181
- String digest = "b47c933421ea2db149ad6e10fce6c7f93d0752380180ffd7f4629a712134831d77be6091b819ed352c2967a2e2d4fa5050723c9630691f1a05a7281dbe6c1086" ;
182
- assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [5 ]));
154
+ Assert .assertEquals ("message digests are not equal" , digest , Sha2 .SHA512 (vector [4 ]));
183
155
}
184
156
185
157
@ Test
186
158
public void TestInputByteArrayNotAltered () {
187
159
byte [] array = vector [2 ];
188
160
Sha2 .SHA224 (array );
189
- assertEquals ("user vector altered" , array , vector [2 ]);
161
+ Assert . assertEquals ("user vector altered" , array , vector [2 ]);
190
162
}
191
163
}
0 commit comments