2010-12-07 1 views
4

Есть ли способ связать соединение сокета с SSL с использованием ssl-модуля python в python 2.6 с помощью файла pkcs # 12? Файл содержит закрытый ключ и сертификат. Я хочу использовать их для клиентской стороны соединения. This post, похоже, намекает, что это возможно, но не дает реального окончательного ответа.Python SSL с сертификатами PKCS # 12

+0

Клиенту нужен только закрытый ключ и сертификат, когда сервер требует аутентификации клиента SSL, что редко. – 2010-12-07 00:25:37

ответ

2

Не с модулем ssl python. M2Crypto не может сделать это и в данный момент, и не python-gnutls. Если у вас есть OpenSSL команды доступны на клиентской машине, вы можете реэкспорт, что PKCS12 в формате PEM, выполнив команду OpenSSL, и использовать результаты, что-то вроде:

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] 

Однако PKCS12 является utterly broken by design, в то же время популярный, вы должны избегать его, если это возможно.