class ActiveRecord::Encryption::Context
-
A message serializer
* A cipher, the encryption algorithm
* An encryptor, the facade to encrypt data
* A key generator
* A key provider
An encryption context configures the different entities used to perform encryption:
def build_default_key_provider
def build_default_key_provider ActiveRecord::Encryption::DerivedSecretKeyProvider.new(ActiveRecord::Encryption.config.primary_key) end
def initialize
def initialize set_defaults end
def key_provider
def key_provider @key_provider ||= build_default_key_provider end
def set_defaults
def set_defaults self.frozen_encryption = false self.key_generator = ActiveRecord::Encryption::KeyGenerator.new self.cipher = ActiveRecord::Encryption::Cipher.new self.encryptor = ActiveRecord::Encryption::Encryptor.new self.message_serializer = ActiveRecord::Encryption::MessageSerializer.new end