我正在尝试序列化一个 ruby 对象(其中包含一些 SSL 参数)。
我试过了
Marshal::dump(that_object)
报错
no _dump_data is defined for class OpenSSL::X509::Certificate
我尝试使用存储
a = YAML::dump(that_object)
对象被存储时没有任何错误,但是当我尝试时
YAML::load(a)
对象被完全加载。但是 openSSL::X509 和 OpenSSL::PKey::RSA
的值发生了变化,一些其他属性变为 nil。
我的问题是如何使用 SSL 参数序列化对象,以便以后可以获取相同的对象。
最佳答案
这可能是不可能的,因为您引用的 SSL 数据不是 ruby 对象,而只是指向 OpenSSL 库的指针。这意味着您不能简单地序列化它们。但是认为 X509 和 RSA key 的序列化独立于 ruby,因此请注意将这些数据转换为 PEM 或 DER 的函数。
关于ruby-on-rails - Ruby 序列化和反序列化 SSL 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30299144/