Package org.pgpainless.key.protection
Class BaseSecretKeyRingProtector
java.lang.Object
org.pgpainless.key.protection.BaseSecretKeyRingProtector
- All Implemented Interfaces:
SecretKeyRingProtector
- Direct Known Subclasses:
PasswordBasedSecretKeyRingProtector
Basic
SecretKeyRingProtector
implementation that respects the users KeyRingProtectionSettings
when
encrypting keys.-
Constructor Summary
ConstructorsConstructorDescriptionBaseSecretKeyRingProtector
(SecretKeyPassphraseProvider passphraseProvider) Constructor that uses the givenSecretKeyPassphraseProvider
to retrieve passphrases and PGPainless' defaultKeyRingProtectionSettings
.BaseSecretKeyRingProtector
(SecretKeyPassphraseProvider passphraseProvider, KeyRingProtectionSettings protectionSettings) Constructor that uses the givenSecretKeyPassphraseProvider
andKeyRingProtectionSettings
. -
Method Summary
Modifier and TypeMethodDescriptionorg.bouncycastle.openpgp.operator.PBESecretKeyDecryptor
getDecryptor
(Long keyId) Return a decryptor for the key of idkeyId
.org.bouncycastle.openpgp.operator.PBESecretKeyEncryptor
getEncryptor
(Long keyId) Return an encryptor for the key of idkeyId
.boolean
hasPassphraseFor
(Long keyId) Returns true, if the protector has a passphrase for the key with the given key-id.
-
Constructor Details
-
BaseSecretKeyRingProtector
Constructor that uses the givenSecretKeyPassphraseProvider
to retrieve passphrases and PGPainless' defaultKeyRingProtectionSettings
.- Parameters:
passphraseProvider
- provider for passphrases
-
BaseSecretKeyRingProtector
public BaseSecretKeyRingProtector(SecretKeyPassphraseProvider passphraseProvider, KeyRingProtectionSettings protectionSettings) Constructor that uses the givenSecretKeyPassphraseProvider
andKeyRingProtectionSettings
.- Parameters:
passphraseProvider
- provider for passphrasesprotectionSettings
- protection settings
-
-
Method Details
-
hasPassphraseFor
Description copied from interface:SecretKeyRingProtector
Returns true, if the protector has a passphrase for the key with the given key-id.- Specified by:
hasPassphraseFor
in interfaceSecretKeyRingProtector
- Parameters:
keyId
- key id- Returns:
- true if it has a passphrase, false otherwise
-
getDecryptor
@Nullable public org.bouncycastle.openpgp.operator.PBESecretKeyDecryptor getDecryptor(Long keyId) throws org.bouncycastle.openpgp.PGPException Description copied from interface:SecretKeyRingProtector
Return a decryptor for the key of idkeyId
. This method returns null if the key is unprotected.- Specified by:
getDecryptor
in interfaceSecretKeyRingProtector
- Parameters:
keyId
- id of the key- Returns:
- decryptor for the key
- Throws:
org.bouncycastle.openpgp.PGPException
- if the decryptor cannot be created for some reason
-
getEncryptor
@Nullable public org.bouncycastle.openpgp.operator.PBESecretKeyEncryptor getEncryptor(Long keyId) throws org.bouncycastle.openpgp.PGPException Description copied from interface:SecretKeyRingProtector
Return an encryptor for the key of idkeyId
. This method returns null if the key is unprotected.- Specified by:
getEncryptor
in interfaceSecretKeyRingProtector
- Parameters:
keyId
- id of the key- Returns:
- encryptor for the key
- Throws:
org.bouncycastle.openpgp.PGPException
- if the encryptor cannot be created for some reason
-