[Python-Dev] Summer of Code: Developing complete SSL support for Python

Steve Holden steve at holdenweb.com
Mon Jun 13 18:17:08 CEST 2005


Gustavo J. A. M. Carneiro wrote:
[...]
> 
>   4. In the socket module documentation:
> 
> 
> ssl(
> sock[, keyfile, certfile])
>         Initiate a SSL connection over the socket sock. keyfile is the
>         name of a PEM formatted file that contains your private key.
>         certfile is a PEM formatted certificate chain file. On success,
>         a new SSLObject is returned.
>         
> Warning: This does not do any certificate verification!
> 
>    I would make it a top priority to enable certificate verification in
> ssl sockets.  I don't see the point in doing SSL without certificate
> verification.  It's just false security.  Maybe adding a callback asking
> the application what to do if certificate validation fails, so that
> application writers can show a GUI dialogue or something like that...
> 
>   Best regards.
> 

I believe that SSL sockets without certificate verification will still 
retain the advantages of encryption ind integrity checking, though you 
are right to say that *authentication* is lost without certificate 
checking: the certificate is essentially the CA's assertion that they 
have applied the process described in their Certification Practices 
Statement to identify the subject.

Then you must consider which CA's will be acceptable certificate 
issuers, and build trust for their certificates into the system in some 
modifiable way - we need to be able to add CA's - by the incorporation 
of the CAs' self-signed certificates, as in the browsers.

So almost certainly if the platform has a certificate repository it 
might be good to offer an interface to that, as well as offering a 
private certificate repository.

regards
  Steve
-- 
Steve Holden        +1 703 861 4237  +1 800 494 3119
Holden Web LLC             http://www.holdenweb.com/
Python Web Programming  http://pydish.holdenweb.com/



More information about the Python-Dev mailing list