Android应用程序的自签名证书到期

时间:2016-11-04 23:39:21

标签: android ssl https ssl-certificate

我想知道是否可以制作自签名证书 在我的服务器上,以便我的应用程序可以通过ssl进行通信(我知道 方法如何使我的应用程序信任自签名证书,以便 证书不会在1年后到期,但可能在5年内,因为我没有 想手动更新许多使用ssl的应用程序。

有没有办法让自签名证书没有 一年内到期?如果没有,是否有任何意义 如果某个日期已过,我的应用程序会下载新证书吗? 感谢。

1 个答案:

答案 0 :(得分:0)

当您创建/签署证书时,您可以完全自由地设置任何您想要的到期时间。

以下是如何使用Ruby生成自签名SSL证书的方法。我个人更喜欢在与OpenSSL交谈时使用语言绑定,因为CLI使用起来有点复杂:)

require "openssl"

keypair = OpenSSL::PKey::RSA.new(2048)
File.open("/tmp/key.pem", "w+") do |f|
  f.write ca_keypair.to_pem(OpenSSL::Cipher.new("AES-128-CBC"), "my passphrase")
end

cert = OpenSSL::X509::Certificate.new
cert.not_before = Time.now
cert.subject = OpenSSL::X509::Name.new([
    ["C", "NO"],
    ["ST", "Oslo"],
    ["L", "Oslo"],
    ["CN", "August Lilleaas"]
  ])
cert.issuer = cert.subject
cert.not_after = Time.now + 1000000000 # 40 or so years
cert.public_key = keypair.public_key

File.open("/tmp/cert.pem", "w+") do |f|
  f.write cert.to_pem
end