gpt4 book ai didi

ruby-on-rails - 将 .pem 和 .key 文件作为字符串存储在数据库中

转载 作者:行者123 更新时间:2023-12-04 22:40:08 30 4
gpt4 key购买 nike

我试图允许用户在我的 rails 数据库中存储 .pem 和 .key 文件文本字符串,但是当我尝试使用 OpenSSL::X509::Certificate.new 和 OpenSSL::PKey::RSA.new 读取它们时,我得到以下错误:OpenSSL::X509::CertificateError:nested asn1 错误。有没有更好的方法来做到这一点?

最佳答案

pem key您可以使用这种简单的方法:

# Create pem key
pkey = OpenSSL::PKey::RSA.new 2048
# Save key
s = pkey.to_s
# Read key by load text key content to s variable, then:
pkey = OpenSSL::PKey::RSA.new(s)
但与 X.509 key您必须填写一些额外的信息才能保存:
# Create X.509 key
xkey = OpenSSL::X509::Certificate.new
# Fill some fields
xkey.version = 2
xkey.serial = 0
xkey.not_before = Time.now
xkey.not_after = Time.now + 3600
xkey.public_key = key.public_key
xkey.sign key, OpenSSL::Digest::SHA1.new
# Save key
s = xkey.to_s
# Read key by load text key content to s variable, then:
xkey = OpenSSL::X509::Certificate.new(s)
所有错误都会从您的代码中消失:D

关于ruby-on-rails - 将 .pem 和 .key 文件作为字符串存储在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67695411/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com