Outils du site

Outils pour utilisateurs


p2p:dat (lu 22422 fois)

Différences

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

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
p2p:dat [le 18/10/2018 à 19h43]
111110101011 [Accès à une ressource]
p2p:dat [le 18/10/2018 à 20h07]
111110101011 [HyperDB]
Ligne 25: Ligne 25:
 Les liens se présentent sous la forme suivante : ''<nowiki>dat://clé_du_lien_sous_forme_de_hash</nowiki>''. Les liens se présentent sous la forme suivante : ''<nowiki>dat://clé_du_lien_sous_forme_de_hash</nowiki>''.
  
-Jusque là, ça ressemble beaucoup à BitTorrent, les liens magnetainsi que le recours à la DHT, mais il y a quelques nuances.+Jusque là, ça ressemble beaucoup à BitTorrent, ses liens magnet ainsi que le recours à la DHT, mais il y a quelques différences.
  
 === Versionnage des fichiers === === Versionnage des fichiers ===
  
-L'une d'elles est assez intéressant : il s'agit de la gestion des versions des fichiers.+L'une de ces différences est assez intéressante : il s'agit de la gestion des versions des fichiers.
  
 Concrètement, cela signifie que pour une clé <nowiki>dat://</nowiki> donnée, on va pouvoir récupérer la dernière version publiée des données, mais aussi les suivantes (ou les précédentes). Concrètement, cela signifie que pour une clé <nowiki>dat://</nowiki> donnée, on va pouvoir récupérer la dernière version publiée des données, mais aussi les suivantes (ou les précédentes).
  
-Cas pratique : je mets à disposition un documentaire, que j'ai sous-titré. Je le partage. Et plus tard je me rend compte avoir fait des fautes dans les sous-titres, et bien je peux repartager une nouvelle version des sous-titres, sans pour autant devoir recréer une nouvelle clé. Cela remédie au problème constaté avec les torrents, qui est que les données sont «figées» et la moindre modification de l'un des fichiers invalide le torrent correspondant.+Cas pratique : je mets à disposition un documentaire, que j'ai sous-titré. Je le partage. Et plus tard je me rend compte avoir fait des fautes dans les sous-titres, et bien je peux repartager une nouvelle version des sous-titres, sans pour autant devoir recréer une nouvelle clé. Cela remédie à un problème auquel nous nous sommes accoutumés avec les torrents, qui est que les données sont «figées» et la moindre modification de l'un des fichiers invalide le torrent correspondant, et nécessite la création d'un nouveau torrent si l'on souhaite partager ces nouvelles données.
  
-On peut ainsi garder en synchronisation des jeux de données qui évoluent dans le temps.+Avec Dat donc, on peut garder en synchronisation des jeux de données qui évoluent dans le temps.
  
 Dat propose en fait 2 modes de gestion de versions : Dat propose en fait 2 modes de gestion de versions :
   * l'un où l'on ne peut récupérer que la version la plus récente ; c'est le mode le plus économe en espace disque   * l'un où l'on ne peut récupérer que la version la plus récente ; c'est le mode le plus économe en espace disque
-  * l'autre, où c'est tout l'historique des versions qui est conservé. Cela peut être très couteux si les fichiers sont volumineux car chaque version d'un fichier est intégralement répliquée (contrairement à d'autres gestionnaires de versions qui savent ne répliquer que les différences d'un fichier à l'autre).+  * l'autre, où c'est tout l'historique des versions qui est conservé. Cela peut être très couteux si les fichiers sont volumineux car chaque version d'un fichier est intégralement répliquée (contrairement à d'autres gestionnaires de versions comme Git qui parviennent à faire la même chose, mais en conservant uniquement les différences d'un fichier à l'autre).
  
 === Découverte via la DHT === === Découverte via la DHT ===
Ligne 45: Ligne 45:
 Un autre point de divergence avec BitTorrent, c'est un degré de confidentialité légèrement amélioré lors de l'usage de la DHT. Un autre point de divergence avec BitTorrent, c'est un degré de confidentialité légèrement amélioré lors de l'usage de la DHT.
  
-Sur BitTorrent, ce qui circule sur la DHT, ce sont les hashs complets des ressources. C'est problématique car tous les noeuds du réseau à travers lesquels votre requête circule apprennent quelle est votre demande. Il est alors possible pour un noeud d'effectuer une écoute passive du réseau, et savoir qui désire quoi.+Sur BitTorrent, ce qui circule sur la DHT, ce sont les hashs complets des ressources. C'est problématique car dès qu'une recherche est opérée sur le réseau, son hash «fuite» à travers tous les noeuds du réseau qui ont été parcourus, et qui connaissent ainsi votre demande. La DHT rend possible pour un noeud d'effectuer une écoute passive du réseau, et connaître qui désire quoi. Quand bien même avec BitTorrent il est possible de ne pas publier votre hash dans la DHT, les clients BitTorrent que vous ne contrôlez pas peuvent avoir tendance à la laisser fuiter.  
  
-Dat résoud ce problème en ajoutant un niveau d'indirection supplémentaire avec les clés.+Dat cherche à résoudre ce problème en ajoutant un niveau d'indirection supplémentaire avec les clés.
  
-Avec Dat, ce qui circule sur la DHT, ce n'est pas la clé dat (qui correspondrait au lien magnet), c'est une autre forme de hash qu'on appelle la «Discovery Key», et qui est calculé à partir de la clé Dat (avec l'algorithme [[wp>BLAKE_(hash_function)|blake2b]]). Ainsi, votre requête circule, mais seuls les noeuds disposant de la dite ressource sauront que vous la cherchez (un noeud disposant de la clé Dat d'origine recalculera la clé de découverte).+Avec Dat, ce qui circule sur la DHT, ce n'est pas la clé dat (qui correspondrait au lien magnet), c'est une autre forme de hash qu'on appelle la «Discovery Key», et qui est calculé à partir de la clé Dat (avec l'algorithme [[wp>BLAKE_(hash_function)|blake2b]]). Ainsi, votre requête circule, mais seuls les noeuds disposant de la dite ressource sauront que vous la cherchez (un noeud disposant d'une clé Dat sait en dériver la clé de découverte). 
 + 
 +Le point qui m'échappe, c'est la résolution du cas suivant : que se passe-t-il si cette clé de découverte est réutilisée par un noeud malicieux qui voudrait accéder à une ressource (qu'il ne connaît pas, mais il s'en fiche puisqu'il a la clé de découverte) ? L'accès à la ressource ne lui est accordée que s'il dispose de la clé dat : peut-il alors prétendre disposer de la ressource pour attendre qu'un noeud lui fournisse la clé Dat ? 
 +==== Beaker Browser ==== 
 + 
 +Basé sur Electron. 
 + 
 +Voir aussi : [[https://github.com/sammacbeth/dat-fox|dat-fox]]
  
-Le point qui m'échappe, c'est la résolution du cas suivant : que se passe-t-il si cette clé de découverte est réutilisée par un noeud malicieux qui voudrait accéder à une ressource (qu'il ne connaît pas, mais il s'en fiche puisqu'il a la clé de découverte) ? 
 ==== HyperDB ==== ==== HyperDB ====
  
p2p/dat.txt · Dernière modification: le 20/06/2020 à 12h29 de 111110101011