Skip to content

Install only updates signed with the release key - #78

Merged
ApolloF merged 3 commits into
mainfrom
fix/signed-releases
Oct 25, 2026
Merged

ApolloF merged 3 commits into
mainfrom
fix/signed-releases

Conversation

@ApolloF

@ApolloF ApolloF commented Oct 25, 2026

Copy link
Copy Markdown
Owner

Task 8 of docs/design/safety-fixes-2026-10.md. Updates used to install whatever Syncer.exe the latest release had, so anyone who could change a release asset could ship code to every PC. Now CI signs SHA256SUMS.txt (with the tag) using the RELEASE_SIGNING_KEY secret, and the app only installs an exe whose hash is in a sums file signed with the embedded key. An unsigned release, a hash mismatch or an older tag is reported and never installed. Updates also wait while a backup or account switch is running.

CI signs SHA256SUMS.txt together with the release tag using an ed25519 key from the RELEASE_SIGNING_KEY secret, and checks it against the key built into the app. The app installs only a Syncer.exe whose hash is in a validly signed sums file of a newer release, and never while a backup or an account change is running.
@ApolloF
ApolloF enabled auto-merge (squash) October 25, 2026 20:42
@ApolloF
ApolloF merged commit 0866d8f into main Oct 25, 2026
2 checks passed
@ApolloF
ApolloF deleted the fix/signed-releases branch October 25, 2026 20:45
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.

1 participant