У меня есть проект rails 4 со следующим кодом
crypt = ActiveSupport::MessageEncryptor.new(Rails.application.secrets.secret_key_base)
encrypted_data = crypt.encrypt_and_sign('my confidental data')
И зашифрованные данные можно расшифровать с помощью:
decrypted_back = crypt.decrypt_and_verify(encrypted_data)
, и я недавно обновил проект до rails 6, и этокод перестал работать, и у меня есть много зашифрованных данных, сохраненных в базе данных
как я могу заставить эту работу работать так, как она работала раньше, без необходимости перехода со старого шифрования на какое-то новое шифрование в рельсах, например
len = ActiveSupport::MessageEncryptor.key_len
salt = SecureRandom.random_bytes(len)
key = ActiveSupport::KeyGenerator.new('password').generate_key(salt, len)
crypt = ActiveSupport::MessageEncryptor.new(key)
encrypted_data = crypt.encrypt_and_sign('my secret data')
crypt.decrypt_and_verify(encrypted_data)
Спасибо