是的,Ruby 可以自动完成加密和解密。你可以使用 Ruby 的内置库 OpenSSL
来实现加密和解密功能。以下是一个简单的示例,展示了如何使用 OpenSSL 对字符串进行加密和解密:
require 'openssl' require 'base64' # 生成一个密钥对 def generate_key_pair key = OpenSSL::PKey::RSA.new(2048) puts "Private Key:" puts key.private_key.to_pem puts "Public Key:" puts key.public_key.to_pem key end # 加密函数 def encrypt(data, public_key) cipher = OpenSSL::Cipher.new('RSA-OAEP') cipher.encrypt cipher.key = public_key encrypted_data = https://www.yisu.com/ask/cipher.update(data) + cipher.final'RSA-OAEP') cipher.decrypt cipher.key = private_key decrypted_data = https://www.yisu.com/ask/cipher.update(Base64.decode64(encrypted_data)) + cipher.final"Hello, World!" encrypted_data = https://www.yisu.com/ask/encrypt(data, public_key)"Encrypted Data:" puts encrypted_data decrypted_data = https://www.yisu.com/ask/decrypt(encrypted_data, private_key)"Decrypted Data:" puts decrypted_data
在这个示例中,我们首先生成一个 RSA 密钥对,然后使用公钥加密字符串,最后使用私钥解密字符串。加密后的数据会被 Base64 编码,以便于传输和存储。