aboutsummaryrefslogtreecommitdiffstats
path: root/libraries/spongycastle/pg/src/main/java/org/spongycastle/bcpg/RSASecretBCPGKey.java
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/spongycastle/pg/src/main/java/org/spongycastle/bcpg/RSASecretBCPGKey.java')
-rw-r--r--libraries/spongycastle/pg/src/main/java/org/spongycastle/bcpg/RSASecretBCPGKey.java176
1 files changed, 0 insertions, 176 deletions
diff --git a/libraries/spongycastle/pg/src/main/java/org/spongycastle/bcpg/RSASecretBCPGKey.java b/libraries/spongycastle/pg/src/main/java/org/spongycastle/bcpg/RSASecretBCPGKey.java
deleted file mode 100644
index a8b211673..000000000
--- a/libraries/spongycastle/pg/src/main/java/org/spongycastle/bcpg/RSASecretBCPGKey.java
+++ /dev/null
@@ -1,176 +0,0 @@
-package org.spongycastle.bcpg;
-
-import java.io.*;
-import java.math.BigInteger;
-
-/**
- * base class for an RSA Secret (or Private) Key.
- */
-public class RSASecretBCPGKey
- extends BCPGObject implements BCPGKey
-{
- MPInteger d;
- MPInteger p;
- MPInteger q;
- MPInteger u;
-
- BigInteger expP, expQ, crt;
-
- /**
- *
- * @param in
- * @throws IOException
- */
- public RSASecretBCPGKey(
- BCPGInputStream in)
- throws IOException
- {
- this.d = new MPInteger(in);
- this.p = new MPInteger(in);
- this.q = new MPInteger(in);
- this.u = new MPInteger(in);
-
- expP = d.getValue().remainder(p.getValue().subtract(BigInteger.valueOf(1)));
- expQ = d.getValue().remainder(q.getValue().subtract(BigInteger.valueOf(1)));
- crt = q.getValue().modInverse(p.getValue());
- }
-
- /**
- *
- * @param d
- * @param p
- * @param q
- */
- public RSASecretBCPGKey(
- BigInteger d,
- BigInteger p,
- BigInteger q)
- {
- //
- // pgp requires (p < q)
- //
- int cmp = p.compareTo(q);
- if (cmp >= 0)
- {
- if (cmp == 0)
- {
- throw new IllegalArgumentException("p and q cannot be equal");
- }
-
- BigInteger tmp = p;
- p = q;
- q = tmp;
- }
-
- this.d = new MPInteger(d);
- this.p = new MPInteger(p);
- this.q = new MPInteger(q);
- this.u = new MPInteger(p.modInverse(q));
-
- expP = d.remainder(p.subtract(BigInteger.valueOf(1)));
- expQ = d.remainder(q.subtract(BigInteger.valueOf(1)));
- crt = q.modInverse(p);
- }
-
- /**
- * return the modulus for this key.
- *
- * @return BigInteger
- */
- public BigInteger getModulus()
- {
- return p.getValue().multiply(q.getValue());
- }
-
- /**
- * return the private exponent for this key.
- *
- * @return BigInteger
- */
- public BigInteger getPrivateExponent()
- {
- return d.getValue();
- }
-
- /**
- * return the prime P
- */
- public BigInteger getPrimeP()
- {
- return p.getValue();
- }
-
- /**
- * return the prime Q
- */
- public BigInteger getPrimeQ()
- {
- return q.getValue();
- }
-
- /**
- * return the prime exponent of p
- */
- public BigInteger getPrimeExponentP()
- {
- return expP;
- }
-
- /**
- * return the prime exponent of q
- */
- public BigInteger getPrimeExponentQ()
- {
- return expQ;
- }
-
- /**
- * return the crt coefficient
- */
- public BigInteger getCrtCoefficient()
- {
- return crt;
- }
-
- /**
- * return "PGP"
- *
- * @see org.spongycastle.bcpg.BCPGKey#getFormat()
- */
- public String getFormat()
- {
- return "PGP";
- }
-
- /**
- * return the standard PGP encoding of the key.
- *
- * @see org.spongycastle.bcpg.BCPGKey#getEncoded()
- */
- public byte[] getEncoded()
- {
- try
- {
- ByteArrayOutputStream bOut = new ByteArrayOutputStream();
- BCPGOutputStream pgpOut = new BCPGOutputStream(bOut);
-
- pgpOut.writeObject(this);
-
- return bOut.toByteArray();
- }
- catch (IOException e)
- {
- return null;
- }
- }
-
- public void encode(
- BCPGOutputStream out)
- throws IOException
- {
- out.writeObject(d);
- out.writeObject(p);
- out.writeObject(q);
- out.writeObject(u);
- }
-}