1 Freenet: un anno dopo Marco A. Calamari - The Freenet Project Firenze Linux User Group.............. segui il coniglio bianco.

Slides:



Advertisements
Presentazioni simili
Training On Line - CONP. 2 Richiesta Da Menu: Conferimenti ad inizio anno termico > Agosto > Pluriennali > Nuova Richiesta Si accede alla pagina di Richiesta.
Advertisements

Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Caduta non guidata di un corpo rettangolare in un serbatoio Velocità e rotazione.
1 MeDeC - Centro Demoscopico Metropolitano Provincia di Bologna - per Valutazione su alcuni servizi erogati nel.
TAV.1 Foto n.1 Foto n.2 SCALINATA DI ACCESSO ALL’EREMO DI SANTA CATERINA DEL SASSO DALLA CORTE DELLE CASCINE DEL QUIQUIO Foto n.3 Foto n.4.
Lezioni di Astronomia 3- Le stelle Bologna 8 aprile 2010
1 Pregnana Milanese Assessorato alle Risorse Economiche Bilancio Preventivo P R O P O S T A.
Questo documento è distribuito sotto la Gnu Free Documentation Licence Laboratorio Freenet Marco A. Calamari - Il Progetto.
WSDL (Web Services Description Language) Laurea Magistrale in Informatica Reti 2 (2006/07) dott. Federico Paoloni
Ministero della Salute - DGFDM
Frontespizio Economia Monetaria Anno Accademico
4-1 Routing Gerarchico Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
E Windows SharePoint Services 2.0 Ivan Renesto Overview how to use Windows SharePoint Services.
EIE 0607 III / 1 A B P a = 30 P b = 35 t = 2, tc = 1 Questo può essere un equilibrio? No! Politiche di un paese importatore: una tariffa allimportazione.
HDM Information Design notation v.4. HDM Information Design.
Programmazione 1 9CFU – TANTE ore
Ufficio Studi UNIONCAMERE TOSCANA 1 Presentazione di Riccardo Perugi Ufficio Studi UNIONCAMERE TOSCANA Firenze, 19 dicembre 2000.
Citrix Metaframe. Metaframe è la soluzione client-server prodotta dalla Citrix in grado di rendere disponibili applicazioni e desktop a qualsiasi dispositivo.
1 Provincia di Bologna MeDeC - Centro Demoscopico Metropolitano Botteghe in periferia Indagine sulle attività commerciali nelle aree marginali della provincia.
6.6Ordinamento di Vettori Ordinamento di dati –Applicazione computazionale importante –Virtualmente ogni organizzazione deve ordinare dei dati Enormi quantità
Master universitario di II livello in Ingegneria delle Infrastrutture e dei Sistemi Ferroviari Anno Accademico 2012/2013 Cultura dimpresa, valutazione.
La partita è molto combattuta perché le due squadre tentano di vincere fino all'ultimo minuto. Era l'ultima giornata del campionato e il risultato era.
Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Scritte scritte scritte scritte scritte scritte scritte Scritte scritte Titolo.
MP/RU 1 Dicembre 2011 ALLEGATO TECNICO Evoluzioni organizzative: organico a tendere - ricollocazioni - Orari TSC.
Packages. Package: insieme di classi e interfacce in relazione Per formare un package basta inserire la direttiva come prima istruzione nel file sorgente.
Cos’è un problema?.
FONDAMENTI DI INFORMATICA III WfMC-1. FONDAMENTI DI INFORMATICA III WfMC-2 WFMC Cose WfMC Workflow Management Coalition (WfMC), Brussels, è unorganizzazione.
Lezione 6 Encoder ottici
Componenti dell’architettura Oracle
DATA LINK PHYSICAL IP TRASPORTO APPLICATIVOclient PHYSICAL IP TRASPORTO APPLICATIVOserver Un Client è interconnesso ad un Server attraverso una porzione.
Contatore: esempio di circuito sequenziale
ETEN – Re-Public – RePublic website 1\5 eTEN Progetto Re-Public – RePublic website Workshop finale Dott. Marco Sentinelli – Galgano International Roma,
2 3 4 RISERVATEZZA INTEGRITA DISPONIBILITA 5 6.
Melfi, 1 aprile 2011 – MediaShow 1 Social Network: possibilità di uso consapevole nella didattica Uso, consapevolezza, opportunità, proposte Caterina Policaro.
CORSO TECNICO R.C.A. ELABORATO PERITALE
Sistemi di elaborazione dellinformazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 7 -Instradamento dinamico Ernesto Damiani Lezione 1 – Richiami.
IL WIKI COSE E COME FUNZIONA. COSE? Un wiki è uno spazio collettivo virtuale, una specie di sito web, i cui contenuti possono essere visti e modificati.
Q UESTIONI ETICHE E BIOETICHE DELLA DIFESA DELLA VITA NELL AGIRE SANITARIO 1 Casa di Cura Villa San Giuseppe Ascoli Piceno 12 e 13 dicembre 2011.
Un esempio: Registrazione e lettura di dati in un file
JavaScript Lezione 5 Tipizzazione ed operazioni tra tipi diversi Istruzioni di input.
Dicembre 2010 I nuovi modelli di business dellindustria dei contenuti.
1 Web Design Internet Agency. 2 Web Design Internet Agency Qual è il valore aggiunto che può portare allimpresa ? Perché è fondamentale oggi avere un.
MSI ITALIA POLICY RMA.
INTERNET Internet è una rete a livello mondiale che permette alle persone di comunicare ed ad accedere a banca dati da qualunque parte del mondo e su qualunque.
Gruppo 4: Gelmi Martina, Morelato Francesca, Parisi Elisa La mia scuola ha un sito Web: modelli per la qualità dei siti (Ingegneria del Web)
Andrea Petricca Problematiche di rete nella sperimentazione di file-system distribuiti su WAN per applicazioni di GRID-Computing Rapporto trimestrale attività
INTERNET Antonio Papa Classe 2^ beat I.S.I.S. G. Meroni a.s. 2007/2008.
Cosè una rete Scambio di informazioni Perchè una rete.
LE RETI E IL DDNS.
Attività Formativa Sviluppo di un WORKFLOW ENGINE di Dott. Riccardo Gasperoni Alessandro Caricato Gabriele Trabucco in collaborazione con Progesi S.p.A.
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
ISOIVA (LOCALE) TO ISOIVA (WEB) RIPARTIZIONE INFORMATICA UFFICIO APPLICATIVI AMMINISTRATIVI 13/04/2011 UNIVERSITÀ DEGLI STUDI DI FERRARA 1.
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
TECNOLOGIE DELLINFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica.
1 Guida per linsegnamento nei corsi per il conseguimento del CERTIFICATO DI IDONEITÀ ALLA GUIDA DEL CICLOMOTORE.
Bando Arti Sceniche. Per poter procedere è indispensabile aprire il testo del Bando 2ROL - Richieste On Line.
1 Questionario di soddisfazione del servizio scolastico Anno scolastico 2011/2012 Istogramma- risposte famiglie.
21 marzo 2002 (ri-)Avvisi: Giovedi 28 marzo la lezione e sospesa. Nuovo indirizzo di Spedire messaggi e esercizi solo.
Calendario lezioni ed esercitazioni impartite nell anno accademico 2001/2002 II Semestre Corso di Fisica Sperimentale con Laboratorio Classe di Tecnologie.
Settimana: 10 – 14 marzo Orariolunedimartedi Mercoledi 12 Giovedi 13 Venerdi Lezione Dal c al c Lezione Dal c al c
Sviluppare un programma in C che, dato un array da 100 elementi interi caricato con numeri casuali compresi tra [10,100], sia in grado di cercare il valore.
Corso di Web Services A A Domenico Rosaci Patterns di E-Business D. RosaciPatterns per l'e-Business.
-17 Aspettative economiche – Europa Settembre 2013 Indicatore > +20 Indicatore 0 a +20 Indicatore 0 a -20 Indicatore < -20 Unione Europea Totale: +6 Indicatore.
Collection & Generics in Java
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 - Protocolli del Web Ernesto Damiani Lezione 3 – Esempi HTTP.
Un’analisi dei dati del triennio
Interrogazioni private di database mediante Filtri di Bloom:
JDBC Java DataBase Connectivity SISTEMI ITIS B. CASTELLI Anno Scolastico
1 Acceleratori e Reattori Nucleari Saverio Altieri Dipartimento di Fisica Università degli Studi - Pavia
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
Transcript della presentazione:

1 Freenet: un anno dopo Marco A. Calamari - The Freenet Project Firenze Linux User Group segui il coniglio bianco Pluto meeting Terni - 7/8/9 Dicembre 2001

2 Licenza Copyleft 2001, Marco A. Calamari È garantito il permesso di copiare, distribuire e/o modificare questo documento seguendo i termini della GNU Free Documentation License, Versione 1.1 o ogni versione successiva pubblicata dalla Free Software Foundation. Una copia della licenza è acclusa come nota a questa slide, ed e anche reperibile allURL Si ringraziano Theodore Hong e Marco Vicario per i contributi forniti

3 Indice Cosa e Freenet ? Meccanismi crittografici Come funziona Freenet Client ed applicazioni Caratteristiche della versione 0.5 Prospettive future Simulazione Aspetti legali Bibliografia

4 Cosa e Freenet ?

5 Cosa e Freenet Freenet e una rete adattativa di nodi peer- to-peer che si interrogano reciprocamente per immagazzinare e recuperare file di dati identificati da nomi (chiavi ) indipendenti dalla locazione. Freenet e formata da server (nodi) paritetici; i nodi normalmente includono un proxy che permette di accedere al server con un form, utilizzando il protocollo HTTP. Freenet : A Distribuited Anonymous Information Storage and Retrieval System I.Clarke et al.

6 … e tradotto in italiano ? Freenet e un sistema per scrivere e leggere file da Internet senza che si possa risalire a chi li ha scritti, chi li conserva sul disco e chi li recupera. Questo scopo viene raggiunto utilizzando il client (nodo) Freenet, che spezzetta, crittografa, duplica, disperde i contenuti del file, e riesce ad eseguire loperazione inversa per recuperarli. Freenet non permette di cancellare niente e non conserva informazioni su dove un file si trova.

7 Modelli Peer-to-peer Modello centralizzato Esempio : Napster indice mantenuto da un autorità centrale - conoscenza globale dei dati (single point of failure) contatto diretto tra richiedente e fornitore Modello decentralizzato Esempio : Freenet, Gnutella nessun indice globale – conoscenza locale dei dati (approximate answers) contatti mantenuti da una catena di intermediari

8 Obbiettivi da raggiungere Anonimato sia per il produttore che per il fruitore dellinformazione Il sistema non deve avere elementi di controllo centralizzati o di amministrazione Il sistema deve essere robusto rispetto ai problemi hardware/software Il sistema deve adattarsi e mutare nel tempo Le performance devono essere paragonabili ad altri sistemi (WWW)

9 Caratteristiche dellattuale implementazione Versione Realizzata in linguaggio java - portabile su differenti architetture Sono disponibili protocolli e librerie per unagevole implementazione di programmi client che usino Freenet come meccanismo di trasporto. Anonimita del contenuto del datastore di un singolo nodo - non e possibile cercare una categoria di contenuti, ma solo identificare un certo file

10 Caratteristiche dellattuale implementazione Adattivita della rete - il grafo delle connessioni logiche tra i nodi evolve nel tempo verso una stabilita ed efficienza maggiore. Non responsabilizzazione del gestore del nodo - il sistema non e completamente deterministico, e non consente di provare che un certo file presente nel datastore proviene dal nodo locale e non da un altro nodo della rete

11 Caratteristiche dellattuale implementazione Resilienza della rete - linformazione non puo essere rimossa da Freenet ma solo lasciata morire di morte naturale. Comportamento ecologico della rete - linformazione che viene richiesta si moltiplica su piu nodi e si avvicina ai nodi che la richiedono

12 Caratteristiche dellattuale implementazione Anonimita sia di chi memorizza informazioni che di chi le recupera - nel caso si prevedano attacchi con memorizzazione del traffico sono necessarie cautele aggiuntive (tunnel SSL). Mancanza della possibilita di indicizzare le chiavi in modo da operare una ricerca intelligente. Il problema non e risolto a livello di protocolli, e soluzioni parziali sono demandate a programmi applicativi

13 Meccanismi crittografici

14 Le chiavi di Freenet I file in Freenet sono associati e memorizzati utilizzando oggetti detti chiavi : KSK (keyword signed key) SSK (signed subspace key) CHK (content hash key) Nota : la funzione hash utilizzata è lo SHA-1 a 160 bit mentre lalgoritmo asimmetrico di cifratura è il DSA MSK (map space key)

15 La chiave KSK E la chiave più semplice e user-friendly Esempio -> La stringa descrittiva (mio_file) viene utilizzata per generare una coppia di chiavi pubblica/privata (algoritmo DSA) La chiave pubblica viene utilizzata per produrre lhash associato al file inserito (SHA-1) La chiave privata viene utilizzata per firmare il file inserito.

16 La chiave KSK Chiave KSK DSA Private keyPublic key SHA-1 File Key Digital Signatures

17 La chiave SSK Costruzione di un namespace personale Creiamo una coppia di chiavi pubblica/privata di tipo SSK Utilizzeremo la chiave privata per inserire documenti sotto il nostro namespace Pubblicheremo la nostra chiave pubblica per rendere accessibili i file pubblicati Esempio ->

18 La chiave CHK E derivata dallhash del contenuto del file corrispondente. Tutti i file sono chiavi CHK Il file viene inoltre criptato utilizzando una chiave generata in modalità random Vengono pubblicati sia lhash che la chiave di decrittazione Esempio -> Una volta inserito, il dato potrà essere richiesto fornendo la seguente stringa :

19 La chiave MSK Risolve il problema di aggiornare contenuti che non possono essere cancellati (freesite) Viene utilizzata come home page di un freesite Puo essere acceduta direttamente... … od indirettamente, e Freenet seleziona quella che si riferisce alla data corrente

20 La chiave MSK Le chiavi MSK vengono inserite in batch prima della data a cui si riferiscono Il meccanismo cosi creato si chiama DBR - date base redirect (date, non data !) Le chiavi MSK ormai vecchie e che non vengono piu richieste muoiono di morte naturale La chiave MSK di un freesite contiene gli indirizzi delle chiavi CHK a cui i link di tutto il freesite si riferiscono

21 Come funziona Freenet

22 Come funziona Freenet I nodi comunicano tra loro con un semplice protocollo connection-oriented chiamato FNP (Freenet Network Protocol) I client applicativi che vogliono utilizzare i servizi Freenet di un nodo locale utilizzano un altro protocollo chiamato FCP (Freenet Client Protocol)

23 Come funziona Freenet Request.Handshake Nodo ANodo B Request.Reply Request.Data Nodo A Nodo BNodo C Fase di Handshake Fase di richiesta dati

24 Come funziona Freenet Il nodo che effettua il boot deve conoscere almeno un nodo gia in rete tramite un metodo out-of-band. Il problema del boot di un nodo (conoscenza di un altro nodo affidabile a cui connettersi) non e risolto. Attualmente si utilizza una pagina web del Progetto Freenet o si fornisce un nodo manualmente I nodi scoprono altri nodi durante il funzionamento.

25 Come funziona Freenet I nodi comunicano tra loro sulla base di una conoscenza locale dinamica dei nodi limitrofi Ogni nodo richiede una chiave, nellordine, ai nodi limitrofi

26 Come funziona Freenet A C B E F D Data Request Data Reply Request Failed

27 Come funziona Freenet Un nodo che riceve da un confinante la richiesta di una chiave che ha precedentemente cercato e non trovato la rigetta immediatamente. Un nodo che deve inserire una chiave, prima la ricerca per evitare una collisione, e successivamente la inserisce La profondita della ricerca o dellinserimento di una chiave e data dallHTL (hops to live) Ogni nodo che deve passare una richiesta decrementa lHTL di 1

28 Come funziona Freenet Un rumore di fondo probabilistico viene inserito in tutte le decisioni di routing (variazione dellHTL, possesso della chiave, etc.) per impedire che un eventuale registrazione del traffico possa far risalire al nodo che ha effettuato la richiesta o linserimento originali e permettere alloperatore del nodo la ripudiabilita di uneventuale attribuzione

29 Come funziona Freenet Ogni nodo memorizza le chiavi alla rinfusa in un database che viene denominato datastore Una chiave esiste in piu copie, dipendenti dalla profondita di inserimento della richiesta originale Ogni nodo che, dopo aver trasmesso una richiesta che ha avuto successo riceve la chiave da ripassare al nodo richiedente se ne fa una copia in locale

30 Come funziona Freenet I singoli datastore vengono gestiti con un watermark, sulla base della data e del numero degli accessi alle singole chiavi Le chiavi popolari si moltiplicano e si spostano vicino a chi le richiede Le chiavi impopolari scompaiono Si tratta di un comportamento ecologico che permette di realizzare un sistema in cui non esiste il comando delete

31 Come funziona Freenet I singoli nodi si specializzano nel memorizzare alcune chiavi, basandosi su una distanza lessicale che viane calcolata utilizzando un hash del contenuto della chiave, e specializzandosi in un segmento di essa Le decisioni di routing delle richieste vengono fatte in maniera intelligente, poiche i server pubblicizzano il segmento di spazio delle chiavi in cui sono specializzati

32 Client ed applicazioni

33 Client ed applicazioni Frost - client grafico per la ricerca di chiavi ed il chat (windows) Freeweb - client grafico per linserimento di freesite Espra - creazione e gestione di cataloghi Manifest - client a linea comandi per la gestione di chiavi e freesite FCPtools - client a linea comandi per la gestione di chiavi e freesite

34 Frost

35 FreeWeb

36 Espra

37 Caratteristiche della versione 0.5

38 Caratteristiche della versione 0.5 Meccanismo di split files con ridondanza Autenticazione crittografica tra nodi Chiavi ARK (Addres Resolution Key) / - the content is the new node address. Routing migliorato Datastore indipendente dal filesystem Modifiche ai protocolli incompatibili con la 0.3.x.x

39 Prospettive future

40 Prospettive future Formazione di un gruppo di sviluppo piu grande e piu strutturato, che applichi metodi di sviluppo piu formalizzati Documentazione esaustiva di protocolli, API e metodi di routing Studio sistematico delle metodologie di attacco alla rete Freenet Diffusione dellutilizzo di Freenet e sviluppo di nuovi client che la utilizzino come mezzo di trasporto e/o memorizzazione.

41 Simulazione

42 Simulazione A causa della difficolta di creare una rete Freenet per eseguire test globali di funzionamento, e stato realizzato Serapis, un simulatore di reti Freenet che consente di studiare il comportamento complessivo di insiemi di nodi variandone le caratteristiche.

43 Domande chiave Funziona ? (Network convergence) Riusciamo a trovare i dati ? Qual è lindice di successo delle nostre interrogazioni ? E un architettura scalabile ? (Scalability) Tempi logaritmici / lineari / polinomiali E un architettura robusta ? (Fault-tolerance) I partecipanti sono inaffidabili Vi sono differenti possibilità di fallimento

44 Convergenza Creiamo una rete test 1000 nodi Datastore contenente 50 elementi Routing table con 250 indirizzi

45 Esperimento Inserimento di chiavi casuali Impostiamo l Hops-To-Live a 20 Ogni 100 timesteps prendiamo uno snapshot della rete Prove di richieste casuali 300 random requests HTL = 500

46 Convergenza

47 Scalabilita Partiamo con una rete campione di 20 nodi La topologia delle rete è identica alla precedente Aggiungiamo nuovi nodi col passare del tempo Inserimento e richieste sono simulate casualmente come prima Ogni 5 timesteps creiamo un nuovo nodo Simuliamo un messagio di node announcement con HTL = 10

48 Scalabilita

49 Resilienza Partiamo dalla rete con 1000 nodi Rimuoviamo progressivamente i nodi

50 Resilienza

51 Aspetti legali

52 Aspetti legali ITAR (International Traffic in Arms Regulations) DMCA (Digital Millennium Copyright Act) P.A.T.R.I.O.T Act (Provide Appropriate Tools Required to Intercept and ObstructTerrorism) Convenzione U.E. contro il cybercrime EUCD (European Union Copyright Directive)

53 Bibliografia

54 Bibliografia Freenet : A Distribuited Anonymous Information Storage and Retrieval System - I.Clarke et al. Performance in Decentralized Filesharing Networks - T. Hong Advanced Routing on Freenet: (Serapis) - Shu Yan Chan I documenti sono reperibili sul sito del progetto disponibile anche in italiano

55 Grazie a tutti per lattenzione per maggiori informazioni: mail list su Freenet in italiano Sito ufficiale Freenet in italiano Il progetto Winston Smith pws//