Home     |     .Net Programming    |     cSharp Home    |     Sql Server Home    |     Javascript / Client Side Development     |     Ajax Programming

Ruby on Rails Development     |     Perl Programming     |     C Programming Language     |     C++ Programming     |     IT Jobs

Python Programming Language     |     Laptop Suggestions?    |     TCL Scripting     |     Fortran Programming     |     Scheme Programming Language


 
 
Cervo Technologies
The Right Source to Outsource

MS Dynamics CRM 3.0

Python Programming Language

Verify server certificate in HTTPS transaction


Hi,
I'm fetching some files over HTTPS from Python and I want to verify the
server certificate. (Not just the name etc provided in certificate.)

How can I get access to this information?

urllib2 doesn't seem to provide it. Even a raw SSL socket only appears
to provide access to the CN, OU etc in string form (not the raw
certificate).

I tried pycurl, which allows you to setopt(pycurl.SSL_VERIFYPEER) and
VERIFYHOST, but the getinfo(pycurl.SSL_VERIFYRESULT) call always returns
0. Perhaps it's unimplememented?

I couldn't get the M2Crypto API documentation to generate; perhaps it
allows it.

TLS Lite on to of M2Crypto? Something else again?

Thanks
Hamish

    I struggled with that months ago.  The SSL library that ships with
Python is primitive, but M2Crypto can do that.  M2Crypto will actually
verify the certificate chain.  The documentation is weak, it's hard
to build, and there are bugs, but it's the best Python has right now.

                                John Nagle

Add to del.icio.us | Digg this | Stumble it | Powered by Megasolutions Inc