如何在python3中创建自签名的PKCS12证书

问题描述

我想使用python3脚本创建PKCS12(.p12)自签名证书。我已经准备好了执行此脚本的脚本:

以下是此特定情况下较大代码的摘录:

import os
import random

storetype = pkcs12

def generate_keystore(keypass,storetype):
    global certFile
    global fileExt
    certAlias = 'IamMe'
    certAlg = 'RSA'
    certSigAlg = 'SHA1withRSA'
    certExp = '365'
    certKeySize = '2048'
    certKeyType = storetype
    certKeyPass = keypass
    fileName = 'keystore'
    dname = 'CN=santiago.com'
    if certKeyType == "pkcs12":
        fileExt = 'p12' 
    elif certKeyType == "jks":
        fileExt = 'jks' 
    certFile = fileName + '.' + fileExt

    keytool = 'keytool -genkey -noprompt \
                -alias ' + certAlias + ' \
                -keypass ' + certKeyPass + ' \
                -keyalg ' + certAlg + ' \
                -sigalg ' + certSigAlg + '\
                -validity ' + certExp + ' \
                -dname ' + dname + ' \
                -keysize ' + certKeySize + ' \
                -keystore ' + certFile + ' \
                -storepass '+ certKeyPass +' \
                -storetype  ' + certKeyType 

    os.system(keytool)

def generate_password(length):
    global kspwd
    letters_and_digits = string.ascii_letters + string.digits
    kspwd = ''.join((random.choice(letters_and_digits) for i in range(length)))

generate_password(16)
generate_keystore(kspwd,storetype)

但是我想看看是否还有另一种不依赖于keytool命令的方法(如果主机不具有它,脚本将失败,请避免这种情况)。

任何指针都将受到欢迎。谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...