Package javacard.security
Interface RSAPrivateKey
-
- All Superinterfaces:
Key
,PrivateKey
public interface RSAPrivateKey extends PrivateKey
TheRSAPrivateKey
class is used to sign data using the RSA algorithm in its modulus/exponent form. It may also be used by thejavacardx.crypto.Cipher
class to encrypt/decrypt messages.When both the modulus and exponent of the key are set, the key is initialized and ready for use.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description short
getExponent(byte[] buffer, short offset)
Returns the private exponent value of the key in plain text.short
getModulus(byte[] buffer, short offset)
Returns the modulus value of the key in plain text.void
setExponent(byte[] buffer, short offset, short length)
Sets the private exponent value of the key.void
setModulus(byte[] buffer, short offset, short length)
Sets the modulus value of the key.-
Methods inherited from interface javacard.security.Key
clearKey, getSize, getType, isInitialized
-
-
-
-
Method Detail
-
setModulus
void setModulus(byte[] buffer, short offset, short length) throws CryptoException
Sets the modulus value of the key. The plain text data format is big-endian and right-aligned (the least significant bit is the least significant bit of last byte). Input modulus data is copied into the internal representation.Note:
- If the key object implements the
javacardx.crypto.KeyEncryption
interface and theCipher
object specified viasetKeyCipher()
is notnull
, the modulus value is decrypted using theCipher
object.
- Parameters:
buffer
- the input bufferoffset
- the offset into the input buffer at which the modulus value beginslength
- the length of the modulus- Throws:
CryptoException
- with the following reason code:CryptoException.ILLEGAL_VALUE
if the input modulus data length is inconsistent with the implementation or if input data decryption is required and fails.
- If the key object implements the
-
setExponent
void setExponent(byte[] buffer, short offset, short length) throws CryptoException
Sets the private exponent value of the key. The plain text data format is big-endian and right-aligned (the least significant bit is the least significant bit of last byte). Input exponent data is copied into the internal representation.Note:
- If the key object implements the
javacardx.crypto.KeyEncryption
interface and theCipher
object specified viasetKeyCipher()
is notnull
, the exponent value is decrypted using theCipher
object.
- Parameters:
buffer
- the input bufferoffset
- the offset into the input buffer at which the exponent value beginslength
- the length of the exponent- Throws:
CryptoException
- with the following reason code:CryptoException.ILLEGAL_VALUE
if the input exponent data length is inconsistent with the implementation or if input data decryption is required and fails.
- If the key object implements the
-
getModulus
short getModulus(byte[] buffer, short offset)
Returns the modulus value of the key in plain text. The data format is big-endian and right-aligned (the least significant bit is the least significant bit of last byte).- Parameters:
buffer
- the output bufferoffset
- the offset into the output buffer at which the modulus value starts- Returns:
- the byte length of the modulus value returned
- Throws:
CryptoException
- with the following reason code:CryptoException.UNINITIALIZED_KEY
if the modulus value of the key has not been successfully initialized since the time the initialized state of the key was set to false.
- See Also:
Key
-
getExponent
short getExponent(byte[] buffer, short offset)
Returns the private exponent value of the key in plain text. The data format is big-endian and right-aligned (the least significant bit is the least significant bit of last byte).- Parameters:
buffer
- the output bufferoffset
- the offset into the output buffer at which the exponent value begins- Returns:
- the byte length of the private exponent value returned
- Throws:
CryptoException
- with the following reason code:CryptoException.UNINITIALIZED_KEY
if the private exponent value of the key has not been successfully initialized since the time the initialized state of the key was set to false.
- See Also:
Key
-
-