À propos du projet

iroh est une bibliothèque réseau de n0-computer qui fournit une API pour composer par clé publique. Au lieu de s'appuyer sur des adresses IP, les applications se connectent à une identité de point de terminaison, et iroh tente de trouver et de maintenir une connexion. Elle essaie les connexions directes et le perçage de NAT, avec repli vers des serveurs relais publics. Elle est construite sur QUIC via noq, offrant un chiffrement authentifié, des flux concurrents avec priorités de flux, un transport de datagrammes et évitant le blocage en tête de file. Le dépôt est un workspace Rust contenant le cœur d'iroh, le client/serveur iroh-relay, les types communs iroh-base et iroh-dns-server pour la résolution d'adresses DNS/Pkarr. Les protocoles préexistants incluent iroh-blobs pour le transfert de blobs adressés par contenu basé sur BLAKE3, iroh-gossip pour les réseaux superposés de publication-abonnement, et iroh-docs pour un magasin clé-valeur à cohérence éventuelle d'iroh-blobs. L'utilisation en Rust montre Endpoint::bind, la connexion avec un ALPN, l'ouverture de flux QUIC bidirectionnels et un Router acceptant des gestionnaires de protocole. Des liaisons FFI sont disponibles via iroh-ffi pour d'autres langages. Sous licence MIT/Apache-2.0.