15 KiB
Conversations
Che cos'è Conversations
Che cos'è Conversations?
Conversations1 è una applicazione (app) open source (GPLv3) Android (4.0+) per chattare.
A differenza di altre app (WhatsApp, Messegner, ma anche Signal), non è legata ad un servizio centralizzato.
Invece, si basa su un protocollo federato chiamato XMPP (Jabber per gli amici).
Inoltre, ci permette di cifrare le nostre conversazioni, così come di fare chat di gruppo cifrate.
XMPP: un protocollo federato
Cosa vuol dire che XMPP è un protocollo federato?
Pensiamo alle email: ognugno di noi ha un email con un diverso provider (autistici, riseup, google, poliziadistato.it).
Se vogliamo mandare un'email a qualcuno che usa, per esempio, riseup.net, non è necessario avere noi stessi una casella di riseup! Possiamo usare la nostra email di autistici.
Il server di autistici parlará con il server di riseup e gli consegnerà la nostra email. Allo stesso modo chi ha ricevuto la posta potrà risponderci.
Questo non è il caso di Facebook Messenger (per esempio): se voglio mandare un messaggio ad una mia amica su Messenger, dovró per forza registrarmi su Facebook.
Conversations e i server autogestiti
Questo vuol dire che possiamo utilizzare Conversations con il nostro provider alternativo che più ci aggrada.
Noi oggi parleremo di Autistici/Inventati ma ognuno può scegliere il suo preferito: il bello di una rete federata è che non ci dobbiamo tutti fidare di uno stesso gestore.
Se vogliamo, possiamo anche installarci un server in casa ed essere i provider di noi stessi!
Conversations.im
Conversations isn’t trying to replace current commercial messengers.
It will simply outlive them.
– Daniel "inputmice" Gultsch
Ok, mi hai convinto, dove devo firmare?
Quello che vedremo adesso è
- Come installare Conversations
- Come configurare il proprio utente
- Aggiungere i contatti e chattare
- Fare una chat cifrata di gruppo
- foto, audio, video
- I rischi che corriamo usando Conversations
Installare Conversations
Come installare conversations
Dobbiamo avere uno smartphone con Android versione 4.0 o successive
Abbiamo due opzioni per installare Conversations
- via Google Play
- via F-Droid
Google Play
Google Play è comodo (è già installato di default) ma dobbiamo avere un account di Google per usarlo
Anche se Conversations è open source, su Google Play è in vendita per una modica somma (2.39€)
In questo modo si sostiene lo sviluppo di Conversations2
F-Droid
F-Droid è un repository alternativo a Google Play, dove troviamo solo programmi open source
Conversations è disponibile gratuitamente (ma ricordiamoci di fare una donazione, se possiamo, per sostenerne lo sviluppo!)
Per utilizzare F-Droid, dobbiamo prima dire al nostro cellulare di accettare app non provenienti da Google Play
Impostazioni
Installare F-Droid
A questo punto possiamo installare F-Droid da https://f-droid.org
Installare Conversations da F-Droid
Apriamo la app di F-Droid e da lì possiamo trovare ed installare Conversations
Configurare il proprio utente
Configurazione Base
Una volta installato Conversations, la prima schermata che vedremo sarà questa.
"Create account" ci permetterà di creare un account del tipo nomeutente@conversations.im per 8€/anno (+ 6 mesi gratuiti).
Per utilizzare invece un account che già abbiamo (ad esempio una mail di autistici), sceglieremo "Use my own provider".
Configurazione Base
Qui inseriremo il nostro utente nomeutente@autistici.org
e la
nostra password.
(Se siamo preoccupati di lasciare la password sul cellulare, Autistici ha l'opzione di usare OTP e password specifiche per applicazioni)
Configurazione Base
Se è la prima volta che utilizziamo Conversations, possiamo scegliere l'icona del nostro avatar
La prima chat: aggiungere un contatto
Aggiungere un contatto
Possiamo aggiungere un contatto alla nostra lista usando il tasto "+" che appare in alto a destra (se è la prima volta, verrà selezionato in automatico), e poi il tasto "+(sagoma di persona)"
Aggiungere un contatto
I contatti su Conversations sono identificati dal loro indirizzo XMMP, che di solito è uguale all'indirizzo email
Per esempio, lucha@paranoici.org
è il Jabber ID
La prima chat cifrata
Adesso possiamo mandare il primo messaggio, che non sarà mandato cifrato, ma in chiaro.
Possiamo controllare lo stato della cifratura cliccando sul lucchetto (che è aperto ad indicare che la conversazione non è cifrata)
Abbiamo varie opzioni a nostra disposizione per la cifratura: ma
quella che vedremo oggi (e che è consigliata) è OMEMO
La prima chat cifrata
Cos'è OMEMO? (e perchè è consigliato?)
- permette la cifratura di messaggi tra più persone
- permette la cifratura di messaggi anche se uno qualsiasi di questi utenti è offline
- permette la cifratura di messaggi sincronizzati su diversi dispositivi
La prima chat cifrata
Per abilitare OMEMO, il nostro contatto dovrà per prima cosa accettare di conversare con noi
Questa operazione è necessaria solo la prima volta che comunichiamo con una persona: poi non sarà necessario ripeterla
La prima chat cifrata
Quando il nostro contatto avrà accettato la nostra richiesta di comunicare, ci apparirà come possibilità l'opzione OMEMO
Una volta selezionata, i nostri messaggi saranno cifrati!
La prima chat cifrata
Ora la nostra conversazione sarà cifrata: il nostro provider XMMP non potrà leggere i nostri messaggi!
La cifratura avviene sul nostro cellulare, prima che il messaggio venga trasmesso, e viene decodificato solo una volta che arriva al destinatario.
Notiamo il lucchetto chiuso ed la "spunta" di sicurezza vicino al messaggio!
Le chat di gruppo
I gruppi
Conversations supporta chat tra più persone, e possiamo anche farle cifrate!
Per iniziare una chat di gruppo, selezioniamo lo stesso tasto "+" che abbiamo usato per agiungere un contatto, ma selezioniamo la scheda "conferences" e clicchiamo sul tasto "+(sagoma di tante persone)"
Selezioniamo "Create conference"
I gruppi
Poi possiamo scegliere il nome
I gruppi
Ed i partecipanti
I gruppi cifrati
Come nel caso della chat singola, all'inizio non potremo scegliere l'opzione OMEMO per la cifratura
Purtroppo per abilitare una chat di gruppo cifrata, è necessario che tutti i partecipanti abbiano prima aperto una chat individuale con ogni altro singolo partecipante e abbiano abilitato la cifratura OMEMO con questo
Non è molto comodo e facilmente crea confusione, ma una volta iniziate le chat di gruppo funzionano relativamente bene
I gruppi cifrati
Una volta fatto ciò, è possibile selezionare l'opzione relativa
I gruppi cifrati
E voilà, anche il gruppo è cifrato!
Foto, audio, video
Allegare file multimediali
Possiamo allegare diversi tipi di file multimediali selezionando il menu a tendina in alto a destra e scegliendo il formato che ci interessa
Foto
Se scegliamo di inviare una foto, l'applicazione aprirà la nostra fotocamera. Una volta scattata la foto, selezioniamo il segno di spunta per inviarla
Foto
Anche i contenuti multimediali saranno ricevuti cifrati, ma saranno comunque disponibili sul dispositivo a meno che non vengano cancellati manualmente
Audio
Possiamo registrare file audio, ma per questo potrebbe essere necessario installare una applicazione che registra l'audio.
Esiste anche un apposito plugin (1.22€ su Google Play, gratis su F-Droid)
Audio
Anche in questo caso, i file saranno conservati sul dispositivo all'interno della cartella Conversations e sono da eliminare manualmente
Video
Conversations (al contrario di Signal) non supporta chiamate audio né video.
È possibile però condividere file di qualsiasi tipo, quindi anche video, pdf, etc.
Controindicazioni ed effetti collaterali
leggere attentamente il foglietto illustrativo
Cosa abbiamo notato testando l'app con MSAck
- la sincronizzazione su diversi dispositivi non funziona ancora in maniera ottimale: chi utilizza conversations e gajim (su pc) non sempre riceve i messaggi su entrambe le piattaforme e spesso deve ricostruire le conversazioni attraverso i vari dispostivi.
Cosa abbiamo notato testando l'app con MSAck
la chat di gruppo presenta alcuni problemi:
- non è possibile visualizzare l'ultimo messaggio letto e bisona quindi recuperarlo manualmente
- criptare l'intera conversazione può essere un lavoro particolarmente tedioso
- non è possibile tenere chat di gruppo se tutti i partecipanti non si "conoscono"
- se un solo partecipante cambia telefono o reinstalla l'applicazione, ogni singolo utente deve nuovamente accettare la nuova chiave di questo partecipante
- è possibile aggiungere nuovi contatti solo manualmente! questo significa che bisogna recuperare manualmente i dati relativi all'account che desidero aggiungere
Che rischi corriamo se usiamo Conversations?
Nonostante tutto, ci sono dei rischi a cui ci esponiamo quando utilizziamo Conversations:
- metadati: la lista dei nostri contatti è visibile al provider che usiamo
- i provider dei nostri contatti: se parliamo con qualcuno su un altro server, quest'ultimo potrebbe loggare tutto il possibile
- i messaggi cifrati sono in chiaro sul nostro cellulare: possiamo perderlo, od essere infettati da un trojan.
- il falso senso di sicurezza
Che rischi corriamo se usiamo Conversations?
Le comunicazioni sicure le fanno le persone che comunicano!
La tecnologia non è in grado di garantire l'assoluta privacy. Dobbiamo quindi sforzarci di ricordare che noi siamo responsabili di tutelare la segretezza delle nostre comunicazioni.
Come regola generale, se siamo in dubbio sull'opportunità di scrivere o meno un'informazione, è meglio evitare di scriverla.
Extendend track
Configurazioni avanzate e dettagli
Verificare la chiave di un contatto
Se vogliamo essere veramente sicuri di stare parlando con la persona giusta, possiamo incontrarci con lei e confrontare le chiavi OMEMO (o possiamo usare altri canali di comunicazione: telefono, email cifrate, etc.)
Verificare la chiave di un contatto
Possiamo vedere la fingerpint di OMEMO dal menù "Contact details"
Verificare la chiave di un contatto
Mentre la nostra chiave è visibile nel menù "Manage accounts"
Configurazione con Hidden Service
C'è anche l'opzione di collegarsi via Hidden Service TOR, se abbiamo l'applicazione Orbot installata.
Menu -> Expert Settings -> Connect via Tor e Extended Connection Settings
Configurazione con Hidden Service
Inseriamo wi7qkxyrdpu5cmvr.onion
come Hostname e 5222
come Port
Footnotes
Daniel Gultsch sviluppa Conversations a tempo pieno.