Metadata-Version: 2.4
Name: PKCS11-cryptography-keys
Version: 0.0.6
Summary: Python chryptography keys implemented on to the PKCS11 interface
Author-email: Miha Šetina <miha.setina@gmail.com>
Maintainer-email: Miha Šetina <miha.setina@gmail.com>
License-Expression: BSD-3-Clause
Project-URL: Homepage, https://github.com/msetina/PKCS11-cryptography-keys
Project-URL: Source Code, https://github.com/msetina/PKCS11-cryptography-keys
Project-URL: Issue Tracker, https://github.com/msetina/PKCS11-cryptography-keys/issues
Keywords: cryptography,pkcs11
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Security :: Cryptography
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: PyKCS11>=1.5.14
Requires-Dist: cryptography>=44.0.0
Requires-Dist: asn1crypto>=1.5.1
Provides-Extra: testing
Requires-Dist: PKCS11-cryptography-keys; extra == "testing"
Requires-Dist: pytest>=6.1.1; extra == "testing"
Requires-Dist: pytest-cov<6.3,>=4.0; extra == "testing"
Provides-Extra: mypy
Requires-Dist: PKCS11-cryptography-keys; extra == "mypy"
Requires-Dist: types-PyYAML; extra == "mypy"
Dynamic: license-file

PKCS11 implementation for keys of pyca/cryptography
===================================================

``cryptography`` is a package which provides cryptographic recipes and
primitives to Python developers. Their goal is for it to be your "cryptographic
standard library".

This library uses ``PyKCS11`` to implement comunication to the ``PKCS11`` device (smartcard,...). 
As PKCS11 devices need an open session to work with them, this library provides 
context managers to execute tasks provided by pyca/cryptography. ``PKCS11KeySession`` is the 
context manager that will facilitate the use of implemented keys.

Context managers take information to connect to the ``PKCS11`` device (library, token label and 
key label, if there are more that one private keys on a token). Within the ``with`` statement 
the cryptographic operations with the key are made.

The ``PKCS11KeySession`` context meneager will return private key object of the type referenced by
library, token label and in some cases key label written on the ``PKCS11`` device. From private key 
public key can be retrieved like in pyca/cryptography and also certificates (and even CA chain)
(this is the extension ``PKCS11`` device tokens can provide).

This library provides keys for EC and RSA keys which are most comonly used keys on ``PKCS11`` devices.


