InterPlanetary File System

InterPlanetary File System (ou IPFS, système de fichier inter-planétaire), est un protocole pair à pair de distribution de contenu adressable par hypermédia, conçu à l'origine par Juan Benet[1]. L'implémentation principale d'IPFS est un logiciel libre[2] dirigée par l'Interplanetary Networks[3].

IPFS

Informations
Créateur Juan Benet (en)
Développé par Juan Benet
Dernière version 0.4.22 ()
Dépôt github.com/ipfs/ipfs
Écrit en Go
Système d'exploitation FreeBSD, Linux, macOS et Microsoft Windows
Type Protocole réseau
Partage de fichiers en pair à pair
Système de fichiers
Hypermedia distribution protocol (d)
Réseau de diffusion de contenu
Licence Licence MIT
Site web ipfs.io

Description

Le hash de ce logo Wikipedia est QmRW3V9znzFW9M5FYbitSEvd5dQrPWGvPvgQD6LM22Tv8D. On peut donc accéder au fichier de ce logo en HTTP via une passerelle publique ou via une instance locale d'IPFS.

IPFS est un système distribué de fichiers pair à pair qui ne dépend pas de serveurs centralisés. Son but est de connecter un ensemble d'équipements informatiques avec le même système de fichiers. D'une certaine manière IPFS est similaire au World Wide Web, à la différence qu'il peut être vu comme un essaim (Swarm) BitTorrent unique, qui échange des objets au sein d'un dépôt Git.

En d'autres termes, IPFS fournit un modèle de stockage par blocs adressable par contenu de haute capacité, utilisant des hyperliens pour l'accès. Ceci forme un graphe orienté acyclique de Merkle généralisé[4]. IPFS combine une table de hachage, un échange de blocs encouragé et un espace de noms auto-certifié. IPFS n'a pas de point unique de défaillance et les nœuds n'ont pas besoin de se faire mutuellement confiance[4].

Le système de fichiers peut être accédé de différentes manières, notamment via FUSE ou à travers HTTP. Il est possible d'ajouter un fichier local au système de fichier IPFS, le rendant de ce fait accessible au reste du monde. Les fichiers sont identifiés grâce à leur hash, permettant l'utilisation d'une mémoire cache, et distribués via Bitswap, une généralisation du protocole BitTorrent[5]. Il y combine également la table de hachage distribuée, (THD ou DHT) Kademlia[6], le système de contrôle de version Git et le système de fichier auto-certifiant (Self-certifying File System (en), SFS)[7]. Les utilisateurs lisant du contenu contribuent à servir ce contenu à d'autres utilisateurs sur le réseau.

IPFS utilise son propre système de noms de domaine appelé IPNS (Inter-Planetary Naming System), c'est un espace de nom global basé sur une infrastructure à clés publiques (ICP ou PKI) qui sert à construire une chaîne de confiance, qui est compatible avec les autres services de noms de domaine et peut lier des adresses de type DNS, .onion, .bit, etc. vers IPNS[4].

Réception

Kyle Drake, le créateur du service d'hébergement Neocities, a exprimé la conviction que IPFS est le remplaçant de HTTP et de nombreux autres protocoles et solutions. Selon lui, « la manière dont HTTP distribue le contenu est fondamentalement imparfaite, et essayer d'améliorer les performances ou forcer les gens à utiliser des certificats SSL brisés est inutile. »[8]

Notes et références

  1. « IPFS README - Who designed it? » (consulté le )
  2. « ipfs/go-ipfs », sur GitHub (consulté le )
  3. « The IPFS Project » (consulté le )
  4. « IPFS README » (consulté le )
  5. (en) « Architecture », sur Dépôt IPFS de Github
  6. (en) « IPFS - Specifications », sur compte GitHub de IPFS
  7. (en) Juan Benet, « IPFS - Content Addressed, Versioned, P2P File System (DRAFT 3) - 2. BACKGROUND », sur Compte github de IPFS
  8. Citation originale : « The way HTTP distributes content is fundamentally flawed, and no amount of performance tuneups or forcing broken CA SSL or whatever are going to fix that. » HTTP is obsolete. It's time for the distributed, permanent web, The Neocities Blog, 2015.

Liens externes

Voir aussi


  • Portail d’Internet
  • Portail des réseaux informatiques
  • Portail de l’informatique
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.