91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

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
浙江省| 潜山县| 年辖:市辖区| 浮梁县| 鲁山县| 盐津县| 衡阳县| 肥城市| 东乌珠穆沁旗| 芦溪县| 丰宁| 政和县| 香格里拉县| 浦北县| 墨玉县| 奉化市| 张家界市| 共和县| 兴安盟| 神农架林区| 绥中县| 寿宁县| 赣榆县| 桐城市| 景德镇市| 衡南县| 怀远县| 平乡县| 吴旗县| 定西市| 罗江县| 五莲县| 如皋市| 彭阳县| 宣恩县| 兴山县| 翁牛特旗| 泾阳县| 滨海县| 安西县| 阜新市|