Cómo resolver las advertencias de desaprobación para OpenSSL :: Cipher :: Cipher # encrypt
Acabo de actualizar mi Mac a Snow Leopard y tengo mi entorno Rails en funcionamiento. La única diferencia, aparte de OSX, con mi instalación anterior es que ahora estoy ejecutandoruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0]
(Snow Leopard por defecto) en lugar de 1.8.6.
Ahora veo advertencias de desaprobación relacionadas con OpenSSL cuando ejecuto mi código:
warning: argumtents for OpenSSL::Cipher::Cipher#encrypt and OpenSSL::Cipher::Cipher#decrypt were deprecated; use OpenSSL::Cipher::Cipher#pkcs5_keyivgen to derive key and IV
Ejemplo de mi código que está causando estas advertencias (descodifica una cadena encriptada) en la línea 4:
1. def decrypt(data)
2. encryptor = OpenSSL::Cipher::Cipher.new('DES-EDE3-CBC')
3. key = "my key"
4. encryptor.decrypt(key)
5. text = encryptor.update(data)
6. text << encryptor.final
7. end
Estoy luchando por entender cómo puedo resolver esto, y Google no está ayudando realmente. ¿Debo intentar rebajar a Ruby 1.8.6 (y si es así, ¿cuál es la mejor manera de hacer esto?), Debería intentar y simplemente ocultar las advertencias (¡¿enterrar mi cabeza en la arena ?!) o hay una solución fácil. ¿Se puede aplicar en el código?