Newsgroup: it.comp.sicurezza.crittografia
Titolo: Redphone per Android

Nella mia solita smania di frugare il web sono capitato sul sito 
http://www.whispersys.com/
 
 
Il loro software, Redphone, funziona creando una connessione criptata verso 
i loro servers e permettendo di chiamare un altro utente, registrato presso 
lo stesso server, in modo diretto.
 
Senza passare per un Sip server, quindi.
 
Personalmente ho delle riserve quando devo affidarmi ad una terza parte per 
lo scambio delle chiavi di cifratura e mi domando se qualcuno lo abbia già 
usato ed il proprio parere - impressione.
A parte le implicazioni sulla latenza e quindi sulla qualità della 
conversazione...
 
Che ne pensate?
 
S. 
 


GnuPG 4096 RSAv4 key: \_____________________________________________
UID:0xE361F839--Fingerprint:9516BCF66B8F12E0C3C3154C61788B6DE361F839


 
Effettivamente se ne era parlato nei forum Android tempo fa ma pare che 
qualcuno avesse lamentato una certa latenza, peraltro ovvia.
 
Quello che non si trova (almeno io non l'ho visto) è se e come avvenga 
lo scambio delle chiavi. Chi le genera?
 
Insomma, se il meccanismo è a chiave pubblica allora può avere un certo 
senso; ci sta pure il server di terza parte che si occupa di mettere in 
comunicazione due peer che ovviamente hanno ip dinamico ma se la 
sicurezza della comunicazione è gestita centralmente con un server che 
si occupa lui di criptare la comunicazione...mmmhhh non ci vedo nulla di 
buono.
 
S.
 

 non ci vedo nulla di buono.
 
 
Beh, anche se il sistema è a chiave pubblica, se uno prendesse il 
controllo del server, che *dovrebbe* limitarsi a mettere in 
comunicazione i due IP dinamici, potrebbe fare un Man-In-The-Middle 
Attack...
 
Il sistema di scambio delle chiavi dovrebbe essere resistente a questo 
tipo di attacchi, ad esempio perché uno si è preventivamente scambiato 
a mano le rispettive chiavi pubbliche...


 Senza passare per un Sip server, quindi.
 
Dove hai letto questi dettagli?
Ha dato una breve occhiata al sito, ma non ho visto nulla di ciň.
Anzi, mi sembrava di ricordare che RedPhone usasse ZRTP.
http://www.schneier.com/blog/archives/2010/05/end-to-end_encr.html
 
 
-- 
Lurkos
 


 
Bella domanda...magari me lo ricordassi. Purtroppo non esiste molto in 
rete su questo programma, quasi sia una cosa non utilizzata da alcuno, e 
ho veramente girovagato a destra e manca; probabilmente lo devo avere 
scorto da qualche parte ma a questo punto non ne sono pi� certo.
 
Possibile che un prodotto del genere non susciti interesse?
 
Che ti devo dire? Quando parlo di gnupg con qualche amico la risposta � 
sempre la stessa "ma a che mi serve?"
 
W faccialibro e la profilazione in massa degli utenti, a questo punto :-)
 
S.


 
Dunque...mi sono cimentato nel leggere sulla loro wiki e alla fine della 
fiera ne viene fuori che, diversamente dal modello a chiave pubblica, 
qui bisogna fidarsi del Redphone server.
 
Va bene che serve qualcuno che si occupi di fare comunicare due peers 
che altrimenti non potrebbero trovarsi ma, come ho già scritto, non sono 
convinto che sia una cosa buona.
 
Caspita...ma chi detiene i servers?...
 
S.

 Caspita...ma chi detiene i servers?...
 
 
Chi custodisce i custodi? ;-)
 
Battute a parte, da una lettura delle wiki mi sembra che la
struttura di questo RedPhone sia abbastanza solida. Gli stessi
server non hanno molto spazio di manovra. L'unico rischio reale
dovrebbe riguardare due interlocutori che non conoscono le
rispettive voci e un "infiltrato" che sta cercando di
intercettare proprio loro due in tempo reale (manipolando il server
per farsi instradare la chiamata, o agendo come MitM). Di nuovo, se
questo è uno scenario realistico i problemi da considerare sono ben
altri che non quale sia l'app giusta per il cellulare... ;-) 


 altri che non quale sia l'app giusta per il cellulare... ;-)
 
