Le conversazioni che si svolgono attraverso un telefono sono molto meno private di quanto generalmente si pensi: è relativamente facile per chiunque poter ascoltare quel che passa per una linea telefonica e lo è ancora di più se parliamo attraverso un telefono cellulare. Anche i media ufficiali negli ultimi tempi hanno ampiamente parlato di intercettazioni telefoniche, di linee sotto controllo, di cellulari captati con gli scanner, di boss mafiosi più o meno famosi traditi da una telefonata: si badi che le intercettazioni non avvengono soltanto in seguito a interventi di un magistrato in odore di carriera, ma c'è un discreto numero di persone che vi dedica parte del proprio tempo: non solo agenzie investigative, ma anche curiosoni della domenica e phone phreaker di tutte le età. È relativamente facile intercettare le comunicazioni telefoniche: ora che le linee sono quasi tutte digitali, spesso non c'è nemmeno bisogno di collegarsi fisicamente alla linea, come una volta si faceva con i classici morsetti a coccodrillo; negli USA, ad esempio, basta un codice di accesso, magari rubato, magari trovato scartabellando tra la spazzatura delle società telefoniche, ed è possibile ascoltare telefonate altrui dall'altro capo della nazione; tutto lascia presupporre che sia possibile fare altrettanto anche in Italia. Per quel che riguarda la telefonia cellulare, la situazione è ancora peggiore: moltissimi telefonini, specie i vecchi modelli TACS ancora largamente diffusi, sono intercettabili con apparecchi radio di basso costo e davvero alla portata di chiunque. Come se non bastasse, la tecnologia nel riconoscimento vocale ha fatto passi da gigante negli ultimi anni: i servizi segreti sono in grado di monitorare su larga scala le conversazioni telefoniche, alla ricerca di "parole" interessanti (un po' come avviene per il monitoraggio dei messaggi su Internet): non è provato che lo facciano, o che lo facciano sempre, ma hanno a disposizione la tecnologia necessaria.
Per difendersi dalle intercettazioni già negli anni 70 sono nati gli scrambler telefonici: apparecchi atti a crittare la voce umana da un capo della linea telefonica, e a riconvertirla in chiaro dall'altro capo. Il principio di funzionamento è semplice ed è simile per tutti i modelli di scrambler "ad inversione", ovvero che miscelano invertendo. Poiché la voce umana copre una banda che va da 300 Hz a 3000 Hz, è sufficiente miscelare le frequenze delle note vocali con una frequenza fissa, generata da un oscillatore e concordata prima di iniziare la conversazione. Miscelando la voce con la frequenza fissa, che in pratica è una vera e propria chiave di cifratura, otterremo per differenza un suono completamente diverso dall'originario; questo sarà assolutamente inintelligibile, a meno di non utilizzare un altro scanner che funzioni alla rovescia, e ovviamente di conoscere la chiave.
Gli scrambler di questo tipo non hanno avuto molta fortuna. In primo luogo è necessario che entrambi gli interlocutori si dotino dell'apparecchio, acquistandolo o autocostruendolo; secondariamente, la codifica non è affatto sicura: registrando la conversazione e munendosi di un apparecchio uguale è semplice trovare la chiave, anche per tentativi, essendo esigua la quantità di chiavi disponibili. Lo schema elettrico e le istruzioni per il montaggio di uno scrambler di questo tipo sono stati pubblicati in Italia dalla rivista Nuova Elettronica nel numero di giugno 1984. Il modello in questione può funzionare con soltanto sedici chiavi differenti, quindi può essere decrittato con estrema facilità. Desiderando acquistarne uno già montato e collaudato, è possibile rivolgersi a Ramsey Electronics, che ne vende uno per meno di 80 dollari.
Da notare che ancora oggi molte radio della polizia, quando non trasmettono in chiaro, utilizzano scrambler di questo tipo e quindi sono facilmente intercettabili. Scrambler più recenti - e più costosi - hanno un sistema di variazione continua della frequenza chiave, come quello fabbricato dalla Transcrypt (Nebraska, USA); questi modelli risultano senz'altro più sicuri di quelli a chiave fissa, pur essendo sempre vulnerabili a un attacco di forza bruta sferrato utilizzando un apparecchio simile. Un altro modello di scrambler "moderno" è quello ideato dalla Communication Security Corporation, che utilizzerebbe il Triple DES e il Diffie-Hellman (algoritmi largamente utilizzati in crittografia). Il prezzo è di "soli" 995 dollari l'uno: decisamente troppo caro, considerando che ne occorreranno almeno due e che la sicurezza è solo sulla carta - anzi, sulla rete...
Il metodo più economico, sicuro ed efficiente di effettuare telefonate cifrate, oggi, è senz'altro munirsi di un apposito software per PC, supponendo di possedere già accessori sempre più diffusi quali modem, scheda sonora, nonché ovviamente un microfono e un paio di cuffie. Il software si occupa di digitalizzare la voce proveniente dal microfono in dati che vengono poi subito compressi, crittati e trasmessi via modem. La nostra voce diventa quindi una sequenza di bit che, dopo compressione e cifratura, sono pronti per essere inviati al nostro interlocutore. Questi programmi sono molto più efficaci dei vecchi scrambler: ci danno la possibilità di crittare le nostre telefonate con sistemi di crittografia robusta, non decifrabile da chi non è in possesso della chiave necessaria, se non disponendo per anni di un potente computer dedito soltanto alla decrittazione. In alcuni casi nemmeno molti anni di lavoro-macchina sono sufficienti, il che ci rende ragionevolmente tranquilli. E il fatto che l'esportazione di questi programmi dagli USA sia paragonata in tutto e per tutto all'esportazione di munizioni, la dice lunga sulla loro implicita potenza.
Disponendo di una connessione alla rete è inoltre possibile evitare telefonate a lunga distanza, collegandosi al più vicino Internet provider e inviando i pacchetti direttamente all'indirizzo IP dell'interlocutore, e viceversa. In pratica, se Joe Lametta, da Metropolis, vuole parlare con Lex Luthor in vacanza alle Bahamas, non ci sarà nemmeno bisogno di una telefonata intercontinentale: Joe si collegherà al proprio solito fornitore di accesso Internet a Metropolis e lo stesso farà Luthor dal luogo in cui si trova - entrambi pagheranno quindi solo la tariffa urbana; la voce di Joe Lametta verrà digitalizzata dalla scheda audio, crittata dal software e infine inviata dal modem al provider urbano. Da Metropolis alle Bahamas la voce di Joe correrà attraverso Internet e una volta giunta al provider di Luthor subirà il corrispondente processo di decodifica fino a tornare di nuovo udibile dalla cuffie di Lex. Il meccanismo funziona e grazie alla crittografia la riservatezza è assicurata, anche se in pratica le telefonate via Internet lasciano un po' a desiderare in fatto di qualità audio e velocità di risposta...
Comunque, citando Philip Zimmermann, autore di PGPfone, uno di questi programmi, "esso vi permette di sussurrare nell'orecchio di qualcuno, anche se quell'orecchio si trova a migliaia di chilometri, senza essere uditi da terze persone".
L'utilizzo della rete per telefonate a lunga distanza non è argomento da sottovalutare: anche le compagnie telefoniche hanno compreso che con la tecnologia recente le telefonate interurbane e internazionali verranno prima o poi spazzate via da quelle effettuate tramite Internet, tariffate come urbane; ciò comporterà per loro una notevole diminuzione di guadagno e stanno cercando di correre ai ripari come meglio possono: diminuendo le tariffe, in quegli stati dove vi è un regime di concorrenza; spingendo i governi a introdurre una tassa a loro favore, dove vi è monopolio. In Italia la Telecom, che ha avuto il monopolio delle telecomunicazioni per decenni ed è solo ora sul punto di perderlo, sta ribassando le tariffe internazionali, lasciando praticamente inalterate le urbane. Il fatto che una telefonata tra due località distanti più di 30 Km sia tariffata esattamente quanto una tra località distanti 1500 Km la dice lunga, soprattutto se consideriamo che alla Telecom entrambe le telefonate costano la stessa cifra: i commutatori sono ormai per la maggior parte digitali e meno soggetti a guasti di quelli analogici, utilizzati negli anni 80, quando la differenza di tariffazione tra chiamate urbane e interurbane era, se non accettabile, per lo meno comprensibile.
Dal punto di vista legislativo, l'orientamento più recente pare voler distinguere tra telefonate vere e proprie e telefonate effettuate via Internet: nel primo caso a viaggiare è soltanto la voce degli interlocutori, nel secondo sono pacchetti di byte, che possono contenere tanto voce digitalizzata (ad esempio i file .wav) quanto dati di altro tipo, indifferentemente. Ad avvalorare questa tesi è intervenuta recentemente la Commissione Europea di Bruxelles, affermando che i servizi telefonici sulla rete Internet non possono essere definiti servizi di telefonia vocale propriamente detta. Essendo l'argomento di estrema attualità è comunque bene attendere disposizioni di legge più precise. Nel frattempo, teniamo presente che le conversazioni telefoniche "sono personali, sono private, e non sono affari di nessuno se non nostri. Potremmo pianificare una campagna politica, discutere delle tasse, o avere una relazione clandestina. O potremmo stare facendo qualcosa che non dovrebbe essere illegale, ma lo è. Di qualunque argomento trattino, non vogliamo che le nostre telefonate siano intercettate o ascoltate da qualcun altro. Non c'è nulla di male nel voler affermare il nostro diritto alla privacy" (ancora Philip Zimmermann).
In italiano significa "Parla liberamente" ma anche "Parla gratuitamente": Speak Freely è distribuito al pubblico dominio e i sorgenti sono disponibili. Quest'ultima caratteristica è particolarmente apprezzata nei programmi di crittografia, in quanto permette di verificare che non ci siano backdoor o bug grossolani. D'altronde l'autore, John Walker, non è l'ultimo studentello appena uscito dall'università: è stato fondatore della Autodesk nonché coautore di Autocad, uno dei software di CAD più diffusi - e anche più copiati. Secondo Scientific American, John Walker sarebbe anche stato riconosciuto quale l'autore del primo virus per computer, scritto nel 1975.
Il programma è disponibile per le piattaforme Windows (3.11, 95/98, NT), nonché per Unix. Le richieste hardware non sono particolarmente esose (è necessario un 486 ad almeno 50Mhz, o meglio un Pentium) anche se è noto che con un computer veloce e con tanta memoria è possibile eseguire più applicazioni contemporaneamente e lavorare con maggiore comodità. Pur essendo la telefonia crittata il principale obiettivo di questo software, è da segnalare l'esistenza di una versione senza questa caratteristica, detta "Spook Freely", nata per essere utilizzata in quelle nazioni in cui crittare le conversazioni è illegale (sebbene, paradossalmente, proprio in quelle nazioni la crittografia è probabilmente ancora più necessaria). Dispone di compressione audio, tale da poter essere utilizzato efficacemente con modem "lenti" quali i 14.400 bps; è ovvio che in questo caso ci deve essere un compenso della velocità da parte del processore.
Particolare attenzione è stata rivolta alla conversazione tra più persone, possibile però soltanto se si dispone di un adeguato socket di connessione a Internet: nei casi peggiori sarà sempre possibile il broadcasting, cioè uno parla e tanti ascoltano; solo disponendo di un adeguato windows socket si potrà organizzare una multiconferenza vera e propria (multicasting: tutti possono ascoltare e parlare).
Speak Freely può funzionare in due modalità: normal e voice activated. Se si utilizza la prima, consigliata ai principianti, è necessario premere il tasto destro del mouse quando si parla, ed è buona norma terminare la frase con la parola "passo" ("over" in inglese). La modalità voice activated, invece, serve a risparmiare banda di trasmissione: poiché è inutile e dispendioso in ter mini di banda trasmettere dati continuamente, anche quando si sta in silenzio, il voice activated permette di rilevare automaticamente se si sta dicendo qualcosa al microfono e, in quel caso, trasmetterla. Lo svantaggio è che questa opzione è più difficoltosa da configurare, è necessario eseguire prima alcune prove e determinare il giusto volume di attivazione della voce. Bisogna infatti far sì che questo non sia troppo basso, perché altrimenti la trasmissione sarebbe sempre attivata dal rumore di fondo; analogamente il livello non deve essere troppo alto, perché altrimenti anche parlando a voce alta non si attiverebbe mai la trasmissione. Da notare che la modalità voice activated non è utilizzabile con le casse, ma solo se si dispone di cuffie: i normali speaker, ricevendo, potrebbero attivare nuovamente il microfono, generando un equivalente dell'effetto larsen e impedendo in pratica la conversazione.
È inoltre necessario prestare attenzione al modello di scheda audio che si possiede: non tutte possono trasmettere e ricevere contemporaneamente (full duplex) ma solo l'una o l'altra cosa per volta (half duplex). Le generiche schede audio a 8 e 16 bit, ad esempio, sono half duplex: in questo caso è sconsigliato l'utilizzo dell'attivazione vocale. È buona norma comunque controllare sul sito del produttore della scheda audio l'uscita di driver aggiornati, che a volte permettono buone prestazioni anche con schede sonore obsolete.
L'utilizzo della modalità full duplex è tuttavia quasi impossibile a meno di non disporre di una rete ad alta velocità (e cioè una rete locale); con una rete veloce c'è pochissimo ritardo tra quando una persona parla e quando l'altra riceve. Con una rete lenta, quale è generalmente Internet, ci può essere un ritardo sostanziale (già due o tre secondi sono fastidiosi) tra la trasmissione e la ricezione. Questo ritardo è particolarmente elevato se la connessione in rete avviene via satellite e/o se la rete è molto congestionata. In una connessione Internet full duplex tra Italia e Canada abbiamo misurato un ritardo di circa cinque secondi tra trasmissione e ricezione; il risultato è stato uno sfasamento completo nonché l'impossibilità di conversare senza utilizzare la convenzione parla/passo... cioè una conversazione esattamente equivalente a quella half duplex vera e propria!
Dopo aver cliccato sull'icona di Speak Freely e verificato che microfono e casse siano effettivamente collegati, il primo passo è quello di testare il software: cliccando sul menù Help possiamo raggiungere l'opzione "local loopback". Comparirà una finestra che indicherà il tentativo di connessione con noi stessi. Spostando il mouse su detta finestra (si noti che il puntatore diventa una cornetta telefonica) e tenendo premuto il tasto destro (il puntatore ora diventa un orecchio) attiviamo la trasmissione. Dopo aver detto al microfono una breve frase - e aver rilasciato il tasto del mouse al termine di questa - se tutto funziona bene dovremmo risentire questa frase nelle casse. Possiamo ora attivare la nostra connessione a Internet e testare Speak Freely su uno degli "echo server" disponibili. Questi sono dei siti che ricevono e ritrasmettono esattamente lo stesso segnale al mittente. Dal menù Connection selezionare New e digitare il nome dell'echo server. Una lista di echo server è disponibile nel menu di help; la più aggiornata dovrebbe essere sul sito di Speak Freely; al momento in cui scriviamo sono disponibili i seguenti:
echo.fourmilab.ch Svizzera corona.itre.ncsu.edu U.S.A. (North Carolina) rpcp.mit.edu U.S.A. (Massachusetts)
Chiaramente è meglio utilizzare un echo server "vicino" a noi, telematicamente parlando: se il nostro Internet provider dispone di una connessione veloce con gli USA gli ultimi due siti potranno essere più "veloci" di quello svizzero. Una volta realizzata la connessione comparirà una finestra analoga a quella del local loopback, solo che questa volta i dati partiranno dal nostro PC, arriveranno all'echo server e torneranno indietro, con tutti i problemi che potranno verificarsi. Ad esempio, la cosa più facile che potrebbe accadere è che la rete sia congestionata, il che potrebbe portare a ritardi tra un pacchetto e l'altro e quindi a delle pause. Quando le pause rendono inintelligibile una conversazione, lo stesso autore confessa che non c'è nulla da fare: occorre aspettare e rimandare ad un altro momento, quando la rete sarà meno trafficata. Una soluzione parziale può essere quella di aumentare la Jitter Compensation (menù Options) per raggruppare più pacchetti in uno solo e quindi renderli più intelligibili, ma spesso nemmeno questo funziona e bisogna proprio rimandare la conversazione.
Dopo aver testato che tutto funzioni bene con un echo server potremo finalmente tentare una conversazione vera e propria. Il primo problema potrebbe essere che non sappiamo con chi parlare; infatti non bisogna dimenticare che con questo genere di software è possibile conversare esclusivamente con altri utenti Internet, non è possibile "telefonare" direttamente a casa di qualcuno. nota 1
Quando un utente internet desidera telefonare ad una persona in una città nella quale la ditta ha un "nodo" internet, quest'ultima si occupa di realizzare la connessione locale dalla sede del suo nodo fino alla casa del chiamato (tipicamente tramite una telefonata urbana). Per questo genere di servizio la ditta chiede all'utente una tariffa che è minore di quella internazionale, e quindi ben più conveniente; analogamente la ditta paga alla compagnia telefonica solo la telefonata urbana, guadagnando la differenza tra questa e la tariffa applicata all'utente.. Se anche abbiamo un "appuntamento" con un amico, non conoscendo il suo indirizzo IP - che è quell'indirizzo composto da quattro numeri che ci identifica in modo univoco su Internet, e che di norma varia ogni volta che ci colleghiamo alla rete - è impossibile contattarlo. Il metodo più semplice è scoprire il nostro indirizzo IP, nel caso ci fosse sconosciuto (ad esempio lanciando il programma winipcfg.exe presente in Windows 95) e inviarlo per e-mail al destinatario. Un'altra soluzione potrebbe essere l'utilizzo di un IP poster, cioè un programma che va a scrivere il nostro indirizzo IP dinamico su una pagina web cui abbiamo accesso in lettura e scrittura. Un'ultima soluzione, integrata in Speak Freely, è utilizzare un server LWL (Look Who's Listening, cioè Guarda chi c'è in ascolto). Questi server sono in grado di "ospitare" utenti di Speak Freely e di far conoscere il loro indirizzo IP ad altri utenti che volessero mettersi in contatto con essi. Nel menù Phonebook, selezionare Edit Listing e specificare nella prima casella il nome del server LWL da utilizzare. Alcuni server sono anche in grado di mostrare gli utenti connessi attraverso il web. Ovviamente rimandiamo al sito ufficiale di Speak Freely per ulteriori informazioni e per la lista dei server LWL aggiornata. Ricordiamo anche che ogni server è indipendente dagli altri e, se ci si collega ad uno, solo gli altri utenti di quel server ci vedranno.
Torniamo all'opzione Edit Listing del menù Phonebook. È possibile specificare negli appositi campi il nostro indirizzo e-mail, il nostro nome, il nostro numero di telefono e la città o la nazione. Ovviamente non siamo obbligati a riempire questi spazi con dati veritieri, basta che siano sufficienti a renderci riconoscibili agli occhi delle persone con cui vogliamo venire a contatto. In particolare, prestare attenzione prima di specificare il nostro numero di telefono e l'e-mail (occhio agli spammer e ai rompiscatole di ogni tipo). Queste informazioni saranno visibili soltanto se barriamo la casella "List in directory". L'altra casella, "Exact match only", serve a renderci visibili soltanto a chi fa una richiesta (query) esatta della nostra e-mail: in pratica, se è barrata, permette solo a chi conosce la nostra e-mail di contattarci. Inoltre, se è barrata, il nostro indirizzo verrà escluso da quelli listati dal server sul web. Per fare una ricerca, dal menù Phonebook selezionare Search, e specificare il server LWL e, opzionalmente, il nome o l'e-mail dell'utente desiderato. Quest'ultimo dovrà essere specificato se vogliamo trovare un utente che ha selezionato la funzione "Exact match only" vista poco sopra. Siamo ora in grado di aprire una nuova connessione, cioè di parlare finalmente con qualcuno. La procedura è quella descritta più sopra: dal menù Connection selezionare New e specificare l'indirizzo della persona che desideriamo contattare. Se tutto è ok dovremmo essere in grado di parlare nel microfono (tenendo premuto il tasto destro del mouse) e di ascoltare (senza premere nulla). Al termine sarà anche possibile salvare la connessione, in modo da poterla riaprire successivamente; naturalmente questo funzionerà soltanto in caso di indirizzo IP fisso, cioè tipicamente in caso di connessione dedicata (24 ore su 24). Altre opzioni simpatiche di Speak Freely permettono di inviare dei file in formato .wav o .au con suoni preregistrati, oppure file GIF 128x128, o bitmap non compressi, contenenti una nostra immagine; c'è poi la possibilità di configurare una vera e propria segreteria telefonica (Answering machine dal menù Connection) che registrerà i messaggi in arrivo su hard disk, caso mai dovessimo assentarci dal computer. Ma quello che ci interessa maggiormente, la cifratura della voce, necessita un discorso più approfondito.
La compressione della voce è necessaria per non intasare la banda disponibile. Il problema non si pone se telefoniamo in una rete locale ad alta velocità; per l'utilizzo che interessa a noi, però, i pacchetti di dati devono viaggiare attraverso l'enorme rete Internet e possono incontrare colli di bottiglia strettissimi. È quindi necessario operare una compressione della voce digitalizzata, specialmente se poi disponiamo soltanto di un modem a 14.400 bit per secondo (bps) e di una connessione a Internet "lenta". Dal menù Options è possibile selezionare la compressione: No compression richiede una banda di circa 8.000 caratteri per secondo (cps), equivalente a circa 65.000 bps, velocità raggiungibile facilmente in rete locale. Simple Compression richiede 4.000 cps, velocità raggiungibile con connessioni digitali ISDN. Di default è abilitata la compressione GSM, lo stesso algoritmo utilizzato dai più recenti telefoni cellulari; esso riduce ad un quinto le pretese di banda, che risultano essere di circa 1.650 cps: quanto può facilmente trasmettere un modem a 28.800 bps connesso a Internet; da notare che per comprimere i dati con questo algoritmo è necessario un computer relativamente veloce (consigliati un Pentium o almeno un 486 DX2). La compressione ADPCM (Adaptive Differential Pulse Code Modulation), invece, riduce la banda richiesta a 4.000 cps ed è indicata per quei computer troppo lenti per utilizzare la GSM, ma che dispongono di una banda elevata. È possibile combinare la compressione Simple con la GSM o con la ADPCM senza aggravare le richieste hardware, ma riducendo quelle di banda: Simple + GSM permette di utilizzare un modem 14.400, poiché richiede solo 825 cps, mentre Simple + ADPCM richiede 2.000 cps, gestibili con un modem 28.800. La compressione LPC (Linear Predictive Coding) richiede un processore molto veloce dotato di coprocessore matematico e può ridurre i dati di un fattore 12 (650 cps), pur peggiorando in qualità; se abbiamo paragonato la compressione GSM a quella dei telefonini, la LPC può essere accostata a una radio a onde corte: qualità molto bassa ma, come le radio a onde corte, ci permette di comunicare, e va usata quando nient'altro sembra funzionare. Infine la compressione LPC-10 è una particolare versione di LPC che permette di comprimere i dati di 26 volte (fino a 346 cps) e anch'essa richiede processori veloci.
Nella tabella sottostante sono riassunti i tipi di compressione ora descritti; ricordiamo che ove è richiesto un processore veloce, questo deve operare con poche o addirittura nessun'altra applicazione aperta.
================================================================= Compressione CPS richiesti Richiede Qualità una CPU veloce? suono No compression 8.000 No Ottima Simple 4.000 No Povera ADPCM 4.000 No Buona Simple + ADPCM 2.000 No Scarsa GSM 1.650 Sì Buona Simple + GSM 825 Sì Rumorosa LPC 650 Sì Dipende... LPC-10 346 Assolutamente sì Scarsa =================================================================
Speak Freely, al contrario del PGP, non è un programma di crittografia a chiave pubblica, bensì a chiave segreta. Ciò significa che gli utenti non avranno la classica coppia di chiavi pubblica e privata, ma concorderanno un'unica chiave segreta, detta chiave di sessione (o session key), con la quale crittare la conversazione. Se qualcuno riesce a impossessarsi della nostra chiave di sessione potrà ascoltare la conversazione - o addirittura intervenire a nostra insaputa, come spiegheremo meglio più avanti; concordare la chiave di sessione e tenerla segreta è dunque il passaggio più delicato.
La chiave di sessione è una sequenza di byte (fino a 255). È ovvio che si possono scegliere session key anche di pochi caratteri, come "pippo" o "pluto", ma non è la soluzione da adottare se teniamo alla riservatezza della conversazione; più la sequenza di byte sarà casuale, più difficile sarà cercare di ricostruirla a tentativi. Speak Freely può cooperare con il PGP e utilizzare le sue funzioni per generare e scambiare una session key di 128 byte con l'interlocutore: dal menù Options selezionare Connections: nel campo PGP user name inserire il nome dell'utente con cui si vuole parlare - e di cui si possiede la PGP public key - e cliccare su OK. Verrà generata una chiave di sessione (con procedimento casuale) che verrà automaticamente crittata con il PGP e poi altrettanto automaticamente trasmessa all'interlocutore. Speak Freely può anche generare "manualmente" (menù Options - Create Key) una session key: spetterà poi all'utente farla pervenire al destinatario prima che abbia inizio la conversazione, magari tramite un normale messaggio crittato. Senza aver prima concordato una session key, manualmente o tramite Speak Freely e PGP, è impossibile stabilire una conversazione cifrata, al contrario ad esempio di PGPfone, come vedremo più avanti.
Una volta scelta la session key, Speak Freely può utilizzare tre metodi per cifrare la conversazione: tramite algoritmo DES (Data Encryption Standard) parzialmente semplificato e ormai piuttosto insicuro, tramite algoritmo IDEA (International Data Encryption Algoritm) o tramite key file, o anche tramite combinazioni di questi. I primi due sono algoritmi utilizzati anche da altri programmi di crittografia e sono sufficientemente robusti: lo stesso PGP classico si basa su algoritmi IDEA; viceversa la scelta di un key file, cioè di un file binario il più casuale possibile e di almeno 512 byte, scelto tra quelli che avete sull'hard disk, riduce di gran lunga il carico del processore, ma anche il livello di sicurezza: va vista quindi come ultima risorsa, quando si dispone solo di un computer lento.
PGPfone è, come Speak Freely, un programma per cifrare le conversazioni su Internet; il copyright appartiene a Philip Zimmermann, già noto quale autore del PGP; il programma è distribuito nelle versioni Windows (95/98 e NT, non è previsto supporto per la 3.11) e Macintosh; non è nemmeno previsto supporto per Linux, il sistema operativo freeware più diffuso.
La macchina minima richiesta per installare il PGPfone è un Pentium o un Power Mac dotato di modem che vada a 14.400 bps o più. Come già notato nell'analisi di Speak Freely, un modem a 28.800 o a 33.600 incide notevolmente sulla qualità della conversazione; d'altronde i modelli a 14.400 sono praticamente scomparsi dalla circolazione, come avvenuto qualche anno fa per i modelli inferiori; per quel che riguarda la velocità il processore, PGPfone è più esigente di Speak Freely, anche se non di molto.
La fondamentale caratteristica di PGPfone è il non aver bisogno di un canale sicuro per lo scambio della session key prima dell'inizio della conversazione. Le due parti negoziano le loro chiavi usando il protocollo DiffieHellman, che non rivela nulla di utile a un eventuale ascoltatore e permette alle due parti di concordare una chiave comune che useranno per crittare e decrittare le conversazioni.
L'installazione ha meno opzioni di Speak Freely ed è quindi più semplice. La minor quantità di comandi e la loro migliore disposizione logica ne fanno un programma più adatto ai principianti. Ci sono tre tipi di layout, definibili dal menù Window: minimal (essenziale), intermediate (mostra anche compressione e tipo di cifratura) e advanced (con diversi checksum e statistiche). Tutto il resto si setta dal menù Edit - Preferences, che a sua volta è diviso in tre sezioni: Phone, Modem ed Encryption.
Una nota importante: PGPfone, al contrario di Speak Freely, permette di conversare non solo via Internet, ma anche tramite connessione diretta, cioè tramite il classico telefono. Nel caso di connessione Internet non sarà necessario settare la sezione Modem; viceversa, questo sarà il primo passo da affrontare se si intende telefonare direttamente all'interlocutore o ricevere da lui una telefonata. In questo caso vanno qui indicate le impostazioni della porta seriale, la velocità del modem e la stringa di inizializzazione. Quest'ultima non è la banale ATX3 che va bene per la maggior parte dei modem italiani, ma bisognerà indicare che:
1) il modem non deve rispondere in autoanswer quando squilla il telefono (ATS0=0)
2) ogni compressione e correzione d'errore (V42bis o MNP4/5) quale che sia va disabilitata. Per questa opzione occorre consultare il manuale del proprio modem, visto che non esiste un comando standard.
Togliere la compressione è importante per migliorare le prestazioni di PGPfone, in quanto una compressione su dati già compressi porterebbe inevitabilmente a un aumento del pacchetto. Analogamente è importante disabilitare la correzione d'errore, dannosa per PGPfone anche se abbiamo delle linee molto disturbate: comporterebbe una ritrasmissione di pacchetti e un "ritardo" nella trasmissione della voce che via via si accumula e diventa percettibile e fastidioso. Solo in caso di linee telefoniche estremamente pulite (strano a dirsi, le linee italiane digitali sono in media decisamente migliori di quelle americane) e quindi quasi esenti da disturbi, può essere conveniente lasciare attiva la correzione d'errore, anche se può sembrare un controsenso. In realtà così facendo si forza il modem a trasmettere in modo sincrono, senza bit di start né di stop, trasmettendo quindi "parole" di 8 caratteri anziché 10 e guadagnando il 20% di velocità - salvo poi perderla tutta in caso di un piccolo disturbo.
È anche possibile iniziare una conversazione telefonica in maniera tradizionale e successivamente passare in modalità cifrata; nella conversazione in chiaro le due parti devono prima concordare quale dei due modem originerà la connessione (originate: comando ATD) e quale dei due sarà il risponditore (answer: comando ATA). Solitamente si conviene che chi telefona funga da originate anche al momento di passare in cifrato, e chi riceve rimanga answer. nota 2
La sezione Phone invece permette di configurare parametri quali il nome (non c'è posto per l'indirizzo e-mail e altre informazioni aggiuntive), due tipi di compressione in ordine di preferenza e la scelta tra la connessione diretta modem-modem (cioè tramite una telefonata diretta tra noi e il nostro interlocutore, trattata nel precedente paragrafo) o attraverso la rete Internet. La versione Mac permette anche l'utilizzo in rete locale AppleTalk, mentre per i PC è previsto l'uso all'interno di una LAN solo se è una Intranet, cioè una rete locale in tecnologia TCP/IP. Nel caso di conversazioni via Internet bisognerà conoscere l'indirizzo IP della persona con cui vogliamo parlare - e qui non sono previsti LWL server o altre comodità. Inoltre, al contrario di Speak Freely, non sono permesse più conversazioni simultanee.
L'opzione incoming calls permette di mostrare il campo del nome solo quando qualcuno ci chiama; analogamente outcoming calls permette di mostrarlo solo alle persone da noi chiamate. Da notare che ciò avviene soltanto a connessione avvenuta; ciò ha il suo peso se non desideriamo far sapere la nostra identità ad altri che il nostro interlocutore. Il box listen for calls va lasciato selezionato, a meno che non desideriamo utilizzare un altro software per il modem contemporaneamente a PGPfone.
La scelta tra half duplex e full duplex (attualmente non disponibile nella versione Windows), rimanda alle considerazioni già espresse per Speak Freely; si ricordi solo che, in full duplex, entrambe le parti devono utilizzare le cuffie nonché essere in possesso di scheda sonora dotata di tale capacità.
La scelta della compressione qui si restringe a ADPCM e una decina di varianti di GSM (divise tra GSM propriamente detto e GSM lite, di qualità leggermente inferiore ma meno gravosa per la trasmissione), ognuna con qualità audio differenti.
Sono disponibili tre algoritmi di cifratura: Blowfish (il migliore in termini di rapporto sicurezza/prestazioni), Triple DES (simile al DES di Speak Freely: molto buono, però richiede hardware veloce), o CAST (un compromesso tra i due). Non è invece disponibile l'algoritmo IDEA, utilizzato nel PGP tradizionale: questo a causa di una ditta svizzera, la Ascom-Systec, che detiene il brevetto di quest'algoritmo. Dopo che il PGP ha reso famosa la cifratura con algoritmo IDEA, la Ascom ha aumentato i prezzi per le licenze software del proprio algoritmo: oggi, in Europa, la Ascom chiede circa un centinaio di dollari a ciascun utente commerciale di PGP per poter utilizzare l'algoritmo brevettato.
Abbiamo accennato poco sopra che usando PGPfone la chiave di sessione con cui cifrare la conversazione non viene concordata anticipatamente attraverso un canale sicuro, bensì viene concordata tra le due parti attraverso PGPfone stesso. Il problema maggiore che potrebbe capitare è il cosiddetto "attacco dell'uomo nel mezzo". Questo non è un problema specifico dei nostri giorni, ma è vecchio di migliaia di anni. Immaginiamo due commercianti, uno in Italia e uno in Spagna, mai incontrati di persona, che vogliono comunicare per posta. Lo spagnolo fa una proposta di vendita all'italiano e firma la lettera. Come può l'italiano sapere se la firma è vera, se non ha mai incontrato prima lo spagnolo? Un impiegato postale in Francia potrebbe intercettare la prima lettera tra Spagna e Italia, riscriverla e firmarla lui stesso, fingendo di essere il commerciante spagnolo. Se l'italiano cade nel tranello, l'impiegato francese potrà intercettare tutte le lettere e i contratti successivi, riscrivendoli e continuando a spacciarsi per lo spagnolo.
La versione moderna dell'attacco dell'uomo nel mezzo è molto simile. Supponiamo che le due parti, Joe Lametta e Lex Luthor, vogliano aprire una conversazione privata con PGPfone; supponiamo che ci sia una terza persona, Superman, che voglia ascoltare la conversazione, e che si interponga tra Joe e Lex, spacciandosi con Lex per Joe e analogamente con Joe per Lex.
======================== Joe_--------------_ Lex ^ Superman ========================
Al momento di concordare la chiave di sessione, se è presente l'uomo nel mezzo (Superman), non saranno più semplicemente Joe e Lex a concordare la chiave. A loro insaputa verranno concordate due chiavi, quella di ciascun interlocutore con Superman: una prima tra Joe e Superman, che con Joe si finge Lex; una seconda tra Lex e Superman, che con Lex si finge Joe. Al momento della conversazione vera e propria, Joe parlerà a Superman utilizzando la prima chiave di sessione; Superman ritrasmetterà a Lex utilizzando la seconda chiave. Lex per conto suo non si accorgerà dell'uomo nel mezzo e penserà di aver parlato con Joe; la stessa cosa succederà all'incontrario nella conversazione che da Lex va verso Joe. In pratica ci sono due canali cifrati con due chiavi differenti. La cosa è tecnicamente possibile e il problema è serio: le due parti (Joe Lametta e Lex Luthor) sanno di aver stabilito una connessione "sicura", ma non sono sicure di averla stabilita effettivamente tra di loro. Se poi Superman utilizza un computer per registrare quel che Joe dice e ritrasmetterlo in tempo reale a Lex e viceversa, ci sono buone probabilità che i due non si accorgano che c'è Superman a intercettarli, visto che la conversazione non subisce rallentamenti percettibili.
Per fare fronte al man-in-the-middle-attack, il team di Phil Zimmermann ha utilizzato una buona contromisura: Joe Lametta e Lex Luthor dovranno verbalmente comunicarsi l'un l'altro qual è la chiave di sessione che stanno utilizzando. Per farlo dovranno, all'inizio di una conversazione cifrata, leggersi rispettivamente la firma biometrica, ovvero una serie di parole (biometric signature) che compariranno in un'apposita finestra di PGPfone, uguali per entrambi e che identificano univocamente la chiave di sessione utilizzata. Se non c'è alcun uomo-nel-mezzo, Joe leggerà la lista di parole a Lex, il quale vedrà che corrisponde alle parole che compaiono sul suo monitor e la conversazione sarà effettivamente privata. In caso di presenza del terzo uomo, le cose saranno differenti: Joe leggerà la sua lista di parole a Super man; se Superman rileggesse quella stessa lista a Lex, Lex si accorgerebbe che non è la lista che ha sul suo monitor: infatti Joe e Superman utilizzano una chiave differente di quella utilizzata tra Superman e Lex e anche la lista di parole sarà differente. In questo caso, accorgendosi che le liste non coincidono, Lex capirà che c'è qualcuno che sta intercettando la conversazione e agirà di conseguenza: potrà rimandare la conversazione, oppure far finta di niente e non parlare di nulla di riservato.
La biometric signature è qualcosa di simile all'alfabeto militare, che comprende 26 parole di uso internazionale come alfa, india, tango ecc. Ciascuna parola corrisponde a una lettera dell'alfabeto. PGPfone estrae la biometric signature da un elenco di 256 parole anziché 26, ciascuna accuratamente scelta e foneticamente ben distinguibile dalle altre (almeno per gli anglofoni). Le primissime versioni di PGPfone prevedevano una lettura di una fingerprint PGP lunga 16 bytes; ma leggere una sequenza di 16 bytes in esadecimale può generare molti più errori o incomprensioni che leggere una lista di parole: così si è deciso di usare una lista di parole in cui ogni parola rappresenta un byte.
Si potrebbe obiettare che il Diffie-Hellman, cioè l'algoritmo usato in PGPfone per la negoziazione della chiave attraverso un canale non sicuro, non sia altrettanto sicuro dell'aver stabilito a priori la chiave di sessione ed essersela scambiata usando un canale non passibile di intercettazione, quale ad esempio un messaggio e-mail crittato con PGP. Non è così. Se è vero, infatti, che la negoziazione avviene "pubblicamente", cioè agli occhi di un potenziale nemico, questi non ricava alcuna infor mazione utile a ricavare la chiave di sessione dai dati che le due parti si scambiano pubblicamente. Senza scendere in dettagli, che peraltro possono essere approfonditi consultando un buon testo di crittografia, basti pensare che Joe Lametta e Lex Luthor condividono in pubblico solo una parte delle informazioni necessarie alla costruzione della session key; Joe, utilizzando le informazioni che gli provengono da Lex dal canale non sicuro, e computandole con altre informazioni che non ha trasmesso a Lex - e che quindi conosce solo lui - giunge a stabilire una chiave di sessione. Nello stesso tempo Lex, basandosi sui dati ricevuti da Joe "pubblicamente", e confrontandoli con altre informazioni che non ha trasmesso a Joe, riesce ad arrivare alla medesima chiave di sessione (ciò è possibile grazie a complessi calcoli matematici che non riportiamo qui, ma che sono chiaramente indicati nel manuale di PGPfone). L'intercettatore Superman, che ha a disposizione solo dati circolati in "pubblico", non arriverà mai alla chiave di sessione: infatti i dati circolati in pubblico sono sì correlati ai dati che Joe e Lex non si sono trasmessi, ma non è possibile - a meno di anni e anni di lavoro-macchina - risalire a questi ultimi e quindi ricostruire la chiave di sessione; nello stesso tempo i dati circolati in pubblico, combinati con quelli che Joe e Lex non si sono trasmessi, permettono ad essi - e solo ad essi - di giungere alla medesima chiave di sessione, che l'intercettatore Superman non conoscerà mai.
Posto che l'unico attacco cui è vulnerabile l'algoritmo Diffie-Hellman è quello del terzo uomo, come può comportarsi l'intercettatore Superman per mettere a segno tale attacco senza farsi scoprire? Potrebbe imitare la voce di Joe Lametta a Lex Luthor e viceversa, ovvero operare un "Rich Little Attack". Al momento della lettura delle chiavi, potrebbe leggere a Joe la lista di parole della chiave Joe-Superman e a Lex la lista della chiave Superman-Lex. In questo modo le liste di parole corrisponderebbero sia per Joe, sia per Lex, pur essendo differenti: Joe e Lex in questo caso sarebbero convinti di parlare solo fra di loro. Affinché questo possa succedere, però, Superman dovrebbe continuare a imitare la voce di Lex a Joe e viceversa per tutto il resto della conversazione: altrimenti i due, riconoscendo il cambiamento di voce, capirebbero che qualcuno si è intromesso al momento della lettura della firma biometrica. Chiaramente questo procedimento può funzionare solo in quei casi in cui Lex e Joe non si conoscono di persona, o meglio, non conoscono ciascuno la voce dell'altro. In questo caso, l'attacco dell'uomo nel mezzo potrebbe funzionare. Da un lato ciò dimostra una implicita debolezza del PGPfone, dall'altro bisogna tener conto che è estremamente improbabile che ci sia qualcuno così abile nel mascherare in tempo reale la propria voce imitando quella di altre due persone che (presumibilmente) si conoscono. Gli attacchi-dell'uomo-nel-mezzo, soprattutto, sono attacchi rischiosi (in gergo vengono definiti danger attacks, contrapposti ai safe attacks tradizionali), nel senso che è probabile che vengano scoperti.
Se però Joe Lametta e Lex Luthor non si conoscono, o prendono l'abitudine di non leggere quella noiosa lista di parole all'inizio della conversazione, e se Superman lo viene a sapere (o lo immagina), allora potrebbe operare davvero un attacco dell'uomo nel mezzo, e in questo caso l'attacco funzionerebbe. Lasciamo il secondo caso agli imprudenti e consideriamo solo quello in cui due persone non conoscono sufficientemente ciascuno la voce dell'altro. In questo caso, purtroppo, il PGPfone è potenzialmente vulnerabile. Certo, è estremamente improbabile che un attacco del tipo sopra descritto venga portato a segno con successo, ma non impossibile. Inoltre non è vero che due persone debbano necessariamente conoscersi di persona per avere qualcosa di privato da condividere, soprattutto oggi che ci si incontra e conosce nelle reti telematiche e su Internet; basti pensare che persino gli autori di questo libro, pur lavorando in team, non si conoscono tutti di persona.
Non è necessario che Superman agisca in tempo reale: potrebbe benissimo intercettare l'intera conversazione cifrata e registrarla, per poi tentare una decodifica in seguito, con calma e senza timore di essere scoperto. Non essendo in possesso della chiave di sessione che, ripetiamo, non è mai circolata nel canale pubblico ma è stata calcolata dalle parti tramite uno scambio di dati nel canale pubblico, Superman teoricamente impiegherà molti anni-macchina prima di riuscire decifrare il messaggio. Non dimentichiamo però che: la tecnologia migliora di giorno in giorno: se, per esempio, oggi occorrono 300 anni per decifrare un messaggio, tra un anno probabilmente ne occorreranno "solo" 100 o 50; sfruttando in parallelo la potenza di calcolo di decine (o centinaia) di macchine, non necessariamente localizzate nello stesso posto ma in una qualsiasi parte del globo, è possibile ridurre i tempi di calcolo a un decimo (o a un centesimo) del tempo attuale.
Un altro possibile attacco è quello del Cavallo di Troia (ne abbiamo già parlato nel capitolo sulla crittografia). Supponiamo che Superman metta in giro (inviandole in siti FTP o facendole comunque pervenire a Joe Lametta e a Lex Luthor) versioni di PGPfone appositamente "truccate", cioè modificate in modo da permettere a un terzo (nello specifico a lui stesso) l'ascolto della conversazione o la sua decodifica in un secondo tempo. Per evitare questo e per far sì che Joe e Lex siano sicuri che la loro copia di PGPfone sia effettivamente priva di backdoor, devono assicurarsi che questa sia "garantita" da Zimmermann e soci tramite la PGP signature, ovvero quella firma elettronica che assicura che è stato Zimmermann (o persona di sua fiducia) a rilasciarla.
Zimmermann afferma che un problema simile si è già verificato con lo stesso PGP: essendo i sorgenti pubblici, ne sono nate parecchie versioni cosiddette "bogus", ovvero modificate da terzi e potenzialmente non prive di backdoor. Questo discorso potrebbe sembrare una operazione commerciale: "Non fidatevi di altro PGPfone se non di quello che comprate da me" ma considerando che almeno finora tutti i prodotti di Zimmermann sono sempre stati rilasciati anche (o soltanto) in versione gratuita, è un discorso che regge poco; non gli si può tuttavia negare un fondo di verità. A questo problema se ne aggiunge un altro: quello dell'esportazione dagli Stati Uniti, che rende impossibile per un utente europeo il prelievo della sua copia di PGPfone direttamente dal sito "ufficiale" del MIT. Esistono comunque siti europei che ormai sono praticamente "ufficiali", in quanto mettono a disposizione in tempi brevissimi tutto il software relativo al PGP e suoi derivati
Un altro programma di telefonia digitale crittata è Nautilus, il cui nome viene dal noto romanzo di Jules Verne, 20.000 Leghe Sotto I Mari; mentre il sottomarino del Capitano Nemo affondava le navi, il nostro Nautilus è nato per "affondare" il progetto del Clipper Chip, lo standard nazionale di cifratura proposto a partire dal '93 da Clinton, largamente osteggiato poiché lascia al Governo USA la possibilità di decifrare le conversazioni.
Nautilus è gratuito e, analogamente agli altri programmi trattati, i suoi sorgenti sono disponibili; può girare su computer molto vecchi (la richiesta minima è un 386 a 25Mhz) e questo è senz'altro un punto a suo favore; se è vero che pochi di noi avranno sulla scrivania un computer così datato, è altrettanto vero che sicuramente ci sono parecchi computer portatili di classe 386 o 486 ancora in utilizzo; e un computer portatile ha la interessante caratteristica di poter essere utilizzato con un telefono cellulare o anche in una cabina telefonica con la presa dati, ove disponibile (se ne vedono a volte negli USA, non ancora in Italia). Altro fattore da non trascurare è che a Nautilus può bastare una connessione modem a bassa velocità: 14.400 bps sono più che sufficienti, ma il programma può operare anche a 9.600 o a 7.200; la versione provata (1.5) dispone anche di un protocollo di compressione avanzato che necessita di una connessione a soli 4.800 bps, il che è ottimo soprattutto nell'ambito di una connessione cellulare, in genere disturbata e a bassa velocità. Chiaramente valgono tutte le considerazioni già espresse per PGPfone e Speak Freely: una maggiore compressione chiede meno banda, ma necessita di una CPU più veloce e la qualità della voce ne risente. Nautilus può girare su PC (con MS-DOS, Linux o Solaris X86) o su una Sun Sparcstation (con SunOS o Solaris); l'utilizzo con sistemi operativi quali Windows o DosEmu di Linux è sconsigliato: non solo per motivi di sicurezza - la session key potrebbe rimanere all'interno dello swap file - ma anche per effettivi problemi di multitasking. Gli autori inoltre sconsigliano vivamente l'utilizzo di Nautilus in una finestra DOS di Windows 95/98, perché "potrebbe causare seri danni al file system", in verità da noi non riscontrati; invece ci siamo imbattuti in specifici problemi con Windows NT.
Il funzionamento di Nautilus è simile ai due programmi già analizzati più indietro; la differenza fondamentale è che - almeno nella versione DOS - non è possibile effettuare la connessione attraverso la rete Internet ma è necessario telefonare direttamente; uno dei due modem si metterà in attesa (modalità answer) e aspetterà la chiamata dell'altro (originate), ovviamente stabilita prima tra le due parti. A connessione avvenuta avviene la negoziazione della session key tramite l'algoritmo Diffie-Hellman e la lettura a voce della chiave biometrica, procedura già ampiamente analizzata nella parte sul PGPfone; a differenza di questo, però, è anche possibile stabilire prima della connessione - e possibilmente attraverso un canale sicuro, quale ad esempio un messaggio crittato - una passphrase: così l'inconveniente del man-inthe-middle-attack viene scongiurato definitivamente. La connessione diretta implica una maggiore velocità, che rende la conversazione certamente molto più intelligibile di una effettuata via Internet: non è soggetta a frazionamenti tra una parola e l'altra ed evita fastidiose ripetizioni di parole o di frasi non comprese. Il rovescio della medaglia è la tariffa da pagare, che non è quella locale di accesso a Internet, ma quella telefonica dipendente dalla distanza tra i due interlocutori e quindi generalmente più elevata. Anche in Nautilus è possibile scegliere tra diversi algoritmi di compressione e tra diversi metodi di cifratura: Triple-DES, Blowfish (pressoché identici a quelli utilizzati in PGPfone) e IDEA (già utilizzato in Speak Freely, nonché in PGP). La conversazione avviene soltanto in half-duplex: è necessario premere un tasto per passare dalla modalità "parla" alla modalità "ascolta"; poiché la connessione è diretta e non si passa attraverso Internet, non ci sono problemi di ritardo tra un pacchetto e l'altro: in questo caso il fullduplex sarebbe stato davvero utile. Non si può che attendere un suo implemento in una versione futura, o prendere in mano i sorgenti e programmarla di persona...
Nautilus è un prodotto che non ha nulla da invidiare, in quanto a sicurezza e funzionalità, agli altri programmi trattati; purtroppo però non è per nulla intuitivo da usare e questo potrebbe essere uno scoglio insormontabile per l'utente medio. Tutti i comandi vanno dati da command-line, non c'è interfaccia grafica e - purtroppo - spesso per ottenere una connessione è necessario resettare il modem o addirittura l'intera macchina. Per chi ha lavorato su DOS e per i linuxisti non dovrebbero esserci problemi, viceversa chi conosce solo Windows è meglio che si orienti su qualcos'altro, o chieda a qualche amico programmatore di costruirgli un front-end opportunamente semplificato.
Sebbene gli autori di Nautilus abbiano in cantiere parecchie implementazioni future, bisogna notare che il programma non viene più aggiornato da tempo e questo certo non è un bene perché comincia a risentire dell'età.
Dopo aver analizzato questi tre programmi, ognuno con pregi e difetti, non è facile consigliarne uno rispetto a un altro. Chi è più tecnicamente ferrato preferirà Nautilus, che è più efficiente e veloce; chi ha una connessione veloce ad Internet sicuramente si orienterà su PGPfone o Speak Freely, a seconda che privilegi la facilità d'uso o desideri la sicurezza più assoluta. Chi non fosse interessato alla cifratura della voce, ma soltanto a farsi una chiacchierata via internet con un amico lontano, può utilizzare decine di programmi di telefonia non crittata reperibili facilmente in rete; viceversa, chi avesse la necessità di scambiare informazioni velocemente e al riparo da occhi indiscreti, senza ricorrere a software di telefonia, può molto più semplicemente ricorrere alla classica accoppiata e-mail + PGP. Chi fosse totalmente ostile all'idea di utilizzare un computer e decidesse quindi di rinunciare a una buona fetta di sicurezza, nonché a qualche litro di sangue, potrebbe optare per lo scrambler della ComSec, a patto di riuscire ad esportarlo (illegalmente) dagli Stati Uniti. Sicuramente il gioco non varrebbe la candela: tanto vale parlare al telefono in chiaro.
Al di là di questo, una piccola riflessione. Non sempre è necessaria la crittanalisi per scoprire un segreto; spesso sono sufficienti altri metodi, meno costosi in termini di risorse e di tempo e quindi più facilmente praticabili. Probabilmente la crittonalisi è l'ultimo tentativo che un nemico potrebbe tentare nei nostri confronti. Ad esempio piazzare una microspia è decisamente più "facile" ed economico che non tentare di attaccare direttamente gli algoritmi di crittografia. Analogamente è più semplice corrompere qualcuno che ci sta vicino affinché riveli le nostre informazioni confidenziali, o ancora - anche se sembra fantascienza - qualcuno può puntare un laser contro la nostra finestra per captarne le vibrazioni generate dalla nostra voce e ricostruire in questo modo le nostre conversazioni. Si può anche utilizzare un apparecchio (posizionato nelle vicinanze) che capta i segnali elettromagnetici generati dal nostro computer (Van Eck Attack): questo è un metodo costoso ma riutilizzabile in mille altre situazioni e quindi sempre più economico che impiegare qualche cervellone a tentare una crittanalisi vera e propria. Di tutto questo si è parlato nel paragrafo sugli "attacchi pratici" del capitolo sulla crittografia. Perché aggiungere ulteriori paranoie? Perché nonostante ci si possa dotare di tutto l'armamentario crittografico esistente al mondo, esso non è sufficiente - sempre e comunque - per essere del tutto tranquilli. Più che un'arma infallibile, ogni programma di crittografia va considerato solo come un'arma a disposizione in più.
Nota 1:non è argomento della nostra ricerca, ma segnaliamo ugualmente l'esistenza di ditte che forniscono anche questo servizio (finora solo negli Stati Uniti): essendo collegate alla rete in molte città, si sovrappongono alle compagnie telefoniche. torna al testo
Nota 2: PGPfone non funziona con i cosiddetti Winmodem, né con gli Apple Geoport Telecom Adapter: infatti questi tipi di modem, solitamente molto economici,sono costituiti da una componente hardware e da una componente software; quest'ultima demanda alla CPU anche i compiti di un normale modem, sovraccaricandola e rendendo difficoltoso - se non impossibile - l'utilizzo di altro software oltre a quello di comunicazione. torna al testo