Come usare PGP
Per usare PGP, generi una coppia di chiavi (una chiave pubblica e una chiave privata), condividi la tua chiave pubblica con le persone con cui vuoi comunicare, importi le loro chiavi pubbliche, e poi usi queste chiavi per crittografare, decrittografare, firmare e verificare messaggi. La crittografia PGP garantisce che solo il destinatario previsto possa leggere il tuo messaggio, mentre le firme digitali dimostrano che un messaggio proviene davvero da te. Strumenti come KeychainPGP rendono questo processo accessibile grazie a un workflow basato sugli appunti — senza riga di comando.
Questo tutorial PGP ti guida attraverso ogni passaggio, dalla generazione della tua prima coppia di chiavi all'invio e alla ricezione di messaggi crittografati. Se sei nuovo al concetto di crittografia a chiave pubblica, considera di leggere prima Cos'è PGP? o PGP per principianti.
Cosa ti serve prima di iniziare
Prima di crittografare il tuo primo messaggio con PGP, hai bisogno di un'applicazione PGP:
- Applicazione web KeychainPGP — Apri lo strumento PGP online in qualsiasi browser moderno. Tutto funziona localmente tramite WebAssembly compilato da Rust. Nessuna installazione, nessun account, nessun dato inviato a un server.
- Applicazione desktop KeychainPGP — Scarica l'applicazione nativa per Windows, macOS, Linux o Android dalla pagina delle release su GitHub. L'applicazione desktop aggiunge scorciatoie globali, integrazione nella barra di sistema, cancellazione automatica degli appunti e sincronizzazione tramite QR code.
- CLI KeychainPGP — Il CLI
keychainpgpfornisce comandi per la generazione di chiavi, la crittografia, la decrittografia, la firma, la verifica e la gestione del portachiavi. Ideale per lo scripting e l'automazione. - GnuPG (GPG) — Lo strumento tradizionale da riga di comando. Potente ma richiede familiarità con il terminale. Vedi PGP vs GPG per un confronto dettagliato.
Suggerimento: Se vuoi semplicemente provare la crittografia PGP adesso senza installare nulla, apri lo strumento PGP online e segui questo tutorial.
Passaggio 1: Generare una coppia di chiavi PGP
Una coppia di chiavi PGP è composta da due chiavi matematicamente correlate:
- Chiave pubblica — La condividi liberamente. Chiunque può usarla per crittografare messaggi a te destinati o verificare le tue firme.
- Chiave privata — La mantieni segreta. Decrittografa i messaggi crittografati con la tua chiave pubblica e crea firme digitali.
Generare una chiave in KeychainPGP
- Apri KeychainPGP (applicazione web o desktop).
- Vai alla scheda Chiavi.
- Clicca su Genera una nuova chiave.
- Inserisci il tuo nome e indirizzo e-mail.
- Clicca su Genera. KeychainPGP crea una coppia di chiavi Ed25519 + X25519 — l'algoritmo più moderno e sicuro disponibile in OpenPGP.
Generare una chiave con GPG (riga di comando)
gpg --full-generate-key
Seleziona il tipo di chiave (RSA o ECC), la dimensione e il periodo di scadenza. Per una sicurezza moderna, scegli Ed25519 se la tua versione di GPG lo supporta.
Passaggio 2: Condividere la tua chiave pubblica
La tua chiave pubblica è un blocco di testo in formato ASCII-armored. Puoi condividerla ovunque:
- E-mail — Incollala nel corpo di un'e-mail o allegala come file
.asc. - Applicazioni di messaggistica — Inviala tramite Signal, WhatsApp, Matrix o qualsiasi piattaforma di chat.
- Il tuo sito web — Pubblicala sul tuo sito personale, profilo GitHub o bio Twitter.
- Server di chiavi — Caricala su un server di chiavi pubblico come
keys.openpgp.org.
Importante: Condividi solo la tua chiave pubblica. Non condividere mai la tua chiave privata con nessuno, in nessuna circostanza.
Passaggio 3: Importare le chiavi pubbliche dei tuoi contatti
Prima di poter inviare un messaggio crittografato a qualcuno, hai bisogno della sua chiave pubblica. Chiedi al tuo contatto di inviarti la sua chiave pubblica ASCII-armored, oppure cercala su un server di chiavi.
Importare una chiave in KeychainPGP
- Copia il blocco della chiave pubblica del contatto nei tuoi appunti.
- Apri KeychainPGP e vai alla scheda Chiavi.
- Clicca su Importa una chiave e incolla la chiave.
- Il contatto appare nella tua lista di chiavi con il suo nome e la sua e-mail.
Passaggio 4: Crittografare un messaggio
Crittografia in KeychainPGP (web o desktop)
- Vai alla scheda Crittografa.
- Digita o incolla il messaggio che vuoi crittografare.
- Seleziona il destinatario dalla tua lista di chiavi.
- Clicca su Crittografa negli appunti. Il messaggio crittografato viene copiato nei tuoi appunti.
- Incolla il messaggio crittografato nella tua e-mail, chat o qualsiasi altro canale di comunicazione.
Crittografia con la scorciatoia desktop
Con l'applicazione desktop KeychainPGP, il processo è ancora più rapido grazie al workflow tramite appunti:
- Digita il tuo messaggio in qualsiasi applicazione.
- Seleziona e copia il testo (
Ctrl+C). - Premi
Ctrl+Shift+E— KeychainPGP crittografa il contenuto degli appunti. - Incolla il messaggio crittografato (
Ctrl+V).
Passaggio 5: Decrittografare un messaggio
Decrittografia in KeychainPGP (web o desktop)
- Copia il blocco completo del messaggio crittografato.
- Vai alla scheda Decrittografa di KeychainPGP.
- Incolla il testo crittografato.
- Clicca su Decrittografa. Il testo in chiaro appare immediatamente.
Decrittografia con la scorciatoia desktop
- Seleziona e copia il blocco del messaggio crittografato (
Ctrl+C). - Premi
Ctrl+Shift+D— KeychainPGP decrittografa il contenuto degli appunti. - Il testo in chiaro sostituisce il testo crittografato nei tuoi appunti. Incollalo dove ne hai bisogno.
L'applicazione desktop dispone anche della cancellazione automatica degli appunti: dopo 30 secondi, il testo decrittografato viene automaticamente rimosso dagli appunti.
Passaggio 6: Firmare un messaggio
Una firma digitale PGP dimostra due cose:
- Autenticità — Il messaggio è stato scritto dal proprietario della chiave di firma.
- Integrità — Il messaggio non è stato alterato dopo la firma.
Firmare non crittografa il messaggio. Chiunque può leggere un messaggio firmato, ma può verificare che proviene davvero da te e non è stato falsificato.
Quando firmare i messaggi
- Annunciare rilasci di software o avvisi di sicurezza
- Verificare la propria identità su forum pubblici
- Firmare e-mail per dimostrarne l'origine
- Firma dei commit Git per l'integrità del codice
Passaggio 7: Verificare una firma
Quando ricevi un messaggio firmato, puoi verificare che sia autentico e non modificato.
Verifica in KeychainPGP
- Copia il messaggio firmato completo (incluso il blocco di firma).
- Vai alla scheda Verifica.
- Incolla il messaggio firmato.
- Clicca su Verifica. KeychainPGP conferma se la firma è valida.
Workflow tramite appunti di KeychainPGP
Ciò che distingue KeychainPGP dagli strumenti PGP tradizionali è il suo workflow di crittografia tramite appunti. Invece di operare su file o richiedere un client e-mail dedicato, KeychainPGP funziona con qualsiasi applicazione tramite gli appunti di sistema.
| Azione | Applicazione web | Applicazione desktop |
|---|---|---|
| Crittografa | Incolla il testo, clicca su Crittografa | Copia il testo, premi Ctrl+Shift+E |
| Decrittografa | Incolla il testo crittografato, clicca su Decrittografa | Copia il testo crittografato, premi Ctrl+Shift+D |
| Firma | Incolla il testo, clicca su Firma | Disponibile nella finestra dell'applicazione |
| Verifica | Incolla il testo firmato, clicca su Verifica | Disponibile nella finestra dell'applicazione |
Funzionalità di sicurezza aggiuntive dell'applicazione desktop:
- Cancellazione automatica degli appunti — Il testo decrittografato viene rimosso dagli appunti dopo 30 secondi.
- Modalità OPSEC — Titolo della finestra mascherato, archiviazione delle chiavi solo in RAM e pulsante di cancellazione d'emergenza.
- Archivio credenziali del sistema operativo — Le chiavi private sono archiviate in modo sicuro tramite Windows Credential Manager, macOS Keychain o Linux Secret Service.
Applicazione web vs applicazione desktop
Applicazione web (strumento PGP online):
- Funziona interamente nel browser tramite WebAssembly
- Nessuna installazione, nessun account richiesto
- Perfetta per operazioni di crittografia rapide
- Le chiavi sono archiviate nello storage locale del browser
Applicazione desktop (Windows, macOS, Linux, Android):
- Scorciatoie globali per crittografare e decrittografare
- Integrazione nella barra di sistema
- Cancellazione automatica degli appunti
- Modalità OPSEC con chiavi solo in RAM e cancellazione d'emergenza
- Archiviazione sicura delle chiavi tramite il gestore di credenziali del sistema operativo
- Più adatta all'uso quotidiano e alla gestione a lungo termine delle chiavi
Entrambe le applicazioni sono gratuite, open source (MIT / Apache-2.0) e prive di qualsiasi telemetria.
Domande frequenti
Devo condividere la mia chiave privata?
No. Non devi mai condividere la tua chiave privata con nessuno. La tua chiave privata è ciò che ti consente di decrittografare i messaggi che ti vengono inviati e di creare firme digitali. Se qualcun altro ottiene la tua chiave privata, può leggere tutti i messaggi crittografati per te e impersonarti.
Cosa succede se perdo la mia chiave privata?
Se perdi la tua chiave privata, perdi definitivamente la capacità di decrittografare tutti i messaggi crittografati con la chiave pubblica corrispondente. Non esiste alcun meccanismo di recupero. Conserva sempre un backup sicuro della tua chiave privata.
Posso crittografare file con PGP?
Sì. PGP può crittografare sia messaggi di testo che file binari. KeychainPGP si concentra sulla crittografia di testo tramite appunti, mentre strumenti come GnuPG supportano la crittografia di file direttamente. Per un confronto dettagliato, vedi la guida PGP vs GPG.
La crittografia PGP è sicura?
La crittografia PGP con algoritmi moderni è estremamente sicura. KeychainPGP usa Ed25519 per le firme e X25519 per lo scambio di chiavi — algoritmi a curva ellittica che offrono una sicurezza equivalente a RSA-3072 per una frazione della dimensione della chiave. I principali rischi non sono crittografici ma operativi: passphrase deboli, dispositivi compromessi o gestione delle chiavi trascurata.
Cos'è un'impronta PGP?
Un'impronta PGP è una stringa esadecimale di 40 caratteri che identifica in modo univoco una chiave PGP. Le impronte sono usate per verificare che una chiave pubblica appartenga effettivamente alla persona che si ritiene. Confronta sempre l'impronta tramite un canale di fiducia separato (telefonata, videochiamata, incontro di persona) per prevenire attacchi man-in-the-middle.