Esta es una traducción automática. El original en inglés está aquí: Update 06 April, 2023
Es hora de reunir todos esos misteriosos acrónimos, revisiones y anuncios desconcertantes que han salpicado el foro durante las últimas semanas extraordinarias para darle a usted, y a nosotros, la oportunidad de reflexionar sobre qué diablos está pasando.
Progreso general
Todo el equipo ha estado concentrado en libp2p, Kademlia y temas relacionados esta semana, por lo que hay menos que detallar de lo habitual.
@bzee se centra en las capacidades transversales de NAT en libp2p para perforar orificios, @oetyng actualmente está integrando DBC en el nuevo sistema. Acaba de terminar una primera ronda de documentación mejorada para DBC, aclarando nombres y aumentando la seguridad de tipos para reducir la carga cognitiva. Eso también eliminó el concepto portador DBC y una tonelada de código API + para eso. Lo siguiente es eliminar las firmas de ancianos de los DBC, ya que ya no se usarán.
@roland está ordenando el código y profundizando en la republicación de datos junto con @chriso. Y @bochaco acaba de transferir el código de fragmento/registro. Una vez que se vuelva a publicar, realizaremos algunas pruebas internas exhaustivas.
@qi_ma está experimentando con la caja libp2p
y jugando con testnets de la base de código stableset_net
, investigando el flujo de carga/recuperación de fragmentos además de eso.
Más sobre libp2p y otros
Hasta el momento, nuestros planes para libp2p
han surgido en ráfagas de conversaciones animadas, por lo que es hora de poner todo en un solo lugar para dar una mejor idea de cómo encaja con los DBC, la protección de Sybil y todo lo demás.
Primero el por qué. En resumen, como hemos modificado los DBC y los datos para que estén respaldados por DBC, eso abrió la puerta a un enfoque más simple para la red subyacente. Y es esto lo que nos permite comenzar a eliminar algunas de las partes más complejas de la red, lo que significa que el equipo tiene mucho menos de qué preocuparse, lo cual es una gran victoria. Nuestro equipo es dedicado pero pequeño, y ahora pueden concentrarse en el valor agregado.
Filecoin, Eth y Avalanche utilizan Libp2p
, lo que no solo significa que hay muchos ojos en el código, sino que también nos brinda la oportunidad de colaborar e interoperar en el futuro.
Libp2p
ahora ayuda con QUIC, la biblioteca que administra las conexiones entre nodos y una de las principales dificultades que teníamos con la mensajería. Quizás igualmente importante, puede manejar la perforación de agujeros. Cómo lo hace es bastante complicado, pero está cubierto aquí permitiendo que los nodos que están detrás de un firewall o un enrutador doméstico se conecten de forma p2p. La mayoría de las personas deberían poder conectarse sin tener que perder el tiempo con el reenvío de puertos. Con suerte, con el tiempo, la caja mejorará para admitir aún más enrutadores que ahora.
Luego está la protección contra denegación de servicio (DoS), donde tiene controles para limitar la cantidad de conexiones activas entre nodos y, opcionalmente, conexiones entrantes con límite de velocidad.
Como muchos de ustedes sabrán, Safe se basa en la tabla hash distribuida (DHT) de Kademlia que permite el enrutamiento XOR y el almacenamiento direccionable de contenido. Esto también es compatible con libp2p
, si no completamente listo para usar, al menos en un nivel con el que podemos trabajar y mejorar. Es importante destacar que implementa la función Kademlia de actualizar nodos, lo que significa que los nodos inactivos no permanecen en la tabla de enrutamiento por mucho tiempo.
Esta actualización es importante en vista de otro vector de ataque: personas que generan miles de millones de claves fuera de línea y luego intentan entrar por la fuerza bruta como nuevos nodos de Sybil. Como prueba para esto, estamos buscando implementar un controlador de acceso llamado funciones aleatorias verificables (VRF).
Un VRF toma una clave existente + datos de entrada y genera una nueva clave pública + prueba de que se derivó de la clave anterior más datos de entrada. Entonces, el nodo que quiere unirse crea una clave y encuentra el grupo de nodos más cercano a esa clave. El VRF toma la clave más los ID de este grupo y genera un nuevo par de claves más una prueba. Esta nueva clave pública más la prueba se envía luego a ese grupo cercano para que se una, después de lo cual los nodos de ese grupo pueden verificar que se generó a partir de una clave anterior válida y las ID de los nodos cercanos a esa clave anterior.
Dado que los nodos se agitan rápidamente (mucho más rápido ahora), las claves deben generarse y usarse rápidamente. Tienen una vida útil muy limitada, lo que mitiga el ataque de ‘generación de claves fuera de línea’. Los VRF son una innovación de Algorand.
El siguiente en la lista de ventajas es la infraestructura de clave pública (PKI) basada en IP descentralizada, que brinda protección contra ataques de intermediarios. Como se mencionó hace un par de semanas, esto nos permite usar nuestro mecanismo de consenso grupal como una forma de convertirnos en nuestra propia CA, certificando mensajes como seguros.
Nuestro camino hacia nodos especializados, como archivado y auditoría, de repente se vuelve mucho más simple, al igual que el complicado problema de actualizar el protocolo, con varias funcionalidades de libp2p ayudándonos aquí.
Así que libp2b
y otros proyectos como rustls
yLos VRF se encargan de muchos de los problemas de redes difíciles de bajo nivel, lo que significa que podemos centrarnos en la innovación real en la parte superior, en particular nuestro uso de DBC.
Aquí es donde Safe se destaca con un rendimiento de transacciones masivamente paralelo y escalable. Debido a que Safe es una red de datos ante todo, usamos DBC para proteger los datos y pagar por el almacenamiento, en este caso con la reciente adición del campo “motivo” que almacena el nombre de los datos por los que pagó. Los datos también almacenan un enlace de regreso al DBC para completar el círculo.
También pasamos gran parte de la responsabilidad de la seguridad al cliente, con firmas de clientes sobre DBC y su verificación asegurando todos los datos en la red. Al hacerlo, hemos eliminado las firmas de red por completo, simplificando las cosas y protegiéndonos contra las computadoras cuánticas de criptocraqueo cuando aparecen.
Para una UX inigualable con cualquier otra cosa que exista actualmente, tenemos funcionalidad multisig a través de claves BLS para hacer de este un sistema verdaderamente útil y usable.
Agregue eso a las innovaciones anteriores, como el autocifrado de fragmentos, y la imagen es bastante completa. Este eslabón perdido de libp2p
simplifica la oferta en una red fácilmente explicable y lo hace de una manera enormemente escalable, al tiempo que proporciona un nivel de seguridad increíblemente alto casi sin estado histórico (aparte de las transacciones DBC).
Se siente y se ve como si Safe Network realmente se despertara ahora y se deshiciera de todas las partes de investigación y las pruebas que hemos realizado para proporcionar un nodo pequeño y robusto que permitirá a los usuarios simplemente unirse a la red y comenzar a obtener y almacenar datos casi de inmediato, independientemente de cuánto tiempo estará en línea el nodo. Todos obtendrán acceso seguro a un nuevo enfoque del elemento más preciado de la humanidad, el conocimiento.
Enlaces útiles
- Sitio web de red segura
- Introducción a la red segura
- Aspectos básicos de la red
- Hoja de ruta
- Glosario
No dude en responder a continuación con enlaces a las traducciones de esta actualización para desarrolladores y los moderadores las agregarán aquí.
Como proyecto de código abierto, siempre estamos buscando retroalimentación, comentarios y contribuciones de la comunidad, así que no sea tímido, únase y creemos la red segura juntos.