void addPrivateFields(SimpleFieldSet fs) { // Let's not add it twice fs.removeSubset("ecdsa"); fs.put("ecdsa", ecdsaP256.asFieldSet(true)); fs.putSingle("ark.privURI", myARK.getInsertURI().toString(false, false)); fs.putSingle("clientNonce", Base64.encode(clientNonce)); }
System.out.println("Verify? : "+ecdsa.verify(sig, signedBytes)); SimpleFieldSet sfs = ecdsa.asFieldSet(true); System.out.println("\nSerialized to: "); System.out.println(sfs.toString());
SimpleFieldSet exportPublicCryptoFieldSet(boolean forSetup, boolean forAnonInitiator) { SimpleFieldSet fs = new SimpleFieldSet(true); int[] negTypes = packetMangler.supportedNegTypes(true); if(!forSetup) { // These are invariant. They cannot change on connection setup. They can safely be excluded. fs.put("ecdsa", ecdsaP256.asFieldSet(false)); fs.putSingle("identity", Base64.encode(myIdentity)); } if(!forAnonInitiator) { // Short-lived connections don't need ARK and don't need negTypes either. fs.put("auth.negTypes", negTypes); if(!forSetup) { fs.put("ark.number", myARKNumber); // Can be changed on setup fs.putSingle("ark.pubURI", myARK.getURI().toString(false, false)); // Can be changed on setup } } return fs; }
public void testSerializeUnserialize() throws FSParseException { SimpleFieldSet sfs = ecdsa.asFieldSet(true); ECDSA ecdsa2 = new ECDSA(sfs.getSubset(curveToTest.name()), curveToTest); assertEquals(ecdsa.getPublicKey(), ecdsa2.getPublicKey()); }
public void testAsFieldSet() throws FSParseException { SimpleFieldSet privSFS = ecdsa.asFieldSet(true); assertNotNull(privSFS.getSubset(curveToTest.name())); assertNotNull(privSFS.get(curveToTest.name()+".pub")); assertNotNull(privSFS.get(curveToTest.name()+".pri")); // Ensure we don't leak the privkey when we don't intend to SimpleFieldSet pubSFS = ecdsa.asFieldSet(false); assertNotNull(pubSFS.getSubset(curveToTest.name())); assertNotNull(pubSFS.get(curveToTest.name()+".pub")); assertNull(pubSFS.get(curveToTest.name()+".pri")); }