pyca/pyopenssl — pull request #44 by fedor-brunner (2014-02-25 15:04:21+00:00)
Title: Get channel binding binding information for TLS connection

Channel Bindings for TLS (RFC 5929, RFC 5056). Channel Bindings for TLS is very usefull because it can be used to detect MiTM attacks when the attacker is using valid certificates (certificates signed by Certification Authority).

For example: if a XMPP client is connecting to a XMPP server and the SCRAM-SHA-1-PLUS authentication mechanism is used during login (RFC 5802), the login will fail in the presence of MiTM attacker, because the TLS channel binding data is used in calculation of password hashes.

The method get_channel_binding supports only "tls-unique" channel binding. It can used the same way as get_channel_binding() in Python 3 ssl module.
http://docs.python.org/3/library/ssl.html