Bouncy Castle Cryptography 1.27

java.security.spec
Class RSAMultiPrimePrivateCrtKeySpec

java.lang.Object
  |
  +--java.security.spec.RSAPrivateKeySpec
        |
        +--java.security.spec.RSAMultiPrimePrivateCrtKeySpec
All Implemented Interfaces:
java.security.spec.KeySpec

public class RSAMultiPrimePrivateCrtKeySpec
extends java.security.spec.RSAPrivateKeySpec

This class specifies an RSA multi-prime private key, as defined in the PKCS#1 v2.1, using the Chinese Remainder Theorem (CRT) information values for efficiency.

Since:
1.4
See Also:

Constructor Summary
RSAMultiPrimePrivateCrtKeySpec(java.math.BigInteger modulus, java.math.BigInteger publicExponent, java.math.BigInteger privateExponent, java.math.BigInteger primeP, java.math.BigInteger primeQ, java.math.BigInteger primeExponentP, java.math.BigInteger primeExponentQ, java.math.BigInteger crtCoefficient, RSAOtherPrimeInfo[] otherPrimeInfo)
          Creates a new RSAMultiPrimePrivateCrtKeySpec given the modulus, publicExponent, privateExponent, primeP, primeQ, primeExponentP, primeExponentQ, crtCoefficient, and otherPrimeInfo as defined in PKCS#1 v2.1.
 
Method Summary
 java.math.BigInteger getCrtCoefficient()
          Returns the crtCofficient.
 RSAOtherPrimeInfo[] getOtherPrimeInfo()
          Returns a copy of the otherPrimeInfo or null if there are only two prime factors (p and q).
 java.math.BigInteger getPrimeExponentP()
          Returns the primeExponentP.
 java.math.BigInteger getPrimeExponentQ()
          Returns the primeExponentQ.
 java.math.BigInteger getPrimeP()
          Returns the primeP.
 java.math.BigInteger getPrimeQ()
          Returns the primeQ.
 java.math.BigInteger getPublicExponent()
          Returns the public exponent.
 
Methods inherited from class java.security.spec.RSAPrivateKeySpec
getModulus, getPrivateExponent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RSAMultiPrimePrivateCrtKeySpec

public RSAMultiPrimePrivateCrtKeySpec(java.math.BigInteger modulus,
                                      java.math.BigInteger publicExponent,
                                      java.math.BigInteger privateExponent,
                                      java.math.BigInteger primeP,
                                      java.math.BigInteger primeQ,
                                      java.math.BigInteger primeExponentP,
                                      java.math.BigInteger primeExponentQ,
                                      java.math.BigInteger crtCoefficient,
                                      RSAOtherPrimeInfo[] otherPrimeInfo)
Creates a new RSAMultiPrimePrivateCrtKeySpec given the modulus, publicExponent, privateExponent, primeP, primeQ, primeExponentP, primeExponentQ, crtCoefficient, and otherPrimeInfo as defined in PKCS#1 v2.1. Note that otherPrimeInfo is cloned when constructing this object.

Parameters:
modulus - - the modulus n.
publicExponent - - the public exponent e.
privateExponent - - the private exponent d.
primeP - - the prime factor p of n.
primeQ - - the prime factor q of n.
primeExponentP - - this is d mod (p-1).
primeExponentQ - - this is d mod (q-1).
crtCoefficient - - the Chinese Remainder Theorem coefficient q-1 mod p.
otherPrimeInfo - - triplets of the rest of primes, null can be specified if there are only two prime factors (p and q).
Throws:
java.lang.NullPointerException - - if any of the parameters, i.e. modulus, publicExponent, privateExponent, primeP, primeQ, primeExponentP, primeExponentQ, crtCoefficient, is null.
java.lang.IllegalArgumentException - - if an empty, i.e. 0-length, otherPrimeInfo is specified.
Method Detail

getPublicExponent

public java.math.BigInteger getPublicExponent()
Returns the public exponent.


getPrimeP

public java.math.BigInteger getPrimeP()
Returns the primeP.


getPrimeQ

public java.math.BigInteger getPrimeQ()
Returns the primeQ.


getPrimeExponentP

public java.math.BigInteger getPrimeExponentP()
Returns the primeExponentP.


getPrimeExponentQ

public java.math.BigInteger getPrimeExponentQ()
Returns the primeExponentQ.


getCrtCoefficient

public java.math.BigInteger getCrtCoefficient()
Returns the crtCofficient.


getOtherPrimeInfo

public RSAOtherPrimeInfo[] getOtherPrimeInfo()
Returns a copy of the otherPrimeInfo or null if there are only two prime factors (p and q).


Bouncy Castle Cryptography 1.27