Attestazione
un servizio di Spazio Genesi ↗ EN

L'eseguibile sg-attest, senza installare nulla

Un binario standalone per Linux, macOS e Windows: attesta e verifica da terminale o in CI senza Node.js, npm o rete verso un registro pacchetti — solo il download e i checksum qui sotto.

Scarica

Sei comandi, uno per sistema/architettura, pubblicati a ogni rilascio dalla CI del repo — nessun caricamento a mano. I link sotto puntano sempre all'ultima versione pubblicata.

Binari sg-attest per sistema operativo e architettura
Sistema Architettura Download
Linux x64 sg-attest-linux-x64
Linux arm64 sg-attest-linux-arm64
macOS Intel sg-attest-macos-x64
macOS Apple Silicon sg-attest-macos-arm64
Windows x64 sg-attest-windows-x64.exe
Windows ARM64 sg-attest-windows-arm64.exe

Verifica l'integrità

Ogni rilascio include SHA256SUMS.txt con l'impronta di ciascun binario. Confrontala prima di eseguire il file scaricato:

# Linux / macOS
sha256sum -c SHA256SUMS.txt --ignore-missing

# Windows (PowerShell)
(Get-FileHash .\sg-attest-windows-x64.exe -Algorithm SHA256).Hash

Ha senso usare lo stesso strumento del servizio per verificare se stesso: sg-attest attest calcola l'impronta di qualunque file, compreso questo eseguibile.

Avviso "editore sconosciuto"

Questi binari non sono firmati digitalmente: alla prima esecuzione, Windows SmartScreen o macOS Gatekeeper mostrano un avviso ("editore sconosciuto"/"sviluppatore non identificato"). È un compromesso dichiarato, non un difetto nascosto — la garanzia d'integrità nel frattempo è il checksum qui sopra, insieme al fatto che il binario è compilato pubblicamente dalla CI del repo, direttamente dal sorgente che puoi leggere.

Se preferisci evitare del tutto l'avviso, npx resta il canale primario e non lo mostra mai (vedi sotto).

Uso

Stessi comandi della versione npm, si lancia il file direttamente:

# Linux / macOS: rendilo eseguibile la prima volta
chmod +x ./sg-attest-linux-x64

./sg-attest-linux-x64 status
./sg-attest-linux-x64 authorize
./sg-attest-linux-x64 attest ./opera.zip --pdf certificato.pdf
./sg-attest-linux-x64 verify ./opera.zip --hash <sha256>

Su Windows, lo stesso con .\sg-attest-windows-x64.exe. La chiave API va nella variabile d'ambiente IMGAUTH_API_KEY, mai passata come argomento (finirebbe nella cronologia della shell). Ogni comando accetta --json per l'uso in script; i codici d'uscita sono 0 successo, 1 errore operativo, 2 verifica con esito negativo.

attest senza --pdf calcola solo impronta e firma (nulla viene archiviato); aggiungi --pdf <file> per generare anche il certificato firmato — solo allora l'opera è archiviata e la sua pagina /c/<impronta> esiste davvero.

L'elenco completo dei comandi (verify-cert, cert, anchor, …) è nel README del repo.

Quando preferire il binario a npx

npx/npm restano il canale primario, e sono quello che usa attest-action in CI: il binario è un canale in più, non una sostituzione.

Le garanzie restano identiche. Il binario è compilato dallo stesso sorgente del pacchetto npm (src/cli.js), senza dipendenze incluse oltre al runtime necessario per eseguirlo: stessa impronta calcolata in locale, stesso HMAC, stessa firma, stesso ancoraggio Bitcoin. Nessuna scorciatoia riduce le protezioni descritte nella pagina del servizio.