Sobre el proyecto

iroh es una librería de red de n0-computer que proporciona una API para marcar por clave pública. En lugar de depender de direcciones IP, las aplicaciones se conectan a una identidad de endpoint, y iroh intenta encontrar y mantener una conexión. Intenta conexiones directas y hole-punching, con respaldo en servidores de retransmisión públicos. Está construida sobre QUIC mediante noq, proporcionando cifrado autenticado, flujos concurrentes con prioridades de flujo, un transporte de datagramas y evitando el bloqueo de cabeza de línea. El repositorio es un espacio de trabajo de Rust que contiene iroh core, iroh-relay cliente/servidor, iroh-base tipos comunes y iroh-dns-server para búsqueda de direcciones DNS/Pkarr. Los protocolos preexistentes incluyen iroh-blobs para transferencia de blobs direccionados por contenido basada en BLAKE3, iroh-gossip para redes superpuestas de publicación-suscripción e iroh-docs para un almacén clave-valor eventualmente consistente de iroh-blobs. El uso en Rust muestra Endpoint::bind, conexión con un ALPN, apertura de flujos QUIC bidireccionales y un Router que acepta manejadores de protocolo. Los enlaces FFI están disponibles a través de iroh-ffi para otros lenguajes. Con licencia MIT/Apache-2.0.