[ANN] `yubikey` v0.4.0: pure Rust cross-platform host-side driver for YubiKey devices with signing/encryption support

Note: this crate was formerly known as yubikey-piv, but has been renamed in this release

Announcing v0.4.0 of the yubikey crate: a Pure Rust cross-platform host-side driver for YubiKey devices with support for hardware-backed digital signatures and public-key decryption:

The crate provides a host-side driver which works on Windows, Linux, and macOS.

Support is provided for the YubiKey's Personal Identity Verification (PIV) application, which supports RSA (1024/2048-bit) and ECC (NIST P-256/P-384) algorithms e.g, PKCS#1v1.5 for RSA and ECDSA for ECC keys.

The main functionality supported right now is producing ECDSA signatures backed by a PIV hardware key stored on a YubiKey. There is untested support for RSA signatures, as well as ECC/RSA decryption.

Functionality is also provided for PIN management as well as other forms of device management and status inquiries.

The yubikey-cli crate provides a demonstration/example of the functionality, although it presently implements very little: