updated mumble mobile #5
1 changed files with 59 additions and 79 deletions
|
@ -1,4 +1,4 @@
|
||||||
# GnuPG for Dummies
|
# GPG (GnuPG) cosa, come e perché
|
||||||
|
|
||||||
|
|
||||||
||||||||||||||
|
||||||||||||||
|
||||||
|
@ -17,7 +17,8 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### GPG (GnuPG) Breve guida alle principali funzioni da riga di comando per sistemi Linux.
|
### GPG (GnuPG) Guida alle principali funzioni da riga di comando per sistemi Linux.
|
||||||
|
La guida è sviluppata per distribuzioni Debian based, ma la maggior parte dei comandi è applicabile anche a tutte le altre distribuzioni.
|
||||||
Per gli altri OS (Windows e Mac OSX) che sono proprietari e non ci piacciono, cercate sul uebbe :-P
|
Per gli altri OS (Windows e Mac OSX) che sono proprietari e non ci piacciono, cercate sul uebbe :-P
|
||||||
|
|
||||||
GnuPG is Free Software (meaning that it respects your freedom).
|
GnuPG is Free Software (meaning that it respects your freedom).
|
||||||
|
@ -40,7 +41,8 @@ Per gli altri OS (Windows e Mac OSX) che sono proprietari e non ci piacciono, ce
|
||||||
|
|
||||||
## 1 - Premessa
|
## 1 - Premessa
|
||||||
|
|
||||||
Questo manualetto fornisce una guida sintetica, da tenere a portata di mano, per effettuare le operazioni di base necessarie all'utilizzo, gestione e manutenzione delle chiavi GPG. Per tutto il resto fare riferimento alla documentazione disponibile on-line sulle decine di siti specializzati. Potete partire da [**qui**][1], da [**qui**][2] per qualche info su come funziona la crittografia a chiave pubblica, o da [**qui**][3] per la lista completa dei comandi.
|
Questo documento fornisce una guida per effettuare le operazioni di base necessarie all'utilizzo, gestione e manutenzione delle chiavi GPG.
|
||||||
|
Per tutto il resto fare riferimento alla documentazione disponibile on-line sulle decine di siti specializzati. Potete partire da [**qui**][1], da [**qui**][2] per qualche info su come funziona la crittografia a chiave pubblica, o da [**qui**][3] per la lista completa dei comandi.
|
||||||
Per farsi un'idea del perché, a volte, è consigliabile cifrare le comunicazioni digitali, consigliamo la lettura della nostra guida di autodifesa digitale disponibile [**qui**][4].
|
Per farsi un'idea del perché, a volte, è consigliabile cifrare le comunicazioni digitali, consigliamo la lettura della nostra guida di autodifesa digitale disponibile [**qui**][4].
|
||||||
|
|
||||||
|
|
||||||
|
@ -90,11 +92,11 @@ Boh, così dovrebbe essere abbastanza chiaro, eh. Se non bastasse... [**-▸
|
||||||
|
|
||||||
## 3 - Consigli generali
|
## 3 - Consigli generali
|
||||||
|
|
||||||
- Utilizza sempre PASSWORD ROBUSTE [**-▸**][6] per gli account di posta (e non solo) e passphrases altrettanto robuste per proteggere le chiavi.
|
- Utilizza sempre **PASSWORD ROBUSTE** [**-▸**][6] per gli account di posta (e non solo) e **passphrases altrettanto robuste** per proteggere le chiavi.
|
||||||
- Ricordati che se usate le funzioni qui descritte su una rete telnet [**-▸**][7], per un malintenzionato sarà relativamente facile spiare i tuoi messaggi!
|
- Ricordati che se usate le funzioni qui descritte su una rete telnet [**-▸**][7], per un malintenzionato sarà relativamente facile spiare i tuoi messaggi!
|
||||||
- Fatti SUBITO almeno una copia (più avanti capirai come farlo) delle chiavi (pub e sec) e del certificato di revoca in un posto sicuro, diverso dal pc che normalmente usi.
|
- Fatti SUBITO almeno una copia (più avanti capirai come farlo) delle chiavi (pub e sec) e del certificato di revoca in un posto sicuro, diverso dal pc che normalmente usi.
|
||||||
- Visto che non è semplice per tutti, memorizzare differenti password e passphrases, ti consiglio di utilizzare un password manager (ad es. keepassxc [**-▸**][8]).
|
- Visto che non è semplice per tutti, memorizzare differenti password e passphrases, ti consiglio di utilizzare un password manager (ad es. keepassxc [**-▸**][8]).
|
||||||
Naturalmente la masterpassword del password manager dovrà essere robusta e soprattutto... fai in modo di non dimenticarla!!!
|
Naturalmente la masterpassword del password manager dovrà essere robusta e soprattutto... fai in modo di **non dimenticarla!!!**
|
||||||
Una buona regola è avere più copie del file cifrato del password manager archiviate in posti sicuri, con la tecnologia... non si sa mai!
|
Una buona regola è avere più copie del file cifrato del password manager archiviate in posti sicuri, con la tecnologia... non si sa mai!
|
||||||
|
|
||||||
|
|
||||||
|
@ -105,15 +107,15 @@ Apriamo il Terminale della nostra distro Linux ed iniziamo con un pò di pratica
|
||||||
|
|
||||||
mio@pc:~$
|
mio@pc:~$
|
||||||
|
|
||||||
Negli esempi che seguono, immagina che la tua mail sia "mia@mail.org" e che hai un'amica che si chiama Lea con la quale vuoi comunicare in modo riservato. La mail di Lea è lea@mail.org.
|
Negli esempi che seguono, immagina che la tua mail sia mia@mail.org e che hai un'amica che si chiama Lea con la quale vuoi comunicare in modo riservato. La mail di Lea è lea@mail.org.
|
||||||
Lea, che è una tosta (e sta sempre un passo avanti a noi!) ha già una chiave GPG collegata alla sua mail, la cui fingerprint (cioè l'impronta digitale della sua chiave) è "5678EFGH5678EFGH5678EFGH5678EFGH5678EFGH".
|
Lea, che è una tosta (e sta sempre un passo avanti a noi) ha già una chiave GPG collegata alla sua mail, la cui fingerprint (cioè l'impronta digitale della sua chiave) è "5678EFGH5678EFGH5678EFGH5678EFGH5678EFGH".
|
||||||
|
|
||||||
**I comandi che seguono quindi sono basati su questo esempio, tu dovrai sostituire tutte le parti contenute tra { } con i tuoi dati reali, per esempio...
|
**I comandi che seguono, sono basati su questo esempio, tu dovrai sostituire tutte le parti contenute tra { } con i tuoi dati reali,** per esempio...
|
||||||
il comando:**
|
il comando:
|
||||||
|
|
||||||
mio@pc:~$ gpg --output {mia}-revoke.asc --gen-revoke {mia@mail.org}
|
mio@pc:~$ gpg --output {mia}-revoke.asc --gen-revoke {mia@mail.org}
|
||||||
|
|
||||||
**poterbbe diventare**:
|
poterbbe diventare:
|
||||||
|
|
||||||
mio@pc:~$ gpg --output alice-revoke.asc --gen-revoke alice@bellamail.org
|
mio@pc:~$ gpg --output alice-revoke.asc --gen-revoke alice@bellamail.org
|
||||||
|
|
||||||
|
@ -123,12 +125,12 @@ il comando:**
|
||||||
|
|
||||||
mio@pc:~$ gpg --full-generate-key
|
mio@pc:~$ gpg --full-generate-key
|
||||||
|
|
||||||
Verrà richiesto di selezionare un tipo di crittografia da un menu. A meno che non si abbia una buona ragione per non farlo, digitare '**1**' e premere Invio. L'opzione 1 di default, attiva la generazione di sottochiavi RSA che permettono non solo di firmare/crittografare le e-mail, ma anche i files.
|
Sarà richiesto di selezionare un tipo di crittografia da un menu. A meno che non si abbia una buona ragione per non farlo, digitare '**1**' e premere Invio. L'opzione **1** di default, attiva la generazione di sottochiavi RSA che permettono non solo di firmare/crittografare le e-mail, ma anche i files.
|
||||||
È necessario inoltre, scegliere una lunghezza in bit (tra 1024 e 4096) per le chiavi di crittografia, o premendo **Invio** si accetta l'impostazione predefinita visualizzata. Più la chiave è lunga, più è difficile da decifrare in caso di tentativo di attacco.
|
È necessario inoltre, scegliere una lunghezza in bit (tra 1024 e 4096) per le chiavi di crittografia, o premendo **Invio** si accetta l'impostazione predefinita visualizzata. Più la chiave è lunga, più è difficile da decifrare in caso di tentativo di attacco.
|
||||||
È necessario indicare la durata della chiave. Se si imposta '**0**' avrà durata illimitata. Se si imposta ad es. '**1y**' durerà un anno. Leggere le indicazioni e scegliere la durata che si desidera. Confermare la scelta con '**Y**'.
|
È necessario indicare la durata della chiave. Se si imposta '**0**' avrà durata illimitata. Se si imposta ad es. '**1y**' durerà un anno. Leggere le indicazioni e scegliere la durata che si desidera. Confermare la scelta con '**Y**'.
|
||||||
Digitare quindi il nome che vogliamo dare alla chiave (es. il nostro nome o uno pseudonimo) e l'indirizzo e-mail a cui la chiave sarà associata.
|
Digitare quindi il nome che vogliamo dare alla chiave (es. il nostro nome o uno pseudonimo) e l'indirizzo e-mail a cui la chiave sarà associata.
|
||||||
È possibile aggiungere un commento (facoltativo).
|
È possibile aggiungere un commento (facoltativo).
|
||||||
Verrà richiesto di immettere (2 volte) la passphrase.
|
Sarà ora richiesto di immettere (2 volte) la passphrase.
|
||||||
|
|
||||||
### _Avremo bisogno della passphrase ogni volta che lavoriamo con le chiavi, quindi assicuriamoci di !!! NON DIMENTICARLA !!!_.
|
### _Avremo bisogno della passphrase ogni volta che lavoriamo con le chiavi, quindi assicuriamoci di !!! NON DIMENTICARLA !!!_.
|
||||||
|
|
||||||
|
@ -141,7 +143,7 @@ La chiave sarà generata, salvata nel keyring (portachiavi) del nostro pc e verr
|
||||||
mio@pc:~$ gpg --output {mia}-revoke.asc --gen-revoke {mia@mail.org}
|
mio@pc:~$ gpg --output {mia}-revoke.asc --gen-revoke {mia@mail.org}
|
||||||
|
|
||||||
Ci verrà chiesto il motivo della richiesta del certificato di revoca, se non c'è uno dei motivi elencati scegli **0** e prosegui.
|
Ci verrà chiesto il motivo della richiesta del certificato di revoca, se non c'è uno dei motivi elencati scegli **0** e prosegui.
|
||||||
Sarà così generato il file {mia}-revoke.asc.
|
Sarà così generato il file {mia}-revoke.asc contenente il certificato di revoca.
|
||||||
|
|
||||||
|
|
||||||
#### 4.2.1 - Mettiamo in sicurezza il certificato di revoca
|
#### 4.2.1 - Mettiamo in sicurezza il certificato di revoca
|
||||||
|
@ -154,10 +156,13 @@ Rimuoviamo dal certificato tutte le autorizzazioni oltre alle nostre.
|
||||||
|
|
||||||
#### 4.2.2 - Esportiamo la nostra chiave PRIVATA (sec) in un file utilizzando l'ID della chiave
|
#### 4.2.2 - Esportiamo la nostra chiave PRIVATA (sec) in un file utilizzando l'ID della chiave
|
||||||
|
|
||||||
Ad esempio, ipotizziamo che la nostra chiave abbia questa fingerprint "1234 ABCD 1234 ABCD 1234 ABCD 1234 ABCD 1234 ABCD" e quindi l'ID sia 1234ABCD (short key ID) o 1234ABCD1234ABCD (long key ID).
|
Ad esempio, ipotizziamo che la nostra chiave abbia questa fingerprint
|
||||||
L'ID della chiave è rappresentato dalle ultime 8 (short) o 16 (long) cifre della fingerprint.
|
"1234 ABCD 1234 ABCD 1234 ABCD 1234 ABCD 1234 ABCD"
|
||||||
|
e quindi lo short key ID sia 1234ABCD ed il long key ID sia 1234ABCD1234ABCD.
|
||||||
|
[l'ID della chiave è rappresentato dalle ultime 8 (short) o 16 (long) cifre della fingerprint].
|
||||||
|
|
||||||
**Attenzione**: la chiave privata/segreta dobbiamo averla solo noi (non va data **MAI** a nessunx) e **non deve essere pubblicata**. Deve essere conservata in modo sicuro come la passphrase, ad esempio su un dispositivo (HD o chiavetta) crittografato. Ed è una buona regola averne più di una copia, su dispositivi (**sicuri**) ed in luoghi diversi.
|
**Attenzione**: la chiave privata/segreta dobbiamo averla solo noi (non va data **MAI** a nessunx) e **non deve essere pubblicata**. Deve essere conservata in modo sicuro come la passphrase, ad esempio su un dispositivo (HD o chiavetta) crittografato.
|
||||||
|
Inoltre è una buona regola averne più di una copia, su dispositivi (**sicuri**) diversi conservati in luoghi diversi.
|
||||||
|
|
||||||
mio@pc:~$ gpg --export-secret-keys --armor {1234ABCD1234ABCD} {secret}.asc
|
mio@pc:~$ gpg --export-secret-keys --armor {1234ABCD1234ABCD} {secret}.asc
|
||||||
|
|
||||||
|
@ -183,9 +188,8 @@ per uscire dalla visualizzazione digitare '**q**'.
|
||||||
|
|
||||||
La fingerprint è l'impronta digitale della chiave. Per saperne di più [**-▸**][10]
|
La fingerprint è l'impronta digitale della chiave. Per saperne di più [**-▸**][10]
|
||||||
|
|
||||||
mio@pc:~$ gpg --send-keys --keyserver https://pgp.mit.edu {1234ABCD1234ABCD1234ABCD1234ABCD1234ABCD}
|
mio@pc:~$ gpg --send-keys --keyserver pgp.mit.edu {1234ABCD1234ABCD1234ABCD1234ABCD1234ABCD}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### 4.4 - Importiamo le chiavi pubbliche dei nostri contatti (es. della nostra amica Lea)
|
### 4.4 - Importiamo le chiavi pubbliche dei nostri contatti (es. della nostra amica Lea)
|
||||||
|
|
||||||
|
@ -195,7 +199,7 @@ La fingerprint è l'impronta digitale della chiave. Per saperne di più [**-`
|
||||||
|
|
||||||
#### 4.4.2 - Se invece dobbiamo cercarla su un key-server remoto (ce ne sono tanti qui ne citiamo solo uno come esempio) utilizziamo il suo indirizzo mail associato alla chiave
|
#### 4.4.2 - Se invece dobbiamo cercarla su un key-server remoto (ce ne sono tanti qui ne citiamo solo uno come esempio) utilizziamo il suo indirizzo mail associato alla chiave
|
||||||
|
|
||||||
mio@pc:~$ gpg --keyserver https://pgp.mit.edu --search-keys {lea@mail.org}
|
mio@pc:~$ gpg --keyserver pgp.mit.edu --search-keys {lea@mail.org}
|
||||||
|
|
||||||
|
|
||||||
#### 4.4.3 - Oppure la cerchiamo su un key-server remoto tramite l'ID
|
#### 4.4.3 - Oppure la cerchiamo su un key-server remoto tramite l'ID
|
||||||
|
@ -220,7 +224,7 @@ Se l'impronta digitale è la stessa che il possessore della chiave detiene, allo
|
||||||
|
|
||||||
## 5 - Utilizzo delle chiavi GPG
|
## 5 - Utilizzo delle chiavi GPG
|
||||||
|
|
||||||
![due](due-fh.png)
|
![due](due-fh2.png)
|
||||||
|
|
||||||
|
|
||||||
Ora che Lea può avere la nostra chiave pubblica (perché le abbiamo passato il file "mia.key" o perché se l'è procurata da un key-server remoto) possiamo iniziare a scambiarci mail in modo sicuro, ma come?
|
Ora che Lea può avere la nostra chiave pubblica (perché le abbiamo passato il file "mia.key" o perché se l'è procurata da un key-server remoto) possiamo iniziare a scambiarci mail in modo sicuro, ma come?
|
||||||
|
@ -236,7 +240,7 @@ Se usate **Thunderbird + Enigmail** avrete una voce "Enigmail" nella barra del M
|
||||||
Se usate **Evolution** quando componete un messaggio, cliccando sul menu "Opzioni" avrete la possibilità di firmarlo/cifrarlo, mentre quando ricevete un messaggio cifrato avrete la possibilità di decifrarlo.
|
Se usate **Evolution** quando componete un messaggio, cliccando sul menu "Opzioni" avrete la possibilità di firmarlo/cifrarlo, mentre quando ricevete un messaggio cifrato avrete la possibilità di decifrarlo.
|
||||||
Il loro utilizzo è comunque molto semplice ed intuitivo, quindi non stiamo a dilungarci troppo. Per una guida più completa per Thunderbird + Enigmail vedi [**-▸**][14], per Evolution vedi [**-▸**][15].
|
Il loro utilizzo è comunque molto semplice ed intuitivo, quindi non stiamo a dilungarci troppo. Per una guida più completa per Thunderbird + Enigmail vedi [**-▸**][14], per Evolution vedi [**-▸**][15].
|
||||||
|
|
||||||
Un altro tool disponibile per la gestione delle chiavi (ma non delle email) sui sistemi Linux è Seahorse [**-▸**][16]
|
Un altro tool disponibile sui sistemi Linux per la gestione delle chiavi (ma non delle email) è Seahorse [**-▸**][16]
|
||||||
|
|
||||||
per installarlo (se non lo avete già fatto)
|
per installarlo (se non lo avete già fatto)
|
||||||
|
|
||||||
|
@ -272,9 +276,9 @@ oppure
|
||||||
Periodicamente, è possibile chiedere a GPG di controllare le chiavi in uso rispetto ad un key-server e di aggiornare le chiavi modificate. Lo si può fare ogni pochi mesi o quando si riceve una chiave da un nuovo contatto.
|
Periodicamente, è possibile chiedere a GPG di controllare le chiavi in uso rispetto ad un key-server e di aggiornare le chiavi modificate. Lo si può fare ogni pochi mesi o quando si riceve una chiave da un nuovo contatto.
|
||||||
|
|
||||||
L'opzione --refresh-keys consente a GPG di eseguire il controllo. L'opzione --keyserver deve essere seguita dal key-server scelto. I key-server si sincronizzano tra loro periodicamente, pertanto la scelta di quale utilizzare non è così importante. Il key-server https://pgp.mit.edu è comunque sempre una buona scelta iniziale.
|
L'opzione --refresh-keys consente a GPG di eseguire il controllo. L'opzione --keyserver deve essere seguita dal key-server scelto. I key-server si sincronizzano tra loro periodicamente, pertanto la scelta di quale utilizzare non è così importante. Il key-server https://pgp.mit.edu è comunque sempre una buona scelta iniziale.
|
||||||
In caso di insuccesso potete comunque provare altri server, quali ad esempio: http://keys.gnupg.net/; https://keyserver.pgp.com o https://pgp.key-server.io/.
|
In caso di insuccesso, potete provare altri server, quali ad esempio: http://keys.gnupg.net/; https://keyserver.pgp.com o https://pgp.key-server.io/.
|
||||||
|
|
||||||
mio@pc:~$ gpg --keyserver https://pgp.mit.edu --refresh-keys
|
mio@pc:~$ gpg --keyserver pgp.mit.edu --refresh-keys
|
||||||
|
|
||||||
### 6.3 - Applichiamo la chiave ad un altro acount
|
### 6.3 - Applichiamo la chiave ad un altro acount
|
||||||
|
|
||||||
|
@ -283,7 +287,7 @@ Per evitare di creare chiavi diverse per ogni indirizzo e poi dovrele gestire,
|
||||||
|
|
||||||
Digitiamo il comando
|
Digitiamo il comando
|
||||||
|
|
||||||
mio@pc:~$ gpg --edit-key "mia@mail.org"
|
mio@pc:~$ gpg --edit-key {mia@mail.org}
|
||||||
|
|
||||||
Ora sei sulla riga di comando GPG. Per aggiungere un'identità di posta, digitare '**adduid**' e premere **Invio**. Verrà quindi richiesto quanto segue:
|
Ora sei sulla riga di comando GPG. Per aggiungere un'identità di posta, digitare '**adduid**' e premere **Invio**. Verrà quindi richiesto quanto segue:
|
||||||
|
|
||||||
|
@ -301,49 +305,48 @@ Visto che si tratta della **nostra** chiave e quindi ci possiamo fidare, si cons
|
||||||
Potremmo accorgerci, o anche solo avere il dubbio, che la nostra chiave sia stata compromessa. In questi casi è bene revocare la chiave affinché nessuno possa utilizzarla spacciandosi per noi.
|
Potremmo accorgerci, o anche solo avere il dubbio, che la nostra chiave sia stata compromessa. In questi casi è bene revocare la chiave affinché nessuno possa utilizzarla spacciandosi per noi.
|
||||||
Ricordiamoci che oltre alla nostra privacy, dobbiamo sempre pensare anche a **salvaguardare la rete di persone che ci ha dato fiducia**.
|
Ricordiamoci che oltre alla nostra privacy, dobbiamo sempre pensare anche a **salvaguardare la rete di persone che ci ha dato fiducia**.
|
||||||
|
|
||||||
mio@pc:~$ gpg --import "mia"-revoke.asc
|
mio@pc:~$ gpg --import {mia}-revoke.asc
|
||||||
|
|
||||||
Una volta revocata la chiave localmente, è necessario inviare il certificato revocato a un keyserver, indipendentemente dal fatto che la chiave sia stata originariamente rilasciata in questo modo. La distribuzione tramite un server remoto consente ad altri utenti di rendersi rapidamente conto che la chiave è stata compromessa.
|
Una volta revocata la chiave localmente, è **necessario** inviare il certificato revocato a un keyserver, indipendentemente dal fatto che la chiave sia stata originariamente rilasciata in questo modo. La distribuzione tramite un server remoto consente ad altri utenti di rendersi rapidamente conto che la chiave è stata compromessa.
|
||||||
|
Può essere una buona regola anche informare della revoca la nostra rete di contatti.
|
||||||
|
|
||||||
### 6.5 - Esportiamo la revoca in un key-server remoto
|
### 6.5 - Esportiamo la revoca in un key-server remoto
|
||||||
|
|
||||||
mio@pc:~$ gpg --keyserver hkp://pgp.mit.edu --send "mia@mail.org"
|
mio@pc:~$ gpg --keyserver pgp.mit.edu --send {mia@mail.org}
|
||||||
|
|
||||||
### 6.6 - Spostiamo (privatamente) le nostre chiavi GPG da un pc ad un altro
|
### 6.6 - Spostiamo (privatamente) le nostre chiavi GPG da un pc ad un altro
|
||||||
|
|
||||||
Per diversi motivi, potremmo aver bisogno di spostare le nostre chiavi da un computer ad un altro. Per la chiave pubblica, non ci sono problemi, essendo appunto pubblica e da divulgare.
|
Per diversi motivi, potremmo aver bisogno di spostare le nostre chiavi da un computer ad un altro. Per la chiave pubblica, non ci sono problemi, essendo appunto pubblica e da divulgare.
|
||||||
Spostare la chiave privata invece dovrebbe essere fatto senza lascire tracce della stessa sugli eventuali dispositivi (es. chiavetta usb) utilizzati per il trasferimento. **Evitare assolutamente** di far transitare la propria chiave privata su servizi di cloud-sharing, anche se gestiti da persone o gruppi di cui ci fidiamo.
|
Spostare la chiave privata invece dovrebbe essere fatto senza lascire tracce della stessa sugli eventuali dispositivi (es. chiavetta usb) utilizzati per il trasferimento. **Evitare assolutamente** di far transitare la propria chiave privata su servizi di cloud-sharing, anche se gestiti da persone o gruppi di cui ci fidiamo.
|
||||||
Un modo che ci sentiamo di consigliare è questo.
|
Un modo che ci sentiamo di consigliare è quello che segue.
|
||||||
|
|
||||||
Questo metodo consente di esportare insieme chiavi pubbliche e private, in modo che possano essere facilmente importate e con il minimo di dati segreti scritti su disco.
|
Il metodo descritto consente di esportare insieme chiavi pubbliche e private, in modo che possano essere facilmente importate e con il minimo di dati segreti scritti sul dispositivo utilizzato per il trasferimento.
|
||||||
|
|
||||||
#### 6.6.1 - Troviamo l'ID della chiave che vogliamo esportare.
|
#### 6.6.1 - Troviamo l'ID della chiave che vogliamo esportare.
|
||||||
|
|
||||||
È possibile ottenere questo risultato dall'output di
|
È possibile ottenere questo risultato dall'output di
|
||||||
|
|
||||||
mio@pc:~$ gpg -K
|
mio@pc:~$ gpg --list-secret-keys --keyid-format LONG
|
||||||
|
|
||||||
Si noti che la 'K' maiuscola è importante in modo da elencare solo le chiavi segrete.
|
|
||||||
|
|
||||||
#### 6.6.2 - Innanzitutto, esportiamo la chiave pubblica
|
#### 6.6.2 - Innanzitutto, esportiamo la chiave pubblica
|
||||||
|
|
||||||
Queste sono ovviamente informazioni pubbliche, quindi non c'è motivo di preoccuparsi per la sicurezza
|
Queste sono ovviamente informazioni pubbliche, quindi non c'è motivo di preoccuparsi per la sicurezza
|
||||||
|
|
||||||
mio@pc:~$ gpg --output "lamiachiave.gpg" --export "1234ABCD1234ABCD"
|
mio@pc:~$ gpg --output {lamiachiave}.gpg --export {1234ABCD1234ABCD}
|
||||||
|
|
||||||
#### 6.6.3 - Ora, in un solo passaggio, esporteremo la chiave segreta, la combineremo in un file con la chiave pubblica, e la codificheremo per il trasferimento
|
#### 6.6.3 - Ora, in un solo passaggio, esporteremo la chiave segreta, la combineremo in un file con la chiave pubblica, e la codificheremo per il trasferimento
|
||||||
|
|
||||||
mio@pc:~$ gpg --output - --export-secret-key "1234ABCD1234ABCD" |\ cat lamiachiave.gpg - |\ gpg --armor --output "lemiechiavi".asc --symmetric --cipher-algo AES256
|
mio@pc:~$ gpg --output - --export-secret-key {1234ABCD1234ABCD} |\ cat {lamiachiave}.gpg - |\ gpg --armor --output {lemiechiavi}.asc --symmetric --cipher-algo AES256
|
||||||
|
|
||||||
Verrà richiesto di inserire una passphrase, ovvero la passphrase per questa crittografia temporanea per il trasferimento. Quindi usa una buona passphrase per la sicurezza, e **ricordala!**
|
Sarà richiesto di inserire una passphrase, ovvero la passphrase specifica per questa crittografia **temporanea** per il trasferimento. Quindi usa una buona passphrase per la sicurezza, e **ricordala!**
|
||||||
Ora trasferisci il file "lemiechiavi".asc nel nuovo computer o da qualsiasi altra parte.
|
Ora trasferisci il file {lemiechiavi}.asc nel nuovo computer o da qualsiasi altra parte.
|
||||||
Dal momento che il file è criptato, il trasferimento si può tecnicamente fare anche via internet, ma se non è proprio necessario, meglio farlo tramite un drive esterno o chiavetta usb.
|
Dal momento che il file è crittografato, il trasferimento si può tecnicamente fare anche via internet, ma se non è proprio necessario, meglio farlo tramite un hard-disk esterno o chiavetta usb.
|
||||||
|
|
||||||
#### 6.6.4 - Importiamo le chiavi dal file nel nuovo computer
|
#### 6.6.4 - Importiamo le chiavi dal file nel nuovo computer
|
||||||
|
|
||||||
Eseguiamo questo comando per spacchettare e quindi importare le chiavi.
|
Eseguiamo questo comando per spacchettare e quindi importare le chiavi.
|
||||||
|
|
||||||
mio@pc:~$ gpg --no-use-agent --output - keys.asc | gpg --import
|
mio@pc:~$ gpg --no-use-agent --output - {lemiechiavi}.asc | gpg --import
|
||||||
|
|
||||||
Dovrebbe essere tutto :).
|
Dovrebbe essere tutto :).
|
||||||
|
|
||||||
|
@ -354,54 +357,38 @@ Ah, no, ma c'è anche un'altra cosa utile che potete fare con le chiavi GPG, cio
|
||||||
|
|
||||||
## 7 - Crittografiamo/decrittografiamo file per scambi via mail
|
## 7 - Crittografiamo/decrittografiamo file per scambi via mail
|
||||||
|
|
||||||
Pensiamo di voler crittografare un file che contiene informazioni riservate ed inviarlo ad un altra persona (es. Lea). Il file, nell'esempio, si chiama "prova.txt"
|
### 7.1 - Inviare un file crittografato via mail
|
||||||
|
|
||||||
Nell'esempio vogliamo crittografare un file che si chiama "prova.txt" e vogliamo inviarlo alla nostra amica Lea.
|
|
||||||
L'opzione --encrypt consente a gpg di crittografare il file, mentre l'opzione --sign le consente di firmare il file con i dettagli. L'opzione --armor consente a gpg di creare un file ASCII. L'opzione -r (destinatario) deve essere seguita dall'indirizzo e-mail della persona a cui si sta inviando il file.
|
|
||||||
|
|
||||||
mio@pc:~$ gpg --encrypt --sign --armor -r <lea@mail.org> <prova.txt>
|
|
||||||
|
|
||||||
1.1) Il file viene generato con lo stesso nome dell'originale, ma con ".asc" aggiunto al nome del file. Diamo un'occhiata a cosa contiene.
|
|
||||||
|
|
||||||
mio@pc:~$ less <prova.txt.asc>
|
|
||||||
|
|
||||||
Il file è del tutto illeggibile e può essere decrittografato solo da un utente che possiede tua chiave pubblica e la chiave privata di Lea (quindi solo da lei). Ora possiamo inviare il file a Lea fiduciosi che nessun altro possa decifrarlo, perchè solo Lea possiede, oltre alla nostra chiave pubblica, la sua chiave privata.
|
|
||||||
|
|
||||||
|
|
||||||
2) Decrittografiamo un file che riceviamo via mail
|
|
||||||
|
|
||||||
Lea ci ha inviato una risposta. Si trova in un file crittografato denominato "testo.asc". Possiamo decrittografarlo molto facilmente utilizzando l'opzione decrypt. L'output verrà reindirizzato in un altro file chiamato "messaggio.txt".
|
|
||||||
|
|
||||||
2.1) Non dobbiamo dire a gpg da chi proviene il file. Questa informazione è già presente nel contenuto crittografato del file.
|
|
||||||
|
|
||||||
mio@pc:~$ gpg --decrypt <testo.asc> <messaggio.txt>
|
|
||||||
|
|
||||||
2.2) Ora esaminiamo il contenuto file "messaggio.txt"
|
|
||||||
|
|
||||||
mio@pc:~$ less <messaggio.txt>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Pensiamo di voler crittografare un file che contiene informazioni riservate ed inviarlo ad un altra persona (es. la solita Lea). Il file, nell'esempio, si chiama {prova.txt}
|
||||||
|
|
||||||
|
Nell'esempio, vogliamo crittografare il file e vogliamo inviarlo alla nostra amica Lea.
|
||||||
|
L'opzione '--encrypt' consente a gpg di crittografare il file, mentre l'opzione '--sign' le consente di firmare il file con i dettagli. L'opzione '--armor' consente a gpg di creare un file ASCII. L'opzione '-r' (destinatario) deve essere seguita dall'indirizzo e-mail della persona a cui si sta inviando il file.
|
||||||
|
|
||||||
|
mio@pc:~$ gpg --encrypt --sign --armor -r {lea@mail.org} {prova.txt}
|
||||||
|
|
||||||
|
Il file viene generato con lo stesso nome dell'originale, ma con '.asc' aggiunto come ulteriore estenzione al nome del file. Diamo un'occhiata a cosa contiene.
|
||||||
|
|
||||||
|
#### 7.1.1 - Ora proviamo a leggere il contenuto file {messaggio.txt}
|
||||||
|
|
||||||
|
mio@pc:~$ less {prova.txt.asc}
|
||||||
|
|
||||||
|
Il file è del tutto illeggibile e può essere decrittografato solo da un utente che possiede sia la tua chiave pubblica che la chiave privata di Lea (quindi solo da lei). Ora possiamo inviare il file a Lea fiduciosi che nessun altro possa decifrarlo, perchè solo Lea possiede, oltre alla nostra chiave pubblica, la sua chiave privata.
|
||||||
|
|
||||||
|
### 7.2 - Decrittografare un file ricevuto
|
||||||
|
|
||||||
|
#### 7.2.1 - Decrittografiamo un file crittografato che riceviamo via mail
|
||||||
|
|
||||||
|
Lea ci ha inviato una risposta. Si trova in un file crittografato denominato {testo.asc}. Possiamo decrittografarlo molto facilmente utilizzando l'opzione decrypt. L'output verrà reindirizzato in un altro file chiamato {messaggio.txt}.
|
||||||
|
|
||||||
|
Non dobbiamo dire a gpg da chi proviene il file. Questa informazione è già presente nel contenuto crittografato del file.
|
||||||
|
|
||||||
|
mio@pc:~$ gpg --decrypt {testo.asc} {messaggio.txt}
|
||||||
|
|
||||||
|
#### 7.2.2 - Ora esaminiamo il contenuto file {messaggio.txt}
|
||||||
|
|
||||||
|
mio@pc:~$ less {messaggio.txt}
|
||||||
|
|
||||||
|
Il file {messaggio.txt} è ora leggibile.
|
||||||
|
|
||||||
[1]: https://gnupg.org/
|
[1]: https://gnupg.org/
|
||||||
[2]: https://www.gnupg.org/howtos/it/GPGMiniHowto.html#toc1
|
[2]: https://www.gnupg.org/howtos/it/GPGMiniHowto.html#toc1
|
||||||
|
@ -426,10 +413,3 @@ Lea ci ha inviato una risposta. Si trova in un file crittografato denominato "te
|
||||||
Made with **♥** by **underscore_to** hacklab
|
Made with **♥** by **underscore_to** hacklab
|
||||||
|
|
||||||
**********************************************************************************************
|
**********************************************************************************************
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue