Skip to main content

Cryptographic library for Python

Project description

PyCryptodome is a self-contained Python package of low-level cryptographic primitives.

It supports Python 2.4 or newer, all Python 3 versions and PyPy.

You can install it with:

pip install pycryptodome

All modules are installed under the Crypto package.

Check the pycryptodomex project for the equivalent library that works under the Cryptodome package.

PyCryptodome is a fork of PyCrypto. It brings several enhancements with respect to the last official version of PyCrypto (2.6.1), for instance:

  • Authenticated encryption modes (GCM, CCM, EAX, SIV, OCB)

  • Accelerated AES on Intel platforms via AES-NI

  • First class support for PyPy

  • Elliptic curves cryptography (NIST P-256 curve only)

  • Better and more compact API (nonce and iv attributes for ciphers, automatic generation of random nonces and IVs, simplified CTR cipher mode, and more)

  • SHA-3 (including SHAKE XOFs) and BLAKE2 hash algorithms

  • Salsa20 and ChaCha20 stream ciphers

  • scrypt and HKDF

  • Deterministic (EC)DSA

  • Password-protected PKCS#8 key containers

  • Shamir’s Secret Sharing scheme

  • Random numbers get sourced directly from the OS (and not from a CSPRNG in userspace)

  • Simplified install process, including better support for Windows

  • Cleaner RSA and DSA key generation (largely based on FIPS 186-4)

  • Major clean ups and simplification of the code base

PyCryptodome is not a wrapper to a separate C library like OpenSSL. To the largest possible extent, algorithms are implemented in pure Python. Only the pieces that are extremely critical to performance (e.g. block ciphers) are implemented as C extensions.

For more information, see the homepage.

All the code can be downloaded from GitHub.

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

pycryptodome-3.4.11.tar.gz (6.7 MB view details)

Uploaded Source

Built Distributions

pycryptodome-3.4.11-cp36-cp36m-win_amd64.whl (7.3 MB view details)

Uploaded CPython 3.6mWindows x86-64

pycryptodome-3.4.11-cp36-cp36m-win32.whl (7.3 MB view details)

Uploaded CPython 3.6mWindows x86

pycryptodome-3.4.11-cp36-cp36m-manylinux1_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.6m

pycryptodome-3.4.11-cp36-cp36m-manylinux1_i686.whl (6.8 MB view details)

Uploaded CPython 3.6m

pycryptodome-3.4.11-cp35-cp35m-win_amd64.whl (7.3 MB view details)

Uploaded CPython 3.5mWindows x86-64

pycryptodome-3.4.11-cp35-cp35m-win32.whl (7.3 MB view details)

Uploaded CPython 3.5mWindows x86

pycryptodome-3.4.11-cp35-cp35m-manylinux1_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.5m

pycryptodome-3.4.11-cp35-cp35m-manylinux1_i686.whl (6.8 MB view details)

Uploaded CPython 3.5m

pycryptodome-3.4.11-cp34-cp34m-win_amd64.whl (7.3 MB view details)

Uploaded CPython 3.4mWindows x86-64

pycryptodome-3.4.11-cp34-cp34m-win32.whl (7.3 MB view details)

Uploaded CPython 3.4mWindows x86

pycryptodome-3.4.11-cp34-cp34m-manylinux1_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.4m

pycryptodome-3.4.11-cp34-cp34m-manylinux1_i686.whl (6.8 MB view details)

Uploaded CPython 3.4m

pycryptodome-3.4.11-cp33-cp33m-win_amd64.whl (7.3 MB view details)

Uploaded CPython 3.3mWindows x86-64

pycryptodome-3.4.11-cp33-cp33m-win32.whl (7.3 MB view details)

Uploaded CPython 3.3mWindows x86

pycryptodome-3.4.11-cp33-cp33m-manylinux1_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.3m

pycryptodome-3.4.11-cp33-cp33m-manylinux1_i686.whl (6.8 MB view details)

Uploaded CPython 3.3m

pycryptodome-3.4.11-cp27-cp27mu-manylinux1_x86_64.whl (6.8 MB view details)

Uploaded CPython 2.7mu

pycryptodome-3.4.11-cp27-cp27mu-manylinux1_i686.whl (6.8 MB view details)

Uploaded CPython 2.7mu

pycryptodome-3.4.11-cp27-cp27m-win_amd64.whl (7.3 MB view details)

Uploaded CPython 2.7mWindows x86-64

pycryptodome-3.4.11-cp27-cp27m-win32.whl (7.3 MB view details)

Uploaded CPython 2.7mWindows x86

pycryptodome-3.4.11-cp27-cp27m-manylinux1_x86_64.whl (6.8 MB view details)

Uploaded CPython 2.7m

pycryptodome-3.4.11-cp27-cp27m-manylinux1_i686.whl (6.8 MB view details)

Uploaded CPython 2.7m

File details

Details for the file pycryptodome-3.4.11.tar.gz.

File metadata

  • Download URL: pycryptodome-3.4.11.tar.gz
  • Upload date:
  • Size: 6.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pycryptodome-3.4.11.tar.gz
Algorithm Hash digest
SHA256 c5dd29e9f1b733e74311bf95d0e544e91bd1d14bc0366e8f443562d8d9920b7d
MD5 a2587b6381b0ef4eb960cea1e7507d04
BLAKE2b-256 75e300e47b79d6886f84572575018b8c5ff214986d08e55a05fb010358bce5cf

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp36-cp36m-win_amd64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 4fd2584719895ff041cf48766014ef6b5a170f5caf0e2dc735837b182e78d081
MD5 caad18986aca5771dc94607145c270ee
BLAKE2b-256 3bb56a694a2b8a14b9b5fed30069df391e7031a7c5ae6e67d46ba30294ea9ec3

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp36-cp36m-win32.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 cb81302f3295a14722f6c26c44ab4023d66f8394db4c316ccf5658dbada2ac91
MD5 957f93eee6c81c7712ef8c76ffc11331
BLAKE2b-256 abd6e3cffa1b1cfa4efa0d6b0529e7d066e68750f45bcca8527bc5c7e88f34d0

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 1d3065b741ec8d269327e4487eacd187e0bf909e7a73d0a959da1a0918b16fa9
MD5 22c0dc4d2b7fbad93522def1864296ac
BLAKE2b-256 99c1a9d05430e4d4cc2edef7fc96e19cdd434d1fd8b7e31ff34d9b75b665e244

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp36-cp36m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp36-cp36m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 5ce44a755be8aef369d1057a38bff01501db0b89ba38c3292578f42ed401f355
MD5 632bda217ad9fa7492abc8e68e54e3ee
BLAKE2b-256 9ec2157036d7a520b949daa07beab66c83b49c5168c36b878b842611dcf2f2d9

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp35-cp35m-win_amd64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 0ebbcdbd21b5d8569c5b44137e2071d28c14a7460afdd8b1f6398a1548c4773a
MD5 f99ef09f34de08e29dfbeba52a9b3fea
BLAKE2b-256 0a157d9a7b41a10e1308ccac1c21cf995bd5e5e4247c73fe78ec2586af42d4b4

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp35-cp35m-win32.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 d3136fe71a37882ca457bea5917f1db5431f18f1bd91b0f7c4cec57ac4d57016
MD5 542ace51d4f6eb1bfa57c07c6a28c8ed
BLAKE2b-256 5d0d1a5c5ac5d026d55e93cd3f8df94cbef7049a20f8bf59002a1a3cb178d812

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 d9ae42a88c716a7ca9a53966562968921883211b6390eeab22e5b735dbc49f49
MD5 f5969b4147617002125dded1fb2de96d
BLAKE2b-256 d5dda15248d4a632aefc05f2699ed588827e62675fada79dc290f7d89afe9aeb

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp35-cp35m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp35-cp35m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 29e8d3770bc0a0366093eb693ca40c5be56ed5a7ca214af5156a0b2e23053549
MD5 6ae56d9c84383e048c3d4fdc3faf1611
BLAKE2b-256 300244de478f9f566a637336de447423049bd4d840db934b1c0b3e1bcc8e6be3

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp34-cp34m-win_amd64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp34-cp34m-win_amd64.whl
Algorithm Hash digest
SHA256 ce3110812d8823c3182fc7f841031387ee6fda27d8696da8949a99b026048e7e
MD5 9b5b3b1505f92efbeaf596c6ebc0f355
BLAKE2b-256 451f82832ff9feaad93401f04e0e247e73f1e9d2dabc5efd159f659ee3992996

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp34-cp34m-win32.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp34-cp34m-win32.whl
Algorithm Hash digest
SHA256 11ca73effcc15596b62d601a6b3c48ea607fb5219546d406312520d63c446bf5
MD5 c2e7525c15d9ac8e00c949ad21f73f2e
BLAKE2b-256 4cd3ea56d49fa941d0c6639d1e6d9566a1e682c5d628daad317ef1c646f5c52f

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 21fd74571b3579cbf36792916ad76a4ecf91581a112bb78ec48e20389dcdb912
MD5 fe196e5534a6971f29f2c7f07838b213
BLAKE2b-256 bccdfeef2243a7f0e951354057f5f9f0e865cf023a42028a91320fdd99ee6013

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp34-cp34m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp34-cp34m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 64a0cccf590546e7de602378f21482cb06cd1a1995cdfb121b123394c48b05c3
MD5 abd598f2a2532c717fb16b25e7cdb468
BLAKE2b-256 e800136b0c0c1742a424470a06db9f7bd20a59f8019a919164b30a6db54abb95

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp33-cp33m-win_amd64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp33-cp33m-win_amd64.whl
Algorithm Hash digest
SHA256 c88e9a04d3ed89689bc76ce0a90b018cdd4edb94ab99ce31264f2e15bad9d752
MD5 fc7422553d64346d3509604664b5d233
BLAKE2b-256 4fc901469c350c24310a754450ea2292076dd8b42c9f5b6e43c29b943cc3fcb7

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp33-cp33m-win32.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp33-cp33m-win32.whl
Algorithm Hash digest
SHA256 2aeded7095564b8a068402531c7407517cd714a0fe9872f76c69bd4400b07613
MD5 0911e5e1f21988679ed47145e18fb010
BLAKE2b-256 598b6ff38c08f1f03f05a004af49feef8cdb88dc27156cd0179d5c95d825447e

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp33-cp33m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp33-cp33m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 c8922f187fcac3b2afa6d200ef00cd4e69719799b54b4f2f2741b2e4c96ccd61
MD5 d22ff80558fff9b3320dc0f4606f55e7
BLAKE2b-256 251c45766977a2cbac9ac36f0066e06531ec4775599867a0e394670126195c74

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp33-cp33m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp33-cp33m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 44ad06faf5ee589c1127a18610695a65815ed5db724b58687294ee907ec546ba
MD5 5805654a17aa79dd3cafcb8dde89c5ef
BLAKE2b-256 2e5faa31f826ade2a4782f60ad5c8b4d02abcbb91d80dae73aafb993628d8071

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 bdd8581dae617b9fbe6e8dbdd96590c02fc33eebc411b0273fd62b4d468d0bb7
MD5 cd2c3fb69db6734a6cc76309c64adb65
BLAKE2b-256 dbd1f6e8464cc2b6b144d6b81239ee72fe0e2fa0aa59a2d8f27201e98bea0898

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp27-cp27mu-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp27-cp27mu-manylinux1_i686.whl
Algorithm Hash digest
SHA256 7bda0f395fd8ef6b1fa7cded00d5cca72005ff158fc30703e1337fe32fbf2102
MD5 7fd57b51eb050a6291ea92e08afd08e7
BLAKE2b-256 a0d960427c464c618b0b913d37192c573c9190391c05d423b757b61a45933160

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp27-cp27m-win_amd64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 5d390f8c6562173b913f0359cd87d5bc2e3245cc88ec4edf59d8c52107f24d29
MD5 f641a9902f805763015381a8c257eed8
BLAKE2b-256 dad20df662e20f2e8cfd91dad15ac1179695b48de52345f26cca47156498ef52

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp27-cp27m-win32.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp27-cp27m-win32.whl
Algorithm Hash digest
SHA256 89a0a233ed3a216ae117323d8fb0da38f1ca344dc1021559e38416cce23592a0
MD5 f9d76479a36ad022e084eb3e3c82971e
BLAKE2b-256 8e4ce7060518c80f6b62670fa9108d2f517aa8824cd8e41783f0ebe65cd59425

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 29d3a581cfcc68ca66f7c5d4830944556ddca9e2747e214bde8028972bb1901f
MD5 2d238381efb7c404abe3a0ef1024e0ac
BLAKE2b-256 e378ecdda21cf25f1990d459487fcc36726978d3a3627acb45e4489568b23774

See more details on using hashes here.

File details

Details for the file pycryptodome-3.4.11-cp27-cp27m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodome-3.4.11-cp27-cp27m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 444053c24b336daa7f84bf872df7a6b9950697559926aea5775f5aa757b67a3e
MD5 c683d22d0db3cd476847ae943c181997
BLAKE2b-256 fc2d824ff38ec649584bfa57d38b4348ad3fcedab67f67d9611818f121759fa0

See more details on using hashes here.

Supported by

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