En una aplicación Rails 3.0 (Rubí 1.9.2) Estoy tratando de cifrar algunos datos utilizando algo como esto:Cómo cifrar datos en una cadena UTF-8 utilizando OpenSSL :: Cipher?
cipher = OpenSSL::Cipher.new 'aes-256-cbc'
cipher.encrypt
cipher.key = cipher.random_key
cipher.iv = cipher.random_iv
encrypted = cipher.update 'most secret data in the world'
encrypted << cipher.final
que entrará en una base de datos UTF-8. Mi problema es que
> encrypted.encoding
=> #<Encoding:ASCII-8BIT>
> encrypted.encode 'utf-8'
Encoding::UndefinedConversionError: "\xF7" from ASCII-8BIT to UTF-8
¿Cómo puedo obtener una cadena cifrada UTF-8?
¡Gracias por esto! – Brandon
'» codificada = Base64.encode64 ('Tromsø'). Codificar ('utf-8') => "VHJvbXPDuA == \ n" »Base64.decode64 (encoded.encode ('ascii-8bit')) => "Troms \ xC3 \ xB8" ' – mhenrixon
¡Gracias, salvó mi día! – ti6on