3 puntos por GN⁺ 2024-01-18 | 1 comentarios | Compartir por WhatsApp

Un protocolo para almacenes de datos P2P

  • Autorización granular: permite restringir el acceso de lectura y escritura a los datos según rangos o períodos de tiempo significativos
  • Enfoque centrado en la privacidad: otros usuarios no pueden saber qué te interesa y, aun si lo supieran, deberían poder descifrar los datos sincronizados
  • Edición destructiva: al actualizar un valor, se sobrescriben el valor anterior y los metadatos relacionados
  • Bajo uso de ancho de banda y memoria: permite sincronizar datos de forma selectiva, y hasta dispositivos con memoria limitada pueden sincronizarse

Por qué se creó Willow

  • Almacenamiento de datos que no se desconecta: ofrece un almacén siempre disponible para datos arbitrarios como texto, medios y más
  • Protección de la privacidad y cifrado de extremo a extremo: otros usuarios no pueden saber qué te interesa y, aun si lo supieran, deberían poder descifrar los datos sincronizados
  • Eliminación completa de datos: los sistemas distribuidos usan tombstones para señalar borrados, pero los metadatos permanecen. Mediante poda por prefijo, se pueden eliminar por completo muchos elementos y todos sus metadatos, dejando en su lugar un solo tombstone

Funciones adicionales

  • Sincronización parcial: si hay muchos datos pero no quieres sincronizarlos todos a un dispositivo específico, puedes elegir qué datos replicar, cuándo y por quién fueron creados
  • Edición destructiva: al actualizar un valor, se sobrescriben el valor anterior y los metadatos relacionados
  • Eliminación local de datos: puedes borrar localmente datos no deseados, incluso si fueron escritos por otra persona
  • Comunicación de presupuesto de recursos: permite comunicar entre pares el presupuesto de recursos para que incluso dispositivos con memoria muy limitada puedan sincronizarse
  • Transporte personalizado y primitivas criptográficas: permite elegir las primitivas de transporte y cifrado adecuadas para tu caso de uso
  • Escritura simultánea en múltiples dispositivos: el autor puede escribir al mismo tiempo desde varios dispositivos

Apoyo al proyecto

  • Este proyecto recibió financiamiento del NGI Assure Fund, creado por NLnet con el patrocinio de la DG Communications Networks, Content and Technology dentro del programa Next Generation Internet de la Comisión Europea.
  • También expresan su agradecimiento a otros patrocinadores por su apoyo.

Opinión de GN⁺

  • Sincronización de datos innovadora: Willow ofrece un enfoque innovador para la sincronización de datos y la privacidad, permitiendo a los usuarios gestionar sus datos de manera más segura y eficiente.
  • Respaldo de la Comisión Europea: como proyecto apoyado por la Comisión Europea, muestra que se está enfatizando la importancia de la protección de datos y la privacidad en Europa.
  • Aplicable a diversos casos de uso: está diseñado para usarse en distintos dispositivos y entornos, por lo que puede aplicarse ampliamente, desde dispositivos IoT hasta aplicaciones móviles.

1 comentarios

 
GN⁺ 2024-01-18
Opinión de Hacker News
  • En el diseño de protocolos existen preguntas que no tienen una respuesta clara.

    • Por ejemplo, si un namespace debe identificarse con una cadena legible por humanos o con la clave pública de un esquema de firma digital depende por completo del caso de uso.
    • Para evitar estas preguntas, el modelo de datos de Willow es general respecto a la elección de parámetros específicos.
    • Con Willow se puede usar una cadena como identificador de un namespace, o un entero de 256 bits, una URL, un escaneo de iris, etc.
    • Willow es un protocolo de orden superior: si se le dan elecciones concretas para sus parámetros, se obtiene un protocolo concreto correspondiente.
    • Si distintos sistemas implementan Willow con parámetros diferentes, ambos pueden afirmar que usan Willow aunque no sean interoperables entre sí.
  • Comparación entre Willow y otros protocolos, por ejemplo IPFS:

    • En IPFS los datos son inmutables, sin estado y tienen un namespace global.
    • En cambio, en Willow los datos son mutables, con estado y tienen un namespace condicional.
    • Willow se interpreta como un sistema de base de datos distribuida autenticada, autorizada, basada en contenido y direccionada globalmente.
    • Las direcciones tienen la jerarquía y la expresividad de las URL.
    • Una de las características del documento es que, al pasar el cursor sobre las palabras subrayadas, aparece una ventana emergente con una definición o explicación.
    • Algunos términos dentro de esas ventanas también están subrayados, lo que facilita obtener una comprensión más profunda de los conceptos.
  • Comparación con IPFS:

    • Personalmente, IPFS ha sido decepcionante en el uso real y hay mucha expectativa por un sucesor.
    • La promesa de IPFS es grande, pero es muy lento, incómodo y está lleno de errores al usarlo.
    • Tiene una gran idea, pero le falta ese nivel de pulido cuidadoso que mejoraría su usabilidad.
    • Cuando la colección de archivos crece, el sistema no soporta su propio peso y se viene abajo.
    • Aunque se le asignen más recursos, al pasar cierto punto el sistema colapsa por completo.
  • Hay confusión sobre qué aplicaciones concretas encajan de forma ideal con las necesidades reales de los usuarios de Willow.

  • En otros comentarios se mencionaron IPFS, Dropbox y Syncthing, pero Willow es lo más parecido a Upspin, salvo que Willow usa P2P y Upspin usa un servidor de claves centralizado.

  • Se intentó trabajar con libp2p, pero Willow parece muy prometedor para manejar los detalles de bajo nivel.

    • No se revisó la documentación en profundidad, pero parece que permitiría modelar de inmediato varias aplicaciones.
  • Pregunta sobre si Willow es una especificación pura o si no existe ninguna implementación en absoluto.

  • Pregunta sobre para qué sirve el subspace si ya existe el namespace, y por qué la clave tiene un delimitador.

  • Gustan mucho las ilustraciones del documento.

  • Es descentralizado y no necesita ICO.