- Stack de redes basado en criptografía que funciona sobre distintos medios como LoRa, radio por paquetes y WiFi, y permite comunicación estable incluso en entornos de velocidad ultrabaja y alta latencia
- Incluye funciones centradas en la seguridad como cifrado de extremo a extremo, anonimato del remitente, enrutamiento multihop autoconfigurable y confirmación de entrega imposible de falsificar
- No depende del stack IP y puede ejecutarse en espacio de usuario en entornos Python 3 sin módulos del kernel
- Apunta a la construcción de redes de bajo costo y autónomas, permitiendo interconectar miles de redes independientes sin control central ni censura
- Como herramienta open source para infraestructura de comunicación distribuida y redes off-grid, ofrece un alto valor práctico para desarrolladores e investigadores
Resumen de Reticulum
- Reticulum es un stack de redes basado en criptografía que permite construir redes locales y de área amplia con hardware común
- Funciona incluso en entornos de alta latencia y bajo ancho de banda
- Ofrece cifrado de extremo a extremo, anonimato del remitente, transporte multihop autoconfigurable, direccionamiento eficiente y confirmación de entrega imposible de falsificar
- Su objetivo es que cualquiera pueda convertirse en operador de su propia red y construir redes autónomas e interconectables sin control central
- Reticulum no está diseñado como una sola red, sino como una herramienta para construir miles de redes independientes
- También puede funcionar sobre IP, por lo que es posible tunelizar sobre Internet o redes privadas
- Se ejecuta en entornos Python 3 y no requiere módulos del kernel ni drivers
Funciones principales
- Soporta direccionamiento global único y enrutamiento multihop autoconfigurable
- Puede transmitir datos sobre distintos medios físicos y topologías
- Garantiza anonimato del remitente: los paquetes no incluyen la dirección de origen
- Comunicación basada en cifrado asimétrico X25519 y firmas Ed25519
- Usa un conjunto de claves Curve25519 de 512 bits
- Soporta Forward Secrecy, cifrado AES-256-CBC y autenticación HMAC SHA256
- Su sistema de interfaces escalable permite añadir interfaces personalizadas
- Ofrece una API simple que facilita el desarrollo de aplicaciones distribuidas
- Soporta transferencia de datos de gran volumen, con compresión automática, checksum y ajuste de transmisión
- Incluye un mecanismo ligero de Request/Response y establecimiento eficiente de enlaces (3 paquetes, 297 bytes)
Implementación de referencia y protocolo
- El código Python de este repositorio es la implementación oficial de referencia y la base de la definición del protocolo
- Se distribuye bajo la Reticulum License, y el protocolo fue donado al dominio público en 2016
- La compatibilidad se define como interoperabilidad completa con la implementación de referencia
Ejemplos de uso
- rnsh: sesión de shell remota basada en Reticulum
- LXMF: protocolo distribuido de mensajería
- LXST: framework para transmisión en tiempo real de audio y señales
- Nomad Network: plataforma de comunicación mesh cifrada para entornos off-grid
- Sideband: app con GUI para transferencia de archivos, llamadas de voz y funciones de mapas
- MeshChat: cliente LXMF basado en web con soporte para imágenes, voz y transferencia de archivos
Medios y dispositivos compatibles
- Funciona sobre cualquier medio que soporte al menos un canal half-duplex de 5 bps y una MTU de 500 bytes
- Puede usar LoRa, radio por paquetes, WiFi, Ethernet y enlaces ópticos de comunicación, entre otros
- RNode es una interfaz LoRa para Reticulum, que puede fabricarse por cuenta propia o comprarse ya terminada
- En equipos como Raspberry Pi es posible combinar LoRa, radio por paquetes y WiFi
Interfaces compatibles
- Soporta Ethernet, LoRa (RNode), TNC de radio por paquetes, módems KISS, dispositivos seriales, TCP/UDP y pipes stdio, entre otros
- Es posible añadir módulos de interfaz personalizados, y se aceptan PR probados en uso real
Rendimiento y estado
- Rango de rendimiento objetivo: 250 bps~1 Gbps; actualmente alrededor de 150 bps~500 Mbps
- Las funciones principales del protocolo están completamente implementadas, y la API y los formatos son estables
Bootstrap de conexión
- Reticulum es una red autónoma, no un servicio por suscripción
- La conexión inicial es posible mediante un directorio público de entrypoints operado por la comunidad
- Ej.:
directory.rns.recipes, rmap.world
Componentes criptográficos
- Conjunto de claves Curve25519 de 512 bits, firmas Ed25519 e intercambio de claves X25519
- Usa HKDF, AES-256-CBC, HMAC-SHA256 y SHA-256/512
- Se proporciona principalmente a través de OpenSSL y PyCA/cryptography
- También incluye una implementación pura en Python, aunque con un nivel menor de validación de seguridad
1 comentarios
Comentarios de Hacker News
He trabajado bastante con redes mesh en varias comunidades regionales, pero nunca he visto una red grande que realmente use Reticulum
La razón principal por la que las comunidades no se suman es que este proyecto gira prácticamente en torno a un solo desarrollador, y el historial de cambios en Git tiene mensajes como “Update”, “Better Version” o “Cleanup”, así que seguirle la pista es casi imposible
Dijo que de ahora en adelante solo habrá actualizaciones esporádicas e impredecibles, y que ya no habrá soporte ni gestión de la comunidad
Al final, terminó convirtiéndose en otro proyecto open source de una sola persona que acabó quemada
Se sintió como una despedida
Reticulum es un stack de red completo de nivel producción, con cifrado y anonimato como ejes principales
No es solo para LoRa, es independiente de la capa de transporte
Pero tiene dos problemas
Probablemente sería mejor una librería pequeña con API en C
Aunque apps como Columba la están mejorando poco a poco
Ahora mismo hay como 4 intentos de hacer versiones de bajo nivel en C++, Zig, Rust y Go
De esas, la implementación en Rust de Beechat parece la más madura, pero casi no hay casos de uso reales
La “forma antigua” era confiar en el icono del candado del navegador, y la “forma Zen” es verificar directamente la huella hash
Pero ese enfoque tiene una UX terrible
Incluso yo, siendo técnico, tuve problemas con la configuración, así que un usuario común ni de chiste lo va a usar
Si de verdad quieres adopción masiva, al final necesitas ese candado verde
Me sorprende que nadie lo haya mencionado, pero existe un protocolo de enrutamiento llamado Yggdrasil
Usa direcciones criptográficas y funciona tanto sobre TCP/IP como sobre LoRa
Llevo unas semanas usándolo como reemplazo de Tailscale, y la latencia es parecida y bastante estable
Me da curiosidad cuál es la diferencia frente a Reticulum
Sitio oficial de Yggdrasil
En realidad, lo que más me importa es la garantía de entrega de mensajes
Reticulum usa “Store and Forward” como modo predeterminado
Aunque un mensaje no se entregue de inmediato, se envía después cuando aparece una conexión
Pero me pregunto si, cuando los mensajes llegan fuera de orden, el cliente incluye los metadatos necesarios para ordenarlos correctamente
Reticulum ya llegó a la versión 1.0.0 y de hecho funciona bastante bien
Para empezar, puedes probar meshchat o
Sideband para Android
Incluso permite fotos y chat de voz por LoRa, y si falta ancho de banda o se cae el enlace, cambia automáticamente a otro medio de transporte
Lo que me confunde es que no se ha publicado una especificación oficial del protocolo
Si está pensado para chips inalámbricos como LoRa, entonces debería poder correr en microcontroladores, pero las versiones en Python o Rust std no sirven en ese entorno
Viendo la licencia, no es software libre en sentido pleno
Incluye cláusulas de “no dañar a los humanos” y de “prohibido usar IA”
Las tres requieren una configuración de nodos maestro–esclavo con una estructura de árbol de expansión múltiple al estilo eBGP
Parece que alguien es fan de Anathem