I want to print SSL public key type:
certificate = ssl.get_server_certificate(serverAddress)
x509 = OpenSSL.crypto.load_certificate(OpenSSL.crypto.FILETYPE_PEM, certificate)
pk = x509.get_pubkey()
print("Certificate public key type : " + keyTypeToStr(pk.type()))
def keyTypeToStr(keyType):
if keyType == OpenSSL.crypto.TYPE_RSA:
return "RSA"
elif keyType == OpenSSL.crypto.TYPE_DSA:
return "DSA"
#elif keyType == OpenSSL.crypto.TYPE_ECDSA: # this enum doesn't exist
# return "ECDSA"
return "UNKNOW(" + str(keyType) + ")"
Problem, it is a number... For example, I would like to print "secp256r1". How can I do it?