python 数字证书模拟登录_用于生成WebService使用的数字证书及签署证书.python脚本...

本文档详细介绍了如何使用Python脚本创建一个用于WebService的自签名证书,并允许用户输入身份信息以进行个性化标识。流程包括获取用户信息、构造OpenSSL所需的X500格式字符串以及证书创建过程。
摘要由CSDN通过智能技术生成

#! /bin/env python

# -*- encoding:gbk -*-

"""

用于生成

WebService

使用的

CA

及并且签署证书

"""

import sys,shutil,os,subprocess,getpass

configure={"debug":False}

def quiet_run(cmd,argstr=None):

nf=file(os.devnull,"rw")

if configure["debug"]:

p=subprocess.Popen(cmd,stdin=subprocess.PIPE)

else:

p=subprocess.Popen(cmd,stdin=subprocess.PIPE,stdout=nf,stderr=nf)

if argstr is not None:

p.stdin.write(argstr)

p.stdin.write("\n")

p.stdin.flush()

p.wait()

def get_indentity():

"""

取得用户身份信息

"""

print

"

请输入你的身份信息,这些信息将被附加到证书上,以便于客户确认您的

身份

"

print "

只输入英文

"

identity={}

identity["C"]="CN"

identity["ST"]=raw_input("

请输入您的省份:

")

identity["L"]=raw_input("

请输入您的城市:

")

identity["O"]=raw_input("

请输入您的单位名称:

")

identity["OU"]=raw_input("

请输入您的部门名称:

")

identity["CN"]=raw_input("

请输入您的名字:

")

identity["EMAILADDRESS"]=raw_input("

请输入您的电子邮箱地址

:")

#

连接成

OpenSSL

要求的

X500

格式字符串

subj="".join(["/"+"=".join((key,identity[key])) for key in identity if len(identity[key])>0])

print "

您的身份认证信息是

%s"%subj

print

return subj

def create_ca():

#

取得用户身份

subj=get_indentity()

#

要求输入密码和证书文件名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值