Add KEYS file with Maven signing public keys - #63
Merged
Merged
Conversation
mihir-pradhan
marked this pull request as ready for review
August 3, 2026 20:03
AaronAtDuo
approved these changes
Aug 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Release artifacts on Maven Central are signed, and the public keys have been published
to public keyservers. #60 asks for a way to confirm that the key used to sign a release
is one this project intends — that is, a source for the keys tied to the project itself.
Raised after the signing key rotated between 1.3.1 and 1.3.2.
KEYSfile at the repo root with both signing keys.## Verifying releasessection to the README with the verification commandsand a version → fingerprint table.
masterbranch.7ED4 A780 3AFC 6DE8 47DF 9A3F 70EE 73F2 1701 2D0E20FF 0D66 B2D0 202C 1544 7339 7E77 F31E 27A4 AEA2The file contains public key material only. Trust derives from commit access: whoever
can change this file can change the code it signs.
The retired key is retained so signatures made while it was valid remain verifiable.
The file is append-only by design — deleting a key would break verification of
already-published releases.
How Has This Been Tested?
gpg --import KEYS→ 2 keys imported, 0 secret keys, noPRIVATE KEYmarkersduo-universal-sdkversions (1.0.2 → 1.3.2) verify againstthese two keys and no others. 1.0.2–1.3.1 report
Good signature ... [expired](
EXPKEYSIG— key expired after the signature was made, which is expected);1.3.2 reports
Good signature(GOODSIG).keyserver.ubuntu.comandkeys.openpgp.org— identical fingerprints and identical canonical export.key IDs on the
.jar.ascfiles, not hand-entered.gpg --fingerprintoutput character-for-character.Developers:append command inKEYSbothrun verbatim.
Types of Changes
Refs #60