2005-03-23 jrandom
* New /configupdate.jsp page for controlling the update / notification process, as well as various minor related updates. Note that not all options are exposed yet, and the update detection code isn't in place in this commit - it currently says there is always an update available. * New EepGet component for reliable downloading, with a CLI exposed in java -cp lib/i2p.jar net.i2p.util.EepGet url * Added a default signing key to the TrustedUpdate component to be used for verifying updates. This signing key can be authenticated via gpg --verify i2p/core/java/src/net/i2p/crypto/TrustedUpdate.java * New public domain SHA1 implementation for the DSA code so that we can handle signing streams of arbitrary size without excess memory usage (thanks P.Verdy!) * Added some helpers to the TrustedUpdate to work off streams and to offer a minimal CLI: TrustedUpdate keygen pubKeyFile privKeyFile TrustedUpdate sign origFile signedFile privKeyFile TrustedUpdate verify signedFile
This commit is contained in:
@ -29,6 +29,7 @@ package net.i2p.crypto;
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import net.i2p.data.Signature;
|
||||
import net.i2p.data.SigningPrivateKey;
|
||||
import net.i2p.data.SigningPublicKey;
|
||||
@ -57,9 +58,13 @@ public class DSABench {
|
||||
long endkeys = System.currentTimeMillis();
|
||||
long startsign = System.currentTimeMillis();
|
||||
Signature s = DSAEngine.getInstance().sign(message, privkey);
|
||||
Signature s1 = DSAEngine.getInstance().sign(new ByteArrayInputStream(message), privkey);
|
||||
long endsignstartverify = System.currentTimeMillis();
|
||||
boolean v = DSAEngine.getInstance().verifySignature(s, message, pubkey);
|
||||
long endverify = System.currentTimeMillis();
|
||||
boolean v1 = DSAEngine.getInstance().verifySignature(s1, new ByteArrayInputStream(message), pubkey);
|
||||
boolean v2 = DSAEngine.getInstance().verifySignature(s1, message, pubkey);
|
||||
boolean v3 = DSAEngine.getInstance().verifySignature(s, new ByteArrayInputStream(message), pubkey);
|
||||
long endverify = System.currentTimeMillis();
|
||||
System.out.print(".");
|
||||
keygentime += endkeys - startkeys;
|
||||
signtime += endsignstartverify - startsign;
|
||||
@ -67,6 +72,8 @@ public class DSABench {
|
||||
if (!v) {
|
||||
throw new RuntimeException("Holy crap, did not verify");
|
||||
}
|
||||
if (!(v1 && v2 && v3))
|
||||
throw new RuntimeException("Stream did not verify");
|
||||
if ( (minKey == 0) && (minS == 0) && (minV == 0) ) {
|
||||
minKey = endkeys - startkeys;
|
||||
maxKey = endkeys - startkeys;
|
||||
|
Reference in New Issue
Block a user