ruby-on-rails encryption

ruby on rails - Encriptar, desencriptar usando Rails



ruby-on-rails encryption (2)

Hace un tiempo vi la posibilidad de descifrar y encriptar cadenas en rieles sin incluir ninguna biblioteca, pero no puedo encontrar la publicación del blog.

Quiero ser capaz de cifrar y descifrar cadenas sin incluir nada. Usar la misma clave tiene para todo lo demás en los rieles, por ejemplo, las cookies firmadas.

¿Algunas ideas?


¿Te refieres a este ?: ActiveSupport::MessageEncryptor . Esta es la forma de reutilizar el secreto de la aplicación Rails 4:

crypt = ActiveSupport::MessageEncryptor.new(Rails.application.secrets.secret_key_base) encrypted_data = crypt.encrypt_and_sign(''my confidental data'')

Y los datos cifrados se pueden descifrar con:

decrypted_back = crypt.decrypt_and_verify(encrypted_data)

Anteriormente, Rails 3 estaba utilizando la opción de configuración secret_token y los métodos de secret_token se secret_token .


Rails 5 requiere que la clave tenga 32 bytes.

Edit to Rails 4 respuesta que funciona para Rails 5:

key = SecureRandom.random_bytes(32) crypt = ActiveSupport::MessageEncryptor.new(key) encrypted_data = crypt.encrypt_and_sign(''my confidental data'')

Descifrar

decrypted_back = crypt.decrypt_and_verify(encrypted_data)