Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

Pure python implementation of SSL and TLS.

Project description

tlslite-ng is a pure python implementation of SSLv3.0, TLS 1.0, TLS 1.1 and TLS 1.2 protocols.

It can use pycrypto, m2crypto and gmp for acceleration of cryptographic operations but is not dependant upon them.

Functionality implemented include:
  • all above mentioned protocols, including support for client certificates (RFC 6101, RFC 2246, RFC 4346, RFC 5246)
  • RC4, 3DES-CBC, AES-CBC, AES-GCM and ChaCha20 ciphers (RFC 5246, RFC 6347, RFC 4492, RFC 5288, RFC 5289, RFC 7539, RFC 7905)
  • MD5, SHA1, SHA256 and SHA384 HMACs as well as AEAD mode of operation with GCM or Poly1305 authenticator
  • RSA, DHE_RSA and ECDHE_RSA key exchange
  • full set of signature hashes (md5, sha1, sha224, sha256, sha384, sha512, rsa_pss_sha256, rsa_pss_sha384 and rsa_pss_sha512) for ServerKeyExchange and CertfificateVerify in TLS v1.2
  • secp256r1, secp384r1, secp521r1, secp256k1, secp224r1 and secp192r1 curves for ECDHE_RSA key exchange (support for last two depends on the version of ecdsa library used)
  • x25519 and x448 curves for ECDHE_RSA key exchage (RFC 7748. RFC 4492bis)
  • anonymous DHE key exchange
  • anonymous ECDH key exchange
  • NULL encryption ciphersuites
  • FALLBACK_SCSV (RFC 7507)
  • encrypt-then-MAC mode of operation for CBC ciphersuites (RFC 7366)
  • TACK certificate pinning
  • SRP_SHA_RSA and SRP_SHA ciphersuites (RFC 5054)
  • Extended Master Secret calculation for TLS connections (RFC 7627)
  • padding extension (RFC 7685)
  • Keying material exporter (RFC 5705)
  • Next Protocol Negotiation
  • Application-Layer Protocol Negotiation Extension (RFC 7301)
  • FFDHE prime/group negotiation (RFC 7919)

tlslite-ng aims to be a drop-in replacement for tlslite while providing more comprehensive set of features and more secure defautls.

Project details


Release history Release notifications

History Node

0.8.0-alpha12

History Node

0.8.0-alpha11

History Node

0.8.0-alpha10

History Node

0.8.0-alpha9

History Node

0.8.0-alpha8

History Node

0.8.0-alpha7

History Node

0.8.0-alpha6

History Node

0.8.0-alpha5

History Node

0.8.0-alpha4

History Node

0.8.0-alpha3

History Node

0.8.0-alpha2

History Node

0.8.0-alpha1

This version
History Node

0.7.4

History Node

0.7.3

History Node

0.7.2

History Node

0.7.1

History Node

0.7.0

History Node

0.7.0-beta1

History Node

0.7.0-alpha9

History Node

0.7.0-alpha8

History Node

0.7.0-alpha7

History Node

0.7.0-alpha6

History Node

0.7.0-alpha5

History Node

0.7.0-alpha4

History Node

0.7.0-alpha3

History Node

0.7.0-alpha2

History Node

0.7.0-alpha1

History Node

0.6.0

History Node

0.6.0-beta1

History Node

0.6.0-alpha5

History Node

0.6.0-alpha4

History Node

0.6.0-alpha3

History Node

0.6.0-alpha2

History Node

0.6.0-alpha1

History Node

0.5.2

History Node

0.5.1

History Node

0.5.0

History Node

0.5.0-beta6

History Node

0.5.0-beta5

History Node

0.5.0-beta4

History Node

0.5.0-beta3

History Node

0.5.0-beta2

History Node

0.5.0-beta1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
tlslite-ng-0.7.4.tar.gz (482.2 kB) Copy SHA256 hash SHA256 Source None Apr 9, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page