Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

ptfd [02/06/2016 09:52]
seb
ptfd [02/06/2016 11:00] (Version actuelle)
seb
Ligne 29: Ligne 29:
       {"​position":​239426.78,"​hash":"​d8944c1cb40e95068447ec944607881c6b542f556272eeae243c13067342beba"​},​       {"​position":​239426.78,"​hash":"​d8944c1cb40e95068447ec944607881c6b542f556272eeae243c13067342beba"​},​
       etc...       etc...
-      {"​position":​287312.136,"​hash":"​bf0d4565c8e57caace9714b2e7a40f340d536a745f89f0bb6baf9d08454de130"​}+      {"​position":​287312.136,"​hash":"​bf0d4565c8e57caace9714b2e7a40f340d536a745f89f0bb6baf9d08454de130"​},
       {"​position":​47885355.99999927,"​hash":"​bd4fc42a21f1f860a1030e6eba23d53ecab71bd19297ab6c074381d4ecee0018"​}       {"​position":​47885355.99999927,"​hash":"​bd4fc42a21f1f860a1030e6eba23d53ecab71bd19297ab6c074381d4ecee0018"​}
 +   ],
 +   "​_id":"​caOrnTgE1aUU99PG"​
 +}
 +</​code>​
 +
 +===== File Peers Structure =====
 +  * **id**: id of the file
 +  * **peers**: **//​ip//​**:​ip of the peer / **//​port//​**:​ port of the peer
 +
 +//Example of a file hash: da65124fffa9628dc5da843bca7ba0b4008f22572180edd484d218ebf16560a3.db that corresponds of a filehash'​s video//
 +<​code>​
 +{
 +   "​id":"​da65124fffa9628dc5da843bca7ba0b4008f22572180edd484d218ebf16560a3",​
 +   "​peers":​[
 +      {"​ip":​127.0.0.1,"​port":"​8080"​},​
 +      etc...
 +      {"​ip":​127.0.0.1,"​port":"​4001"​},​
 +      {"​ip":​127.0.0.1,"​port":"​2032"​}
    ],    ],
    "​_id":"​caOrnTgE1aUU99PG"​    "​_id":"​caOrnTgE1aUU99PG"​
Ligne 42: Ligne 60:
   * **port**: port of the user   * **port**: port of the user
 //To preserve the anonymity of each user, no more information is required// //To preserve the anonymity of each user, no more information is required//
 +
 +===== Relay Specification =====
 +
 +__What is a relay ?__
 +
 +A relay is used to transmit information of a client A to client B while preserving the identity of each. Indeed, the fact to channel the information to a relay allows to hide the source of the information. Thus, client A will never have access to the personnale information of client B (like IP, PORT) since no live connection is established between these two peers. Also, a p2p architecture with existing NAT is not properly ensure, even with other techniques such as hole punching or the UPnP protocol.
 +
 +When a file is publishing, the hash list of the file is created by the relay. This hash list enables to proove the truthfulness of each chunk that is emmeting to the client that asked the file.
 +
 +When peers send you the chunks, you become an emmiter. Thus, your ip and port is recording in the file peers.
 +
 +**Relay** → file hash and file peers
 +
 +**Client** → file
 +
 +
 +
 +