Concordo in pieno.
RedPhone da quanto capisco anch'io č come una specie di server SIP
centralizzato, con in piů l'autenticazione fra utenti via ZRTP (e il
traffico voce via SRTP).
Il server non mi sembra possa fare nulla di malevolo.
Al piů ti puň collegare con la persona sbagliata, che perň tu dovrai
comunque identificare.
Ritengo molto piů probabile un virus o simile che ti spia il telefono
Android (vedi la storia dei trojan di Stato per Skype).
 
-- 
Lurkos
 


 
Bene, l'ho installata e la sto testando.
Attualmente il problema maggiore che sto incontrando consiste nel sentire la 
mia stessa voce che fa un'eco mentre parlo.
Il minore che le prime volte ottenevo una  notifica di chiamata senza 
risposta quando non rispondevo volontariamente ma ora non compare più.
 
L'ho provata con una delle controparti in wifi, quindi mi sarei atteso una 
maggiore qualità.
 
Vediamo nei prossimi giorni.
 
S. 
 

 maggiore qualità.
 
Sarebbe interessante capire se c'è il re-invite (ossia la connessione
diretta senza passare dal server fra i due interlocutari).
Non c'è differenza dal punto di vista della sicurezza se il traffico è
cifrato.
Il problema sta a livello di latenza e qualità della voce.
 
-- 
Lurkos
 


 
Beh, no, stando a quanto ho capito...se ho capito ;-)
 
Ci sono due servers: un master ed un relay:
 
Il master si occupa di autenticare le controparti e metterle in contatto. 
Poi interviene il relay che si occupa solo di instradare il traffico tra i 
due peers (che non sono mai in connessione punto punto, quindi) risolvendo 
anche i problemi dovuti ad un eventuale nat.
 
Qui entrano in ballo la latenza, la banda disponibile a disposizione del 
relay server nonchè il tempo di decrittazione sui terminali.
Quindi anche le cpu dei cellulari entrano in ballo.
 
Ora nelle mie prove ho usato un Lg P500, un pò obsoleto del resto e sia un 
Htc Desire che un Samsung Galaxy S2.
Lg era su rete mobile, Htc su wifi, Galaxy su rete mobile.
 
Sul Galaxy il programma creava seri problemi al terminale che sembrava 
congelarsi per alcuni secondi; su Htc andava meglio ma in tutti i  casi la 
qualità della voce era assai scarsa ed inintellegibile.
 
Ora, ho provato anche OSTN 
https://ostel.me/
 e il risultato non è cambiato 
di molto. Almeno su rete mobile...
 
In conclusione credo che questi progetti siano ancora immaturi e non 
fruibili in condizioni reali.
 
Non è che si è sempre in HSDPA, specialmente in mobilità....
Ecco perchè probabilmente se serve la crittografia sui cellulari è meglio 
usare un terminale con un chip dedicato...con costi proibitivi.
 
Ma forse sbaglio in qualcosa?
 
S. 
 

 usare un terminale con un chip dedicato...con costi proibitivi.
 
Ma quello trasmette in GSM, o sbaglio?
 
-- 
Lurkos
 


 
Non lo so ma e' probabile che tu sia nel vero.
Ecco perche' sicuramente funziona senza troppi problemi.
Indipendente, o quasi, dalla qualita' della linea (gsm ormai e' una
tecnologia affermata e matura) con chip dedicato...che vuoi di pi�?
 
A questo punto subentrerebbe un altro tipo di problemi: personalmente credo
che la crittografia *debba* essere open source per essere affidabile e quei
terminali non credo proprio siano /open source/ ;-)
 
Ma qui andrei OT...
 
S.
 

 La dice lunga sulla qualita' della trasmissione...
 
Secondo me è un problema molto a macchia di leopardo.
Spesso il 3G a me va anche meglio del Wi-Fi quando sono un po' lontano
dal router.
Ma il VoIP richiede qualità superiore, che appunto è intrinsecamente
difficile da raggiungere con connesioni wireless.
Pensa solo alla latenza che introduce il solo Wi-Fi... figurati anche un
buon 3G!
 
Comunque devo provare anch'io RedPhone con un volontario che conosco e
sperimentare bene i problemi.
Finora con Skype in 3G/HSPA me la sono quasi sempre cavata.
 
-- 
Lurkos
 


 
Sono molto curioso di conoscere l'esito delle tue prove.
Aspetto notizie...
 
S.