Le SSL en Python

1. Introduction

Deux modules séparés en Python offrent aux développeurs la possibilité d’incorporer SSL dans leurs applications.

Nous ne reviendrons pas ici dans l’explication du SSL ni de son fonctionnement, beaucoup d’ouvrages sur le sujet ont été publiés.

Dans la bibliothèque socket déjà vue précédemment, il existe une méthode permettant d’utiliser le SSL. L’implémentation dans socket est vraiment basique et n’est pas capable d’authentifier le client distant sur le serveur.

La seconde possibilité est d’utiliser pyOpenSSL, un autre module. C’est une interface du populaire OpenSSL, beaucoup plus puissante et complexe.

Nous utiliserons pour la suite ce dernier module.

2. Utilisation d’OpenSSL

Commençons par un exemple de script basique.

chap2_exo40.py


#!/usr/bin/env python  
#coding:utf-8  
 
import socket, sys  
from OpenSSL import SSL  
 
ctx=SSL.Context(SSL.SSLv23_METHOD)  
print "Creation du socket ...",  
s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)  
print "socket cree\n"  
 
ssl=SSL.Connection(ctx,s)  
print "Etablissement du SSL...",  
ssl.connect(('www.openssl.org',443))  
print "connexion effectuee"  
 
print "Requete demandee...",  
ssl.sendall("GET / HTTP/1.0\r\n\r\n")  
print "Requete effectuee"...
couv_EP2HAFO.png

Découvrez 

le livre :

Aussi inclus dans nos :

Précédent
Les e-mails
Suivant
Utilisation de bases de données