Мне нужно сделать тройное шифрование и дешифрование DES в ruby. Могу ли я использовать гем openpgp или любой другой специальный гем для тройного шифрования/дешифрования DES. Пожалуйста, предложите мне.
Спасибо
Мне нужно сделать тройное шифрование и дешифрование DES в ruby. Могу ли я использовать гем openpgp или любой другой специальный гем для тройного шифрования/дешифрования DES. Пожалуйста, предложите мне.
Спасибо
Вероятно, вы имеете в виду openssl, а не openpgp. Вот документация по функциям шифрования openssl в ruby. . Вы также можете использовать гораздо более простой модуль тарабарщины. В любом случае вам нужен Ruby, скомпилированный с поддержкой openssl; либо скомпилируйте его самостоятельно, либо найдите его, доступный для скачивания.
Если это обязательно должен быть Triple DES, вот как вы можете получить экземпляр с расширением OpenSSL:
cipher = OpenSSL::Cipher::Cipher.new("des-ede-cbc")
cipher.encrypt
key = cipher.random_key
iv = cipher.random_iv
...
Обязательно вызывайте random_key
и random_iv
, как показано здесь и в документах, которые уже упоминались в SilverbackNet. Там вы также найдете пример того, как выполнять фактическое шифрование и дешифрование.
Если вы можете свободно выбирать алгоритм, вы можете выбрать AES, а не Triple DES, это намного быстрее и обычно считается более современным шифром.