W3cubDocs

/OpenJDK 21

Class RSAMultiPrimePrivateCrtKeySpec

java.lang.Object
java.security.spec.RSAPrivateKeySpec
java.security.spec.RSAMultiPrimePrivateCrtKeySpec
All Implemented Interfaces:
KeySpec
public class RSAMultiPrimePrivateCrtKeySpec extends RSAPrivateKeySpec
This class specifies an RSA multi-prime private key, as defined in the PKCS#1 v2.2 standard using the Chinese Remainder Theorem (CRT) information values for efficiency.
Since:
1.4
See Also:

Constructor Summary

Constructor Description
RSAMultiPrimePrivateCrtKeySpec(BigInteger modulus, BigInteger publicExponent, BigInteger privateExponent, BigInteger primeP, BigInteger primeQ, BigInteger primeExponentP, BigInteger primeExponentQ, BigInteger crtCoefficient, RSAOtherPrimeInfo[] otherPrimeInfo)
Creates a new RSAMultiPrimePrivateCrtKeySpec.
RSAMultiPrimePrivateCrtKeySpec(BigInteger modulus, BigInteger publicExponent, BigInteger privateExponent, BigInteger primeP, BigInteger primeQ, BigInteger primeExponentP, BigInteger primeExponentQ, BigInteger crtCoefficient, RSAOtherPrimeInfo[] otherPrimeInfo, AlgorithmParameterSpec keyParams)
Creates a new RSAMultiPrimePrivateCrtKeySpec with additional key parameters.

Method Summary

Modifier and Type Method Description
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.

Methods declared in class java.security.spec.RSAPrivateKeySpec

getModulus, getParams, getPrivateExponent

Methods declared in class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

RSAMultiPrimePrivateCrtKeySpec

public RSAMultiPrimePrivateCrtKeySpec(BigInteger modulus, BigInteger publicExponent, BigInteger privateExponent, BigInteger primeP, BigInteger primeQ, BigInteger primeExponentP, BigInteger primeExponentQ, BigInteger crtCoefficient, RSAOtherPrimeInfo[] otherPrimeInfo)
Creates a new RSAMultiPrimePrivateCrtKeySpec.

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 specified parameters except otherPrimeInfo is null
IllegalArgumentException - if an empty, i.e. 0-length, otherPrimeInfo is specified

RSAMultiPrimePrivateCrtKeySpec

public RSAMultiPrimePrivateCrtKeySpec(BigInteger modulus, BigInteger publicExponent, BigInteger privateExponent, BigInteger primeP, BigInteger primeQ, BigInteger primeExponentP, BigInteger primeExponentQ, BigInteger crtCoefficient, RSAOtherPrimeInfo[] otherPrimeInfo, AlgorithmParameterSpec keyParams)
Creates a new RSAMultiPrimePrivateCrtKeySpec with additional key parameters.

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)
keyParams - the parameters associated with key
Throws:
NullPointerException - if any of the specified parameters except otherPrimeInfo and keyParams is null
IllegalArgumentException - if an empty, i.e. 0-length, otherPrimeInfo is specified
Since:
11

Method Details

getPublicExponent

public BigInteger getPublicExponent()
Returns the public exponent.
Returns:
the public exponent.

getPrimeP

public BigInteger getPrimeP()
Returns the primeP.
Returns:
the primeP.

getPrimeQ

public BigInteger getPrimeQ()
Returns the primeQ.
Returns:
the primeQ.

getPrimeExponentP

public BigInteger getPrimeExponentP()
Returns the primeExponentP.
Returns:
the primeExponentP.

getPrimeExponentQ

public BigInteger getPrimeExponentQ()
Returns the primeExponentQ.
Returns:
the primeExponentQ.

getCrtCoefficient

public BigInteger getCrtCoefficient()
Returns the crtCoefficient.
Returns:
the crtCoefficient.

getOtherPrimeInfo

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.

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/security/spec/RSAMultiPrimePrivateCrtKeySpec.html