Skip to main content

Cryptographic library for Python

This project has been quarantined.

PyPI Admins need to review this project before it can be restored. While in quarantine, the project is not installable by clients, and cannot be being modified by its maintainers.

Read more in the project in quarantine help article.

Project description

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

It supports Python 2.7, Python 3.7 and newer, and PyPy.

You can install it with:

pip install obfuscation

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, KW, KWP)

  • Hybrid Public Key Encryption (HPKE)

  • Accelerated AES on Intel platforms via AES-NI

  • First class support for PyPy

  • Elliptic curves cryptography (NIST P-curves; Ed25519, Ed448, Curve25519)

  • 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 and EdDSA

  • 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

obfuscation-3.23.3.tar.gz (4.9 MB view details)

Uploaded Source

Built Distribution

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

obfuscation-3.23.3-cp37-abi3-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.7+Windows x86-64

File details

Details for the file obfuscation-3.23.3.tar.gz.

File metadata

  • Download URL: obfuscation-3.23.3.tar.gz
  • Upload date:
  • Size: 4.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for obfuscation-3.23.3.tar.gz
Algorithm Hash digest
SHA256 d3bb4088d149cfbcfc30aacf4ca34236e0a98a9e26e83d61e71f9ac9643f65aa
MD5 3d45960bba723895c5e11befe5dc5537
BLAKE2b-256 a1c2b693adfc3c6cac402ef803c0f621bc9ebc708046de4be06b3e2314048329

See more details on using hashes here.

File details

Details for the file obfuscation-3.23.3-cp37-abi3-win_amd64.whl.

File metadata

  • Download URL: obfuscation-3.23.3-cp37-abi3-win_amd64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.7+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for obfuscation-3.23.3-cp37-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 a2a0db03f4c545a38de9dd19a4e682c7919e143474f15dc2c60cf3ddb473a94a
MD5 03029b576a4bca47c02f2c800433c974
BLAKE2b-256 e52508c453884290ca7ea546b91a7c80d27e55450f44022f575a6642c874fdd6

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