Update high level documentation on backends

This commit is contained in:
Heiko Schaefer 2022-03-23 12:10:38 +01:00
parent d39d88694d
commit b2d061d66c
No known key found for this signature in database
GPG key ID: 4A849A1904CCBD7D

View file

@ -65,6 +65,7 @@ implementation.
Typically, `openpgp-card` will be used with the `openpgp-card-pcsc` backend, Typically, `openpgp-card` will be used with the `openpgp-card-pcsc` backend,
which uses the standard pcsclite library to communicate with cards. which uses the standard pcsclite library to communicate with cards.
However, alternative backends can be used and may be useful. However, alternative backends can be used and may be useful.
The experimental, alternative `openpgp-card-scdc` backend uses scdaemon from The experimental, alternative `openpgp-card-scdc` backend uses scdaemon from
the GnuPG project as a low-level transport layer to interact with OpenPGP the GnuPG project as a low-level transport layer to interact with OpenPGP
@ -73,9 +74,11 @@ cards.
Backends implement: Backends implement:
1) functionality to find and connect to a card (these operations may vary 1) functionality to find and connect to a card (these operations may vary
significantly between different backends), and significantly between different backends),
2) a very simple communication primitive, by implementing the `CardClient` 2) transaction management (where applicable), by implementing the `CardBackend` trait, and
3) simple communication primitives, by implementing the `CardTransaction`
trait, to send individual APDU commands and receive responses. trait, to send individual APDU commands and receive responses.
All higher level and/or OpenPGP card-specific logic (including command All higher level and/or OpenPGP card-specific logic (including command