Sha256: 108190dcc4e62da45d7e0941e4270890144e7b482a0ccdda3dcf9140ee823974
Contents?: true
Size: 862 Bytes
Versions: 2
Compression:
Stored size: 862 Bytes
Contents
# Flow.io (2017) # Module uses rails engine for encrypt and decrypt # example # enc1 = Flow::SimpleCrypt.encrypt('foo') # Flow::SimpleCrypt.encrypt(enc1) # # example with salt # enc2 = Flow::SimpleCrypt.encrypt('bar', '127.0.0.1') # Flow::SimpleCrypt.encrypt(enc2) # raises error: ActiveSupport::MessageVerifier::InvalidSignature # Flow::SimpleCrypt.encrypt(enc2, '127.0.0.1') # ok module Flow::SimpleCrypt extend self def encrypt_base(salt) local_secret = Rails.application.secrets.secret_key_base[0,32] key = ActiveSupport::KeyGenerator.new(local_secret).generate_key(salt || '', 32) ActiveSupport::MessageEncryptor.new(key) end def encrypt(raw_data, salt=nil) encrypt_base(salt).encrypt_and_sign(raw_data) end def decrypt(enc_data, salt=nil) encrypt_base(salt).decrypt_and_verify(enc_data) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
flowcommerce-solidus-0.1.12 | ./static/app/flow/flow/simple_crypt.rb |
flowcommerce-solidus-0.1.11 | ./static/app/flow/flow/simple_crypt.rb |