1
0
mirror of https://github.com/fazo96/tesina.git synced 2025-01-25 13:54:19 +01:00

Merge branch 'master' of github.com:fazo96/tesina

This commit is contained in:
Enrico Fasoli 2015-05-21 07:32:16 +02:00
commit 30259c51a2
5 changed files with 57 additions and 4 deletions

View File

@ -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

View File

@ -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__.

View File

@ -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

View File

@ -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__.

View File

@ -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__