Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Python module that encapsulates wolfSSL's crypto engine API.

Project Description

wolfCrypt Python, a.k.a. wolfcrypt is a Python library that encapsulates wolfSSL’s wolfCrypt API.

wolfCrypt is a lightweight, portable, C-language-based crypto 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. It is the crypto engine behind wolfSSl’s embedded ssl library.

Installation

In order to use wolfcrypt, first you’ll need to install wolfssl C embedded ssl library.

Installing wolfssl :

Mac OSX

brew install wolfssl

or

git clone https://github.com/wolfssl/wolfssl.git
cd wolfssl/
./autogen.sh
./configure --enable-sha512
make
sudo make install

Ubuntu

sudo apt-get update
sudo apt-get install -y git autoconf libtool

git clone https://github.com/wolfssl/wolfssl.git
cd wolfssl/
./autogen.sh
./configure --enable-sha512
make
sudo make install

sudo ldconfig

CentOS

sudo rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-6.noarch.rpm
sudo yum update
sudo yum install -y git autoconf libtool

git clone git@github.com:wolfssl/wolfssl.git
cd wolfssl
./autogen.sh
./configure --enable-sha512
make
sudo make install

echo /usr/local/lib > wolfssl.conf
sudo mv wolfssl.conf /etc/ld.so.conf
sudo ldconfig

Installing wolfcrypt :

Mac OSX

sudo -H pip install wolfcrypt

Ubuntu

sudo apt-get install -y python-dev python3-dev python-pip libffi-dev
sudo -H pip install wolfcrypt

CentOS

sudo yum install -y python-devel python3-devel python-pip libffi-devel
sudo -H pip install wolfcrypt

Testing wolfcrypt :

python -c "from wolfcrypt.hashes import Sha; print Sha().hexdigest()"

expected output: da39a3ee5e6b4b0d3255bfef95601890afd80709

Testing wolfcrypt’s source code with tox :

To run the unit tests in the source code, you’ll need tox and a few other requirements. The source code relies at ‘WOLFSSL_DIR/wrapper/python/wolfcrypt’ where WOLFSSL_DIR is the path of wolfssl’s source code.

  1. Make sure that the testing requirements are installed:
$ sudo -H pip install -r requirements-testing.txt
  1. Run tox:
$ tox
...
_________________________________ summary _________________________________
py27: commands succeeded
SKIPPED: py34: InterpreterNotFound: python3.4
py35: commands succeeded
congratulations :)

Note: the test is performed using multiple versions of python. If you are missing a version the test will be skipped with an InterpreterNotFound error.

Release History

Release History

This version
History Node

0.2.6

History Node

0.2.0

History Node

0.1.9

History Node

0.1.8

Download Files

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting