Pagina iniziale | Navigazione |
Google

Freenet

Freenet è una rete peer-to-peer decentralizzata, creata per resistere alla censura, che sfrutta le risorse (banda passante, spazio su disco) dei suoi utenti per permettere la pubblicazione e la fruizione di qualsiasi tipo di informazione. Freenet è stata costruita pensando ad anonimato e sicurezza, non alla velocità di trasmissione. Questa caratteristica la rende poco indicata per lo scambio di file di grosse dimensioni (come filmati e musiche).

Freenet è software libero distribuito con GNU General Public License; essendo scritto in Java può funzionare su Windows, GNU Linux, Mac OS X e su tutti i sistemi operativi dotati di Java Virtual Machine.

Sebbene molte nazioni censurino le comunicazioni per motivi diversi, hanno tutte una caratteristica comune: qualcuno deve decidere cosa tagliare e cosa mantenere, cosa considerare offensivo e cosa no. Freenet è una rete che elimina per chiunque la possibilità di imporre la sua scala di valore sugli altri; in pratica, a nessuno è permesso decidere cosa sia accettabile. La tolleranza verso le opinioni altrui è fortemente incoraggiata, agli utenti è richiesto di non prestare attenzione ai contenuti che non approvano.

All'interno di Freenet è possibile utilizzare servizi simili al web e alle BBS.
Per informazioni aggiornate sullo stato del progetto, si veda http://freenetproject.org/ .

Storia

Freenet è un'implementazione del sistema descritto da Ian Clarke nel 1999 all'interno di "A distributed decentralized information storage and retrieval system" [1]. La versione 0.1 uscì nel marzo del 2000.

Conoscere con esattezza l'impatto di Freenet all'interno di nazioni che operano una forte censura sui cittadini è difficile per via del funzionamento interno di Freenet. In Cina il gruppo Freenet-China [1] ha tradotto Freenet in cinese e lo sta distribuendo tramite CD e dischetti.

Per la sua stessa natura, Freenet è da sempre al centro di critiche, discussioni e accuse. La maggior parte di queste contesta il fatto che la stessa tecnologia che permette a persone perseguitate di comunicare le proprie idee a un gran numero di persone (senza che si possa risalire all'identità di chi le ha pubblicate o di chi le ha lette), viene anche usata per pubblicare materiale pedopornografico che, se cercato con costanza, può essere visionato da chiunque. In ogni caso Freenet è stata progettata per resistere alle deformazioni: i contenuti che non vengono letti per un lungo periodo, scadono e scompaiono.

Specifiche tecniche

La rete di file sharing di Freenet è disegnata per essere resistente; per questo i processi di funzionamento interni lavorano tutti coperti da anonimato e sono decentralizzati su tutta la rete. Il sistema non ha server centrali e non è soggetta a controlli nè da privati nè da organizzazioni. Nemmeno l'ideatore di Freenet ha alcun controllo sul sistema. La rete è disegnata in modo tale che le informazioni vengano crittografate e replicate su molti diversi nodi in continuo cambiamento in tutto il mondo. È estremamente difficile per un attaccante capire quali nodi rendono disponibile un determinato file e gli stessi tenutari dei nodi non sanno cosa stanno distribuendo. Questo li mette al sicuro da eventuali reati di detenzione.

Lo scopo di Freenet è immagazzinare documenti e permetterne la lettura attraverso indirizzi univoci (altrimenti detti "chiavi") in modo simile a quanto accade sul web tramite il protocollo HTTP. La rete è costituita da un gran numero di nodi che si scambiano informazioni: ogni nodo comunica con i limitrofi attraverso il protocollo di Freenet; non esiste una divisione tra "client" e "server" su Freenet: tutti i partecipanti agiscono in entrambi i modi, permettendo sia di effettuare richieste di informazioni ad altri nodi sia di inviare documenti in risposta alle richieste altrui.

Il protocollo di Freenet è stato progettato per essere usato su reti topograficamente complesse, in modo simile all'Internet Protocol. Ogni nodo conosce soltanto i nodi che può raggiungere direttamente, il suo "vicinato", e ogni nuovo nodo può essere "il vicino" di un altro, perchè non esiste una struttura gerarchica. Ogni documento (o altri messaggi, come le richieste di documenti) viene trasmesso da nodo a nodo fino a raggiungere la destinazione; questi nodi non sanno se stanno trasmettendo verso chi ha effettuato la richiesta o semplicemente verso un altro nodo intermedio, nè se il nodo precedente è la sorgente del documento. Tutto questo è stato progettato intenzionalmente, per aumentare il grado di anonimato sia di chi pubblica sia di chi legge. Ogni nodo mantiene una tabella dove associa i documenti immagazzinati con le chiavi di ricerca, per poter gestire la cache, e una tabella con le informazioni sui nodi limitrofi, per poter gestire il routing.

La richiesta di documenti viene indirizzata sempre verso il nodo che può rispondere più in fretta, per diminuire i ritardi di trasmissione. Invece, l'inserimento di documenti segue un metodo diverso da quello classico: prima di inviare il documento il nodo deve assicurarsi di potergli assegnare una chiave libera, quindi prima cerca una chiave e dopo vi assegna il documento, immettendolo in rete.

Inizialmente, ogni nodo non ha informazioni sulle caratteristiche dei sui vicini. Questo significa che l'indirizzamento delle richieste sarà in gran parte casuale; dato che nodi diversi hanno diversi tipi di regole casuali, invieranno richieste di chiavi uguali verso nodi diversi. Quindi i dati presenti in Freenet poco dopo la partenza saranno distribuiti in modo casuale. Con il passare del tempo e l'inserimento da parte di uno stesso nodo di più documenti, le informazioni cominceranno ad organizzarsi autonomamente. Il risultato è che la rete si auto organizza all'interno di una struttura distribuita dove i nodi tendono a organizzare i dati a seconda delle chiavi. Con ogni probabilità ogni documento verrà replicati molte volte all'interno della rete, a seconda di quanto viene richiesto.

Freenet usa due tipi di chiavi: le Content Hash Key (CHK) e le Signed Subspace Key (SSK).

Una chiave CHK è un hash SHA-1 del documento: confrontando chiave e documento, il nodo può controllare se la trasmissione è avvenuta correttamente. Questo tipo di chiave viene usato per le trasmissioni di dati e per la loro lettura. Un nodo malevolo che volesse modificare i dati all'interno di un documento verrebbe immediatamente scoperto dal nodo successivo, grazie al controllo della chiave.

Le chiavi SSK sono basate sul concetto di crittografia asimmetrica, in particolare sul sistema DSA. I documenti inseriti con questo tipo di chiave vengono firmati dagli autori, in modo che tutti possano verificare l'integrità del documento che leggono. Le chiavi possono essere usate per creare uno pseudonimo all'interno di Freenet mantenendo l'anonimato, e permettono l'aggiornamento dei documenti solo da parte di chi li ha inseriti. Le chiavi KSK, sottocategoria delle SSK, vengono generate a partire da una frase chiave: i documenti segnati con questo tipo di chiave possono essere ottenuti e decriptati se e solo se si è a conoscenza della frase chiave.

Link esterni


GNU Fdl - it.Wikipedia.org




Google | 

Enciclopedia |  La Divina Commedia di Dante |  Mappa | : A |  B |  C |  D |  E |  F |  G |  H |  I |  J |  K |  L |  M |  N |  O |  P |  Q |  R |  S |  T |  U |  V |  W |  X |  Y |  Z |