mirror of
https://github.com/pgpainless/pgpainless.git
synced 2025-09-13 20:29:39 +02:00
Wip: Add more elliptic curves, support for {X,Ed}25519
This commit is contained in:
parent
00f01bd031
commit
4550425609
7 changed files with 144 additions and 0 deletions
|
@ -0,0 +1,35 @@
|
|||
package org.pgpainless.key.generation;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.security.InvalidAlgorithmParameterException;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
|
||||
import org.bouncycastle.openpgp.PGPException;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.pgpainless.PGPainless;
|
||||
import org.pgpainless.key.collection.PGPKeyRing;
|
||||
import org.pgpainless.key.generation.type.EDDSA;
|
||||
import org.pgpainless.key.generation.type.XDH;
|
||||
import org.pgpainless.key.generation.type.curve.EdDSACurve;
|
||||
import org.pgpainless.key.generation.type.curve.XDHCurve;
|
||||
import org.pgpainless.key.util.UserId;
|
||||
import org.pgpainless.util.ArmorUtils;
|
||||
|
||||
public class GenerateEllipticCurveKeyTest {
|
||||
|
||||
@Test
|
||||
public void test() throws InvalidAlgorithmParameterException, NoSuchAlgorithmException, PGPException, IOException {
|
||||
PGPKeyRing keyRing = PGPainless.generateKeyRing()
|
||||
.withSubKey(KeySpec.getBuilder(XDH.fromCurve(XDHCurve._X25519))
|
||||
.withDefaultKeyFlags()
|
||||
.withDefaultAlgorithms())
|
||||
.withMasterKey(KeySpec.getBuilder(EDDSA.fromCurve(EdDSACurve._Ed25519))
|
||||
.withDefaultKeyFlags()
|
||||
.withDefaultAlgorithms())
|
||||
.withPrimaryUserId(UserId.onlyEmail("alice@wonderland.lit").toString())
|
||||
.withoutPassphrase()
|
||||
.build();
|
||||
|
||||
System.out.println(ArmorUtils.toAsciiArmoredString(keyRing.getPublicKeys()));
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue