Installation — PyCryptodome 3.17.0 documentation (2024)

The installation procedure depends on the package you want the library to be in.PyCryptodome can be used as:

  1. An almost drop-in replacement for the old PyCrypto library.You install it with:

    pip install pycryptodome

    In this case, all modules are installed under the Crypto package.You can test everything is right with:

    One must avoid having both PyCrypto and PyCryptodome installedat the same time, as they will interfere with each other.This option is therefore recommended only when you are sure thatthe whole application is deployed in a virtualenv.

  2. A library independent of the old PyCrypto.You install it with:

    pip install pycryptodomex

    You can test everything is right with:

    pip install pycryptodome-test-vectorspython -m Cryptodome.SelfTest

    In this case, all modules are installed under the Cryptodome package.The old PyCrypto and PyCryptodome can coexist.

Note

If you intend to run PyCryptodome with Python 2.7 under Windows, you must first installthe Microsoft Visual C++ 2015 Redistributable.That is not necessary if you use Python 3.

The procedures below go a bit more in detail, by explaininghow to setup the environment for compiling the C extensionsfor each OS, and how to install the GMP library.

Compiling in Linux Ubuntu

Note

If you want to install under the Crypto package, replacebelow pycryptodomex with pycryptodome.

For Python 2.x:

$ sudo apt-get install build-essential python-dev$ pip install pycryptodomex$ pip install pycryptodome-test-vectors$ python -m Cryptodome.SelfTest

For Python 3.x:

$ sudo apt-get install build-essential python3-dev$ pip install pycryptodomex$ pip install pycryptodome-test-vectors$ python3 -m Cryptodome.SelfTest

For PyPy:

$ sudo apt-get install build-essential pypy-dev$ pip install pycryptodomex$ pip install pycryptodome-test-vectors$ pypy -m Cryptodome.SelfTest

Compiling in Linux Fedora

Note

If you want to install under the Crypto package, replacebelow pycryptodomex with pycryptodome.

For Python 2.x:

$ sudo yum install gcc gmp python-devel$ pip install pycryptodomex$ pip install pycryptodome-test-vectors$ python -m Cryptodome.SelfTest

For Python 3.x:

$ sudo yum install gcc gmp python3-devel$ pip install pycryptodomex$ pip install pycryptodome-test-vectors$ python3 -m Cryptodome.SelfTest

For PyPy:

$ sudo yum install gcc gmp pypy-devel$ pip install pycryptodomex$ pip install pycryptodome-test-vectors$ pypy -m Cryptodome.SelfTest

Windows (from sources)

Note

If you want to install under the Crypto package, replacebelow pycryptodomex with pycryptodome. That being the case and if you want to run the test, instead of Cryptodome.SelfTest, run Crypto.SelfTest.

Windows does not come with a C compiler like most Unix systems.The simplest way to compile the PyCryptodome extensions fromsource code is to install the minimum set of Visual Studiocomponents freely made available by Microsoft.

  1. [Once only] Download Build Tools for Visual Studio 2019.In the installer, select the C++ build tools, the Windows 10 SDK, and the latest version of MSVC v142 x64/x86 build tools.

  2. Compile and install PyCryptodome:

    > pip install pycryptodomex --no-binary :all:
  3. To make sure everything work fine, run the test suite:

    > pip install pycryptodome-test-vectors> python -m Cryptodome.SelfTest

Documentation

Project documentation is written in reStructuredText and it is stored under Doc/src.To publish it as HTML files, you need to install sphinx anduse:

> make -C Doc/ html

It will then be available under Doc/_build/html/.

PGP verification

All source packages and wheels on PyPI are cryptographically signed.They can be verified with the following PGP key:

-----BEGIN PGP PUBLIC KEY BLOCK-----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=DpoI-----END PGP PUBLIC KEY BLOCK-----

Read the Docs v: latest

Installation — PyCryptodome 3.17.0 documentation (2024)
Top Articles
Latest Posts
Article information

Author: Prof. An Powlowski

Last Updated:

Views: 6072

Rating: 4.3 / 5 (64 voted)

Reviews: 95% of readers found this page helpful

Author information

Name: Prof. An Powlowski

Birthday: 1992-09-29

Address: Apt. 994 8891 Orval Hill, Brittnyburgh, AZ 41023-0398

Phone: +26417467956738

Job: District Marketing Strategist

Hobby: Embroidery, Bodybuilding, Motor sports, Amateur radio, Wood carving, Whittling, Air sports

Introduction: My name is Prof. An Powlowski, I am a charming, helpful, attractive, good, graceful, thoughtful, vast person who loves writing and wants to share my knowledge and understanding with you.