class SimpleEncryptable::Encryptor
Public Class Methods
decrypt(value, options)
click to toggle source
# File lib/simple_encryptable/encryptor.rb, line 14 def decrypt(value, options) key = key(options) ActiveSupport::MessageEncryptor.new(key).decrypt_and_verify(value) end
encrypt(value, options)
click to toggle source
# File lib/simple_encryptable/encryptor.rb, line 9 def encrypt(value, options) key = key(options) ActiveSupport::MessageEncryptor.new(key).encrypt_and_sign(value) end
Private Class Methods
key(arguments = {})
click to toggle source
# File lib/simple_encryptable/encryptor.rb, line 21 def key(arguments = {}) raise Error, 'Secret option is missing.' if arguments[:secret].to_s.empty? raise Error, 'Salt option is missing' if arguments[:salt].to_s.empty? ::ActiveSupport::KeyGenerator .new(arguments[:secret]) .generate_key(arguments[:salt], ActiveSupport::MessageEncryptor.key_len).freeze end