public class

RSAMultiPrimePrivateCrtKeySpec

extends RSAPrivateKeySpec
java.lang.Object
   ↳ java.security.spec.RSAPrivateKeySpec
     ↳ java.security.spec.RSAMultiPrimePrivateCrtKeySpec

Class Overview

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.

Summary

Public Constructors
RSAMultiPrimePrivateCrtKeySpec(BigInteger modulus, BigInteger publicExponent, BigInteger privateExponent, BigInteger primeP, BigInteger primeQ, BigInteger primeExponentP, BigInteger primeExponentQ, 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.
Public Methods
BigInteger getCrtCoefficient()
Returns the crtCoefficient.
RSAOtherPrimeInfo[] getOtherPrimeInfo()
Returns a copy of the otherPrimeInfo or null if there are only two prime factors (p and q).
BigInteger getPrimeExponentP()
Returns the primeExponentP.
BigInteger getPrimeExponentQ()
Returns the primeExponentQ.
BigInteger getPrimeP()
Returns the primeP.
BigInteger getPrimeQ()
Returns the primeQ.
BigInteger getPublicExponent()
Returns the public exponent.
[Expand]
Inherited Methods
From class java.security.spec.RSAPrivateKeySpec
From class java.lang.Object

Public Constructors

public RSAMultiPrimePrivateCrtKeySpec (BigInteger modulus, BigInteger publicExponent, BigInteger privateExponent, BigInteger primeP, BigInteger primeQ, BigInteger primeExponentP, BigInteger primeExponentQ, 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 the contents of otherPrimeInfo are copied to protect against subsequent modification 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
NullPointerException if any of the parameters, i.e. modulus, publicExponent, privateExponent, primeP, primeQ, primeExponentP, primeExponentQ, crtCoefficient, is null.
IllegalArgumentException if an empty, i.e. 0-length, otherPrimeInfo is specified.

Public Methods

public BigInteger getCrtCoefficient ()

Returns the crtCoefficient.

Returns
  • the crtCoefficient.

public RSAOtherPrimeInfo[] getOtherPrimeInfo ()

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

Returns
  • the otherPrimeInfo. Returns a new array each time this method is called.

public BigInteger getPrimeExponentP ()

Returns the primeExponentP.

Returns
  • the primeExponentP.

public BigInteger getPrimeExponentQ ()

Returns the primeExponentQ.

Returns
  • the primeExponentQ.

public BigInteger getPrimeP ()

Returns the primeP.

Returns
  • the primeP.

public BigInteger getPrimeQ ()

Returns the primeQ.

Returns
  • the primeQ.

public BigInteger getPublicExponent ()

Returns the public exponent.

Returns
  • the public exponent.