This class wraps a socket and provides TLS handshaking and data
transfer.
To use this class, create a new instance, passing a connected socket
into the constructor. Then call some handshake function. If the
handshake completes without raising an exception, then a TLS connection
has been negotiated. You can transfer data over this connection as if it
were a socket.
This class provides both synchronous and asynchronous versions of its
key functions. The synchronous versions should be used when writing
single-or multi-threaded code using blocking sockets. The asynchronous
versions should be used when performing asynchronous, event-based I/O
with non-blocking sockets.
Asynchronous I/O is a complicated subject; typically, you should not
use the asynchronous functions directly, but should use some framework
like asyncore or Twisted which TLS Lite integrates with (see tlslite.integration.tlsasyncdispatchermixin.TLSAsyncDispatcherMixIn).
|
|
|
_calcFinished(self,
masterSecret,
send=True) |
source code
|
|
|
_clientFinished(self,
premasterSecret,
clientRandom,
serverRandom,
cipherSuite,
cipherImplementations) |
source code
|
|
|
_clientGetKeyFromChain(self,
certificate,
settings,
tackExt=None) |
source code
|
|
|
_clientGetServerHello(self,
settings,
clientHello) |
source code
|
|
|
_clientRSAKeyExchange(self,
settings,
cipherSuite,
clientCertChain,
privateKey,
certificateType,
clientRandom,
serverRandom,
tackExt) |
source code
|
|
|
_clientResume(self,
session,
serverHello,
clientRandom,
cipherImplementations) |
source code
|
|
|
_clientSRPKeyExchange(self,
settings,
cipherSuite,
certificateType,
srpUsername,
password,
clientRandom,
serverRandom,
tackExt) |
source code
|
|
|
_clientSendClientHello(self,
settings,
session,
srpUsername,
srpParams,
certParams,
reqTack) |
source code
|
|
|
|
|
_handshakeClientAsync(self,
srpParams=( ) ,
certParams=( ) ,
session=None,
settings=None,
checker=None,
reqTack=False) |
source code
|
|
|
_handshakeClientAsyncHelper(self,
srpParams,
certParams,
session,
settings,
reqTack) |
source code
|
|
|
_handshakeServerAsyncHelper(self,
verifierDB,
certChain,
privateKey,
reqCert,
sessionCache,
settings,
reqCAs,
tack,
breakSigs) |
source code
|
|
|
_handshakeWrapperAsync(self,
handshaker,
checker) |
source code
|
|
|
|
|
_serverCertKeyExchange(self,
clientHello,
serverHello,
serverCertChain,
privateKey,
reqCert,
reqCAs,
cipherSuite,
settings) |
source code
|
|
|
_serverFinished(self,
premasterSecret,
clientRandom,
serverRandom,
cipherSuite,
cipherImplementations) |
source code
|
|
|
_serverGetClientHello(self,
settings,
certChain,
verifierDB,
sessionCache) |
source code
|
|
|
_serverSRPKeyExchange(self,
clientHello,
serverHello,
verifierDB,
cipherSuite,
privateKey,
serverCertChain) |
source code
|
|
None or an iterable
|
handshakeClientCert(self,
certChain=None,
privateKey=None,
session=None,
settings=None,
checker=None,
reqTack=False,
async=False)
Perform a certificate-based handshake in the role of client. |
source code
|
|
None or an iterable
|
handshakeClientSRP(self,
username,
password,
session=None,
settings=None,
checker=None,
reqTack=False,
async=False)
Perform an SRP handshake in the role of client. |
source code
|
|
|
handshakeServer(self,
verifierDB=None,
certChain=None,
privateKey=None,
reqCert=False,
sessionCache=None,
settings=None,
checker=None,
reqCAs=None,
tack=None,
breakSigs=None)
Perform a handshake in the role of server. |
source code
|
|
iterable
|
handshakeServerAsync(self,
verifierDB=None,
certChain=None,
privateKey=None,
reqCert=False,
sessionCache=None,
settings=None,
checker=None,
reqCAs=None,
tack=None,
breakSigs=None)
Start a server handshake operation on the TLS connection. |
source code
|
|
Inherited from tlsrecordlayer.TLSRecordLayer :
close ,
closeAsync ,
fileno ,
getCipherImplementation ,
getCipherName ,
getVersionName ,
getpeername ,
getsockname ,
gettimeout ,
makefile ,
read ,
readAsync ,
recv ,
send ,
sendall ,
setsockopt ,
settimeout ,
shutdown ,
write ,
writeAsync
Inherited from tlsrecordlayer.TLSRecordLayer (private):
_calcPendingStates ,
_calcSSLHandshakeHash ,
_changeReadState ,
_changeWriteState ,
_decrefAsync ,
_decryptRecord ,
_getMsg ,
_getNextRecord ,
_handshakeDone ,
_handshakeStart ,
_sendError ,
_sendMsg ,
_sendMsgs ,
_shutdown
|