module Sidekiq::Crypt::Cipher
Public Class Methods
decrypt(confidential_param, initialization_vector, key_version)
click to toggle source
# File lib/sidekiq-crypt/cipher.rb, line 16 def decrypt(confidential_param, initialization_vector, key_version) decryptor_cipher = decryption_cipher(initialization_vector, key_version) decryptor_cipher.update(Base64.decode64(confidential_param.to_s)) + decryptor_cipher.final end
encrypt(confidential_param, initialization_vector)
click to toggle source
# File lib/sidekiq-crypt/cipher.rb, line 10 def encrypt(confidential_param, initialization_vector) encryptor = encryption_cipher(initialization_vector) # use base64 to prevent Encoding::UndefinedConversionError Base64.encode64(encryptor.update(confidential_param.to_s) + encryptor.final) end
random_iv()
click to toggle source
# File lib/sidekiq-crypt/cipher.rb, line 22 def random_iv OpenSSL::Cipher::AES.new(256, :CBC).encrypt.random_iv end
Private Class Methods
decryption_cipher(initialization_vector, key_version)
click to toggle source
# File lib/sidekiq-crypt/cipher.rb, line 36 def decryption_cipher(initialization_vector, key_version) cipher = OpenSSL::Cipher::AES.new(256, :CBC).decrypt cipher.key = Sidekiq::Crypt.configuration.key_by_version(key_version) cipher.iv = initialization_vector cipher end
encryption_cipher(initialization_vector)
click to toggle source
# File lib/sidekiq-crypt/cipher.rb, line 28 def encryption_cipher(initialization_vector) cipher = OpenSSL::Cipher::AES.new(256, :CBC).encrypt cipher.key = Sidekiq::Crypt.configuration.current_key cipher.iv = initialization_vector cipher end