Class HardwareSecurity.HardwareDataDecryptorFactory
java.lang.Object
org.pgpainless.decryption_verification.HardwareSecurity.HardwareDataDecryptorFactory
- All Implemented Interfaces:
org.bouncycastle.openpgp.operator.PGPDataDecryptorFactory,org.bouncycastle.openpgp.operator.PublicKeyDataDecryptorFactory,CustomPublicKeyDataDecryptorFactory
- Enclosing class:
HardwareSecurity
public static class HardwareSecurity.HardwareDataDecryptorFactory
extends Object
implements CustomPublicKeyDataDecryptorFactory
Implementation of
PublicKeyDataDecryptorFactory which delegates decryption of encrypted session keys
to a HardwareSecurity.DecryptionCallback.
Users can provide such a callback to delegate decryption of messages to hardware security SDKs.-
Constructor Summary
ConstructorsConstructorDescriptionHardwareDataDecryptorFactory(SubkeyIdentifier subkeyIdentifier, HardwareSecurity.DecryptionCallback callback) Create a newHardwareSecurity.HardwareDataDecryptorFactory. -
Method Summary
Modifier and TypeMethodDescriptionorg.bouncycastle.openpgp.operator.PGPDataDecryptorcreateDataDecryptor(boolean withIntegrityPacket, int encAlgorithm, byte[] key) org.bouncycastle.openpgp.operator.PGPDataDecryptorcreateDataDecryptor(org.bouncycastle.bcpg.AEADEncDataPacket aeadEncDataPacket, org.bouncycastle.openpgp.PGPSessionKey sessionKey) org.bouncycastle.openpgp.operator.PGPDataDecryptorcreateDataDecryptor(org.bouncycastle.bcpg.SymmetricEncIntegrityPacket seipd, org.bouncycastle.openpgp.PGPSessionKey sessionKey) Return theSubkeyIdentifierfor which this particularCustomPublicKeyDataDecryptorFactoryis intended.byte[]recoverSessionData(int keyAlgorithm, byte[][] secKeyData)
-
Constructor Details
-
HardwareDataDecryptorFactory
public HardwareDataDecryptorFactory(SubkeyIdentifier subkeyIdentifier, HardwareSecurity.DecryptionCallback callback) Create a newHardwareSecurity.HardwareDataDecryptorFactory.- Parameters:
subkeyIdentifier- identifier of the decryption subkeycallback- decryption callback
-
-
Method Details
-
recoverSessionData
public byte[] recoverSessionData(int keyAlgorithm, byte[][] secKeyData) throws org.bouncycastle.openpgp.PGPException - Specified by:
recoverSessionDatain interfaceorg.bouncycastle.openpgp.operator.PublicKeyDataDecryptorFactory- Throws:
org.bouncycastle.openpgp.PGPException
-
createDataDecryptor
public org.bouncycastle.openpgp.operator.PGPDataDecryptor createDataDecryptor(boolean withIntegrityPacket, int encAlgorithm, byte[] key) throws org.bouncycastle.openpgp.PGPException - Specified by:
createDataDecryptorin interfaceorg.bouncycastle.openpgp.operator.PGPDataDecryptorFactory- Throws:
org.bouncycastle.openpgp.PGPException
-
createDataDecryptor
public org.bouncycastle.openpgp.operator.PGPDataDecryptor createDataDecryptor(org.bouncycastle.bcpg.AEADEncDataPacket aeadEncDataPacket, org.bouncycastle.openpgp.PGPSessionKey sessionKey) throws org.bouncycastle.openpgp.PGPException - Specified by:
createDataDecryptorin interfaceorg.bouncycastle.openpgp.operator.PGPDataDecryptorFactory- Throws:
org.bouncycastle.openpgp.PGPException
-
createDataDecryptor
public org.bouncycastle.openpgp.operator.PGPDataDecryptor createDataDecryptor(org.bouncycastle.bcpg.SymmetricEncIntegrityPacket seipd, org.bouncycastle.openpgp.PGPSessionKey sessionKey) throws org.bouncycastle.openpgp.PGPException - Specified by:
createDataDecryptorin interfaceorg.bouncycastle.openpgp.operator.PGPDataDecryptorFactory- Throws:
org.bouncycastle.openpgp.PGPException
-
getSubkeyIdentifier
Description copied from interface:CustomPublicKeyDataDecryptorFactoryReturn theSubkeyIdentifierfor which this particularCustomPublicKeyDataDecryptorFactoryis intended.- Specified by:
getSubkeyIdentifierin interfaceCustomPublicKeyDataDecryptorFactory- Returns:
- subkey identifier
-