Skip to main content

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.

Project details


Download files

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

Source Distribution

wolfcrypt-0.2.6.tar.gz (24.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

wolfcrypt-0.2.6-cp36-cp36m-manylinux1_x86_64.whl (112.2 kB view details)

Uploaded CPython 3.6m

wolfcrypt-0.2.6-cp36-cp36m-macosx_10_6_intel.whl (105.4 kB view details)

Uploaded CPython 3.6mmacOS 10.6+ Intel (x86-64, i386)

wolfcrypt-0.2.6-cp35-cp35m-manylinux1_x86_64.whl (112.2 kB view details)

Uploaded CPython 3.5m

wolfcrypt-0.2.6-cp35-cp35m-macosx_10_6_intel.whl (105.4 kB view details)

Uploaded CPython 3.5mmacOS 10.6+ Intel (x86-64, i386)

wolfcrypt-0.2.6-cp34-cp34m-manylinux1_x86_64.whl (112.2 kB view details)

Uploaded CPython 3.4m

wolfcrypt-0.2.6-cp34-cp34m-macosx_10_6_intel.whl (105.4 kB view details)

Uploaded CPython 3.4mmacOS 10.6+ Intel (x86-64, i386)

wolfcrypt-0.2.6-cp27-cp27mu-manylinux1_x86_64.whl (115.3 kB view details)

Uploaded CPython 2.7mu

wolfcrypt-0.2.6-cp27-cp27m-manylinux1_x86_64.whl (115.3 kB view details)

Uploaded CPython 2.7m

wolfcrypt-0.2.6-cp27-cp27m-macosx_10_6_intel.whl (105.3 kB view details)

Uploaded CPython 2.7mmacOS 10.6+ Intel (x86-64, i386)

File details

Details for the file wolfcrypt-0.2.6.tar.gz.

File metadata

  • Download URL: wolfcrypt-0.2.6.tar.gz
  • Upload date:
  • Size: 24.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for wolfcrypt-0.2.6.tar.gz
Algorithm Hash digest
SHA256 1927b908682cae8cede726a1da8f8593a973ca0dbe3de02eef6d658a3e71cb55
MD5 52b629b06d03370019b5e7ba4ff3c662
BLAKE2b-256 89f7535e46bc4ce9e098c882ed476f6dcfc7dd4a9b007408bf4fbd83e855172c

See more details on using hashes here.

File details

Details for the file wolfcrypt-0.2.6-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for wolfcrypt-0.2.6-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 9c792a87f35e87b099ba4a163a23f52cf234ac6effd33c16797a04a85800ac20
MD5 d1190cc1b5225b81d6debe710194c7c6
BLAKE2b-256 a944a2c2f035e0381aec4aaae71c6db9fa504fb3a70bb0c17e98192ddfe2c452

See more details on using hashes here.

File details

Details for the file wolfcrypt-0.2.6-cp36-cp36m-macosx_10_6_intel.whl.

File metadata

File hashes

Hashes for wolfcrypt-0.2.6-cp36-cp36m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 b75d51c3612eddf2c05ceea7c45cc4e38fd466cf6cfd94664f2a81266b5055c2
MD5 d4205c0253ce38d0d1f1002422841e48
BLAKE2b-256 fee83a70ce2efac08db899d88fde0ff7cd9ac5fe3fa294ccc634a6479b3e40f4

See more details on using hashes here.

File details

Details for the file wolfcrypt-0.2.6-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for wolfcrypt-0.2.6-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 3106bf76c3060f4f39ef3a835414805cd437447294d85c30196a8a566da0c398
MD5 81b5150b913e64c8147ddcdda1fb111f
BLAKE2b-256 5ac4a8fc3899175695b6754e6b17f67c14bc09c3b836e14e4177abc2eb139f8d

See more details on using hashes here.

File details

Details for the file wolfcrypt-0.2.6-cp35-cp35m-macosx_10_6_intel.whl.

File metadata

File hashes

Hashes for wolfcrypt-0.2.6-cp35-cp35m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 f1500d227890f94b59c1aefa55f44f4c444b6fdf2ecb595aec794ddad28aaea6
MD5 1d5c882fad06e5e0853722bb3e4a6f1d
BLAKE2b-256 2e92800f5f9bbb1029fb072bf538e62f7ed1838654a847daa655956e9315228b

See more details on using hashes here.

File details

Details for the file wolfcrypt-0.2.6-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for wolfcrypt-0.2.6-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 4dc78200b149484f3e15234d6f758a85d7661f2176d6c4e73c5afa96443e0b92
MD5 f031b72949bdd2bab60d15daa61bc41a
BLAKE2b-256 349a5ea3067c341d5f40156e2d236477aef19e6c8a651fc8e109fc257557e63d

See more details on using hashes here.

File details

Details for the file wolfcrypt-0.2.6-cp34-cp34m-macosx_10_6_intel.whl.

File metadata

File hashes

Hashes for wolfcrypt-0.2.6-cp34-cp34m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 3d52a85d6083ff858093a8c9f91943fe1960a61a2d7a6cb952e65d102de05a0b
MD5 8859bedbf79cc5110b996372171b6e84
BLAKE2b-256 e6b6cfe42b47e9408571f626efb517f6a5705be68dbbccce0405ff67ccdca0a1

See more details on using hashes here.

File details

Details for the file wolfcrypt-0.2.6-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for wolfcrypt-0.2.6-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 437be451990f0639dc81358e7f54f547f0c34472397f06cbaa11e49c40abdb37
MD5 6c97eeaa3b90b4285d55b7707e04fa75
BLAKE2b-256 b594d9dcaa9669ac9936e906854b057e228c9d3dc80cd35373842099a27dc43d

See more details on using hashes here.

File details

Details for the file wolfcrypt-0.2.6-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for wolfcrypt-0.2.6-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 67c007dbf60fe67e03dab54fe2239825fc725ec856d783564c1eae279e49522f
MD5 aa84dede4f82d96ce6a2e160be2bc7dd
BLAKE2b-256 c73e874627816c1486afa7b77b3f521521c02fb9165f1972472fac121ffb9ff2

See more details on using hashes here.

File details

Details for the file wolfcrypt-0.2.6-cp27-cp27m-macosx_10_6_intel.whl.

File metadata

File hashes

Hashes for wolfcrypt-0.2.6-cp27-cp27m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 48369fce5cebc70eb199fecd4d004fc3bf9dd65599bdc5e98874e95f5d08e1e4
MD5 48dcc24836d3af0b50b98e69eb0bfb15
BLAKE2b-256 39dd22a0b7f1abaa54c23ca7fe2e43c040ac86f60b909a4f451dfac335769604

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page