akka.persistence.gdpr.scaladsl
A KeyManagement for creating and retrieving keys.
A KeyManagement for creating and retrieving keys.
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
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.
Extension point for creating a GdprEncryption by only providing the KeyManagement facilities.
This uses AES/GCM/NoPadding with an initialization vector created from a SecureRandom.
Implementations must be thread-safe.