From 68542b4f4169f0addd40741e6a6d35daa4d09c6f Mon Sep 17 00:00:00 2001 From: Enrico Fasoli Date: Sat, 16 May 2015 13:56:19 +0200 Subject: [PATCH 1/2] fix typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 61f5507..5d6b381 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ Classe 5IA, anno scolastico 2014/2015, IIS Galileo Galilei Crema I contenuti di questo documento sono derivati da: -- conoscenza personale acquistata tramite esperienza nell'uso delle tecnologie descritte e lettura occasionale di blog interessati +- conoscenza personale acquisita tramite esperienza nell'uso delle tecnologie descritte e lettura occasionale di blog interessati - [Wikipedia](https://it.wikipedia.org), in inglese e/o in italiano, per le informazioni specifiche riguardo la maggior parte dei concetti - http://bitcoin.org ovvero il sito web del progetto __Bitcoin__ - http://torproject.org ovvero il sito web del progetto __Tor__ From 044bdc0cf9d31ba4ae7e4f22fe5541a24b88f3e8 Mon Sep 17 00:00:00 2001 From: Enrico Fasoli Date: Sun, 17 May 2015 19:56:11 +0200 Subject: [PATCH 2/2] inizio scrittura di alcune sezioni --- FileSharing/Syncthing.md | 37 +++++++++++++++++++++++++++++++++-- FileSharing/file_sharing.md | 4 +++- Messaggistica/bitmessage.md | 11 +++++++++++ Messaggistica/introduzione.md | 7 +++++++ 4 files changed, 56 insertions(+), 3 deletions(-) diff --git a/FileSharing/Syncthing.md b/FileSharing/Syncthing.md index c180a40..ea99f82 100644 --- a/FileSharing/Syncthing.md +++ b/FileSharing/Syncthing.md @@ -1,7 +1,40 @@ ## Syncthing -__Syncthing__ è un __Software Libero__ pubblicato su [syncthing.net](http://syncthing.net) sotto licenza __Mozilla Public License Versione 2.0__. +__Syncthing__ è un __Software Libero__ pubblicato su [syncthing.net](http://syncthing.net) sotto licenza __Mozilla Public License Versione 2.0__. Sono disponibili distribuzioni per __Windows__, __OSX__, __GNU/Linux__, __BSD__, __Solaris__ e __Android__. + +L'intero ecosistema di __Syncthing__ è _libero_, _aperto_ e _Open Source_. ### Come si usa -### Come funziona +Passi da seguire su ogni dispositivo (almeno due sono necessari): + +1. ottenere il software navigando sul sito [syncthing.net](http://syncthing.net) e scaricando la versione per il proprio sistema operativo +1. dopo aver avviato il software seguendo le istruzioni offerte dal sito web, aggiungere alla lista dei dispositivi un'altro dispositivo con cui sincronizzare i propri dati. +1. aggiungere una o più cartelle alla lista dei percorsi da sincronizzare e scegliere con quali dispositivi condividerle + +Quando i due dispositivi __sono accesi contemporaneamente__ e __sono in grado di comunicare via rete locale o internet__, cominceranno a sincronizzare il contenuto delle cartelle. + +- il comportamento del software in caso di conflitto dei file è configurabile. +- il software supporta più sistemi di __Version Control__ per i dati delle cartelle. +- è possibile scegliere un dispositivo __Master__ per ogni cartella: + - solo il __Master__ sarà in grado di modificare il contenuto. + - gli altri nodi accetteranno modifiche solo dal __Master__. +- alternativamente, un nodo può essere configurato in __sola lettura__ per una o più cartelle + +### Dettagli tecnici + +Syncthing è un software a riga di comando con interfaccia _Web_, accessibile tramite un _Web Browser_. Ogni dispositivo è identificato tramite __TLS__ e l'indirizzo __IP__ degli altri dispositivi viene trovato tramite un __Software Tracker__ anch'esso __Open Source__. E' possibile utilizzare il tracker gestito dagli sviluppatori del software oppure usarne uno gestito personalmente. + +Il software è implementato usando il linguaggio di programmazione __Go__ (anche detto __Golang__). + +### Block Exchange Protocol + +Syncthing è un'implementazione del __Block Exchange Protocol (BEP)__, che offre una soluzione al problema della sincronizzazione decentralizzata di una o più cartelle di file tra due o più dispositivi. Questo protocollo è nato e cresciuto insieme a Syncthing. + +Le [specifiche del protocollo](https://github.com/syncthing/specs/blob/master/BEPv1.md) sono incluse insieme alla documentazione di Syncthing. + +__BEP__ utilizza __TCP__ per comunicare e __TLS__ per crittografia e autenticazione. + +### Problemi di connessione + +Spesso i dispositivi possono trovarsi dietro __NAT__ e/o __Firewall__. Syncthing include delle tecniche basilari di _NAT Trasversal_, ma per essere sicuri la cosa migliore è posizionare i dispositivi da sincronizzare temporaneamente nella stessa rete locale in modo da essere sicuri che sincronizzino, oppure utilizzare un terzo dispositivo diff --git a/FileSharing/file_sharing.md b/FileSharing/file_sharing.md index 8081543..181787d 100644 --- a/FileSharing/file_sharing.md +++ b/FileSharing/file_sharing.md @@ -35,4 +35,6 @@ I più diffusi sistemi di Cloud Storage decentralizzati sono __Bittorrent Sync__ __Bittorrent Sync__ (anche detto __BTSync__) è un software proprietario di __Bittorrent Incorporated__ che implementa il __Cloud Storage decentralizzato__. -E' disponibile per numerose piattaforme desktop e mobile. +Il software è disponibile per __Windows__, __GNU/Linux__, __OSX__, __Android__, __iOS__, __Windows Phone__ e __Kindle Fire__. + +Esso è però considerato dalla comunità come una __soluzione parziale__ al problema del Cloud Storage, perchè Bittorrent Sync è una __tecnologia proprietaria, chiusa__ e dunque __potenzialmente inaffidabile__ dal punto di vista __della sicurezza e della privacy__. diff --git a/Messaggistica/bitmessage.md b/Messaggistica/bitmessage.md index e69de29..c889402 100644 --- a/Messaggistica/bitmessage.md +++ b/Messaggistica/bitmessage.md @@ -0,0 +1,11 @@ +# Bitmessage + +Bitmessage è un __protocollo__ per lo scambio di __posta elettronica__ in maniera __sicura__, __privata__, __intracciabile__ e, volendo, __anonima__. + +Ne esiste una sola implementazione completa (al momento della scrittura di questo documento) chiamata __PyBitmessage__ e disponibile per __Windows__, __GNU/Linux__ e __OSX__. + +il protocollo, in breve, definisce che: + +- ogni utente è identificato da una __coppia di chiavi crittografiche__ e da un __indirizzo__ derivato dalla __chiave pubblica__ +- ogni messaggio è __firmato__ con la chiave privata del mittente e __interamente crittografato__ con la chiave pubblica del destinatario. + - l'unica informazioni visibile del messaggio è il __TTL__ che ha lo scopo di evitare il __flooding__ della rete con lo stesso messaggio diff --git a/Messaggistica/introduzione.md b/Messaggistica/introduzione.md index e69de29..4885307 100644 --- a/Messaggistica/introduzione.md +++ b/Messaggistica/introduzione.md @@ -0,0 +1,7 @@ +# Il problema delle Email + +Il concetto di __E-Mail__ (posta elettronica) è una delle prime applicazioni pratiche di __Internet__ e delle reti di calcolatori in generale. Si basa su protcolli standard, in particolare: + +- __SMTP__ (Simple Mail Transfer Protocol) per l'invio della posta. +- __POP3__ e __IMAP__ per la ricezione e la lettura della posta contenuta in una __casella di posta elettronica__. +