theupdateframework / theupdateframework/rust-tuf
ECDSA key support
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 198
- Forks
- 39
- Avg merge
- 9h 19m
- Merged PRs (30d)
- 2
Description
Hey! Thanks for maintaining rust-tuf :) I'm trying this library out with the Sigstore TUF instance, evaluating if we can replace tough in our Sigstore client. One thing that I noticed is that it doesn't seem to accept Sigstore's root metadata, returning this error from Client::from_trusted_root:
metadata root signature threshold not met: 0/3:
TufError(MetadataMissingSignatures { role: MetadataPath("root"), number_of_valid_signatures: 0, threshold: 3 })
I dug a little deeper and this may be related to the fact that the Sigstore uses ECDSA keys. From my quick skim of the codebase, ECDSA key deserialization and ecdsa-sha2-nistp256 signatures don't seem to be implemented. Are there any plans to support this key type?
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at Client::from_trusted_root and reproduce the failure with Sigstore's linked root metadata. Trace the key deserialization and signature verification paths to determine where ECDSA and ecdsa-sha2-nistp256 are handled. Done means the linked root metadata passes its three-signature threshold without regressing existing TUF verification.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cryptography
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100