N. 4 di Giovanni Santostefano @LCyberspazio · con l'algoritmo RSA per la cifratura asimmetrica....
Transcript of N. 4 di Giovanni Santostefano @LCyberspazio · con l'algoritmo RSA per la cifratura asimmetrica....
GPGeistN. 4
di Giovanni Santostefano @LCyberspazio
GPGeist è un esperimento: una raccolta di articoli sul tema della crittografia pratica, esaminando tutti i campi della privatezza dell'informazione. Gli articoli esamineranno gran parte delle funzionalità della suite crittografica GPG ma salteranno anche ad altri protocolli come l'OTR o la cifratura completa di dischi ecc... Gli articoli saranno in gran parte basati su software GNU/Linux compatibile.Perché si tratta di un esperimento? Semplicemente perché l'idea di base era di raccogliere il tutto in un ebook da vendere su Amazon (come già faccio con altri libri), tuttavia probabilmente qualcuno conoscerà anche il mio impegno, seppur piccolo, nella promozione della conoscenza e del software libero. Essendo dunque questi articoli atti a tutelare la privacy, ed essendo la privacy un diritto di tutti, rilascio questi articoli gratuitamente, chiedendo tuttavia per ogni articolo una donazione PayPal che sarà pari al valore che darete al mio lavoro se sarete in grado di sostenere la spesa. Non mi interessa relativamente che siano 10cents, 30cents oppure 1 euro: se chi trae giovamento da questo articolo, e può affrontare la spesa, effettua una microdonazione allora sarò incentivato a produrre nuovo materiale. Altrimenti compatterò il tutto in un unico ebook e chiunque vorrà leggerlo dovrà pagarlo anticipatamente ed avere le capacità economiche per possedere un ebook reader.Quando avrete finito di leggere l'articolo, per effettuare la donazione, potete cliccare sul seguente link: http://tinyurl.com/gpgeistdonate
È possibile altresì effettuare una donazione in bitcoin con il seguente codice QR
oppure immettendo il seguente codice alfanumerico1X53qBuLqQ9AfBGUSR2RFSFGQRBKgmb43
Stai gradendo l' articolo? Fai una donazione PayPal all'autore: http://tinyurl.com/gpgeistdonate
CHAT CIFRATA – PARTE 1
Quando si parla di crittografia, spesso ci si riferisce al dato cifrato o da cifrare con il termine di “messaggio”, questo perché da tempi immemori la crittografia fu usata per garantire la privatezza dei messaggi inviati attraverso dei messaggeri in carne ed ossa ai destinatari, solitamente generali su un fronte di guerra. Il mitico cifrario di Cesare (implementato tra l'altro in un simpatico bsd game utility dalla coppia caesar/rot13) operava uno shift di lettere che rendeva virtualmente impossibile la comprensione del messaggio inviato, nel caso il messaggero fosse stato catturato dal nemico. C'è da dire che il nemico, 2000 anni fa, probabilmente aveva zero capacità in crittoanalisi.
Questa introduzione in ogni caso ha il solo scopo di introdurvi all'importanza storica che la crittografia ha avuto nel contesto di scambio sicuro dei messaggi.
Ad oggi, scambiamo messaggi in molti modi ma quasi tutti fanno riferimento a due tipologie principali: i messaggi permanenti con storico e le chat.
Per quanto riguarda i messaggi permanenti, rappresentati bene dallo scambio di email, si userà il buon GPG, cifrando i messaggi con l'algoritmo RSA per la cifratura asimmetrica.
Per quanto riguarda invece le chat, oggetto di questo e del prossimo articolo, utilizzeremo servizi disponibili via browser per poi arrivare ad applicazioni di Instant Messaging che sfrutteranno la sicurezza del protocollo OTR (Off The Record), appoggiandosi sul protocollo di messaging XMMP della rete Jabber. Sia con OTR che con altri sistemi rimarremo sempre nel contesto di cifratura simmetrica.
Stai gradendo l' articolo? Fai una donazione PayPal all'autore: http://tinyurl.com/gpgeistdonate
CHAT SECURE
Il modo più semplice per chattare in maniera relativamente sicura con i vostri amici sarà quella di appoggiarsi ad un sito che vi consente di gestire completamente la comunicazione cifrata.
Uno di questi siti è https://www.chatcrypt.com/
Appena accedete al sito in questione, vi viene presentata una maschera che dovrete riempire per avviare una chat cifrata (con AES256). Il moderatore della chat dovrà creare la stanza che poi andranno ad inserire tutti gli altri dialoganti nel campo Room.
Io ho utilizzato il nome MySecretRoom, seguito dal nome utente
Stai gradendo l' articolo? Fai una donazione PayPal all'autore: http://tinyurl.com/gpgeistdonate
(io ho scelto Noman e ognuno dovrà inserire il proprio nickname) e dalla password della stanza. Questa password dovrebbe essere condivisa in maniera sicura tra tutti i dialoganti. E si clicca infine su SECURE CHAT per avviare la chat.
Vi comparirà la finestre di chat ed attenderete così che gli altri si uniscano alla vostra stanza privata. Ad esempio se avete creato la stanza con questi dati:
Room: MySecretRoomnick: Nomanpass: nonlascopriretemai
Sempronio per unirsi alla chat e poter leggere/scrivere i messaggi dovrà inserire i seguenti dati (ovviamente dopo che la stanza è stata creata)
Room: MySecretRoomnick: Semproniopass: nonlascopriretemai
Stai gradendo l' articolo? Fai una donazione PayPal all'autore: http://tinyurl.com/gpgeistdonate
Come vedete la password e il nome della stanza non cambiano. La password è infatti della stanza e non un id personale.
Qual è il problema di questa chat? Nonostante dicano che il cifrario usato è AES256 (vedi GPGeist n.2) e che la cifratura avvenga in locale nel browser, non sappiamo molte informazioni a riguardo: ad esempio se aggiunge un salt ai messaggi (una stringa casuale che aiuta a non far capire dove iniziano i dati cifrati) se l'implementazione è priva di bug. Quindi, senza il sorgente a disposizione non possiamo sapere se il servizio è davvero affidabile.
In ogni caso avete visto quanto esso sia intuitivo e rapido da utilizzare. Di conseguenza questo è il metodo più rapido e aperto anche a chi non ha conoscenze informatiche per instaurare una chat cifrata.
Per quanto riguarda lo scambio delle password, sarà bene incontrarsi tutti di persona, munirsi di agendine e scrivere un One Time Pad ovvero una lista sequenziale di password casuali che verranno utilizzate una volta sola. Ogni volta che ci si connette a chatcrypt si inserirà una password e la si barrerà sull'agendina. Quando finiranno le password allora sarà necessario rincontrarsi per stilare una nuova lista di password condivise. La sicurezza delle comunicazioni cifrate è quindi pari alla capacità di custodire l'agendina da parte del più “sbadato” del gruppo.
Inviare invece le password per email o altro media è altamente sconsigliato per via di possibili attacchi Man In The Middle.
Potete usare TCCF per generare degli OTP da stampare, andando nel menu messaging: https://github.com/LCyberspazio/TwoCentsCryptoFrontend
Stai gradendo l' articolo? Fai una donazione PayPal all'autore: http://tinyurl.com/gpgeistdonate
CRYPTO.CAT
Con crypto.cat saliamo già di livello. Crypto cat implementa un sistema operativamente simile a chat crypt ma di livello molto più avanzato e sicuro. Innanzitutto implementa il protocollo OTR sopra citato ed è anche compatibile per l'utilizzo attraverso la chat di Facebook.
Crypto.cat si presenta come una estensione per browser Firefox e Chrome. Per scaricare tale estensione in Firefox dovete andare sul sito https://crypto.cat/ e selezionare il browser nel pannello di Download a sinistra
Verrete così reindirizzati al gestore di estensioni e app del vostro browser dove seguirete le semplice procedura standard di installazione.
Riavviato il browser, dovrete aprire il menu a destra
Stai gradendo l' articolo? Fai una donazione PayPal all'autore: http://tinyurl.com/gpgeistdonate
e selezionare Customize.
Nel pannello di Customize, prendete l'icona di cryptocat e trascinatela dove desiderate per renderla attivabile. Io l'ho trascinata nello stesso menu a destra. Quindi confermate tutto con il pulsante verde Exit Customize. Ricliccate sullo stesso menu (se l'avete messa nel menu) e cliccate sull'icona di cryptocat: si aprirà una nuova tab nel browser dove opererete allo stesso modo di chatcrypt.
Stai gradendo l' articolo? Fai una donazione PayPal all'autore: http://tinyurl.com/gpgeistdonate
Attenzione, qui avrete notato l'assenza del campo password. Come è possibile? Semplice, Crypto.cat implementa il protocollo OTR che a sua volta implementa un sistema di scambio sicuro di password onetime per l'algoritmo di cifratura simmetrica. Quindi un anello debole della catena del precedente sistema (ovvero lo scambio sicuro delle password) viene a mancare. Di conseguenza, però, tenete ben nascosto il nome della stanza, che qui è rappresentato dal campo “Conversation name”. Inserite il vostro nickname e il nome della stanza che avete deciso di usare ed avviate la chat.
Vi troverete di fronte ad una schermata di chat molto user
Stai gradendo l' articolo? Fai una donazione PayPal all'autore: http://tinyurl.com/gpgeistdonate
friendly che potrete utilizzare per comunicare in sicurezza con i vostri amici e colleghi.
Ovviamente, sul sito di crypto.cat sono ben spiegati tutte le problematiche di sicurezza che possono minacciare la privacy della conversazione.
Ora che avete tutelato la privacy del messaggio, sarebbe il turno di tutelare la privacy della connessione. In questo caso il tutto è più semplice del previsto e vi basterà eseguire queste chat da TorBrowser (consigliato anche crypto.cat) per avere un certo livello di anonimato. Lo stesso potrà essere fatto con i metodi di blindatura OTR che utilizzeremo nel prossimo articolo dedicato al software di IM Pidgin su protocollo XMMP e software jabber.
Alla prossima e non dimenticate di donare qualche centesimo di euro o frazione di bitcoin per ricompensare il lavoro che sto svolgendo. :)
Se avete gradito l'articolo, per effettuare la donazione, potete cliccare sul seguente link: http://tinyurl.com/gpgeistdonate
oppure usando i bitcoin usando questo codice QR
oppure immettendo il seguente codice alfanumerico1X53qBuLqQ9AfBGUSR2RFSFGQRBKgmb43
Stai gradendo l' articolo? Fai una donazione PayPal all'autore: http://tinyurl.com/gpgeistdonate