class ActiveRecord::Encryption::Context

An encryption context configures the different entities used to perform encryption:

Constants

PROPERTIES

Public Class Methods

new() click to toggle source
# File lib/active_record/encryption/context.rb, line 17
def initialize
  set_defaults
end

Public Instance Methods

key_provider() click to toggle source
# File lib/active_record/encryption/context.rb, line 24
def key_provider
  @key_provider ||= build_default_key_provider
end

Private Instance Methods

build_default_key_provider() click to toggle source
# File lib/active_record/encryption/context.rb, line 37
def build_default_key_provider
  ActiveRecord::Encryption::DerivedSecretKeyProvider.new(ActiveRecord::Encryption.config.primary_key)
end
set_defaults() click to toggle source
# File lib/active_record/encryption/context.rb, line 29
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