From d084f9350640ffdbe85790ad94036323fd4a293d Mon Sep 17 00:00:00 2001 From: zzz Date: Tue, 25 Jun 2019 13:21:22 +0000 Subject: [PATCH] test code --- .../i2p/crypto/eddsa/RedKeyPairGenerator.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/core/java/src/net/i2p/crypto/eddsa/RedKeyPairGenerator.java b/core/java/src/net/i2p/crypto/eddsa/RedKeyPairGenerator.java index de0e532af..f547d9fda 100644 --- a/core/java/src/net/i2p/crypto/eddsa/RedKeyPairGenerator.java +++ b/core/java/src/net/i2p/crypto/eddsa/RedKeyPairGenerator.java @@ -28,4 +28,29 @@ public final class RedKeyPairGenerator extends KeyPairGenerator { return new KeyPair(new EdDSAPublicKey(pubKey), new EdDSAPrivateKey(privKey)); } + +/**** + public static void main(String[] args) { + (new RedKeyPairGenerator()).test(); + } + + public void test() { + if (!initialized) + initialize(DEFAULT_KEYSIZE, RandomSource.getInstance()); + + // 64 bytes + byte[] seed = new byte[edParams.getCurve().getField().getb()/4]; + random.nextBytes(seed); + byte[] b = EdDSABlinding.reduce(seed); + b[0] &= 0xf0; + + for (int i = 0; i < 16; i++) { + EdDSAPrivateKeySpec privKey = new EdDSAPrivateKeySpec(b, null, edParams); + EdDSAPrivateKey pk = new EdDSAPrivateKey(privKey); + System.out.println("Privkey:\n" + net.i2p.util.HexDump.dump(b)); + System.out.println("Pubkey:\n" + net.i2p.util.HexDump.dump(pk.getAbyte())); + b[0]++; + } + } +****/ }