1111 */
1212package net .i2p .crypto .eddsa ;
1313
14- import static org .hamcrest .Matchers .*;
15- import static org .junit .Assert .*;
14+ import static org .hamcrest .Matchers .equalTo ;
15+ import static org .hamcrest .Matchers .is ;
16+ import static org .junit .Assert .assertThat ;
1617
1718import java .nio .charset .Charset ;
1819import java .security .MessageDigest ;
@@ -45,9 +46,9 @@ public class EdDSAEngineTest {
4546
4647 @ Test
4748 public void testSign () throws Exception {
49+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
4850 //Signature sgr = Signature.getInstance("EdDSA", "I2P");
49- Signature sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
50- EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName ("ed25519-sha-512" );
51+ Signature sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
5152
5253 for (Ed25519TestVectors .TestTuple testCase : Ed25519TestVectors .testCases ) {
5354 EdDSAPrivateKeySpec privKey = new EdDSAPrivateKeySpec (testCase .seed , spec );
@@ -63,10 +64,9 @@ public void testSign() throws Exception {
6364
6465 @ Test
6566 public void testVerify () throws Exception {
67+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
6668 //Signature sgr = Signature.getInstance("EdDSA", "I2P");
67- Signature sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
68- EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName ("ed25519-sha-512" );
69-
69+ Signature sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
7070 for (Ed25519TestVectors .TestTuple testCase : Ed25519TestVectors .testCases ) {
7171 EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (testCase .pk , spec );
7272 PublicKey vKey = new EdDSAPublicKey (pubKey );
@@ -84,11 +84,10 @@ public void testVerify() throws Exception {
8484 */
8585 @ Test
8686 public void testVerifyWrongSigLength () throws Exception {
87+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
8788 //Signature sgr = Signature.getInstance("EdDSA", "I2P");
88- Signature sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
89-
90- EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (TEST_PK ,
91- EdDSANamedCurveTable .getByName ("ed25519-sha-512" ));
89+ Signature sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
90+ EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (TEST_PK , spec );
9291 PublicKey vKey = new EdDSAPublicKey (pubKey );
9392 sgr .initVerify (vKey );
9493
@@ -101,9 +100,8 @@ public void testVerifyWrongSigLength() throws Exception {
101100
102101 @ Test
103102 public void testSignResetsForReuse () throws Exception {
104- Signature sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
105- EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName ("ed25519-sha-512" );
106-
103+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
104+ Signature sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
107105 EdDSAPrivateKeySpec privKey = new EdDSAPrivateKeySpec (TEST_SEED , spec );
108106 PrivateKey sKey = new EdDSAPrivateKey (privKey );
109107 sgr .initSign (sKey );
@@ -119,10 +117,9 @@ public void testSignResetsForReuse() throws Exception {
119117
120118 @ Test
121119 public void testVerifyResetsForReuse () throws Exception {
122- Signature sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
123-
124- EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (TEST_PK ,
125- EdDSANamedCurveTable .getByName ("ed25519-sha-512" ));
120+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
121+ Signature sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
122+ EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (TEST_PK , spec );
126123 PublicKey vKey = new EdDSAPublicKey (pubKey );
127124 sgr .initVerify (vKey );
128125
@@ -137,9 +134,8 @@ public void testVerifyResetsForReuse() throws Exception {
137134
138135 @ Test
139136 public void testSignOneShotMode () throws Exception {
140- Signature sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
141- EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName ("ed25519-sha-512" );
142-
137+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
138+ Signature sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
143139 EdDSAPrivateKeySpec privKey = new EdDSAPrivateKeySpec (TEST_SEED , spec );
144140 PrivateKey sKey = new EdDSAPrivateKey (privKey );
145141 sgr .initSign (sKey );
@@ -152,10 +148,9 @@ public void testSignOneShotMode() throws Exception {
152148
153149 @ Test
154150 public void testVerifyOneShotMode () throws Exception {
155- Signature sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
156-
157- EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (TEST_PK ,
158- EdDSANamedCurveTable .getByName ("ed25519-sha-512" ));
151+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
152+ Signature sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
153+ EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (TEST_PK , spec );
159154 PublicKey vKey = new EdDSAPublicKey (pubKey );
160155 sgr .initVerify (vKey );
161156 sgr .setParameter (EdDSAEngine .ONE_SHOT_MODE );
@@ -167,9 +162,8 @@ public void testVerifyOneShotMode() throws Exception {
167162
168163 @ Test
169164 public void testSignOneShotModeMultipleUpdates () throws Exception {
170- Signature sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
171- EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName ("ed25519-sha-512" );
172-
165+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
166+ Signature sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
173167 EdDSAPrivateKeySpec privKey = new EdDSAPrivateKeySpec (TEST_SEED , spec );
174168 PrivateKey sKey = new EdDSAPrivateKey (privKey );
175169 sgr .initSign (sKey );
@@ -184,10 +178,9 @@ public void testSignOneShotModeMultipleUpdates() throws Exception {
184178
185179 @ Test
186180 public void testVerifyOneShotModeMultipleUpdates () throws Exception {
187- Signature sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
188-
189- EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (TEST_PK ,
190- EdDSANamedCurveTable .getByName ("ed25519-sha-512" ));
181+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
182+ EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (TEST_PK , spec );
183+ Signature sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
191184 PublicKey vKey = new EdDSAPublicKey (pubKey );
192185 sgr .initVerify (vKey );
193186 sgr .setParameter (EdDSAEngine .ONE_SHOT_MODE );
@@ -201,10 +194,9 @@ public void testVerifyOneShotModeMultipleUpdates() throws Exception {
201194
202195 @ Test
203196 public void testSignOneShot () throws Exception {
204- EdDSAEngine sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
205- EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName ("ed25519-sha-512" );
206-
197+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
207198 EdDSAPrivateKeySpec privKey = new EdDSAPrivateKeySpec (TEST_SEED , spec );
199+ EdDSAEngine sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
208200 PrivateKey sKey = new EdDSAPrivateKey (privKey );
209201 sgr .initSign (sKey );
210202
@@ -213,10 +205,9 @@ public void testSignOneShot() throws Exception {
213205
214206 @ Test
215207 public void testVerifyOneShot () throws Exception {
216- EdDSAEngine sgr = new EdDSAEngine (MessageDigest .getInstance ("SHA-512" ));
217-
218- EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (TEST_PK ,
219- EdDSANamedCurveTable .getByName ("ed25519-sha-512" ));
208+ EdDSAParameterSpec spec = EdDSANamedCurveTable .getByName (EdDSANamedCurveTable .CURVE_ED25519_SHA512 );
209+ EdDSAPublicKeySpec pubKey = new EdDSAPublicKeySpec (TEST_PK , spec );
210+ EdDSAEngine sgr = new EdDSAEngine (MessageDigest .getInstance (spec .getHashAlgorithm ()));
220211 PublicKey vKey = new EdDSAPublicKey (pubKey );
221212 sgr .initVerify (vKey );
222213
0 commit comments