feat(updater): Pflicht-Signaturprüfung der Releases mit Minisign

- SHA256SUMS.txt muss mit dem eingebauten Minisign-Schlüssel
  (UPDATE_SIGNING_PUBLIC_KEY) signiert sein; fehlende oder ungültige
  Signaturen und Versionen ohne Schlüssel lehnen Updates ab
- Prüfsummen und Signatur werden vor dem Paket geladen und geprüft
- build-release.sh signiert mit MINISIGN_SECRET_KEY und prüft, dass der
  Schlüssel zum eingebauten öffentlichen Schlüssel passt; in der CI ist die
  Signatur Pflicht
- publish-gitea-release.sh lädt SHA256SUMS.txt.minisig hoch
- README: Einrichtung des Schlüsselpaars dokumentiert

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-06 19:49:25 +02:00
co-authored by Claude Opus 5.5
parent 5ce2c250bb
commit 7ed971d2a2
7 changed files with 222 additions and 70 deletions
Generated
+7
View File
@@ -1045,6 +1045,7 @@ dependencies = [
"egui-wgpu",
"egui-winit",
"glam",
"minisign-verify",
"octotablet",
"pollster",
"printpdf",
@@ -1293,6 +1294,12 @@ dependencies = [
"paste",
]
[[package]]
name = "minisign-verify"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "871285dc19d8d0ebe0eef3d0e99a205f2a71363b122632cbbfa4a6c370a960ce"
[[package]]
name = "miniz_oxide"
version = "0.9.1"