Decrypt the given payload with the key identified by dataSubjectId.
Decrypt the given payload with the key identified by dataSubjectId.
The key will be retrieved using the KeyManagement
None if the key has been deleted
Encrypt the given payload with the key identified by dataSubjectId.
Encrypt the given payload with the key identified by dataSubjectId.
The key will be either created or retrieved using the KeyManagement
A KeyManagement for creating and retrieving keys.
A KeyManagement for creating and retrieving keys.
The SecureRandom
that is used for the initialization vectors of the encryption.
The SecureRandom
that is used for the initialization vectors of the encryption.
Subclass may override to define another implementation than the default.
Remove the key identified by dataSubjectId from KeyManagement.
Remove the key identified by dataSubjectId from KeyManagement.
Implementation of
GdprEncryption
for unit testing purposes. Don't use in production, since it is only holding the generated keys in memory.It can be enabled in configuration with:
akka.persistence.gdpr.encryption-provider = "akka.persistence.gdpr.test-provider"