No description
Find a file
Heiko Schaefer c789c90b9e - more explicit error handling
- add abstraction for types of card
2021-07-20 20:30:14 +02:00
.reuse Fix reuse license information 2021-07-17 02:27:51 +02:00
card-functionality - more explicit error handling 2021-07-20 20:30:14 +02:00
example Initial commit 2021-06-30 22:29:23 +02:00
LICENSES Initial commit 2021-06-30 22:29:23 +02:00
openpgp-card Support ECDSA signatures 2021-07-18 21:12:22 +02:00
openpgp-card-sequoia Handle Gnuk's return format for NistP256 decryption 2021-07-20 17:38:15 +02:00
scdc Signing 2021-07-18 12:00:00 +02:00
.gitignore Initial commit 2021-06-30 22:29:23 +02:00
.gitlab-ci.yml Cleanup/fix CI config. 2021-07-02 00:24:29 +02:00
.rustfmt.toml rustfmt 2021-07-01 23:46:12 +02:00
Cargo.toml Add the crate card-functionality, which implements a test suite to test the openpgp-card crate against a set of OpenPGP cards 2021-07-16 17:26:10 +02:00
README.md Initial commit 2021-06-30 22:29:23 +02:00

OpenPGP card client library

This project implements a client library for the OpenPGP card specification, in Rust.

The project consists of two crates:

  • openpgp-card, which offers an implementation-agnostic OpenPGP card client API. It can be used with any PGP implementation.
  • openpgp-card-sequoia, adds functionality to conveniently use the openpgp-card library with Sequoia PGP.

Acknowledgements

This library is based on the OpenPGP Card spec, version 3.4.1.

Other helpful resources included:

The free Gnuk OpenPGP card implementation by gniibe.

The Rust/Sequoia-based OpenPGP card client code in kushaldas' project johnnycanencrypt.

The scdaemon client implementation by the GnuPG project.

The open-keychain project, which implements an OpenPGP card client for Java/Android.

The Rust/Sequoia-based OpenPGP card client code by Robin Krahl.