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 pycryptodomex

All modules are installed under the Cryptodome package.

Check the pycryptodome project for the equivalent library that works under the Crypto 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

pycryptodomex-3.6.3.tar.gz (7.1 MB view details)

Uploaded Source

Built Distributions

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

pycryptodomex-3.6.3-cp37-cp37m-manylinux1_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.7m

pycryptodomex-3.6.3-cp37-cp37m-manylinux1_i686.whl (7.4 MB view details)

Uploaded CPython 3.7m

pycryptodomex-3.6.3-cp36-cp36m-win_amd64.whl (7.9 MB view details)

Uploaded CPython 3.6mWindows x86-64

pycryptodomex-3.6.3-cp36-cp36m-win32.whl (7.8 MB view details)

Uploaded CPython 3.6mWindows x86

pycryptodomex-3.6.3-cp36-cp36m-manylinux1_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.6m

pycryptodomex-3.6.3-cp36-cp36m-manylinux1_i686.whl (7.4 MB view details)

Uploaded CPython 3.6m

pycryptodomex-3.6.3-cp36-cp36m-macosx_10_6_intel.whl (7.3 MB view details)

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

pycryptodomex-3.6.3-cp35-cp35m-win_amd64.whl (7.9 MB view details)

Uploaded CPython 3.5mWindows x86-64

pycryptodomex-3.6.3-cp35-cp35m-win32.whl (7.9 MB view details)

Uploaded CPython 3.5mWindows x86

pycryptodomex-3.6.3-cp35-cp35m-manylinux1_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.5m

pycryptodomex-3.6.3-cp35-cp35m-manylinux1_i686.whl (7.4 MB view details)

Uploaded CPython 3.5m

pycryptodomex-3.6.3-cp35-cp35m-macosx_10_6_intel.whl (7.3 MB view details)

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

pycryptodomex-3.6.3-cp34-cp34m-win_amd64.whl (7.8 MB view details)

Uploaded CPython 3.4mWindows x86-64

pycryptodomex-3.6.3-cp34-cp34m-win32.whl (7.8 MB view details)

Uploaded CPython 3.4mWindows x86

pycryptodomex-3.6.3-cp34-cp34m-manylinux1_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.4m

pycryptodomex-3.6.3-cp34-cp34m-manylinux1_i686.whl (7.4 MB view details)

Uploaded CPython 3.4m

pycryptodomex-3.6.3-cp34-cp34m-macosx_10_6_intel.whl (7.3 MB view details)

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

pycryptodomex-3.6.3-cp33-cp33m-win_amd64.whl (7.8 MB view details)

Uploaded CPython 3.3mWindows x86-64

pycryptodomex-3.6.3-cp33-cp33m-win32.whl (7.8 MB view details)

Uploaded CPython 3.3mWindows x86

pycryptodomex-3.6.3-cp27-cp27mu-manylinux1_x86_64.whl (7.4 MB view details)

Uploaded CPython 2.7mu

pycryptodomex-3.6.3-cp27-cp27mu-manylinux1_i686.whl (7.4 MB view details)

Uploaded CPython 2.7mu

pycryptodomex-3.6.3-cp27-cp27m-win_amd64.whl (7.8 MB view details)

Uploaded CPython 2.7mWindows x86-64

pycryptodomex-3.6.3-cp27-cp27m-win32.whl (7.8 MB view details)

Uploaded CPython 2.7mWindows x86

pycryptodomex-3.6.3-cp27-cp27m-manylinux1_x86_64.whl (7.4 MB view details)

Uploaded CPython 2.7m

pycryptodomex-3.6.3-cp27-cp27m-manylinux1_i686.whl (7.4 MB view details)

Uploaded CPython 2.7m

pycryptodomex-3.6.3-cp27-cp27m-macosx_10_6_intel.whl (7.3 MB view details)

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

File details

Details for the file pycryptodomex-3.6.3.tar.gz.

File metadata

  • Download URL: pycryptodomex-3.6.3.tar.gz
  • Upload date:
  • Size: 7.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pycryptodomex-3.6.3.tar.gz
