Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] experiment: partial port to rpgp with new v6 API #5880

Closed
wants to merge 1 commit into from

Conversation

hko-s
Copy link

@hko-s hko-s commented Aug 13, 2024

No description provided.

@hko-s hko-s marked this pull request as draft August 13, 2024 15:32
@hko-s
Copy link
Author

hko-s commented Aug 13, 2024

The main stumbling block here seems to be that dc-core serializes OpenPGP fingerprints, and we'll need to figure out how to do that for new key versions, going forward.

"New" fingerprints are particularly annoying because both "v5" (GnuPG) and "v6" (IETF) fingerprints consist of 32 bytes (both use SHA256). In the current rPGP draft API, we model fingerprints as pairs of "key version + binary data". However, from raw "binary data", we can't distinguish v5 and v6 fingerprints.

One approach to this might be to define a dc-specific serialization for fingerprints. E.g.:

  • "0123..." (20 bytes) could be a v4 fingerprint, while
  • something like "v6:123456..." and "v5:123456..." (32 bytes) could be serialized v6 and v5 fingerprints, respectively

@link2xt
Copy link
Collaborator

link2xt commented Nov 23, 2024

This is replaced with merged #6026 and experimental #6226.

@link2xt link2xt closed this Nov 23, 2024
@link2xt
Copy link
Collaborator

link2xt commented Nov 23, 2024

And regarding fingerprints, we just serialize them as usual. It should be impossible to create v5 and v6 keys with identical fingerprint, so they don't really need separate namespaces.

@hko-s
Copy link
Author

hko-s commented Nov 23, 2024

Great! 🥳

(Regarding versioned fingerprints: In some contexts, it might be useful to know the key version in the future. E.g. possibly for keyserver lookups. But it seems like a reasonable bet, for now, that Delta won't have any such need.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants