2010-12-07 4 views
4

Existe-t-il un moyen d'envelopper une connexion socket avec SSL en utilisant le module ssl de python dans python 2.6 en utilisant un fichier pkcs # 12? Le fichier contient une clé privée et un certificat. Je veux les utiliser pour le côté client de la connexion. This post semble laisser entendre que c'est peut-être possible mais ne donne pas une vraie réponse définitive.SSL Python avec certificats PKCS # 12

+0

Le client n'a besoin que d'une clé privée et d'un certificat lorsque le serveur requiert l'authentification du client SSL, ce qui est rare. –

+1

Rare mais exactement ce que je dois faire. – user533020

+0

Cet avis pourrait être utile: https://gist.github.com/erikbern/756b1d8df2d1487497d29b90e81f8068 –

Répondre

2

Pas avec le module ssl de python. M2Crypto ne peut pas le faire aussi pour l'instant, pas plus que python-gnutls. Si vous avez commande OpenSSL disponible sur votre ordinateur client, vous pouvez ré-exportation qui pkcs12 au format pem exécutant la commande OpenSSL, et utiliser les résultats, quelque chose comme:

openssl pkcs12 -in your_pkcs.p12 -out client_certs.pem -clcerts -nokeys [password options] 
openssl pkcs12 -in your_pkcs.p12 -out keys.pem -nocerts [password options] 

Cependant PKCS12 est utterly broken by design, tout en populaire, vous devriez l'éviter si possible.

Questions connexes