- i2pd es una implementación completa en C++ de un cliente I2P y un software para crear y usar la red anónima I2P
- I2P es una capa de red anónima de propósito general; todas las comunicaciones sobre I2P son anónimas, están cifradas de extremo a extremo y los participantes no revelan sus direcciones IP reales
- La red anónima I2P se usa comúnmente para aplicaciones P2P anónimas como intercambio de archivos y criptomonedas, y para aplicaciones anónimas cliente-servidor como sitios web, mensajería instantánea y servidores de chat
- Sus principales características son un framework de redes anónimas distribuido, comunicaciones cifradas de extremo a extremo, tamaño de instalación reducido, dependencias simples, alto rendimiento y un conjunto de APIs para desarrolladores de aplicaciones seguras
- La forma más sencilla de instalarlo es usar paquetes y binarios precompilados; la mayoría se puede descargar desde la página de release
- Las instrucciones de compilación y ejecución están disponibles en la documentation, y el archivo de configuración de ejemplo es
contrib/i2pd.conf - Los sistemas compatibles son GNU/Linux, CentOS, Fedora, Mageia, Alpine, ArchLinux, openSUSE, Gentoo, Windows, Mac OS, Docker image, Snap, FreeBSD, Android e iOS
- i2pd para Android está disponible en i2pd-android, la versión con GUI Qt en i2pd-qt y la versión con GUI para macOS en gui-i2pd
- La licencia es la BSD 3-clause license, indicada en el archivo
LICENSEen la raíz del proyecto
1 comentarios
Opiniones en Hacker News
Me gusta mucho el proyecto I2P, y creo que en muchos sentidos está bien diseñado
Por ejemplo, si no depende solo de la buena voluntad de los operadores de relays y hace que todos los participantes de la red retransmitan parte del tráfico interno, se vuelve mucho más difícil que una sola entidad controle suficientes saltos como para desanonimizar a los usuarios
Lamentablemente, fuera de los torrents, I2P no parece haber ganado mucha tracción y queda opacado por el proyecto Tor, que tiene mucho más financiamiento
En especial ahora que qBitTorrent 4.6 integró el soporte; ojalá se difunda bien. Hoy el intercambio de archivos está estancado en una lógica en la que todo necesita VPN, y hace falta sacudir un poco las cosas
Hay una razón por la que Tor Project no hace eso: https://support.torproject.org/alternate-designs/
“Muchos usuarios de Tor no pueden ser buenos relays. Por ejemplo, algunos clientes de Tor están detrás de firewalls restrictivos, se conectan por módem o están en entornos donde no pueden retransmitir tráfico. Dar servicio también a estos usuarios es importante para ofrecer anonimato efectivo a todos. Esto se debe a que hay muchos usuarios de Tor con estas restricciones, e incluirlos aumenta el tamaño del conjunto de anonimato…”
“Además, debemos entender mejor los riesgos de que un atacante envíe tráfico a través de mi relay al mismo tiempo que yo inicio tráfico anonimizado. Tres trabajos de investigación describen formas de identificar relays dentro de un circuito enviando tráfico a través de relays candidatos y observando una caída del tráfico mientras el circuito está activo. Estos ataques de congestión no son tan preocupantes en el contexto de Tor siempre que los relays nunca sean clientes…”
Si el algoritmo de cifrado se rompe, podría quedar al descubierto que la gente transmitió CSAM sin saberlo. Aunque no haya sido intencional. ¿El modelo de I2P no genera la misma preocupación?
Recuerdo que antes, en general, se veía mal usar torrents en Tor porque saturaban la red. Si el objetivo es evitar avisos de copyright, no parecía haber motivos para que fuera mejor que casi cualquier VPN, especialmente en velocidad
El 99% de los usuarios de Tor básicamente usa Tor solo para navegar por Internet normal, así que diría que no existe una verdadera “comunidad Tor”
Este enlace parece ser la versión en C++ de I2P
La versión Java original “oficial”, más compleja y con muchas más funciones integradas, está aquí: https://geti2p.net
En cualquier caso, actualmente i2pd funciona muy bien con IRC, correo, NNTP, Gopher, web y Telnet
De hecho, me pregunto por qué algo tan cercano al bajo nivel no tiene una implementación en C
Creo que el uso más práctico de I2P es tunelizar acceso SSH a dispositivos poco visibles detrás de NAT cuando no puedes o no quieres usar algo como Tailscale
O también se puede pensar en una caja de torrents que hace seed de libros raros o colecciones de música. Puedes pagar los costos del servidor con criptomonedas, pero I2P te permite acceder a ese servidor y configurarlo en privado
Yggdrasil es una “graynet”. Está cifrada de extremo a extremo y se autoorganiza con una tabla hash distribuida (DHT), pero no usa enrutamiento onion/garlic. Aun así puede interoperar tanto con Tor como con I2P, y algunos nodos de Yggdrasil son solo I2P o solo Tor. Es una estructura como el árbol del mundo, que extiende sus raíces (túneles) por todos los ámbitos de existencia, es decir, por varias redes
Asigna direcciones IPv6 a los usuarios. Estas direcciones se generan automáticamente a partir de una firma de clave pública, así que en la práctica son imposibles de suplantar, y ofrecen autenticación automática junto con cifrado de extremo a extremo. Se siente como tener IPsec desplegado por completo y de forma totalmente transparente
También tiene modo stealth para regímenes con censura, de modo que el router puede quedarse esperando en silencio sin anunciarse
Publicaciones relacionadas:
Invisible Internet Project (I2P) - https://news.ycombinator.com/item?id=25734254 - enero de 2021, 23 comentarios
Kovri – implementación en C++ segura, privada e irrastreable de la red I2P - https://news.ycombinator.com/item?id=14963044 - agosto de 2017, 53 comentarios
I2P-Bote – plugin de email para la red I2P que usa una tabla hash distribuida - https://news.ycombinator.com/item?id=14236331 - mayo de 2017, 20 comentarios
I2P: Invisible Internet Protocol - https://news.ycombinator.com/item?id=12022917 - julio de 2016, 56 comentarios
Hace unos años lo usé para poner a prueba los límites de anonimato que podía ofrecer I2P.
Es una lástima que no parezca tener mucho financiamiento. En mi opinión, es muy superior a Tor en todos los aspectos. Antes de implementarlo, trabajaron muchísimo la teoría.
Aun así, la experiencia de usuario del router era realmente mala. Hace falta un binario independiente que funcione perfecto y rápido en todas las plataformas, y también una GUI que no requiera demasiados conocimientos técnicos previos. El router actual está escrito en Java y esperaba que i2p-rust se pusiera al día, pero parecía un proyecto casi medio muerto.
Es mucho más fácil convencer a la gente de probar un lenguaje nuevo y reluciente.
Dicho eso, para ese propósito creo que Rust/Go ya se están saliendo un poco del foco de atención. Si quieres hype, quizá haya que mirar Zig o Nim, o algo de lo que todavía no he oído hablar.
Me da curiosidad qué tan sencillo es crear un circuito nuevo en I2P.
También quisiera saber si la API lo soporta y cuánto tiempo tarda.
Para dar contexto, estoy desarrollando un sistema de votación en el que los votos firmados con seudónimo deben enviarse por un canal anónimo. Además, si dos seudónimos usan el mismo canal anónimo, el anonimato se debilita, así que es importante que eso nunca ocurra.
[1]: https://janiserdmanis.org/artefacts/EVOTEID-2023-poster.pdf
Como estoy creando mi propia suite de internet descentralizada, antes estuve bastante metido en este campo.
Una vez entrevisté a Ian Clarke, el creador de Freenet: https://www.youtube.com/watch?v=JWrRqUkJpMQ
PerfectDark también me pareció interesante.
Mi favorito es http://maidsafe.net/. Después de 14 años, por fin parece estar cerca de lanzarse. Para que conste, no tengo relación con ellos.
Me dio pena que el mantenedor de i2p, zzz, pareciera haberse ido del proyecto después de recibir reacciones negativas relacionadas con política.
Me hizo pensar que deberíamos agradecer el arduo trabajo no remunerado que hacen los mantenedores de código abierto.
Sin duda fue una salida muy repentina.
I2P es un gran proyecto dirigido por gente excelente.
Comparándolo brevemente con Tor, I2P es fuerte dentro del ecosistema interno de I2P. Lamentablemente, la última vez que revisé solo había unos cuantos nodos de salida, y en esa parte Tor es fuerte.
Tor Browser es la killer app de Tor.
I2P también necesita un navegador seguro, simple y difícil de rastrear por huella digital, que solo maneje HTML básico. Si no, es buscarse problemas.
Usar un navegador común es una gran debilidad para el anonimato de I2P. Tor Browser intenta que todos los usuarios de la red Tor se vean iguales.
¿Los usuarios de I2P no podrían simplemente usar Tor Browser y obtener el mismo beneficio de reducir la posibilidad de rastreo por huella digital del navegador?