All Projects → wolfSSL → wolfssl-py

wolfSSL / wolfssl-py

Licence: other
Python wrapper for wolfSSL embedded SSL/TLS library.

Programming Languages

python
139335 projects - #7 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to wolfssl-py

Wolfssl
wolfSSL (formerly CyaSSL) is a small, fast, portable implementation of TLS/SSL for embedded devices to the cloud. wolfSSL supports up to TLS 1.3!
Stars: ✭ 1,098 (+3560%)
Mutual labels:  tls, ssl, tls13
Illustrated Tls13
The Illustrated TLS 1.3 Connection: Every byte explained
Stars: ✭ 372 (+1140%)
Mutual labels:  tls, ssl, tls13
qsslcaudit
test SSL/TLS clients how secure they are
Stars: ✭ 22 (-26.67%)
Mutual labels:  tls, ssl, dtls
dheater
D(HE)ater is a proof of concept implementation of the D(HE)at attack (CVE-2002-20001) through which denial-of-service can be performed by enforcing the Diffie-Hellman key exchange.
Stars: ✭ 142 (+373.33%)
Mutual labels:  tls, ssl, tls13
Sslyze
Fast and powerful SSL/TLS scanning library.
Stars: ✭ 2,623 (+8643.33%)
Mutual labels:  tls, ssl, tls13
Tlslite Ng
TLS implementation in pure python, focused on interoperability testing
Stars: ✭ 119 (+296.67%)
Mutual labels:  tls, ssl, tls13
Tlsfuzzer
SSL and TLS protocol test suite and fuzzer
Stars: ✭ 335 (+1016.67%)
Mutual labels:  tls, ssl, tls13
Atls
A light TLS implementation used for learning: TLS 1.0 TLS 1.1 TLS 1.2 TLS 1.3 GMSSL 1.1(国密SSL) based on libcrypto.so.
Stars: ✭ 134 (+346.67%)
Mutual labels:  tls, ssl, tls13
Illustrated Tls
The Illustrated TLS Connection: Every byte explained
Stars: ✭ 2,751 (+9070%)
Mutual labels:  tls, ssl, tls12
python-mbedtls
Cryptographic library with an mbed TLS back end
Stars: ✭ 64 (+113.33%)
Mutual labels:  tls, ssl, dtls
ssl-handshake
A command-line tool for testing SSL/TLS handshake latency, written in Go.
Stars: ✭ 41 (+36.67%)
Mutual labels:  tls, ssl
Chromium-Gost
Chromium с поддержкой алгоритмов ГОСТ
Stars: ✭ 286 (+853.33%)
Mutual labels:  tls, ssl
SimpleSockets
Asynchronous TCP .NET library with reliable transmission and receipt of data, with an ssl implementation.
Stars: ✭ 74 (+146.67%)
Mutual labels:  tls, ssl
cryptonice
CryptoNice is both a command line tool and library which provides the ability to scan and report on the configuration of SSL/TLS for your internet or internal facing web services. Built using the sslyze API and ssl, http-client and dns libraries, cryptonice collects data on a given domain and performs a series of tests to check TLS configuration…
Stars: ✭ 91 (+203.33%)
Mutual labels:  tls, ssl
httpsbook
《深入浅出HTTPS:从原理到实战》代码示例、勘误、反馈、讨论
Stars: ✭ 77 (+156.67%)
Mutual labels:  tls, ssl
vault-pki-monitor-venafi
Venafi PKI Monitoring Secrets Engine for HashiCorp Vault that enforces security policy and provides certificate visiblity to the enterprise.
Stars: ✭ 18 (-40%)
Mutual labels:  tls, ssl
hyper-proxy
A proxy connector for Hyper-based crates
Stars: ✭ 73 (+143.33%)
Mutual labels:  tls, ssl
iot security
《密码技术与物联网安全——mbedtls开发实战》示例代码
Stars: ✭ 111 (+270%)
Mutual labels:  tls, dtls
sslcli
Pretty awesome command-line client for public SSLLabs API
Stars: ✭ 17 (-43.33%)
Mutual labels:  tls, ssl
tipi
Tipi - the All-in-one Web Server for Ruby Apps
Stars: ✭ 214 (+613.33%)
Mutual labels:  tls, ssl

Welcome

wolfSSL Python, a.k.a. wolfssl is a Python module that encapsulates wolfSSL's SSL/TLS library.

The wolfSSL SSL/TLS library is a lightweight, portable, C-language-based library targeted at IoT, embedded, and RTOS environments primarily because of its size, speed, and feature set. It works seamlessly in desktop, enterprise, and cloud environments as well.

Prerequisites

Linux

During installation via pip this will download the wolfSSL source and compile it, it therefore needs the same prerequisites as the wolfSSL C library. Therefore in Debian / Ubuntu you should do:

$ sudo apt install build-essential
$ sudo apt build-dep libwolfssl-dev

Compiling

The setup.py file covers most things you will need to do to build and install from source. As pre-requisites you will need to install either from your OS repository or pip. You'll also need the Python development package for your Python version:

  • cffi
  • tox
  • pytest

To build a source package run python setup.py sdist, to build a wheel package run python setup.py bdist_wheel. To test the build run tox. The tox tests rely on Python 3.9 being installed, if you do not have this version we recommend using pyenv to install it.

Installation

We provide Python wheels (prebuilt binaries) for OSX 64 bits and Linux 64 bits:

$ pip install wheel
$ pip install wolfssl

To build wolfssl-py from source:

$ cd wolfssl-py
$ pip install .

The default pip install clones wolfSSL from GitHub. To build wolfssl-py using a local installation of the native wolfSSL C library, the USE_LOCAL_WOLFSSL environment variable should be set. USE_LOCAL_WOLFSSL can be set to "1" to use the default library installation location (/usr/local/lib, /usr/local/include), or to use a custom location it can be set to the install location of your native wolfSSL library. For example:

# Uses default install location
$ USE_LOCAL_WOLFSSL=1 pip install .

# Uses custom install location
$ USE_LOCAL_WOLFSSL=/tmp/install pip install .

Testing

To run the tox tests in the source code, you'll need tox and a few other requirements.

  1. Make sure that the testing requirements are installed:
sudo -H pip install -r requirements/test.txt
  1. Run make check:
$ make check
...
_________________________________ summary _________________________________
py3: commands succeeded
congratulations :)

Support

For support and questions, please email [email protected].

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].