#1145885 rust-sequoia-keystore-openpgp-card - needs update for openpgp-card 0.7

#1145885#5
Date:
2026-08-27 14:19:23 UTC
From:
To:
Simon recently updated the rust-openpgp-card package
to 0.7 (I had planned to update it, but only to version 0.6).

I was able to make a patch that builds and runs tests
succesfully, but I am not happy uploading it without review
from someone more familiar with the code, and ideally
someone who actually uses openpgp cards.

The patch addresses the following issues.

The signature of the "signature_for_hash" and
"authenticate_for_hash" method has changed, previously
they took a paramer of type "Hash", while now they take
two parameters of type "SigningAlgo" and "&[u8]", I've
tried to translate things as best I can but there seem to
be some differences, for example the old "Hash" type
had different variants for ECDSA and EdDSA while the
new "SigningAlgo" type just has a single variant for ECC

The to_admin_card function has been renamed to
as_admin_card

Many parameters and return values have changed from Box
or Vec to references. This required me to restructure the SqEccKey
type to perform private key conversion in SqEccKey::new
rather than in the implementation of the EccKey trait. It also
raises some potential questions about cleanup of private
data before freeing memory, I don't know what sequoia's
policy is on that.

I have brought this up upstream at