Algorithm Hash digest
SHA256 008ad82b8fdd1532dd32a0e0e4204af8e4710fc3d2a76e408cbdb3dddf4f8417
MD5 ed1dc06ca4ba6a058ef47db56462234f
BLAKE2b-256 e65acf2bd33574f8f8711bad12baee7ef5c9c53a09c338cec241abfc0ba0cf63

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 1bbec1d25be08b855ace308fd80a88eeb6a5e52227c20f64dfef80357492f0ef
MD5 0e64f866ed6f627c8eb2c1518dc0cad7
BLAKE2b-256 33eb0ffab9329c8fc2154d5fccd205b68c45c4026e0a644c0874cb3af890d75e

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp37-cp37m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp37-cp37m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 7e514af5b33e8d34357201e845f6a0b0de80c5d10213f74ee6ec06c2ad26631b
MD5 b91e99d61d98fd71698c946054f0ae2b
BLAKE2b-256 aafcac1435a53a00a824bae4750fa61bea8752c7c6af2d6a057c2c306bf540cd

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp36-cp36m-win_amd64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 b2168ab5008ef10226331300ee3406ee17d7659df31b583ac670869159fa8eeb
MD5 23eef987d2ff643790e95a1176b88f0d
BLAKE2b-256 53fa118fcb739c28c64fc3d7c9d394ad076a41cd54503eda9602823a2acc1b30

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp36-cp36m-win32.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 74c4db397bc2cb4b31770b997f0669def20b44f1ba9e7e7d1791a920b2fd6778
MD5 090e26d3582007dc46806e7c38298472
BLAKE2b-256 41a69ad0107f2cea2c3fe84ab7cc6acef557302a84df139185409ea57f9e1764

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 8b73dcdc89fda4c8a9a253c7825c5f41736bde6f1b2ba95e72eeb2a1fb2791c1
MD5 7203ab26606094b8a4673e15dc14f547
BLAKE2b-256 89152087c4a8730e817faf1eabd249e9320c1b07445dd99d83bd2b47e244057b

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp36-cp36m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp36-cp36m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 236294a4f570f456118f86ea893a296a9ed80f441917f8abd2ee18e8a407b722
MD5 8cf6d2293712f80b2895c863461d01fc
BLAKE2b-256 573f80d4feecbdc43faac089caaac32d54739cc15090df9a345f5477ea15d8f1

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp36-cp36m-macosx_10_6_intel.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp36-cp36m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 2c36510c4e2407509c538e1aa1809ba14291f34b054fa60b7f480044c3916bbd
MD5 36f7a206b695ff968bc8e6ec1b1e426f
BLAKE2b-256 74216adcbb3dca5da0654052db26afbf5c030ccb55096c59a894dd701b9fe41c

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp35-cp35m-win_amd64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 aef896cf49c9d47290b883781edb9ae5b9d74d0b6a9fd51ffac7564a1a979876
MD5 1488f05ea239bc745dcf3e1cbf12e33f
BLAKE2b-256 62b5bfd7dc07b5d1b129b52ed15d6c219b2baba2a5321c27ae7f210abd0c8fe6

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp35-cp35m-win32.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 7181197cd987acf1464d32af1f52096e80a978ea673fc419a85f0c08b50a1584
MD5 01e89e23aedfc80fc4fab3089e2e840a
BLAKE2b-256 8e9cc7753445af74d170a5f1e96f35dfda9b3e70c18e14d1f932972b9f916a75

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 7b9f67fbf00a67ba4d7c4a3ece72ed60173c6b9082f4093497c37cfd4a230fc4
MD5 3cf43d8dad3bfcc1bd9a7da53eb7b9b3
BLAKE2b-256 26e5320d88661316d1504f048995fc40e0b07d76f3b0ce7f0385565116f9d30a

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp35-cp35m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp35-cp35m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 538201b0db83b916321e0339230451219a22991230ea2e43fdf085116e067a18
MD5 5e57296b60c0ea47e750f26a97787ff6
BLAKE2b-256 73fea3d4750bb32a1fa7c2d64bbca0a7ef0f58036de227213f7374201daf3acc

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp35-cp35m-macosx_10_6_intel.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp35-cp35m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 c6c4a57a6f86c34e7087eb3227b11d72ff6eb79756e066d3f7969aa9be4020ba
MD5 9ab220a4eb33f6f81ad2a6229586ca7c
BLAKE2b-256 6fb837db42cc576731cbaa50ae6d524fee1e5ae870ad2275cf288e721fe12e9c

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp34-cp34m-win_amd64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp34-cp34m-win_amd64.whl
Algorithm Hash digest
SHA256 23bd128d3801826e3e4f685932e1d0799f71d6c39b60780b6120bcffc5caf994
MD5 5dae40700c1df78c999035a27bf269a7
BLAKE2b-256 5fa7428b38115995ce3a5affc9237416d9fd577a1f3c0d9b51939f5069bb421f

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp34-cp34m-win32.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp34-cp34m-win32.whl
Algorithm Hash digest
SHA256 42f152cf5d9645c765ca0b2c150d3ca4aa2251944f2fdeccabaf6fb9dcbf61f2
MD5 2df636c1b94bcece6742ecf2b9634e58
BLAKE2b-256 831c05927a06561d85fc96446867fee6dec53429ee95be09420bed1f41e43898

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 a9060aa7eb1b70a5102577961888680f1147779fec76e91d84fdf8b9929970d7
MD5 e3295221b2c3bfdb2727d0d3c445482b
BLAKE2b-256 0e3e6f60a2fa1e383003d5819f4a9868883e21064f93f5da7d62827b46be5bf9

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp34-cp34m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp34-cp34m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 4786e5adff0801dbff4bb41230b52bad17c9e7c23ce1969eeba2f19d89a108f0
MD5 6a0964a4a14dcc031c19a33a50cbc2d5
BLAKE2b-256 34b6815dff8f1f7fac9026833241f527723a9dc8b6256767566e125519d4b63c

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp34-cp34m-macosx_10_6_intel.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp34-cp34m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 61105fb59cfb7d5d06209e88741909a8f309815e36ac6a9169b1cc89202c0e99
MD5 0326209ec8680a417ffa780b2d7a97e3
BLAKE2b-256 5c17a78094c596b044c8db1dee5b28d098ed62ee12aad2b186f6f88ffe84c295

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp33-cp33m-win_amd64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp33-cp33m-win_amd64.whl
Algorithm Hash digest
SHA256 08390a40ca7e72c65273bf66c2de02fee3849a8926895862e4df65dae19e7bd4
MD5 47849b5381dc46372ee0e7acce699d22
BLAKE2b-256 f78dddc36756f364f87bee064d7ea2dd33dd98f0edaecb0a9e03aa421d1a275c

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp33-cp33m-win32.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp33-cp33m-win32.whl
Algorithm Hash digest
SHA256 219ad9f6df7790e03087bc1ba248bb21343bc4e3a5655924f03f324aeb84d00d
MD5 102aca170eecbd0ccb4fdf374f4da00f
BLAKE2b-256 b997c336d963468c9cafb1332f4869547f0c84bed0bc4a2202aa21fb2a63c378

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 a3509ff1f71664fefc31d3812e6de6d2399180db064e2b56816c0143ef8c3cf4
MD5 9844e719be45f825be7dd90740d6991c
BLAKE2b-256 a1834a59ee1dea9b7b26d795ffea694bda23f8f459a31a50604ae17315de6ca6

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp27-cp27mu-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp27-cp27mu-manylinux1_i686.whl
Algorithm Hash digest
SHA256 19dd02399981701760515e8dd47b3737efef52284c576f5f967a3e50d17c8e7a
MD5 474c91097754f170407cac3b821301e4
BLAKE2b-256 c365f3dd79d74c516176f0692b2053fef357453ccaf3997e0ecfae72053701f7

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp27-cp27m-win_amd64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 a4b91d8f48644eb78a874f1f9422de910929e3b2fea7bc575de1be0d458459da
MD5 04db82c6a42710c38464bb1323022008
BLAKE2b-256 24b33c7a56ec50270862712c13257dd122efe4a66286b0b3a6a9ca13e6e2ad93

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp27-cp27m-win32.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp27-cp27m-win32.whl
Algorithm Hash digest
SHA256 f5fa1eccee2ef8c28256700cfabed091cfcf7bd7e5db4090adaf480fd3aff37f
MD5 fce1f44b9bd72bc4a9bbe0826cbd8baa
BLAKE2b-256 b72957fbb4dc8932385eba09b9d748c64317cb72f7c632bcd1f0ab44b783b880

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 bd95d82b9c71afec2a48ac41b8153af7b4a9e8055a32105ac61c9e2d98afd026
MD5 4c6776c0733cc2b87e556ef392f8edb9
BLAKE2b-256 bd8f39d775e5b676e5e8b087a178d7482842bdb63ac37fed883f555605a9aba6

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp27-cp27m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp27-cp27m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 9550b0094047b947de01b990290452cb3d54bd1af645cdf750374d6f7ab4bc62
MD5 6f1827dcc43273397c80e5af4a067637
BLAKE2b-256 9c48435ec97828c3c142fbfb71f3a1e65a52e44c451292f7b922f5fd4adcb2b3

See more details on using hashes here.

File details

Details for the file pycryptodomex-3.6.3-cp27-cp27m-macosx_10_6_intel.whl.

File metadata

File hashes

Hashes for pycryptodomex-3.6.3-cp27-cp27m-macosx_10_6_intel.whl
Algorithm Hash digest
SHA256 f500a183ff578fc8417f6b4c2fcdaa88286bde29bbe95d2546884d0607d3c603
MD5 6050b21dda1bbf8fb832f2773889623e
BLAKE2b-256 3d6b5596c880bf8c5f7fb16e556fe75ae4b31a29d5011092b5bb4689693b49b3

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