2

我需要在 ruby​​ 中进行三重 DES 加密和解密。我是否可以使用 openpgp gem 或任何其他专用 gem 来进行三重 DES 加密/解密。请建议我。

谢谢

4

2 回答 2

4

您可能正在考虑openssl,而不是openpgp。这是 ruby​​ 中的 openssl 加密函数的文档。您还可以使用更简单的乱码模块。无论哪种方式,您都需要使用 openssl 支持编译 Ruby;要么自己编译,要么找一个可以下载的。

于 2012-09-10T22:31:29.567 回答
3

如果它绝对必须是三重 DES,以下是获取具有 OpenSSL 扩展的实例的方法:

cipher = OpenSSL::Cipher::Cipher.new("des-ede-cbc")
cipher.encrypt
key = cipher.random_key
iv = cipher.random_iv
...

请确保致电random_keyrandom_iv按照此处和 SilverbackNet 已经提到的文档中的说明进行操作。在那里,您还将找到有关如何进行实际加密和解密的示例。

如果您可以自由选择算法,您可能希望选择 AES 而不是 Triple DES,它要快得多,并且通常被认为是更现代的密码。

于 2012-09-12T12:19:46.310 回答