 Bueno, bienvenidas a la charla sobre Brier, aquí Guy, haré lo que pueda para hacer la traducción al español. Y aquí está presentando la charla sobre cómo comunicarnos para cuando hay alguna, alguna, de alguna forma alguna persona quiere interpretar o escuchar nuestras comunicaciones. Aquí presentamos a un activista del software libre, parte del equipo de Brier, programador que vive en Brasil. ¿Cómo es que no estás bronceado, le pregunta? Bueno, un gran aplauso, aplausos del público para la presentación de Brier. Muchas gracias para venir aquí, espero que hayan tenido un congreso genial. Y gracias por venir a escuchar la charla de Brier. ¿Qué es Brier? Esencialmente es una herramienta de comunicación, se podría decir. Se viene desarrollando desde 2012, o sea hace bastante tiempo. Y algunas de ustedes deben estar pensando, uff, otra herramienta de comunicación, no tenemos ya suficientes. Y estoy totalmente de acuerdo con vosotras. ¿Cuántas de vosotras tienen 5 herramientas de comunicación en sus smartphones? Sí, veo un quinto de la audiencia levantando la mano. Entonces, les recomiendo que no prueben ninguna nueva herramienta, menos que sea realmente diferente del resto. Y la diferencia en esto es, perdón, antes de comenzar con esto, quería decir que Brier está enfocado en la seguridad y la resiliencia. Y esta parte de la resiliencia va a ser importante. Entonces, ¿cuáles son las amenazas en la comunicación? La típica es escuchas. Ellas quieren escuchar nuestros mensajes, pero nosotros queremos confidencialidad. Entonces, las escuchas se resolvieron básicamente por encripción. Se encripta en la persona que lo envía y lo decrypta la persona que lo recibe y nadie en el medio puede entender el contenido de esa conversación. Últimamente se ha avanzado mucho en este sentido, de forma que la gente ya no necesita entender de llaves ni de nada, sino que simplemente funciona. Lo que falta todavía es adopción, especialmente me refiero a Telegram y Facebook Messenger. En Telegram no es la opción por defecto y espero que eso cambie en el futuro. El siguiente problema es la metadata. Ya lo escucharon en todo el Congreso, así que no lo describiré en detalle. Pero el momento de la comunicación, con quién te comunicas, y esto es básicamente todo lo que necesitas haber tu adversario, porque dice mucho sobre la conversación, es una información muy valiosa. Este problema fue ignorado mayormente, desafortunadamente. Hay algunos proyectos que intentan hacer algo al respecto, pero es un tema muy importante. Y si no me creen, a mí, quizás le crean a esta persona. No tenemos audio. Ah, ahí se escucha. Volvemos, volvemos a empezar. Primero, ¿qué es lo que se puede hacer con la metadata? Es absolutamente correcto lo que dijo la persona. Matamos gente basada en la metadata, pero no es lo que hacemos con esta metadata. Afortunadamente. Para explicar, para quien no lo escuchó, es matamos gente basándonos en metadata. Estaba hablando de registros telefónicos, domésticos y extranjeros. Y, aclaro, no matamos a estadounidenses basándonos en metadata, solo a el resto del mundo. Entonces, en estas aplicaciones se manda toda la lista de teléfonos al servidor, y con lo cual el servidor tiene toda la metadata de toda la gente que está comunicando. Pero también, entonces esto es un problema, pero también se puede usar ataques basados en el momento de la comunicación. Además de la metadata, hay también el problema de la censura y bloqueos. Entonces básicamente bloquean nuestras cosas. Este es un ejemplo de China que pasa cada tanto. Y por supuesto, podemos darle la vuelta a esto, pero esto es para la gente más técnica, no es que las grandes masas pueden hacer circunvención. Y esto pasa en todos lados, en Turquía, en Brasil. En Brasil están felices de bloquear WhatsApp cada tanto, aunque la gente use WhatsApp para un montón de cosas importantes. Y eso realmente es una pena, porque la mensajería es realmente importante. Esto es mucho peor, porque en Estados Unidos, en Alemania, se está discutiendo seriamente a pagar internet completamente. Y esto es realmente malo. Esto significa simplemente desconectar el cable y perder completamente todo el acceso. Afortunadamente, hay gente que entiende que dependemos económicamente del internet y que entonces la idea de desconectarla es mala por otros motivos. La dependencia en internet es bastante fuerte. Entonces, si se desconecta en internet, la gente no va... Hay muchos ejemplos de apagones de internet, desde el 2010 hasta el presente. Y esto es... estamos hablando de cuando el gobierno desconecta el cable. Pero también puede pasar de que haya una catástrofe natural que se rompa toda la infraestructura, no hay más electricidad o no hay más uplink, no hay más conexiones de internet. Y todavía necesitamos coordinarnos, comunicarnos, necesitamos encontrar gente. Otro escenario posible en el cual no habría internet es un apocalipsis zombie. Entonces, si tu herramienta no funciona, en el caso de un ataque zombie, entonces probablemente tu herramienta no sea muy buena y a plazos del público se escuchan. Entonces, vamos a mirar un poco más en detalle Brear y cómo Brear intenta resolver estos problemas. Es un trabajo en progreso, podrían pensarlo como una investigación sobre cómo atacar estos problemas. Y la principal diferencia es que Brear no usa un server para pasar las comunicaciones entre las personas. Y esta es la forma en la cual todas las aplicaciones que tienen en sus móviles funcionan. Tú mandas un mensaje, eso llega a un servidor que sabe a quién hablas y cuándo te comunicas. Y si el server no está disponible, la comunicación no funciona. Y por eso Brear quita este servidor del medio y conecta a la gente pierto pier. Y se escuchan a plazos del público. Entonces lo genial de esto es que aunque no tengas conexión al servidor, puedes comunicarte con gente. Y con los smartphones de vendía puedes usar Radio Bluetooth o la Radio Wi-Fi. Entonces la gente se puede encontrar a través de Bluetooth o en redes locales, en redes Wi-Fi y directamente conectarse. Y esto solamente funciona en un corto alcance, porque lamentablemente por cómo funcionan los smartphones. Pero si vives en un lugar con una población muy densa, entonces esto del corto alcance no es tan grave. Brear no le importa cual sea la comunicación. Siempre que tengas una comunicación simplex o duplex, Brear podría funcionar. Se podría pensar en hacer un plug-in. Si alguien tiene una conexión satelital o si alguien sabe Radio Amateur, conectar el smartphone a la radio y lograr distancias mucho mayores. Y si, por supuesto, también se pueden usar palomas. Esto es más o menos una broma. O sea, se puede poner tu data en un pendrive, ponerla en una paloma y mandarla a tus amigos. Y eso, por supuesto, puede estar encryptado. Bueno, entonces como decía, usamos encripción de extremo a extremo con llaves. Esto permite forward secrecy. Y no importa cuál sea el método de transporte, aunque sean palomas. Puede haber una latencia muy alta hasta que el mensaje llegue. Y entonces cada transporte tiene un período de rotación de llaves específico del transporte. Y entonces, cuando el transporte tiene baja latencia, podemos usar racheting, que es un concepto de criptografía. Pero cuando estás usando este tipo de transporte, necesitas alguna forma de intercambiar llaves. Y Brian hace esto, forzándote a encontrarte con la persona. Y hacemos esto porque es la única forma que conocemos de prevenir man in the middle, ataques de man in the middle. Porque queremos prevenir esto porque si hay un man in the middle, si te están haciendo un man in the middle y no lo sabes, entonces se pierde la inscripción en tu end, de extremo a extremo. Brian pone como primera prioridad la seguridad. Entonces, implementamos una forma de que un tercero de confianza entre dos personas pueda reenviar las llaves, intercambiar las llaves entre otras dos personas, de forma que Brian solo se conecta a nodos de confianza. No usa una DHT, que es un concepto en una DHT, tabla de hash es distribuida, funciona distinto y por varios motivos consume mucho batería en los smartphones. En el caso de Brian solo se conecta con nodos de confianza. Estos son los algoritmos criptográficos que usamos y hay cosas a la izquierda que son lo que estamos usando y lo de la derecha es hacia donde estamos migrando. Por ejemplo, de las curvas de Brainpool estamos migrando hacia las curvas, hacia otras curvas. Bueno, podemos tener internet también porque yo estoy hablando solo de Bluetooth y Wi-Fi y no siempre estamos a corta distancia. Entonces, sí, por supuesto, se puede tener internet, se puede usar internet. Y como lo hacemos es usando Tor. Entonces, Tor está integrado en Briar. Cuando instalas en el teléfono no necesitas otra aplicación, simplemente inicias Briar y Tor se arranca sin que lo sepas y arranca un hidden service, un servicio oculto de Tor. Espero que todo el mundo sepa lo que es un hidden service. Pero para quienes no lo sepan hago una pequeña introducción. Esta nube púrpura es una forma de entender la nube Tor. Está Alicia y Bob que tienen ambas una conexión a la nube Tor y cada una elige tres relays de Tor y encuentran un punto de encuentro en el medio y hacen toda la conexión a través de estos relays. Entonces, aquí no hay ningún leak de metadata, no hay ninguna... Porque cuando te conectas a la rector es muy difícil saber hacia dónde está yendo. Admito que esto no es perfecto. Si vieron la chala de ayer sabrán que Tor es bueno, pero no es perfecto. Pero es importante entender que no hay ninguna tecnología hoy en día que resista a un atacante global que tenga capacidad de observar toda la red. Pero como dije, Brear es agnóstico respecto de cuál es el método de transporte. Cualquiera puede escribir un plugin y utilizar un nuevo método de transporte del futuro y simplemente Brear funcionaría con esta nueva red. No tenemos mucho tiempo, pero vamos a explicar cómo funciona Brear a bajo nivel. Hay grupos o canales o vamos a decirle tuos porque es un concepto que se utiliza a veces y tenés mensajes y este mensaje es cualquier cosa, cualquier tipo de data. Para cualquier necesidad que tengamos abrimos un nuevo tubo. Si necesitamos hablar entre dos personas, creamos un tubo entre esas dos personas. Pero si necesitamos hablar entre un grupo, podemos hacer algo así en el cual cada mensaje se va a repartir a toda la gente que esté participando. Y esto lo llamamos Forum. Esto no es como un foro tradicional en el cual se puede compartir con cualquiera, sino que en este foro los mensajes solo llegan a la gente que está participando. Imaginemos que este grupo de foro, que son los tubos estos, y eso se comparte. Aquí se ve este gráfico que son todos los nodes con los cuales se ha compartido y las líneas verdes y los puntos verdes son la gente que está online. No hay ningún server hacia donde se sube la data, entonces no hay una única fuente de verdad. Toda la gente que está offline, cuando se conecta a la red recibe la data, la reciben de nodas que estén online y que tengan la data. El puntito verde que está abajo, lamentablemente no recibe ningún mensaje hasta que los nodos intermedios que ahora están offline en el gráfico se conecten y le permiten llegar a la red de arriba. En este segundo ejemplo se cortó la conexión entre dos nubes y los mensajes de la nube de la izquierda no le van a llegar a la nube de la derecha. ¿Cómo lo resuelve esto? En las aplicaciones actuales el server mantiene una historia lineal y entonces no se meten mensajes en el pasado, lo cual confundiría mucho a la gente. Pero en Veria lo que hacemos es mantener hilos de conversaciones como para que esto se pueda comprender igual, resolviendo esto descentralizadamente. Aquí tenemos la librería Bramble debajo que hace sincronización de mensajes a través de los transportes que se ven debajo. Las dos cajitas grises son cosas que no están implementadas todavía, pero que se podría hacer. Y encima de toda esta librería Bramble tenemos la librería Core que tiene todas las featuras. Por ejemplo, si querés prevenir la censura, darle la vuelta a la censura y arriba de todo tenemos las aplicaciones que usan la librería Core, la biblioteca Core. Y hacemos esta estructura de librerías para que tú puedas hacer tu propia tecnología sin necesidad de empezar de cero. Entonces por favor vayan y descentralizen todo. Y se escuchan a plazas del público. Y lo estoy diciendo muy en serio. Cuando comencé a impulsar la idea de descentralizar todo, somos nerds, podemos montar servidores en nuestras casas y federarlos, etcétera. Pero hoy en día pienso, me parece que la gente normal no puede montar servidores, pero si pudiéramos migrar todos los servidores que hay en Internet, descentralizarlos, esto sería mucho más resistente a censura. Si vieron la otra charla en la sala D sobre claim chains, que se pueden poner relaciones de confianza en las redes peer-to-peer, como por ejemplo, se podría hacer un peer-to-peer. Y Bryar puede ayudar al lograr todo esto. Tenemos en este momento una aplicación de Android que se puede instalar por Google Play o eFedroid. La pueden testear mientras estén en el Congreso. Nos podemos encontrar ahora después de la charla al lado del escenario y probar cómo funciona. Y para anticipar una pregunta que me hacen a menudo, ¿qué pasa con iOS? ¿Dónde está la aplicación para iOS? Muchas periodistas necesitan comunicarse con sus fuentes de una manera segura y tienen iPhones. El problema con iOS es que el sistema operativo detiene las aplicaciones que están en background por mucho tiempo y todas las sesiones TCP se cortan. Si alguien tiene experiencia con una aplicación SNIOS, por favor pongas en contacto. El código fuente obviamente es software libre, está disponible y algo importante es que se puede compilar de una forma verificable como para poder estar segura que hay una correspondencia entre el código fuente y el binario. Y para terminar la presentación, muchas gracias por su atención y espero que tengan preguntas. Un aplauso del público, se escucha. Increíble, ¿no? Preguntas. ¿Quién tiene alguna pregunta? ¿Alguna pregunta de internet o alguien en el micrófono? Sí, una pregunta de internet. La internet quiere saber cuál es la diferencia entre esto y retrochart. ¿Cuáles son las fiaturas diferentes? Respuesta. No soy un experto de retrochart, pero, o sea, tómenlo con pinzas, pero hasta donde entiendo, retrochart usa una DHT. Entonces, está mandando mensajes entre pares todo el tiempo, lo cual mata la batería y con lo cual retrochart hace todo, pero no se preocupa tanto por la metadata, por los problemas de la metadata. Muchas gracias. Otra pregunta. Pregunta. Sí, me gustaría saber cuál es la diferencia con el proyecto Ring, que es también un servicio de mensajes descentralizado. Y vi que hay fiaturas que faltan. ¿Cuál es tu punto de vista? Respuesta. Tampoco conozco el proyecto Ring. Me encanta que haya muchos proyectos similares. No estoy diciendo usen Brian y punto, sino usen lo que mejor le funcione. Y sobre el tema de dispositivos múltiples, hay que tener en cuenta qué pasa si utilizas un dispositivo, haces una acción, después te pones online en otro dispositivo y haces una acción conflictuante, como por ejemplo, salir de un grupo y postear un mensaje. Y entonces, ¿cómo se resuelve eso? ¿Te fuiste pero posteaste un mensaje? No lo resolvimos todavía. Tenemos 4 minutos más. Otra pregunta. Mencionaste iOS, ¿cuáles son otras formas de ayudar Brian? Respuesta. Por ejemplo, algo buenísimo sería tener un cliente para desktop, que solamente hacer una capita encima de las librerías actuales. Y además, hay un backtracker con todos los problemas actuales y cualquier ayuda es bienvenida en eso. Otra pregunta. La internet quiere saber si un atacante toma posesión de un dispositivo. ¿Hay alguna negabilidad? Respuesta. No tenemos pensado denyability, negatividad. Negabilidad. Lo que pensamos es encriptar toda la data que tiene Brian en una data base encriptada. Entonces cada vez que te conectas, necesitas poner un password para desencriptar toda la base de datos y también agregar un botón de pánico. Por ejemplo, viene la policía para restarte y entonces apretarse el botón de pánico para que Brian borre toda la data local. Y eso sería una forma de agregar algo de seguridad. Muchas gracias. Otras dos preguntas. Pregunta. Gracias por la charla. ¿Cómo se encuentran dos pares en la redtor? Respuesta. Aquí es donde entra en el juego los hidden service. Un hidden service tiene una dirección única que es básicamente una llave pública. Entonces cuando te conectas, hay una lista pública y así es como se encuentra. No hace falta poner ningún firewall ni simplemente te conectas, te conectas al hidden service y si están online te van a responder y si no, no. Otra pregunta, última pregunta. Sí. Estás usando Bluetooth para conectar pero hay problemas con Bluetooth en Android. Respuesta. Sí, es una pena. Porque Bluetooth no solamente tiene muchos problemas de seguridad sino que además es muy inestable. Y en nuestra respuesta a eso es intentar no mantener el Bluetooth activo, minimizar el tiempo que está activo. Y una contribución reciente es que alguien escribió un plugin para usar wifi direct de forma que dos clientes se pueden conectar directamente via wifi sin ningún access point. Y esperamos entonces que se pueda llegar a un punto en el cual no se necesita más, no se pueda conectar por Bluetooth. No se necesita conectar por Bluetooth. Lo siento, no tenemos más tiempo para preguntas. Lo siento mucho. La siguiente charla se va a llenar. Y el público aplaude.