No description
Find a file
2021-08-03 15:32:48 +02:00
.reuse Fix reuse license information 2021-07-17 02:27:51 +02:00
card-functionality Adjust to changed ScdClient API 2021-08-03 15:32:48 +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 When the card doesn't support command chaining, throw CommandTooLong error if the command is too long. 2021-07-29 18:35:25 +02:00
openpgp-card-sequoia Adjust to changed ScdClient API 2021-08-03 15:32:48 +02:00
scdc Some cleanup/documentation. 2021-08-03 15:31:40 +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.