Resumen rápido

Presentes: beefbroth, CCD, ChZEROHag, co, dcat, dm, godmode0, jrand0m, mihi, mihi_backup, mrflibble, Myself248, myself248, nop, pitu, Ryan_Singer, shardy, thecrypto, UserX, yodel

Registro de la reunión

[22:56] ok ok [22:56] agenda [22:56] 0.0) bienvenida [22:56] 1.0) estado del desarrollo [22:56] 1.1) router [22:56] *** Myself248 (~ident@anon.iip) se ha unido al canal #iip-dev [22:56] 1.2) precálculo DH [22:56] 2.0) micro-hoja de ruta [22:56] 3.0) apps / uso [22:56] 4.0) ns [22:56] 5.0) IM (mensajería instantánea) [22:56] 6.0) administrivia (cvs, bugzilla, lista de cvs, cvs web) [22:56] 7.0) preguntas [22:57] (sí, 7 puntos hoy. w00t) [22:57] 0.0) bienvenida [22:57] hola. [22:57] hey [22:57] 17 usuarios hoy. guay [22:57] *** Ryan_Singer (chatzilla@anon.iip) se ha unido al canal #iip-dev [22:57] y subiendo [22:57] ok [22:57] 1~hola [22:57] 1.1) estado del desarrollo del router [22:58] el router de referencia en Java va muy bien [22:58] *** ChZEROHag (hag@anon.iip) se ha unido al canal #iip-dev [22:58] ahora podemos ejecutar aplicaciones en distintos routers y enviarnos mensajes entre nosotros [22:59] Perdón por interrumpir, pero espero que sea solo una vez [22:59] con un enfoque iterativo e incremental, el estado actual es seguro, no anónimo, no escalable y harvestable (susceptible de recolección) [22:59] ¿Alguien más está trabajando en una API en C? [22:59] hola ChZEROHag, ¿qué tal? [22:59] Porque yo sí, pero muy lentamente [22:59] *** dcat (dirtycat@anon.iip) se ha unido al canal #iip-dev [22:59] oh, genial [22:59] shardy trabajará en una cuando termine toorcon [22:59] ¿quizá ustedes dos podrían colaborar en eso? [23:00] jrand0m: ¿Se puede introducir a mano un destino para enviar mensajes? [23:00] Mejor dicho, ¿existe una representación ASCII de un destino? [23:00] sí, co, a ambas [23:00] Excelente. [23:00] los destinos, y todas las estructuras de I2P, se pueden cargar y serializar en base 64 (alfabeto alternativo) [23:01] así que no será fácil de recordar, pero ¿será ASCII? [23:01] (p. ej., en la netDb de uno de mis routers, tengo leaseSet-enD4jtE-orMwFD0QGog9GAyC5MvLvnPzhVD8cDYvSI8.dat, que contiene el lease set para el destino enD4jtE-orMwFD0QGog9GAyC5MvLvnPzhVD8cDYvSI8) [23:02] [aunque eso es H(destination).toBase64() [23:03] ChZEROHag> si hay algo en lo que podamos ayudarte con eso, dilo [23:03] ok, eso es 1.1. 1.2) precálculo DH [23:03] ¿Podrías hacerlo por mí? :-) [23:04] anoche escribí una optimización de precálculo para los intercambios DH que ahorra ~1s de 1.5s en las negociaciones de sesión. Me encantaría que alguien que sepa de cripto se asegure de que no estoy loco ;) [23:04] lol ChZEROHag [23:04] aah ya sé qué necesitaba [23:04] Una implementación de netdb [23:04] ¿está en cvs? [23:04] lo de dh [23:04] sí, thecrypto [23:05] C:\dev\i2p\code\core\java\src\net\invisiblenet\i2p\crypto\DHSessionKeyBuilder.java [23:05] Bueno, voy a estar despierto 3/4 horas más, quizá me dé algo que hacer [23:05] er, s/C:\\dev/g; s/\\/\//g [23:05] *** wax_off (~nomail@anon.iip) se ha unido al canal #iip-dev [23:06] genial. ¿para qué necesitas una implementación de netdb? [23:06] No me acuerdo [23:06] actualmente tenemos una netdb no escalable en cvs [23:06] jeje [23:06] No lo toco desde hace al menos una semana [23:06] estás trabajando en una API de I2CP en C, ¿verdad? no en I2NP? [23:07] Iba a hacerlo todo [23:07] *** wax_off ha salido de #iip-dev [23:07] I2NP es realmente, realmente, realmente mucho más trabajo que I2CP [23:07] Una vez que empiece en serio, saldrá rodando [23:07] pero si implementas un I2NP en C sería la leche [23:07] ¿hay un I2NP en algo ahora mismo? [23:07] (I2CP:I2NP::FCP:FNP) [23:07] sí, dm [23:08] * ChZEROHag restaura emacs [23:08] la implementación en Java en la que estoy trabajando tiene I2NP funcionando [23:08] bien... [23:08] jrand0m: ¿url? Me vendría bien una referencia, aunque sea en un lenguaje horrible. [23:08] je [23:08] eh, en realidad eso es 6.0 administrivia: alias dónde coño está nuestro acceso anónimo a cvs ;) [23:09] estoy bajando lo de DH [23:09] guay [23:09] Ah, cierto [23:09] jrand0m, volvamos al orden, ¿la micro-hoja de ruta? [23:09] * thecrypto se tapa la cara [23:09] bueno, esperaré :) [23:09] jeje ok [23:09] micro-hoja de ruta [23:09] tengo de la 0.1 a la 0.5 planificadas [23:09] seguiste la hoja de ruta de freenet entonces? [23:10] *** mrflibble (mrflibble@anon.iip) se ha unido al canal #iip-dev [23:10] 0.1) funcional, seguro, no anónimo, no escalable, harvestable (susceptible de recolección) [23:10] el desarrollo se ralentiza y se congela durante 0.5... [23:10] ahora estamos en 0.1. [23:10] je, me di cuenta dm, flinks también se fue al traste en 0.5.2 ;) [23:10] ¿Cómo llamas al paquete completo? [23:10] (extraña coincidencia) [23:10] es decir, ¿versión 0.1 de? [23:10] ¿el paquete completo? implementación de referencia del router i2p [23:10] co: Wonga [23:10] * beefbroth se une a la reunión [23:11] buenos noches beefbroth [23:11] Muy bien. Eso lo explica. [23:11] De hecho quizá lo llame así. Ciertamente suena más interesante que 'i2pd' [23:11] 0.1 tiene bugs. eso por descontado. y no tiene optimizaciones reseñables (aunque el precálculo DH ayuda). [23:11] je [23:11] jrand0m, ¿qué es entonces 0.2)? [23:11] invisible internet police department [23:11] ok, 0.2 [23:12] 0.2 es funcional, seguro, anónimo, no escalable, harvestable (susceptible de recolección) [23:12] 0.2 añade soporte para tunnels de longitud no cero [23:12] en realidad implementé la mayor parte anoche, pero no está probado a fondo [23:12] creo que 0.2 estará lista a final de semana [23:12] ¿a qué distancia estamos de eso desde la perspectiva de desarrollo? [23:13] genial [23:13] 0.3) es funcional, seguro, anónimo, escalable, harvestable (susceptible de recolección) [23:13] * thecrypto consigue bochs para poder simular una red y ayudar con esto [23:13] 0.3 añade un kademliaDatabaseManager [23:13] ahora usamos un BroadcastDatabaseManager [23:13] (alias gnunet ;) [23:14] trivial de implementar y funcional para redes pequeñas, pero necesitamos kademlia para escalar [23:14] 0.4) es funcional, seguro, anónimo, escalable, no harvestable (no susceptible de recolección) [23:14] eso añade enlaces de confianza [23:14] jrand0m, ¿y qué tan difícil es implementar kademlia? [23:14] tengo dos ideas para enlaces de confianza... una es más fácil de implementar y usar [23:15] kademlia probablemente llevará una semana completa [23:15] (para hacerlo bien) [23:15] ten en cuenta que todo esto tiene mucho margen para refactorizar y afinar. Primero apunto a funcional, luego afinamos. [23:16] ¿Estás seguro de que podrás desarrollar y probar tan rápido? [23:16] no estoy seguro de nada [23:16] es solo mi estimación [23:16] co, él logra lo funcional, nosotros probamos [23:16] ¿Seguro? [23:16] (perdón) [23:16] Ryan_Singer: Ya veo. [23:17] * jrand0m <3 la gente que prueba :) [23:17] Cuando dices "nosotros" probamos. ¿Hay sitio para que no-programadores ayuden con las pruebas? [23:17] Myself248> probablemente no hasta 0.4 [23:17] esperemos que nunca llegue al punto en que sea funcional, pero nadie sabe qué coño pasa dentro de la red para que funcione bien (p.ej. freenet) [23:18] una vez que 0.4 esté lista, eso es pre-alfa. cuando sea 0.4, afinaré y refactorizaré y rellenaré huecos para prepararme para 0.5 (alfa) [23:18] Documentar, documentar, documentar. [23:18] ¿se está pensando en monitorización activa de los internos de la red, o es sencillo? [23:18] sí dm, absolutamente [23:18] una de las piezas clave de i2np es la inclusión de estadísticas en las estructuras routerInfo publicadas [23:18] jrand0m: haz un s/0./0.0./ ;) [23:18] las primeras revisiones publicarán estadísticas reales para poder afinar [23:19] revisiones posteriores no publicarán estadísticas o publicarán falsas [23:19] * jrand0m no hace 0.0 [23:19] ok, ya estoy aquí [23:19] wb shardy [23:19] perdón por llegar tarde, me olvidé de que esta ventana estaba abierta, je [23:19] genial. [23:19] ¿hay un documento de más alto nivel describiendo la arquitectura de la red bajo .4? [23:19] ¡que le corten la cabeza! [23:20] Ryan_Singer> hmm, tenía unos docs de visión general hace unos meses que mids y nop espejearon, y está el doc de visión general de i2p [23:20] 0.4 es i2np completo como se describe en la spec, solo que no implementado de forma óptima [23:20] oh y jrand0m, revisaré la optimización de DH por ti [23:20] vale, gracias [23:20] ¿puedo conseguir esos docs? [23:21] la visión general está en (Link: http://www.invisiblenet.net/i2p/i2p_philosophy.pdf)http://www.invisiblenet.net/i2p/i2p_philosophy.pdf [23:21] están en la wiki, creo [23:21] los viejos docs de visión general... hmm [23:21] (las specs de i2p están en (Link: http://wiki.invisiblenet.net/iip-wiki?I2PProtocolSpecs)http://wiki.invisiblenet.net/iip-wiki?I2PProtocolSpecs) [23:21] Están en (Link: www.invisiblenet.net/i2p/.)www.invisiblenet.net/i2p/. [23:21] correcto beefbroth [23:22] aunque hay viejos docs en html con feas imágenes de ms paint de antes mostrando cómo funcionan los tunnels... [23:22] Debería saberlo, los he leído bastante [23:22] jeje [23:22] A menos que esas sean versiones más antiguas o espejos. [23:22] esos archivos en la wiki son 0.9 (la 0.9.1 ha salido para I2NP y estructuras de datos, pero solo incluyen cambios menores) [23:23] jrand0m: el precálculo se ve bien [23:23] genial [23:24] *** pitu (~pitu@anon.iip) se ha unido al canal #iip-dev [23:24] * jrand0m ejecuta el router con java -Dcrypto.dh.precalc.min=3 -Dcrypto.dh.precalc.max=10 -Dcrypto.dh.precalc.delay=5000 -jar C:\dev\i2p\code\router\java\src\router.jar [23:25] ok, esa es la micro-hoja de ruta [23:25] como podéis ver, asumo que el alfa no estará listo para fin de mes. 0.4 probablemente será la primera semana de octubre [23:26] está bien, incluso eso sería la implementación más rápida de una red de este tipo ;) [23:26] lol [23:26] cuando lean las estimaciones de tiempo de jrand0m aquí, recuerden que ha estado bebiendo whisky durante las últimas 4 horas :-P [23:26] je [23:26] ok...¿apps/uso? [23:26] buen whisky además ;) [23:26] ok, apps/uso [23:27] 0.7 en 4 segundos....3...2...1..!! [23:27] voy a por lo fácil aquí: cosas que podemos hacer con 0 o mínimo código nuevo. [23:27] ¿Cómo se supone que vas a programar bien si estás completamente sobrio? [23:27] todo esto hace un uso significativo del estupendo i2ptunnel de mihi [23:27] ChZEROHag: Fácilmente. [23:27] *** mihi ha cambiado el tema del canal #iip-dev a 0.7 en 4 segundos....3...2...1..!! [23:28] usando i2ptunnel, podemos hacer lo siguiente sin escribir código nuevo: [23:28] proxy ww público (usando i2ptunnel + squid) [23:28] * dm se quita el sombrero ante mihi. [23:28] JAP (usando i2ptunnel + JAP) [23:28] no puedes patear culos a través de i2p (tampoco a través de un tunnel...) [23:28] navegar www anónimamente (i2ptunnel + navegador web) [23:28] ejecutar un servidor web i2p (i2ptunnel + httpd) [23:29] Muy bien. Bravo, mihi. [23:29] cvs outproxy (i2ptunnel) [p.ej. cvs outproxy a sourceforge para desarrollo anónimo de freenet] [23:29] cliente cvs, servidor cvs [23:29] app de IM, servidor pop3, servidor imap, opennap [23:29] todo eso es muy fácil [23:29] vale, ahora solo necesitamos i2p :) [23:30] cierto ;) [23:30] ¿no suplanta un servidor web i2p a freenet? :) [23:30] * jrand0m piensa que eso califica como una FAQ que debería responder [23:30] jrand0m, pero también son muy valiosas [23:30] De esa lista, consideraría cvs más importante/útil [23:30] En parte porque deseo permanecer anónimo, pero también porque si se ofrece www anónimo tendrás lusers [23:30] i2p + web no suplanta freenet: freenet añade valor significativo encima de un marco de comunicación anónima: distribución de contenido [23:31] Y por el momento la idea de correo anónimo da miedo :) [23:31] * dm escribe: "no lusers" [23:31] cvs definitivamente está en el top 3 [23:31] creo que si el webserving i2p funciona bien, hay que considerar fusionar las partes DHT/almacenamiento de freenet encima de i2p y así tienes lo mejor de ambos mundos. [23:31] ChZEROHag, si es escalable eso es bueno [23:31] dm: los lusers solo son un problema en las primeras etapas, pero tienden a no usar cvs [23:31] ok, pon mucho hashcash a cualquier cosa de correo anónimo. [23:31] O, si acaso, ni siquiera saben qué es (o que existe) [23:31] Creo que una de las pruebas que hay que hacer es un ataque de prueba a la red. [23:31] sí beefbroth, una vez que i2p haga lo que apuntamos, freenet probablemente se adaptará para usarlo [23:32] Perdón si es off-topic. [23:32] Myself248: solo añade un redireccionador a un remailer anónimo. [23:32] no, eso está definitivamente on-topic co: atacar esta red es clave [23:32] Myself248: hashcash es principalmente para frenar flooding mientras nos vemos obligados a usar el protocolo antiguo que es 'irc' [23:32] No para parar lo que podríamos llamar 'abuso' [23:32] correcto, hashcash está incluso incorporado en i2p para evitar que los mensajes se entreguen a un solo salto a menos que "paguen" [23:33] jrand0m, ¿podríamos ejecutar imap sobre esto fácilmente? [23:33] absolutamente [23:33] impresionante [23:33] imapd con un i2ptunnel apuntando a él, con i2ptunnel en el cliente apuntando al destino de ese tunnel [23:34] y motores de búsqueda de freenet :) [23:34] ftp o varios mensajeros no-jabber darán problemas... [23:34] correcto, las cosas que requieren dos conexiones son más complejas [23:34] jrand0m: ¿hashcash en i2p? [23:34] Te daré la lata con eso cuando termine esto. [23:34] ¿hashcash en i2p? bonito. [23:34] ¡nos estamos adelantando! bueno vale, ¿QUAKE + IIP!!!!!! [23:34] perdón, I2p :) [23:34] lol dm [23:35] A los que tenemos CPUs pequeñas nos pone nerviosos cuando alguien dice hashcash, pero como medida anti-spam lo entiendo. [23:35] dm: Eso es adelantarse *mucho*. [23:35] * mihi es jabber:schierlm@a-message.de ;) [23:35] sí, ChZEROHag: Destination == clave pública de firma (DSA) + clave pública de cifrado (ElGamal) + certificado (o nulo o hashcash(keys)) [23:35] ¿el i2p tunnel es estático o dinámico en el lado cliente? [23:35] beefbroth: de momento todo es estático. pero podrías usar un proxy socks como destino ;) [23:35] Myself248> me llegará un sun ultra1 cojonudo por correo en unas semanas. si una caja a 160Mhz puede, todos pueden [23:35] bueno. hashcash no debería ser terrible ni para CPUs pequeñas. solo si quieres hacer algo once mil millones de veces, deberías notarlo. [23:36] beefbroth: Puede ser dinámico. [23:36] las posibles aplicaciones de lo "fácil" aquí son muy impresionantes [23:36] correcto, mihi [23:36] "eleventy". je [23:36] lo fácil es esencialmente apps 'normales' de internet, pero de forma anónima [23:36] ¿no? [23:36] correcto [23:36] sí [23:36] (quake) [23:37] 0.1 las ejecuta de forma segura, 0.2 de forma anónima, 0.3 escalable, 0.4 no harvestable (no susceptible de recolección) [23:37] (estamos en 0.1 ahora) [23:37] ¿qué quieres decir con no harvestable? [23:37] Disculpa, ¿qué era harvestable otra vez? [23:37] dm: Por desgracia nos han frenado tanto que el tiempo real tras más de 30 años sigue sin ser 'normal' [23:37] Uf. Esperaba que alguien preguntara eso. ;) [23:37] registrable [23:37] harvesting significa que un atacante activo puede ejecutar un router, enterarse de muchos otros routers ("cosecharlos"), y mandar a los matones a tirarle la puerta a la gente [23:38] oh, como puedes hacer con gnutella. :) [23:38] matones tipo servicio secreto [23:38] exacto [23:39] ah, entendido. [23:39] ok, sí, esa es la micro-hoja de ruta. [23:40] ahora, ¿estoy siendo estúpido llamando a esto 0.x en vez de 0.0.x? ¿debería 1.0 ser "perfecto" o 1.0 debería ser funcional y seguro? [23:40] jrand0m, ¿y cuándo veremos la .4? [23:40] 0.4 probablemente a dos semanas [23:40] * jrand0m se tomará una semana libre (más o menos) a mediados de octubre porque me viene gente de visita [23:40] *** Desconexión: dm (EOF From client) [23:40] 1.0 debería ser estable. [23:40] Que 1.0 sea funcional y segura. [23:40] de acuerdo con co [23:41] 1.0 debería ser funcional, estable y segura [23:41] jrand0m: Mi filosofía sobre números de versión es: en caso de duda, copia Linux [23:41] 5.0 puede ser "perfecta". La gente del software libre le tiene demasiado miedo a la inflación de versiones. [23:41] vale [23:41] jrand0m, la v1 de las cosas nunca es perfecta :) [23:41] *** dm (~gj@anon.iip) se ha unido al canal #iip-dev [23:41] la gente tampoco espera que sean perfectas [23:41] ¿me perdí la 1.0? [23:41] mrflibble: La gente no espera que ningún software sea perfecto. La gente usa windows. [23:41] este software será GPL o LGPL? [23:41] genial, ya me han dado caña por que la 1.0 no sea perfecta aún [23:41] Eso no significa que no deba serlo. [23:41] buen punto, ChZEROHag [23:42] ah mierda, sí me la perdí.. [23:42] dm: deja de bromear [23:42] sip, te la perdiste [23:42] el router es GPL. la librería de cliente en Java actualmente es GPL, pero soy flexible. thecrypto y yo somos los dueños completos de todo menos una parte (la implementación AES de Cryptix, que es MIT) [23:42] vale vale, lo siento :( [23:42] en realidad, me retracto [23:42] también usé el Base64.java de freenet [23:43] ¿seguimos en el punto 0.3 Apps? [23:43] así que base64 es GPL :) [23:43] y el cliente de IM será GPL [23:43] oh sí, estamos en 0.3, ¿no? [23:43] en cuanto me ponga a meter comentarios en el código [23:43] *** UserX_ (~User@anon.iip) se ha unido al canal #iip-dev [23:43] jeje thecrypto [23:43] GPL me suena bien [23:43] w0ah, 23 usuarios [23:43] estamos en el punto 6.02E23 de la agenda, cháchara aleatoria. :) [23:43] jrand0m, si tienes tiempo, quiero hablar contigo de licencias y posibles consultorías [23:43] bien, Ryan_Singer [23:43] Aunque como alguien (¿Fillament?) señaló: si alguien rompe la licencia, ¿cómo va a hacer algo al respecto una persona anónima? [23:43] jrand0m: 22 ;) [23:43] ChZEROHag> lee mi licencia en flinks ;) [23:43] necesitamos un sistema judicial anónimo. [23:44] * mihi está aquí dos veces [23:44] Myself248> se llama yodel ;) [23:44] "El tribunal oye ahora el expediente número 34534, J. Doe v. J. Doe" [23:44] ChZEROHag, la razón por la que pregunto es para que las corporaciones puedan usar este software para seguridad contra espionaje industrial [23:44] El Naming server estará bajo GPL también. [23:44] lol [23:44] "Alguacil, ¿no son las mismas partes que en los últimos 34533 casos que hemos oído?" [23:44] bueno [23:45] siempre está la idea de que si quieres que la gente use de verdad tu protocolo, y no te preocupa el dinero, simplemente hazlo completamente abierto. ni siquiera restringido por gpl. [23:45] shardy: ¿Quieres decir dominio público? [23:45] creo que ese era el pie de co al punto 0.4 de la agenda :-P [23:45] shardy> las especificaciones son públicas y abiertas. No he reclamado copyright sobre las specs. [23:45] shardy, no, nos gustaría que el trabajo sobre el protocolo siguiera disponible [23:45] dominio público, licencia bsd, licencia "haz lo que quieras, solo danos crédito por favor", etc. [23:45] el código del router es GPL. una implementación de API de cliente en Java es GPL [23:46] mira el protocolo liberty.... (Link: http://projectliberty.org)http://projectliberty.org [23:46] jrand0m: ok, genial. entendido. [23:46] * jrand0m ha pensado en licencias "no uso gubernamental" ;) [23:46] ok, la razón por la que metí 3.0) apps en la lista es esta [23:46] necesitamos ayuda. [23:46] ¿ayuda con qué? [23:46] i2ptunnel es buen código. el router de i2p será buen código. [23:47] lo que necesitamos es que la gente empiece a averiguar las tuercas y tornillos de la ingeniería de releases [23:47] ¿por qué necesitas apps si puedes simplemente usar i2ptunner? [23:47] jrand0m: ¿cómo dices? [23:47] o sea, cómo empaquetar algo que Pepe Promedio pueda descargar y navegar la web [23:47] dm: ¿Por qué necesitas apps si puedes simplemente usar telnet? [23:47] ¿qué? [23:47] * dm se rasca la cabeza. [23:47] err, ¿hay algo además de telnet? [23:48] * jrand0m cree que ese es el punto de ChZEROHag, dm ;) [23:48] *** Myself248 ahora se llama myself248 [23:48] *** Desconexión: thecrypto (Ping timeout) [23:48] dm: Usar i2ptunnel sería como tener un coche que funciona y arrastrarlo en una carretilla [23:48] ok, eso es todo. Solo quería mencionarlo por si la gente tiene tiempo libre :) [23:48] ok, 4.0) [23:48] naming service [23:48] Veo que intenta hacer un punto. [23:48] hola co, ¿cómo va eso? :) [23:48] El naming server debe ser GPL, ya que al menos la implementación Java usa código de la librería de cliente para contactar routers. [23:49] pero acabamos de pasar 20 minutos diciendo: ¡I2Ptunnel + servidor web!, ¡I2Ptunnel + quake! ;) [23:49] O, en términos informáticos, como hacer todo tu internet con telnet en vez de directamente en la pila ip [23:49] No hice mucho la semana pasada. Publiqué la API de cliente, que también necesita trabajo. [23:49] i2ptunnel es una solución interina [23:49] Pero tendré tiempo esta semana para empezar a implementar el naming server. [23:49] bien [23:49] ¿dónde está la API de cliente de nuevo? [23:50] en la lista de correo ;) [23:50] Una de sus suposiciones es que los destinos pueden codificarse en base64, por eso pregunté eso antes. [23:50] ChZEROHag> en cierto modo es interino [23:50] * jrand0m !se da un golpe [23:50] *** thecrypto (~thecrypto@anon.iip) se ha unido al canal #iip-dev [23:50] ¡también lo es TCP! [23:50] *** yodel (yodel@anon.iip) se ha unido al canal #iip-dev [23:50] hola yodel [23:50] ¿cómo se verán las convenciones de nombres? ¿será algo con lo que Pepe Medio se pueda identificar (p.ej. (Link: www.somthing.com)www.somthing.com o (Link: www.something.i2p)www.something.i2p para cosas http/web)? [23:50] Pondré la especificación del naming service y la API de cliente en CVS. [23:50] bienvenido de vuelta, thecrypto [23:50] Estas ya se habrán tratado antes, pero ¿cómo proporcionará el ns nombres únicos de forma justa? [23:50] * mihi quiere tener *.mihi.iip ;) [23:50] beefbroth> ¿con el naming service o sin él? [23:50] jeje, mihi [23:50] evitando el squatting, etc., que ha plagado el DNS [23:50] ¿alguien puede enviarme lo que pasó? [23:51] jrand0m: con. creo que sin sería una larga cadena de números. [23:51] ChZEROHag: Te registrarás con un grupo de naming servers, luego usarás el nombre de ese grupo para identificarte. [23:51] Como en IM.beefbroth.mygroup si das servicio IM. [23:51] ups, s/iip/i2p [23:51] *** godmode0_ (~mode@anon.iip) se ha unido al canal #iip-dev [23:51] *** Desconexión: godmode0 (EOF From client) [23:51] ChZEROHag> el naming service de co tiene grupos de confianza, donde cada grupo gestiona un nombre de grupo (tld). tú eliges qué grupos gestionan cada tld [23:51] Sí, será posible que alguien registre el usuario beefbroth con group2. [23:51] en los 4 minutos que me fui [23:52] co: ¿Entonces el único problema es la unicidad de .mygroup? [23:52] ¿Y quién se queda el grupo 'com'? :-) [23:52] y eso lo selecciona el cliente [23:52] ChZEROHag: i2p no es COMercial [23:52] (p.ej. le dices a tu lib cliente ns "el grupo '.com' es el grupo 0123ff33aefcbb34fe [23:52] Odio sugerirlo, pero casi creo que los grupos deberían ser por defecto de 3 letras para preservar la ilusión de que es similar a la web normal [23:52] ChZEROHag: No estoy seguro de quién se queda el grupo "com". [23:52] Buena pregunta. [23:53] beefbroth: excepto que la "web normal" ya no son solo 3 letras los tlds [23:53] beefbroth: o añade un .i2p a todas las direcciones. [23:53] beefbroth: Esa ilusión solo está presente en América [23:53] tlds. [23:53] para empezar, quizá solo queramos tener inicialmente un grupo de naming servers, ".i2p" [23:53] beefbroth: El software del naming server permite hasta 32 letras. [23:53] En otros lugares usamos los códigos de país de 2 letras que nos dieron [23:53] .us también se usa en América. [23:53] En realidad, yo quería que el primer grupo fuera "test". [23:53] como .info y .name [23:53] je, ok [23:54] shardy: sí, por unas 5 personas. [23:54] Pero quizá esto es un desahogo para otro momento :) [23:54] en realidad... [23:54] hay incluso un .museum [23:54] jrand0m, usar .12p suena bien [23:54] me topé el otro día con un DNS distribuido basado en JXTA [23:54] ChZEROHag: Pero el punto es que si no te gustan las personas que gestionan el grupo "com", puedes establecer el grupo "com2" y ejecutar sus servidores (y registrarte en él). [23:55] Sí, esa parte tiene todo el sentido [23:55] ChZEROHag: (Link: http://www.nic.us/press/audio/dotus-mayEM.wav)http://www.nic.us/press/audio/dotus-mayEM.wav ;) [23:55] co> (Link: http://wiki.java.net/bin/view/Jxta/DisDNS)http://wiki.java.net/bin/view/Jxta/DisDNS es un wiki de DNS distribuido, aunque está muy verde y no trata las cuestiones realmente duras [23:55] ChZEROHag: Al registrarte tu nombre de usuario con un grupo, sí. [23:56] jrand0m: Lo miraré después de la reunión. [23:56] jxta ejecuta naming servers desde puntos de rendezvous [23:56] mihi: ¿qué es eso? [23:56] así que es posible que alguien intente atacar el sistema NS imitando al grupo de naming servers i2p ya existente [23:57] *** Desconexión: jeremiah (Ping timeout) [23:57] beefbroth: No lo creo. [23:57] ChZEROHag: escúchalo. por qué xxx millones de americanos prefieren .us sobre .com [23:57] 68 millones [23:57] Según lo imagino, la gente que monte grupos anunciará esos grupos. [23:57] ¿imitando? no pueden imitar ya que los servidores del grupo se autentican con sistemas de clave pública [23:58] sin embargo, si los grupos permiten que miembros no confiables se unan al grupo, se pueden tomar al vuelo fácilmente. [23:58] pero ¿cómo se hace el intercambio de claves? [23:58] La gente que venga después se encontrará con el problema de que el grupo ya está establecido, y los archivos de configuración del software del cliente contienen los destinos del grupo anterior. [23:58] mihi: Bueno, siempre he dicho que tiene sentido preferirlo, patriotismo y tal, solo que nunca lo he visto realmente. [23:58] ¿qué pasa si dos grupos de naming servers afirman ambos resolver el grupo .i2p? [23:58] Buena pregunta, no obstante, y lo volveré a pensar con cuidado. [23:58] mihi: en fin, le echaré una escucha [23:58] shardy> no hay intercambio de claves: publicación de claves [23:58] ya veo, buen punto [23:58] co: Sí, eso es otra cosa a la que intentaba llegar [23:58] pero las claves aún pueden interceptarse si se publican online [23:58] beefbroth> nadie afirma nada. tu cliente dice "i2p == [dest1, dest2, dest]" [23:59] lo que necesitamos es un sistema de dns basado en confianza :) [23:59] así puedes mandar una consulta por el nombre y obtener una lista de respuestas... y luego ir con la confiable [23:59] Gracias por sacar esto. [23:59] shardy> ah, creo que entiendo la confusión. creo que el naming service querrá venir con un conjunto de destinos out of band (o sea, empaquetado con la instalación) [23:59] Sí, tenemos uno: todos confían en IANA (o como se llamen) o si no. [23:59] * shardy se agacha [23:59] :-D [23:59] lo están intentando con dnssec, pero claro, eso no es anónimo [00:00] lo que hace este naming service es alejarse de root servers [00:00] ¿siempre podrías tener una página de inicio de i2p que liste grupos y autoridades de nombres activas? [00:00] jrand0m: ok. solo señalo que aún puede interceptarse sin importar lo que hagas, a menos que haya un canal físicamente seguro para transmitir inicialmente esas claves... [00:00] shardy: creo que cubrí el intercambio de claves en la spec. Si no, dímelo. [00:00] pero empaquetarlo OOB lo mejora [00:00] co: lo revisaré. [00:00] shardy> oh, claro. sí, la gente debe poder confiar en el código que descarga [00:00] beefbroth: Ciertamente. [00:01] aah eso me recuerda [00:01] beefbroth> sí, esa es con toda seguridad una de las primeras apps que se implementarán: un servidor web i2p con BBS & wiki a los que la gente pueda acceder a través de i2p [00:01] Debería crear una clave gpg para mi iipmail [00:01] *** yodel ha salido de #iip-dev [00:01] * ChZEROHag lo hace mientras pasa lo no emocionante [00:01] jeje ok [00:01] Por favor, entended que la especificación del naming server sigue abierta a sugerencias de mejora. [00:02] Creo que voy a llevarme todas las specs en el vuelo a toorcon... me dará tiempo para leerlas [00:02] No afirmo que sea perfecta ni final en este momento. [00:02] je, espero que sea un vuelo largo [00:02] y es más productivo que jugar a fft advance todo el rato, je [00:02] * jrand0m ha comprobado que la crítica fluye más fácilmente una vez que hay código que implementa specs [00:02] *** godmode0_ ahora se llama godmode0 [00:02] Y tengo que escribir el código. [00:02] Creo que podemos pasar al siguiente tema ahora. [00:02] ok [00:02] 5.0) IM [00:03] hola thecrypto [00:03] los nombres no deberían poder chocar con representaciones base64. [00:03] hola [00:03] ok [00:03] y el naming server debería devolver direcciones base64 de forma transparente tal cual. [00:03] mihi: Muy bien, intentaré evitar ese problema. [00:03] primero, como mi e-mail no funciona otra vez (malditos spammers) [00:03] (todas las clases que extienden DataStructure tienen String .toBase64() y .fromBase64(InputStream) ) [00:03] responderé aquí a las preguntas de whit sobre mi sistema [00:04] * jrand0m carga el email de co [00:04] jrandom? ¿por qué Inputstream y no Reader? [00:04] network es lo primero que se me vino a la mente, haces conexiones sobre la red i2p, es muy p2p así que la llamé una red [00:04] si quieres un Reader, solo usa un InputStreamReader, bribón [00:04] base64 son caracteres, no bytes en mi opinión. [00:04] jrand0m: ¿IM == Instant Messaging? [00:04] sí, ChZEROHag [00:04] si a la gente no le gusta eso, dadme una sugerencia de cómo llamarlo [00:05] jabber? [00:05] IM == mi propia red de IM distribuida [00:05] deberías llamarlo "bob" [00:05] i2p im es una red del mismo modo que aim es una red, o kazaa es una red, todas corriendo sobre tcp/ip o udp/ip [00:05] ¿Qué tal aplicación de IM? [00:05] (anonabber) [00:05] jrand0m: Ya veo. [00:05] jabber requiere un servidor centralizado [00:05] la terminología me da igual. me gusta la idea de shardy [00:05] Nada "requiere" un servidor centralizado [00:05] y no puedo deletrear hoy, así que tened paciencia [00:05] Es solo cómo se escriben las cosas [00:05] (aunque prefiero Betty) [00:05] ¿así que quieres que lo llame I2PIM bob? [00:05] :) [00:05] ¿qué tal wilma? [00:05] fred está cogido, eso sí [00:05] ¿Qué tal IM distribuido? [00:05] DIM, je [00:05] Pero entonces, ¿aplicación de IM distribuido? [00:05] AIM, anonymous Instant messaging! [00:05] mal acrónimo :) [00:06] y así podemos apoderarnos de AOL. [00:06] ohh ya me veo cuando AOL se entere [00:06] dm: Eso realmente cabrearía a ciertos capullos. Me gusta. [00:06] je, hazlo [00:06] thecrypto, ¿podremos implementar IM de forma descentralizada, o tendrá que ser centralizado? [00:06] dm: Buena idea. Apoyaría ese acrónimo. [00:06] por lo que he leído en los docs de thecrypto, el IM es totalmente descentralizado [00:06] estoy implementando un IM distribuido, está en el CVS [00:06] Yo votaría en contra de cualquier cosa que vaya a confundir a la gente [00:07] AOL TimeWarner cambió su nombre a Time Warner [00:07] dm: Eso realmente cabrearía a ciertos capullos. Me gusta. [00:07] ser anónimo de forma transparente no es útil si la gente no entiende qué es anónimo. [00:08] Oh espera, tengo algo así en papel [00:08] Me gusta la idea de thecrypto [00:08] lo que busco es en qué "network" corre I2PIM [00:08] enseñar a la gente a protegerse es algo realmente importante [00:08] pensaba en Presence System (sistema de presencia)? [00:08] promocionad el aspecto de seguridad de lo anónimo [00:08] I2M (instant 2 messaging) [00:08] Aunque solo lo llamé XIrc [00:09] tú mandas, thecrypto, lo que te funcione ;) [00:09] y en el logo de I2M, el 2 será muy pequeño :) [00:09] bueno, I2P se expande a Invisible ... ¿jrand0m? [00:09] Lo principal que me gustaba era que todos se llamaban Borg y chateaban en Colectivos [00:09] i2p = i^2p (Invisible Internet Project) [00:09] Pensé que la P era de protocolo. [00:09] eso también [00:09] bueno, en realidad, no [00:10] así que es Invisible Internet Project Instant Messaging [00:10] i2np es el protocolo [00:10] i2p es el proyecto [00:10] i2cp es el protocolo cliente [00:10] Yo pensaba que era por "poop" [00:10] thecrypto: Tienes razón, el nombre no importa demasiado. [00:10] i2m = i^2m = instant invisible messaging [00:10] así que siguiente tema [00:10] ok... estamos derivando del orden... ¿hemos terminado con IM? [00:10] si "bob" no es suficiente, podemos llamarlo "jimbob" [00:10] 0k, 6.0) administrivia [00:10] no, aún hay más [00:11] perdón [00:11] Es administrivia. [00:11] no, es IM [00:11] nop> dame root. Necesito instalar acceso anónimo a cvs, bugzilla y cvsweb. [00:11] no había terminado [00:11] :) [00:11] ¡rebobinemos! [00:11] * jrand0m se echa atrás [00:11] 5.1) thecrypto v2 [00:11] ¿qué más hay en IM, thecrypto? [00:12] thecrypto: continúa; /me lo hizo igual cuando me perdí el naming service [00:12] ok, el tema de cómo se comunican las presencias es diferente [00:12] no todo el mundo conoce a todo el mundo [00:12] prácticamente no hay forma de "acoso" [00:12] tienes que pedir que te muestren [00:13] en redes anónimas, normalmente nadie conoce a nadie ;) [00:13] (mientras el Destination de la gente sea aleatorio) [00:13] *** Desconexión: pitu (Terminal perdida) [00:13] ¿qué quieres decir? [00:13] Alicia quiere hablar con Bob [00:13] mihi> aunque el naming service permite buscar por servicio [00:13] (servicio siendo IM, www, etc.) [00:13] Alicia encuentra de algún modo el destino de IM de Bob, probablemente por el naming service [00:14] Entonces Alicia envía un mensaje al destino de IM de Bob [00:14] ¿sí? [00:14] él recibe un mensajito diciendo "Alicia ha intentado contactarte"; si quiere hablar con ella, puede, o puede ignorarlo [00:15] pero no hay servidor central de presencia, Alicia también puede ver su mensaje desaparecer y no obtener respuesta [00:15] ok, como MSN entonces? [00:15] (aunque Alicia puede saber que Bob la ignoró) [00:15] y Alicia no puede simplemente poner a Bob en su buddy list y esperarle [00:15] thecrypto, ok... ¿en qué difiere de Y!, MSN o AIM bien configurados, aparte de no tener servidor central? [00:15] porque Bob tiene que enviarle un mensaje a Alicia para verla conectarse [00:15] oh [00:15] ok, no cambia nada en cuanto al usuario, pero veo lo que quieres decir. [00:16] thecrypto> no del todo [00:16] entendido... sin funcionalidad de buddylist... [00:16] oh, bueno, hmm, técnicamente... [00:16] Ryan_Singer: no, sigue habiendo buddy list [00:16] ¿cómo envía Alicia un mensaje a Bob si no puede verlo? [00:16] ¿tienes que probar contactos aleatorios por si están? [00:16] Bob tiene que enviar un mensaje al router de Alicia, lo cual puede pasar sin que Alicia lo sepa [00:16] Alicia puede probar aleatoriamente [00:17] ¿eso no es muy poco conveniente? te conectas y tienes que enviar a todos un mensaje diciendo (¿estás?, ¿estás?) [00:17] thecrypto: ¿no puede un usuario "notificar" a todos sus contactos cuando se conecta enviándoles un mensaje? ¿o es eso lo que acabas de decir? [00:17] * co observa que puede haber dos Bob registrados con dos grupos diferentes de naming server. [00:17] beefbroth: justo eso digo [00:17] ok, así que similar al esquema actual pero eres invisible por defecto. [00:17] entendido. [00:18] dm: no, es al revés, cuando te conectas, envías un mensaje a todos diciendo "Estoy conectado, estoy conectado"; si recibes un mensaje diciendo "Estoy conectado", lo devuelves [00:18] si quieres [00:18] Así el usuario controla quién puede verlo. [00:18] así que Alicia puede ponerte en su buddy list y te llegará un mensaje cuando se conecte diciendo "Alicia te ha puesto en su buddy list, ¿quieres notificarle tu presencia?" [00:19] cuando te desconectas, ¿primero envías un mensaje que dice "Me voy a desconectar"? [00:19] ok, así la experiencia de IM es la misma que ahora. Solo quería confirmarlo. [00:19] si Bob tiene a Alicia en su buddy list y Bob recibe un mensaje Online de Alicia, la respuesta es automática [00:19] Podría "pinguear" al otro usuario de IM cada cierto tiempo para asegurar que no hubo una desconexión involuntaria [00:19] Si Bob no tiene a Alicia en su buddy list y Bob recibe un mensaje online de Alicia, se le pregunta al usuario [00:19] ok, eso es solo una forma de evitar tener un servidor, pero la cuestión es si las apps estarán configuradas por defecto para enviar un "Estoy conectado" cuando alguien entra. [00:20] con suerte [00:20] Ryan_Singer> o simplemente tener un ping periódico "Sigo conectado" [00:20] (y ping perdido == desconectado) [00:20] ¿algo tipo keep-alive? [00:20] Podría "pinguear" al otro usuario de IM cada cierto tiempo para asegurar que no hubo una desconexión involuntaria [00:20] si Bob tiene a Alicia en su buddy list y Bob recibe un mensaje Online de Alicia, la respuesta es automática [00:20] je [00:20] Si Bob no tiene a Alicia en su buddy list y Bob recibe un mensaje online de Alicia, se le pregunta al usuario [00:21] ok, así la experiencia de IM es la misma que ahora. Solo quería confirmarlo. [00:21] solo que ahora tienes confirmación en los añadidos a la buddy list [00:21] que creo que solo ICQ tiene [00:21] ¿será la app de IM independiente o podré usar trillian? [00:21] sí, así funciona MSN. [00:21] [etc] [00:21] thecrypto: ICQ solo finge requerir confirmación [00:21] dm: error. no tendrás que lidiar con MSN, Y! y AIM cambiando sus protocolos y dejando fuera a la gente cada pocos meses :) [00:22] jrand0m: haré una spec, trillian puede darme una interfaz de plugin o pueden escribir la suya [00:22] escribiré un plugin para gaim al menos [00:22] junto con un cliente independiente [00:22] genial [00:22] que esté hecho para usarse con la red [00:22] ¿gaim soporta transferencia de archivos o ese será el beneficio del cliente i2pim? [00:22] thecrypto: quizá quieras avisar a los desarrolladores de kopete solo para que lo sepan [00:22] * jrand0m muestra su despiste [00:23] intentaré que el plugin de gaim funcione tan bien como el independiente, pero no lo sé [00:23] thecrypto: Tengamos primero la aplicación independiente. [00:23] la transferencia de archivos de gaim creo que solo funciona en AIM [00:23] así que quizá requiera trabajarlo para meterlo en un plugin [00:23] ok... creo que todos entendemos esto ahora... ¿más temas de IM? [00:24] y lo último de co [00:24] gaim sufre problemas con sus transferencias de IM para gente usando NAT [00:24] más de una persona puede tener el mismo nombre [00:24] tendrán destinos únicos [00:24] *** Desconexión: mihi (Ping timeout) [00:24] Muy bien. [00:24] * mihi_backup sigue aquí... [00:24] pero alguien no puede suplantar [00:25] je, bien ahí, mihi_backup [00:25] Si usas el naming server, será "Bob del group1" y "Bob del group2". [00:25] Con destinos únicos. [00:25] correcto, thecrypto. los nombres son arbitrarios. un poco como dns ;) [00:25] *** mihi (~none@anon.iip) se ha unido al canal #iip-dev [00:25] además el propio cliente de IM puede opcionalmente verificar "Oye, este IM que recibiste era de alguien llamado Bob, el destino del Bob en tu lista es diferente, ¿aceptar mensaje?" [00:26] mihi: tu backup habló mientras no estabas. [00:26] si la persona intenta suplantar a Bob, lo sabrás; si no, puedes ponerle un alias [00:26] lo sé... [00:26] "¿alguien llamado bob"? ¿quién lo dice? ¿él mismo se llama bob? ¿o algún grupo lo llama bob? ¿o tú llamas bob a su destino? [00:26] hay un campo en la presencia llamado name [00:26] eso estoy mirando [00:27] * jrand0m le gusta cómo ICQ gestiona ese problema: todo el mundo es un número y simplemente aliasas números localmente a nombres [00:27] Por cierto, ¿hago los nombres de entidad del NS insensibles a mayúsculas/minúsculas? [00:27] probablemente, co [00:27] las cosas base64 deben seguir siendo sensibles a mayúsculas/minúsculas ;) [00:27] * jrand0m no quiere que la gente suplante Jrand0m [00:27] mihi: Nombres de entidad, no destinos. [00:27] claro, claro, mihi [00:28] (bueno, que suplanten jrand0m todo lo que quieran. solo quiero de vuelta jrandom) [00:28] Continúa, thecrypto. [00:28] *** Desconexión: UserX_ (Ping timeout) [00:28] eso es todo lo que tengo [00:28] por fin :) [00:28] co: deberías poder colocar un destino donde puedas colocar un nombre de entidad. [00:28] como con los nombres dns y las IPs [00:28] mihi: Buen punto. Lo añadiré a la especificación. [00:28] jrand0m: en realidad es como ICQ salvo que tú le dices a la gente cuál te gustaría que fuera tu alias [00:29] que creo que ya lo hacen [00:29] La idea, eso sí, es que sea mucho más corto teclear nombres que destinos. [00:29] mihi> el naming service solo convierte nombres a destinos: si pides al naming service el destino de un destino, debería devolverlo muy muy rápido [00:29] ok chicos... tengo una reunión... jrand0m, mándame anonymail [00:29] ok, adiós [00:29] jrand0m: sí, y debería devolver ese destino en sí, y no "no encontrado" [00:30] correcto [00:30] *** Desconexión: Ryan_Singer ((null)) [00:30] ok. estamos en 7.0) [00:30] preguntas [00:30] hola [00:30] ¿Qué hay de 6.0) Administrivia? [00:31] ¿O ya terminaste con eso? [00:31] 6.0 administrivia era solo yo dándole la lata a nop para que me dé root y poner para ustedes: acceso anónimo a cvs, bugzilla y una interfaz cvsweb :) [00:31] ¿habrá responsables para trabajar en el empaquetado de las alpha, beta y releases para Win/Mac/SuSE/RehHat/Debian para acelerar la adopción? [00:32] ¿te ofreces voluntario? [00:32] (o sea sí, sería genial) [00:32] Si aprendo a hacer un paquete para mi distribución :) [00:32] ¿qué distro usas? [00:33] Por lo que recuerdo, los desarrolladores de IIP querían reimplementar IIP sobre I2P. Si I2P cumple sus promesas de anonimato, ¿no sería más simple tener IRC sobre I2P? [00:33] Pero mi punto es que mucha gente depende de eso. Facilitaría que la gente adopte. Freenet sufre por falta de mantenedores activos. [00:33] jr es buen gestor :) [00:33] sí, co, más simple, pero no tan escalable [00:33] *** UserX_ (~User@anon.iip) se ha unido al canal #iip-dev [00:33] sí, pero a algunos no les gusta IRC [00:34] beefbroth> tienes toda la razón, hay mucho trabajo por hacer y necesito dormir al menos 4 horas al día [00:34] thecrypto: Buen punto, aunque I2P anonimizará las direcciones IP de la gente. [00:34] jrand0m: puedo ayudar a empaquetar cuando las cosas estén listas. Creo que es una gran manera de que algunos no desarrolladores con un poco de pericia técnica contribuyan. [00:34] genial, beefbroth [00:34] si tenemos IM e IRC, más adopción [00:35] co: el problema es que con irc hay algo que cerrar (servidores). [00:35] *** jeremiah (~jeremiah@anon.iip) se ha unido al canal #iip-dev [00:35] thecrypto> adopción instantánea: opennap [00:35] es más fácil aprender a hacer paquetes que aprender estructuras de datos de i2p. es una forma fácil para que unos cuantos se involucren [00:35] IRC es bastante duro, ¿no? [00:35] IRC distribuido, quiero decir... [00:35] mihi: Por supuesto. Lo olvidé. Gracias por recordármelo. Objeción retirada. [00:36] dm> irc puede tener múltiples servidores irc (como efnet, etc.) que se hablen entre sí a través de i2p [00:36] ¿te refieres a un protocolo de chat "tipo irc"? [00:36] ¿o adaptar irc? [00:36] con gente hablándose entre sí tunelando a uno de los servidores irc vía i2p [00:36] irc con servidores detrás de i2p está bien, digo sin servidores. No importa, supongo. [00:37] dm> correcto, se puede hacer mucho mejor sin servidores, y se ha pensado algo, pero nada realmente sólido (que yo sepa) [00:38] en fin, es off-topic. [00:38] ¡continúen! [00:38] ¿más preguntas? [00:38] ¿alguien ha leído las specs ya? ;) [00:38] (aparte de beefbroth, que se las sabe de memoria) [00:38] * dm mira al techo. [00:39] ok, entonces reunión de 100 minutos [00:39] las estoy leyendo, cuando necesito algo :) [00:39] ¡specs! [00:39] ¡Eso se me olvidó! [00:39] je [00:40] *** dm ha cambiado el tema del canal #iip-dev a topic1 [00:40] * jrand0m carga y... [00:40] * jrand0m *baf*s la reunión para terminar