aboutsummaryrefslogtreecommitdiffstats
path: root/libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/examples/RSAKeyPairGenerator.java
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/examples/RSAKeyPairGenerator.java')
-rw-r--r--libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/examples/RSAKeyPairGenerator.java114
1 files changed, 0 insertions, 114 deletions
diff --git a/libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/examples/RSAKeyPairGenerator.java b/libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/examples/RSAKeyPairGenerator.java
deleted file mode 100644
index 99042fd38..000000000
--- a/libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/examples/RSAKeyPairGenerator.java
+++ /dev/null
@@ -1,114 +0,0 @@
-package org.spongycastle.openpgp.examples;
-
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.security.InvalidKeyException;
-import java.security.KeyPair;
-import java.security.KeyPairGenerator;
-import java.security.NoSuchProviderException;
-import java.security.PrivateKey;
-import java.security.PublicKey;
-import java.security.Security;
-import java.security.SignatureException;
-import java.util.Date;
-
-import org.spongycastle.bcpg.ArmoredOutputStream;
-import org.spongycastle.bcpg.HashAlgorithmTags;
-import org.spongycastle.jce.provider.BouncyCastleProvider;
-import org.spongycastle.openpgp.PGPEncryptedData;
-import org.spongycastle.openpgp.PGPException;
-import org.spongycastle.openpgp.PGPKeyPair;
-import org.spongycastle.openpgp.PGPPublicKey;
-import org.spongycastle.openpgp.PGPSecretKey;
-import org.spongycastle.openpgp.PGPSignature;
-import org.spongycastle.openpgp.operator.PGPDigestCalculator;
-import org.spongycastle.openpgp.operator.jcajce.JcaPGPContentSignerBuilder;
-import org.spongycastle.openpgp.operator.jcajce.JcaPGPDigestCalculatorProviderBuilder;
-import org.spongycastle.openpgp.operator.jcajce.JcePBESecretKeyEncryptorBuilder;
-
-/**
- * A simple utility class that generates a RSA PGPPublicKey/PGPSecretKey pair.
- * <p>
- * usage: RSAKeyPairGenerator [-a] identity passPhrase
- * <p>
- * Where identity is the name to be associated with the public key. The keys are placed
- * in the files pub.[asc|bpg] and secret.[asc|bpg].
- */
-public class RSAKeyPairGenerator
-{
- private static void exportKeyPair(
- OutputStream secretOut,
- OutputStream publicOut,
- PublicKey publicKey,
- PrivateKey privateKey,
- String identity,
- char[] passPhrase,
- boolean armor)
- throws IOException, InvalidKeyException, NoSuchProviderException, SignatureException, PGPException
- {
- if (armor)
- {
- secretOut = new ArmoredOutputStream(secretOut);
- }
-
- PGPDigestCalculator sha1Calc = new JcaPGPDigestCalculatorProviderBuilder().build().get(HashAlgorithmTags.SHA1);
- PGPKeyPair keyPair = new PGPKeyPair(PGPPublicKey.RSA_GENERAL, publicKey, privateKey, new Date());
- PGPSecretKey secretKey = new PGPSecretKey(PGPSignature.DEFAULT_CERTIFICATION, keyPair, identity, sha1Calc, null, null, new JcaPGPContentSignerBuilder(keyPair.getPublicKey().getAlgorithm(), HashAlgorithmTags.SHA1), new JcePBESecretKeyEncryptorBuilder(PGPEncryptedData.CAST5, sha1Calc).setProvider("SC").build(passPhrase));
-
- secretKey.encode(secretOut);
-
- secretOut.close();
-
- if (armor)
- {
- publicOut = new ArmoredOutputStream(publicOut);
- }
-
- PGPPublicKey key = secretKey.getPublicKey();
-
- key.encode(publicOut);
-
- publicOut.close();
- }
-
- public static void main(
- String[] args)
- throws Exception
- {
- Security.addProvider(new BouncyCastleProvider());
-
- KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA", "SC");
-
- kpg.initialize(1024);
-
- KeyPair kp = kpg.generateKeyPair();
-
- if (args.length < 2)
- {
- System.out.println("RSAKeyPairGenerator [-a] identity passPhrase");
- System.exit(0);
- }
-
- if (args[0].equals("-a"))
- {
- if (args.length < 3)
- {
- System.out.println("RSAKeyPairGenerator [-a] identity passPhrase");
- System.exit(0);
- }
-
- FileOutputStream out1 = new FileOutputStream("secret.asc");
- FileOutputStream out2 = new FileOutputStream("pub.asc");
-
- exportKeyPair(out1, out2, kp.getPublic(), kp.getPrivate(), args[1], args[2].toCharArray(), true);
- }
- else
- {
- FileOutputStream out1 = new FileOutputStream("secret.bpg");
- FileOutputStream out2 = new FileOutputStream("pub.bpg");
-
- exportKeyPair(out1, out2, kp.getPublic(), kp.getPrivate(), args[0], args[1].toCharArray(), false);
- }
- }
-}