{"categories":[{"label":"Cryptography","url":"https://skillfed.io/packages/category/security-cryptography/2"}],"enrichment":{"capability":"Provides a high-level Python interface to PKCS#11 (Cryptoki) for interacting with hardware security modules and smartcards, supporting symmetric encryption, asymmetric cryptography, key generation, and signing operations.","skillfed_tags":["hsm","smartcard","cryptography"],"use_cases":["Generate and manage cryptographic keys on a hardware security module or smartcard from Python applications","Encrypt and decrypt data using symmetric algorithms (AES, DES3) stored on HSM tokens","Sign and verify data using RSA, DSA, or ECDSA keys resident on a smartcard or HSM","Perform key agreement operations (Diffie-Hellman, ECDH) for establishing shared session keys","Convert cryptographic material between PKCS#11 and standard formats (PKCS#1, X.509) for interoperability"],"what_it_does":"python-pkcs11 is a Pythonic wrapper around the PKCS#11 (Cryptoki) standard that abstracts the complexity of interacting with hardware security modules and smartcards. It provides a high-level API for cryptographic operations including AES, DES3, RSA, DSA, ECDSA, and Diffie-Hellman key exchange, with support for key generation, encryption, decryption, signing, and verification. The library includes utility functions to convert between PKCS#11 data structures and common interchange formats like PKCS#1 and X.509.\n\nThe package is designed to follow the logical structure of an HSM with sensible defaults for obscure parameters. Many APIs accept iterables and act as generators, allowing you to stream large data blocks for symmetric encryption. It supports modern Python versions (3.10 through 3.14) and is tested against SoftHSMv2 and opencryptoki in CI, though historical testing against multiple commercial HSM platforms is no longer actively maintained.","worth_installing":"Yes, if you need to work with PKCS#11 devices (HSMs or smartcards) from Python. The package is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and supports current Python versions. Install friction is moderate due to compiled wheels, but pre-built distributions are available for common platforms. The main caveat is that you must have a compatible PKCS#11 module installed and configured separately."},"id":"python-pkcs11","links":{"html":"https://skillfed.io/packages/python-pkcs11","md":"https://skillfed.io/packages/python-pkcs11.md","pypi":"https://pypi.org/project/python-pkcs11/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-07-10","license_spdx":"MIT","license_treatment":"permissive","name":"python-pkcs11","python_support":"supports_current","summary":"PKCS#11 support for Python"},"popularity":{"monthly_downloads":234998,"position":9013,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.9.5"}
