Python OpenSSL生成公钥和私钥对

时间:2012-03-20 21:42:18

标签: python openssl private public

我在查找使用OpenSSL生成公钥和私钥对的命令时遇到问题。有人可以给我看一些示例代码吗?

谢谢

2 个答案:

答案 0 :(得分:7)

使用pyOpenSSL绑定:

OpenSSL.crypto.PKey().generate_key(type, bits)
     

生成type类型(TYPE_RSATYPE_DSA之一)的公钥/私钥对,其大小为bits

Docs

(提出一个简短的问题......)

答案 1 :(得分:0)

def makeCertificate(** kw): 密钥对= PKey() keypair.generate_key(TYPE_RSA,1024)

certificate = X509()
certificate.gmtime_adj_notBefore(0)
certificate.gmtime_adj_notAfter(60 * 60 * 24 * 365) # One year
for xname in certificate.get_issuer(), certificate.get_subject():
    for (k, v) in kw.items():
        setattr(xname, k, nativeString(v))

certificate.set_serial_number(counter())
certificate.set_pubkey(keypair)
certificate.sign(keypair, "md5")

return keypair, certificate