@@ -141,34 +141,42 @@ public void testVectors()
141141 // System.out.println("testing successful!");
142142 }
143143 }
144-
145- public void testFalconRandom ()
146- {
147- byte [] msg = Strings .toByteArray ("Hello World!" );
148- FalconKeyPairGenerator keyGen = new FalconKeyPairGenerator ();
149144
145+ public void testRandom ()
146+ throws Exception
147+ {
150148 SecureRandom random = new SecureRandom ();
149+ byte [] msg = Strings .toByteArray ("Hello World!" );
151150
151+ FalconKeyPairGenerator keyGen = new FalconKeyPairGenerator ();
152152 keyGen .init (new FalconKeyGenerationParameters (random , FalconParameters .falcon_512 ));
153153
154- for (int i = 0 ; i != 100 ; i ++ )
154+ for (int i = 0 ; i < 10 ; ++ i )
155155 {
156156 AsymmetricCipherKeyPair keyPair = keyGen .generateKeyPair ();
157157
158- // sign
159- FalconSigner signer = new FalconSigner ();
160- FalconPrivateKeyParameters skparam = (FalconPrivateKeyParameters )keyPair .getPrivate ();
161- ParametersWithRandom skwrand = new ParametersWithRandom (skparam , random );
162- signer .init (true , skwrand );
163-
164- byte [] sigGenerated = signer .generateSignature (msg );
158+ FalconPrivateKeyParameters privParams = (FalconPrivateKeyParameters )keyPair .getPrivate ();
159+ FalconPublicKeyParameters pubParams = (FalconPublicKeyParameters )keyPair .getPublic ();
165160
166- // verify
167- FalconSigner verifier = new FalconSigner ();
168- FalconPublicKeyParameters pkparam = (FalconPublicKeyParameters )keyPair .getPublic ();
169- verifier .init (false , pkparam );
161+ privParams = (FalconPrivateKeyParameters )PrivateKeyFactory .createKey (
162+ PrivateKeyInfoFactory .createPrivateKeyInfo (privParams ));
163+ pubParams = (FalconPublicKeyParameters )PublicKeyFactory .createKey (
164+ SubjectPublicKeyInfoFactory .createSubjectPublicKeyInfo (pubParams ));
165+
166+ for (int j = 0 ; j < 10 ; ++j )
167+ {
168+ // sign
169+ FalconSigner signer = new FalconSigner ();
170+ signer .init (true , new ParametersWithRandom (privParams , random ));
171+ byte [] signature = signer .generateSignature (msg );
172+
173+ // verify
174+ FalconSigner verifier = new FalconSigner ();
175+ verifier .init (false , pubParams );
176+ boolean verified = verifier .verifySignature (msg , signature );
170177
171- assertTrue ("count = " + i , verifier .verifySignature (msg , sigGenerated ));
178+ assertTrue ("count = " + i , verified );
179+ }
172180 }
173181 }
174182}
0 commit comments