Jak rozwiązać ostrzeżenia o wycofaniu dla szyfrowania OpenSSL :: Cipher :: Cipher #

Właśnie zaktualizowałem mojego Maca do Snow Leoparda i uruchomiłem środowisko Railsów. Jedyną różnicą - na bok OSX - z moją poprzednią instalacją jest to, że teraz pracujęruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0] (Domyślnie Snow Leopard) zamiast 1.8.6.

Widzę teraz ostrzeżenia o nieaktualności dotyczące OpenSSL, gdy uruchamiam mój kod:

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

Przykład mojego kodu powodującego te ostrzeżenia (dekoduje zaszyfrowany ciąg) w linii 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

Staram się zrozumieć, jak mogę to rozwiązać, a Google tak naprawdę nie pomaga. Czy powinienem spróbować przejść na Ruby 1.8.6 (a jeśli tak, to jaki jest najlepszy sposób na zrobienie tego?), Czy powinienem próbować ukryć ostrzeżenia (zakopać głowę w piasku? można zastosować w kodzie?

questionAnswers(2)

yourAnswerToTheQuestion