Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将x509.get_pubkey().type()转换为人类可读的字符串?_Python_Ssl_Secp256r1 - Fatal编程技术网

Python 如何将x509.get_pubkey().type()转换为人类可读的字符串?

Python 如何将x509.get_pubkey().type()转换为人类可读的字符串?,python,ssl,secp256r1,Python,Ssl,Secp256r1,我要打印SSL公钥类型: certificate=ssl.get\u server\u证书(服务器地址) x509=OpenSSL.crypto.load\u证书(OpenSSL.crypto.FILETYPE\u PEM,证书) pk=x509.get_pubkey() 打印(“证书公钥类型:+keyTypeToStr(pk.type())) def keyTypeToStr(keyType): 如果keyType==OpenSSL.crypto.TYPE\u RSA: 返回“RSA” el

我要打印SSL公钥类型:

certificate=ssl.get\u server\u证书(服务器地址)
x509=OpenSSL.crypto.load\u证书(OpenSSL.crypto.FILETYPE\u PEM,证书)
pk=x509.get_pubkey()
打印(“证书公钥类型:+keyTypeToStr(pk.type()))
def keyTypeToStr(keyType):
如果keyType==OpenSSL.crypto.TYPE\u RSA:
返回“RSA”
elif keyType==OpenSSL.crypto.TYPE_DSA:
返回“DSA”
#elif keyType==OpenSSL.crypto.TYPE_ECDSA:#此枚举不存在
#返回“ECDSA”
返回“UNKNOW(+str(keyType)+)”
问题是,这是一个数字。。。例如,我想打印“secp256r1”。
如何操作?

键类型中不存在EC
namedCurve
字段。为此,您必须解析ECDSA密钥数据,但不知道如何在Python+OpenSSL中解析。