In crittografia a chiave pubblica , il tasto di solito è una coppia di chiavi, composta di una chiave pubblica e una chiave privata , ed è ciò che si fa con crittografia, decrittografia, firma e verifica.
"Un certificato chiave è un'affermazione secondo cui una determinata chiave appartiene a una determinata entità" Lezione PGP .
Per illustrare che cosa fa ciascun tasto e per vedere un esempio del perché uno potrebbe criptare e firmare, considera Snowden (S) e Greenwald (G):
-
Ciascuno di essi crea la propria coppia di chiavi e pubblica le rispettive chiavi pubbliche.
-
Supponiamo (per ora) che le chiavi pubbliche siano affidabili.
-
Dire che S vuole inviare un messaggio a G. Per farlo:
- S cerca la chiave pubblica di G.
- S crittografa il messaggio utilizzando la chiave pubblica di G.
- S firma il messaggio crittografato con la sua chiave privata.
-
G riceve un messaggio firmato crittografato. L'intestazione email non affidabile dice che proviene da S.
- G cerca la chiave pubblica di S.
- G verifica la firma usando la chiave pubblica di S. Ora, G è convinto che il messaggio provenga da S
- G decrittografia messaggio utilizzando la propria chiave privata.
Si noti che la firma e la crittografia vengono eseguite utilizzando chiavi diverse (da S). Senza la firma, G sarebbe comunque in grado di decrittografarlo, ma non si convincerebbe che il messaggio provenga davvero da S.
L'intero schema si basa sul presupposto che le chiavi pubbliche sono affidabili. Altrimenti, ad esempio, lo spook K potrebbe pubblicare una chiave con il nome di G e intercettare l'email di G, in modo che quando S invia il messaggio, K la decripta invece di G. Qui è dove entrano in gioco i certificati chiave.
Tuttavia-tuttavia, per quanto ! L'intera crittografia a chiave pubblica è utile solo per implementare comunicazioni sicure tra una parte fidata e una parte non fidata. Ad esempio, dal punto di vista di G, non si fida di S nel momento in cui S vuole mandargli un messaggio. Quindi: crittografia a chiave pubblica consente a G di ricevere messaggi crittografati destinati solo a lui da un mittente non attendibile S .
Se non ci sono parti non fidate nel tuo schema, non c'è bisogno di tutte queste cose. Invece, tu e il tuo capo dovreste essere d'accordo su una chiave / passphrase strong. Quindi, puoi crittografare il messaggio con la tradizionale crittografia simmetrica utilizzando quella chiave condivisa con gpg --symmetric --armor
, e potrebbe decodificarlo con gpg --decrypt
. Ecco come saranno le linee di comando. La GUI e l'integrazione di GPG nei client di posta elettronica sarebbero un altro argomento.