Interface SecretKeyRingEditorInterface
-
- All Known Implementing Classes:
SecretKeyRingEditor
public interface SecretKeyRingEditorInterface
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
SecretKeyRingEditorInterface.WithKeyRingEncryptionSettings
static interface
SecretKeyRingEditorInterface.WithPassphrase
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description SecretKeyRingEditorInterface
addSubKey(org.bouncycastle.openpgp.PGPSecretKey subKey, SecretKeyRingProtector subKeyProtector, SecretKeyRingProtector keyRingProtector)
SecretKeyRingEditorInterface
addSubKey(KeySpec keySpec, Passphrase subKeyPassphrase, SecretKeyRingProtector secretKeyRingProtector)
Add a subkey to the key ring.SecretKeyRingEditorInterface
addUserId(long keyId, java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector)
default SecretKeyRingEditorInterface
addUserId(long keyId, UserId userId, SecretKeyRingProtector secretKeyRingProtector)
SecretKeyRingEditorInterface
addUserId(java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector)
Add a user-id to the primary key of the key ring.default SecretKeyRingEditorInterface
addUserId(OpenPgpV4Fingerprint fingerprint, java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector)
default SecretKeyRingEditorInterface
addUserId(OpenPgpV4Fingerprint fingerprint, UserId userId, SecretKeyRingProtector secretKeyRingProtector)
default SecretKeyRingEditorInterface
addUserId(UserId userId, SecretKeyRingProtector secretKeyRingProtector)
default SecretKeyRingEditorInterface.WithKeyRingEncryptionSettings
changePassphraseFromOldPassphrase(Passphrase oldPassphrase)
Change the passphrase of the whole key ring.SecretKeyRingEditorInterface.WithKeyRingEncryptionSettings
changePassphraseFromOldPassphrase(Passphrase oldPassphrase, KeyRingProtectionSettings oldProtectionSettings)
Change the passphrase of the whole key ring.default SecretKeyRingEditorInterface.WithKeyRingEncryptionSettings
changeSubKeyPassphraseFromOldPassphrase(java.lang.Long keyId, Passphrase oldPassphrase)
Change the passphrase of a single subkey in the key ring.SecretKeyRingEditorInterface.WithKeyRingEncryptionSettings
changeSubKeyPassphraseFromOldPassphrase(java.lang.Long keyId, Passphrase oldPassphrase, KeyRingProtectionSettings oldProtectionSettings)
org.bouncycastle.openpgp.PGPSignature
createRevocationCertificate(long subKeyId, SecretKeyRingProtector secretKeyRingProtector, RevocationAttributes revocationAttributes)
Create a detached revocation certificate, which can be used to revoke the specified key.org.bouncycastle.openpgp.PGPSignature
createRevocationCertificate(OpenPgpV4Fingerprint fingerprint, SecretKeyRingProtector secretKeyRingProtector, RevocationAttributes revocationAttributes)
Create a detached revocation certificate, which can be used to revoke the specified key.SecretKeyRingEditorInterface
deleteSubKey(long subKeyId, SecretKeyRingProtector secretKeyRingProtector)
Delete a subkey from the key ring.SecretKeyRingEditorInterface
deleteSubKey(OpenPgpV4Fingerprint fingerprint, SecretKeyRingProtector secretKeyRingProtector)
Delete a subkey from the key ring.SecretKeyRingEditorInterface
deleteUserId(long keyId, java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector)
SecretKeyRingEditorInterface
deleteUserId(java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector)
Remove a user-id from the primary key of the key ring.default SecretKeyRingEditorInterface
deleteUserId(OpenPgpV4Fingerprint fingerprint, java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector)
org.bouncycastle.openpgp.PGPSecretKeyRing
done()
Return thePGPSecretKeyRing
.default SecretKeyRingEditorInterface
revoke(SecretKeyRingProtector secretKeyRingProtector)
Revoke the key ring.SecretKeyRingEditorInterface
revoke(SecretKeyRingProtector secretKeyRingProtector, RevocationAttributes revocationAttributes)
Revoke the key ring.default SecretKeyRingEditorInterface
revokeSubKey(long subKeyId, SecretKeyRingProtector secretKeyRingProtector)
Revoke the subkey binding signature of a subkey.SecretKeyRingEditorInterface
revokeSubKey(long subKeyId, SecretKeyRingProtector secretKeyRingProtector, RevocationAttributes revocationAttributes)
Revoke the subkey binding signature of a subkey.default SecretKeyRingEditorInterface
revokeSubKey(OpenPgpV4Fingerprint fingerprint, SecretKeyRingProtector secretKeyRingProtector)
Revoke the subkey binding signature of a subkey.SecretKeyRingEditorInterface
revokeSubKey(OpenPgpV4Fingerprint fingerprint, SecretKeyRingProtector secretKeyRingProtector, RevocationAttributes revocationAttributes)
Revoke the subkey binding signature of a subkey.SecretKeyRingEditorInterface
setExpirationDate(OpenPgpV4Fingerprint fingerprint, java.util.Date expiration, SecretKeyRingProtector secretKeyRingProtector)
Set key expiration time.
-
-
-
Method Detail
-
addUserId
default SecretKeyRingEditorInterface addUserId(UserId userId, SecretKeyRingProtector secretKeyRingProtector) throws org.bouncycastle.openpgp.PGPException
- Throws:
org.bouncycastle.openpgp.PGPException
-
addUserId
SecretKeyRingEditorInterface addUserId(java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector) throws org.bouncycastle.openpgp.PGPException
Add a user-id to the primary key of the key ring.- Parameters:
userId
- user-idsecretKeyRingProtector
- protector to unlock the secret key- Returns:
- the builder
- Throws:
org.bouncycastle.openpgp.PGPException
-
addUserId
default SecretKeyRingEditorInterface addUserId(OpenPgpV4Fingerprint fingerprint, UserId userId, SecretKeyRingProtector secretKeyRingProtector) throws org.bouncycastle.openpgp.PGPException
- Throws:
org.bouncycastle.openpgp.PGPException
-
addUserId
default SecretKeyRingEditorInterface addUserId(OpenPgpV4Fingerprint fingerprint, java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector) throws org.bouncycastle.openpgp.PGPException
- Throws:
org.bouncycastle.openpgp.PGPException
-
addUserId
default SecretKeyRingEditorInterface addUserId(long keyId, UserId userId, SecretKeyRingProtector secretKeyRingProtector) throws org.bouncycastle.openpgp.PGPException
- Throws:
org.bouncycastle.openpgp.PGPException
-
addUserId
SecretKeyRingEditorInterface addUserId(long keyId, java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector) throws org.bouncycastle.openpgp.PGPException
- Throws:
org.bouncycastle.openpgp.PGPException
-
deleteUserId
SecretKeyRingEditorInterface deleteUserId(java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector)
Remove a user-id from the primary key of the key ring.- Parameters:
userId
- exact user-id to be removedsecretKeyRingProtector
- protector to unlock the secret key- Returns:
- the builder
-
deleteUserId
default SecretKeyRingEditorInterface deleteUserId(OpenPgpV4Fingerprint fingerprint, java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector)
-
deleteUserId
SecretKeyRingEditorInterface deleteUserId(long keyId, java.lang.String userId, SecretKeyRingProtector secretKeyRingProtector)
-
addSubKey
SecretKeyRingEditorInterface addSubKey(@Nonnull KeySpec keySpec, @Nonnull Passphrase subKeyPassphrase, SecretKeyRingProtector secretKeyRingProtector) throws java.security.InvalidAlgorithmParameterException, java.security.NoSuchAlgorithmException, org.bouncycastle.openpgp.PGPException
Add a subkey to the key ring. The subkey will be generated from the providedKeySpec
.- Parameters:
keySpec
- key specificationsubKeyPassphrase
- passphrase to encrypt the sub keysecretKeyRingProtector
- protector to unlock the secret key of the key ring- Returns:
- the builder
- Throws:
java.security.InvalidAlgorithmParameterException
java.security.NoSuchAlgorithmException
org.bouncycastle.openpgp.PGPException
-
addSubKey
SecretKeyRingEditorInterface addSubKey(org.bouncycastle.openpgp.PGPSecretKey subKey, SecretKeyRingProtector subKeyProtector, SecretKeyRingProtector keyRingProtector) throws org.bouncycastle.openpgp.PGPException
- Throws:
org.bouncycastle.openpgp.PGPException
-
deleteSubKey
SecretKeyRingEditorInterface deleteSubKey(OpenPgpV4Fingerprint fingerprint, SecretKeyRingProtector secretKeyRingProtector)
Delete a subkey from the key ring. The subkey with the provided fingerprint will be remove from the key ring. If no suitable subkey is found, aNoSuchElementException
will be thrown.- Parameters:
fingerprint
- fingerprint of the subkey to be removedsecretKeyRingProtector
- protector to unlock the secret key ring- Returns:
- the builder
-
deleteSubKey
SecretKeyRingEditorInterface deleteSubKey(long subKeyId, SecretKeyRingProtector secretKeyRingProtector)
Delete a subkey from the key ring. The subkey with the provided key-id will be removed from the key ring. If no suitable subkey is found, aNoSuchElementException
will be thrown.- Parameters:
subKeyId
- id of the subkeysecretKeyRingProtector
- protector to unlock the secret key ring- Returns:
- the builder
-
revoke
default SecretKeyRingEditorInterface revoke(SecretKeyRingProtector secretKeyRingProtector) throws org.bouncycastle.openpgp.PGPException
Revoke the key ring.- Parameters:
secretKeyRingProtector
- protector of the primary key- Returns:
- the builder
- Throws:
org.bouncycastle.openpgp.PGPException
-
revoke
SecretKeyRingEditorInterface revoke(SecretKeyRingProtector secretKeyRingProtector, RevocationAttributes revocationAttributes) throws org.bouncycastle.openpgp.PGPException
Revoke the key ring.- Parameters:
secretKeyRingProtector
- protector of the primary keyrevocationAttributes
- reason for the revocation- Returns:
- the builder
- Throws:
org.bouncycastle.openpgp.PGPException
-
revokeSubKey
default SecretKeyRingEditorInterface revokeSubKey(OpenPgpV4Fingerprint fingerprint, SecretKeyRingProtector secretKeyRingProtector) throws org.bouncycastle.openpgp.PGPException
Revoke the subkey binding signature of a subkey. The subkey with the provided fingerprint will be revoked. If no suitable subkey is found, aNoSuchElementException
will be thrown.- Parameters:
fingerprint
- fingerprint of the subkey to be revokedsecretKeyRingProtector
- protector to unlock the secret key ring- Returns:
- the builder
- Throws:
org.bouncycastle.openpgp.PGPException
-
revokeSubKey
SecretKeyRingEditorInterface revokeSubKey(OpenPgpV4Fingerprint fingerprint, SecretKeyRingProtector secretKeyRingProtector, RevocationAttributes revocationAttributes) throws org.bouncycastle.openpgp.PGPException
Revoke the subkey binding signature of a subkey. The subkey with the provided fingerprint will be revoked. If no suitable subkey is found, aNoSuchElementException
will be thrown.- Parameters:
fingerprint
- fingerprint of the subkey to be revokedsecretKeyRingProtector
- protector to unlock the primary keyrevocationAttributes
- reason for the revocation- Returns:
- the builder
- Throws:
org.bouncycastle.openpgp.PGPException
-
revokeSubKey
default SecretKeyRingEditorInterface revokeSubKey(long subKeyId, SecretKeyRingProtector secretKeyRingProtector) throws org.bouncycastle.openpgp.PGPException
Revoke the subkey binding signature of a subkey. The subkey with the provided key-id will be revoked. If no suitable subkey is found, qNoSuchElementException
will be thrown.- Parameters:
subKeyId
- id of the subkeysecretKeyRingProtector
- protector to unlock the secret key ring- Returns:
- the builder
- Throws:
org.bouncycastle.openpgp.PGPException
-
revokeSubKey
SecretKeyRingEditorInterface revokeSubKey(long subKeyId, SecretKeyRingProtector secretKeyRingProtector, RevocationAttributes revocationAttributes) throws org.bouncycastle.openpgp.PGPException
Revoke the subkey binding signature of a subkey. The subkey with the provided key-id will be revoked. If no suitable subkey is found, qNoSuchElementException
will be thrown.- Parameters:
subKeyId
- id of the subkeysecretKeyRingProtector
- protector to unlock the primary keyrevocationAttributes
- reason for the revocation- Returns:
- the builder
- Throws:
org.bouncycastle.openpgp.PGPException
-
setExpirationDate
SecretKeyRingEditorInterface setExpirationDate(OpenPgpV4Fingerprint fingerprint, java.util.Date expiration, SecretKeyRingProtector secretKeyRingProtector) throws org.bouncycastle.openpgp.PGPException
Set key expiration time.- Parameters:
fingerprint
- key that will have its expiration date adjustedexpiration
- target expiration time or @{code null} for no expirationsecretKeyRingProtector
- protector to unlock the priary key- Returns:
- the builder
- Throws:
org.bouncycastle.openpgp.PGPException
-
createRevocationCertificate
org.bouncycastle.openpgp.PGPSignature createRevocationCertificate(OpenPgpV4Fingerprint fingerprint, SecretKeyRingProtector secretKeyRingProtector, RevocationAttributes revocationAttributes) throws org.bouncycastle.openpgp.PGPException
Create a detached revocation certificate, which can be used to revoke the specified key.- Parameters:
fingerprint
- fingerprint of the key to be revoked. Can be primary or sub key.secretKeyRingProtector
- protector to unlock the primary key.revocationAttributes
- reason for the revocation- Returns:
- revocation certificate
- Throws:
org.bouncycastle.openpgp.PGPException
-
createRevocationCertificate
org.bouncycastle.openpgp.PGPSignature createRevocationCertificate(long subKeyId, SecretKeyRingProtector secretKeyRingProtector, RevocationAttributes revocationAttributes) throws org.bouncycastle.openpgp.PGPException
Create a detached revocation certificate, which can be used to revoke the specified key.- Parameters:
subKeyId
- id of the key to be revoked. Can be primary or sub key.secretKeyRingProtector
- protector to unlock the primary key.revocationAttributes
- reason for the revocation- Returns:
- revocation certificate
- Throws:
org.bouncycastle.openpgp.PGPException
-
changePassphraseFromOldPassphrase
default SecretKeyRingEditorInterface.WithKeyRingEncryptionSettings changePassphraseFromOldPassphrase(@Nullable Passphrase oldPassphrase)
Change the passphrase of the whole key ring.- Parameters:
oldPassphrase
- old passphrase or null, if the key was unprotected- Returns:
- next builder step
-
changePassphraseFromOldPassphrase
SecretKeyRingEditorInterface.WithKeyRingEncryptionSettings changePassphraseFromOldPassphrase(@Nullable Passphrase oldPassphrase, @Nonnull KeyRingProtectionSettings oldProtectionSettings)
Change the passphrase of the whole key ring.- Parameters:
oldPassphrase
- old passphrase or null, if the key was unprotectedoldProtectionSettings
- custom settings for the old passphrase- Returns:
- next builder step
-
changeSubKeyPassphraseFromOldPassphrase
default SecretKeyRingEditorInterface.WithKeyRingEncryptionSettings changeSubKeyPassphraseFromOldPassphrase(@Nonnull java.lang.Long keyId, @Nullable Passphrase oldPassphrase)
Change the passphrase of a single subkey in the key ring. Note: While it is a valid use-case to have different passphrases per subKey, this is one of the reasons why OpenPGP sucks in practice.- Parameters:
keyId
- id of the subkeyoldPassphrase
- old passphrase- Returns:
- next builder step
-
changeSubKeyPassphraseFromOldPassphrase
SecretKeyRingEditorInterface.WithKeyRingEncryptionSettings changeSubKeyPassphraseFromOldPassphrase(@Nonnull java.lang.Long keyId, @Nullable Passphrase oldPassphrase, @Nonnull KeyRingProtectionSettings oldProtectionSettings)
-
done
org.bouncycastle.openpgp.PGPSecretKeyRing done()
Return thePGPSecretKeyRing
.- Returns:
- the key
-
-