亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

Ruby加密與解密能自動完成嗎

小樊
82
2024-11-05 19:10:26
欄目: 編程語言

是的,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 = cipher.update(data) + cipher.final
  Base64.encode64(encrypted_data)
end

# 解密函數
def decrypt(encrypted_data, private_key)
  cipher = OpenSSL::Cipher.new('RSA-OAEP')
  cipher.decrypt
  cipher.key = private_key
  decrypted_data = cipher.update(Base64.decode64(encrypted_data)) + cipher.final
  decrypted_data
end

# 示例
public_key, private_key = generate_key_pair
data = "Hello, World!"
encrypted_data = encrypt(data, public_key)
puts "Encrypted Data:"
puts encrypted_data
decrypted_data = decrypt(encrypted_data, private_key)
puts "Decrypted Data:"
puts decrypted_data

在這個示例中,我們首先生成一個 RSA 密鑰對,然后使用公鑰加密字符串,最后使用私鑰解密字符串。加密后的數據會被 Base64 編碼,以便于傳輸和存儲。

0
海安县| 封丘县| 西宁市| 观塘区| 普格县| 麻江县| 林西县| 桂东县| 大邑县| 兴义市| 和静县| 永清县| 龙岩市| 新余市| 巨野县| 偃师市| 丰城市| 湖州市| 浮梁县| 安溪县| 顺义区| 富宁县| 禹城市| 兴国县| 鄂温| 沙坪坝区| 连平县| 深泽县| 广南县| 牡丹江市| 中西区| 南靖县| 南木林县| 孝感市| 康马县| 莱西市| 韩城市| 容城县| 瑞金市| 阳谷县| 新余市|