Crate openpgp_card
source ·Expand description
Client library for OpenPGP card devices (such as Gnuk, Nitrokey, YubiKey, or Java smartcards running an OpenPGP card application).
This library aims to offer
- access to all features in the OpenPGP card specification,
- without relying on a particular OpenPGP implementation.
The openpgp-card-sequoia crate offers a higher level wrapper based on the Sequoia PGP implementation.
Note that this library can’t directly access cards by itself.
Instead, users need to supply a backend that implements the
CardBackend
and CardTransaction
traits.
For example card-backend-pcsc
offers a backend implementation that uses PC/SC to
communicate with Smart Cards.
See the architecture diagram for an overview of the ecosystem around this crate.
Modules§
- Data structures that specify algorithms to use on an OpenPGP card.
- OpenPGP card data objects (DO)
- Data structures for cryptographic material: Private key data, public key data, cryptograms for decryption, hash data for signing.
Structs§
- An OpenPGP card object (backed by a CardBackend implementation).
- To perform commands on a
Card
, aTransaction
must be started. This struct offers low-level access to OpenPGP card functionality.
Enums§
- Enum wrapper for the different error types of this crate
- Identify a Key slot on an OpenPGP card
- OpenPGP card “Status Bytes” (ok statuses and errors)