class EncryptedStore::Instance
Public Instance Methods
config(&block)
click to toggle source
# File lib/encrypted_store/instance.rb, line 3 def config(&block) (@__config ||= Config.new).tap { |config| if block_given? config.define(&block) end } end
decrypt_key(dek, primary = false)
click to toggle source
# File lib/encrypted_store/instance.rb, line 22 def decrypt_key(dek, primary = false) config.decrypt_key? ? config.decrypt_key.last.call(dek, primary) : dek end
encrypt_key(dek, primary = false)
click to toggle source
# File lib/encrypted_store/instance.rb, line 26 def encrypt_key(dek, primary = false) config.encrypt_key? ? config.encrypt_key.last.call(dek, primary) : dek end
preload_keys(amount = 12)
click to toggle source
Preloads the most recent `amount` keys.
# File lib/encrypted_store/instance.rb, line 17 def preload_keys(amount = 12) keys = EncryptedStore::ActiveRecord.preload_keys(amount) keys.each { |k| (@_decrypted_keys ||= {})[k.id] = k.decrypted_key } end
retrieve_dek(key_model, key_id)
click to toggle source
# File lib/encrypted_store/instance.rb, line 30 def retrieve_dek(key_model, key_id) (@_decrypted_keys ||= {})[key_id] ||= key_model.find(key_id).decrypted_key end
rotate_keys()
click to toggle source
# File lib/encrypted_store/instance.rb, line 11 def rotate_keys EncryptedStore::ActiveRecord.rotate_keys end