El muestreo de disponibilidad de datos (DAS, por sus siglas en inglés) es una técnica mediante la cual los nodos ligeros verifican que los datos de un bloque han sido publicados descargando solo unos pocos fragmentos seleccionados al azar y luego se apoyan en la estadística para hacer que la ausencia de datos sea extremadamente improbable. Es la idea central de escalado detrás de la hoja de ruta PeerDAS de Ethereum y de la capa de datos de Celestia, y es lo que permite a las blockchains aumentar el tamaño de los bloques de forma segura sin obligar a cada usuario a descargarlo todo.
Puntos clave
- DAS resuelve el problema de disponibilidad de datos al permitir que los clientes ligeros confirmen bloques completos con muestras pequeñas y aleatorias en lugar de descargas completas.
- La codificación de borrado, comúnmente Reed-Solomon, infla los datos para que cualquier fragmento pueda reconstruirse a partir de suficientes pares, convirtiendo una única pieza faltante en algo estadísticamente irrelevante.
- PeerDAS de Ethereum amplía esta idea repartiendo los datos a través de una red peer-to-peer, de modo que cada nodo solo almacena una fracción del espacio total de blobs.
- La garantía probabilística es lo que hace que DAS sea seguro a escala, pero también significa que los clientes ligeros están apostando por las matemáticas, no por la certeza, que es la compensación clave que hay que entender.
Por qué las blockchains se topan con un muro al escalar
Toda blockchain tiene un cuello de botella oculto que no tiene nada que ver con las transacciones por segundo. Antes de que un bloque pueda ser confiable, cada nodo preocupado por la seguridad tiene que estar seguro de que los datos dentro del bloque realmente existen y se pueden descargar. Si un productor de bloques publica solo la cabecera del bloque y oculta las transacciones subyacentes, nadie puede verificar la cadena y, en teoría, un proponente malicioso podría robar fondos o reescribir la historia.
Durante la mayor parte de la historia de las criptomonedas, la regla era sencilla: para verificar la cadena, descárgala. Los usuarios de Bitcoin y los primeros usuarios de Ethereum ejecutaban nodos completos que procesaban cada byte. Esto funcionaba a pequeña escala, pero a medida que los tamaños de bloque crecían para dar cabida a más usuarios, el coste de ejecutar un nodo se disparó hasta cientos de gigabytes y, con el tiempo, hasta terabytes de disco y ancho de banda. La descentralización se erosionó silenciosamente porque solo los operadores con buenos recursos podían seguir el ritmo.
El problema de disponibilidad de datos es el nombre formal de esta tensión. Una blockchain necesita publicar suficientes datos para que cualquiera pueda verificarla, pero publicar demasiados datos deja fuera de la verificación a los usuarios normales. Las soluciones de escalado como los rollups empeoran el problema en lugar de mejorarlo, porque publican datos de transacciones comprimidas de vuelta en una cadena padre. Más rollups, más datos, y de repente la cadena padre se está ahogando en su propio éxito.
Ese es el muro que DAS está diseñado para derribar. El objetivo no es que cada nodo descargue menos datos en el sentido trivial de comprimir transacciones. El objetivo es que la verificación sea lo suficientemente barata como para que los clientes ligeros, el nivel de monedero-en-un-ordenador, puedan confirmar bloques grandes con confianza, al mismo tiempo que se permite a la red en su conjunto escalar hasta decenas de miles de transacciones por segundo.
Lo que los clientes ligeros podían y no podían hacer antes de DAS
Antes de que existiera el muestreo, los clientes ligeros vivían una vida precaria. Un cliente ligero es cualquier nodo que no descarga la cadena completa, sino que revisa las cabeceras de los bloques y pide a los nodos completos pruebas sobre transacciones específicas. Los monederos móviles, las extensiones de navegador y los dispositivos embebidos se comportan en la práctica como clientes ligeros.
El problema es que se puede mentir a un cliente ligero. Un pequeño conjunto de nodos completos puede alimentar a un cliente ligero con una cabecera que parece válida y con pruebas que parecen correctas, mientras que los datos del bloque subyacente se están reteniendo del resto de la red. El cliente ligero no tiene forma de saberlo, porque nunca pidió ver los datos completos. Este es el clásico ataque de disponibilidad de datos, y es la razón por la que durante años los clientes ligeros fueron tratados como ciudadanos de segunda clase, útiles para pagos pero no para decisiones críticas de seguridad.
Para solucionarlo, los diseñadores necesitaban una forma de que un cliente ligero pudiera exigir pruebas de que los datos detrás de una cabecera realmente existen en algún lugar de la red, sin descargar los datos en sí. No basta con preguntar a los nodos completos, porque los nodos completos pueden coludirse. Preguntar a todos los nodos completos equivale a descargar los datos. Había que inventar algo estadístico.
La idea central: el muestreo aleatorio como garantía probabilística
El muestreo de disponibilidad de datos se apoya en una única intuición que parece casi demasiado sencilla para funcionar. Si un bloque se divide en muchos fragmentos pequeños y un cliente ligero comprueba al azar algunos de ellos, la probabilidad de que un atacante oculte siquiera un fragmento se vuelve ínfima a medida que más clientes ligeros muestrean.
Imagina un bloque dividido en 1.000 piezas. Un cliente ligero elige 10 piezas al azar y las pide a la red. Si las 10 vuelven, el cliente no ha terminado. Solo sabe que existen 10 piezas. Pero multiplica eso por millones de clientes ligeros que eligen cada uno sus propias piezas aleatorias, y la posibilidad de que algún fragmento oculto sobreviva a todas esas peticiones se desploma hacia cero. Tras suficientes muestras independientes, la red puede tratar el bloque como disponible con una certeza matemática casi total, aunque ningún nodo individual se haya descargado el bloque entero.
Esta es la garantía probabilística que está en el corazón del DAS. No es una promesa de que cada nodo haya visto cada byte. Es una promesa de que los datos existen, distribuidos por la red, y de que cualquier intento de ocultar una pieza requeriría mentir a tantas muestras aleatorias que la probabilidad de salir impune es, a efectos prácticos, cero.
Codificación de borrado: el truco que hace funcionar el muestreo
El muestreo aleatorio por sí solo no bastaría. Si un bloque se cortara en 1.000 fragmentos en bruto, a un atacante le bastaría con ocultar uno de ellos para romper la cadena, y la probabilidad de que un único cliente ligero acertara con el fragmento oculto es pequeña. Para que las cuentas funcionen, las blockchains añaden redundancia a propósito, empleando una técnica llamada codificación de borrado.
El esquema más común es la codificación Reed-Solomon, un método de corrección de errores de hace décadas, diseñado originalmente para CD y comunicaciones en el espacio profundo. La idea es tomar los datos originales del bloque, tratarlos como un polinomio y ampliar ese polinomio para que la misma información quede codificada en más puntos de datos que el original. Con un código Reed-Solomon configurado para duplicar los datos, un bloque original de 1.000 fragmentos se convierte en un bloque ampliado de 2.000 fragmentos, donde cualquier conjunto de 1.000 de esos fragmentos es suficiente para reconstruir el bloque entero.
Por qué importa esto: ahora un atacante que quiera retener datos tiene que retener al menos la mitad del bloque ampliado, no solo un fragmento. Los clientes ligeros, mientras tanto, siguen muestreando al azar dentro del conjunto ampliado. La probabilidad de no detectar un fragmento oculto se reduce drásticamente, porque el atacante tiene que esconder una proporción mucho mayor. La combinación de codificación de borrado y muestreo aleatorio es lo que convierte una garantía débil en una sólida, y es el corazón técnico de cada diseño de DAS en producción o en pruebas avanzadas.
PeerDAS: la evolución peer-to-peer del DAS en Ethereum
El enfoque actual de Ethereum para el DAS se llama PeerDAS, y el nombre apunta al cambio arquitectónico. En un diseño ingenuo de DAS, cada nodo completo sigue almacenando el bloque ampliado entero. El muestreo es solo para clientes ligeros, y los nodos completos cargan con el peso del almacenamiento. PeerDAS lo invierte. En PeerDAS, los datos ampliados también se fragmentan a través de la red peer-to-peer, de modo que cada nodo completo solo almacena un subconjunto del espacio total de blobs, y los datos se reconstruyen bajo demanda pidiendo a los pares sus porciones.
Para Ethereum, los datos relevantes son lo que denomina blobs, los fragmentos de datos temporales que los rollups publican a bajo coste. PeerDAS permite a los validadores almacenar solo unas pocas columnas de una matriz de blobs codificada con borrado y, aun así, poder servir cualquier muestra aleatoria a la red. La garantía matemática es la misma que la del DAS clásico, pero el coste de recursos se reparte, de modo que la red puede aumentar la capacidad total de blobs sin incrementar al mismo ritmo los requisitos por nodo.
Otros ecosistemas utilizan la misma idea con nombres diferentes. Celestia, a menudo referida por su ticker TIA, fue la primera red en producción diseñada en torno al DAS desde el primer día, presentándose como una capa modular de disponibilidad de datos a la que los rollups pueden pagar por publicar. NEAR ha explorado diseños de tipo DAS como parte de su hoja de ruta de sharding. En todos ellos aparece el mismo patrón: codificar los datos con borrado, muestrear al azar y dejar que la probabilidad haga el trabajo de seguridad que antes requería replicación completa.
Qué significa esto en la práctica: decenas de miles de TPS
Una vez que la disponibilidad de datos es barata y demostrable, el resto de la historia de escalabilidad se desbloquea. Los rollups, el patrón de escalado dominante en Ethereum y cada vez más en otras cadenas, están limitados por la cantidad de datos que pueden publicar en su cadena padre. Cuando la capa de datos de la cadena padre puede crecer porque el DAS abarata la verificación, los rollups pueden publicar más transacciones comprimidas por bloque, y el rendimiento efectivo sube.
Las cifras que citan los investigadores de Ethereum, a menudo en el rango de decenas de miles de transacciones por segundo en L2, dependen de este tipo de escalado de datos. La misma dinámica se aplica a Celestia y a cualquier cadena que adopte una arquitectura modular, donde la ejecución y la disponibilidad de datos se separan y se optimizan de forma independiente. Sin DAS, esas afirmaciones de rendimiento requerirían centralizar los nodos completos o confiar en un pequeño comité de disponibilidad de datos, ambas opciones con malos compromisos.
También hay un segundo efecto, más silencioso. A medida que los clientes ligeros se vuelven fiables, se amplía el universo de dispositivos que pueden verificar la cadena. Teléfonos, navegadores e incluso hardware embebido pueden participar en la seguridad. Esto es bueno para la descentralización a largo plazo, porque reduce la influencia de los grandes operadores de nodos y hace que la red sea más difícil de censurar o de capturar.
Las compensaciones honestas que deberías conocer
DAS es potente, pero no es magia, y entender sus límites importa más que memorizar sus ventajas. La garantía probabilística es real, pero sigue siendo una probabilidad. Un cliente ligero que solo ha ejecutado unas pocas muestras no está completamente protegido. Las implementaciones de cliente tienen que elegir con cuidado el número de muestras, y la red debe asumir que en todo momento hay suficientes clientes ligeros independientes en línea para que las cuentas se cumplan.
PeerDAS, en particular, introduce nuevas suposiciones entre pares. El sistema solo funciona si una fracción suficientemente grande de nodos está en línea para servir sus fragmentos asignados. Las particiones de red prolongadas, los ataques de denegación de servicio dirigidos contra pares, o simplemente un descubrimiento de pares deficiente pueden degradar la garantía. Existen mitigaciones, como la puntuación de pares, las pruebas de custodia de datos y los modos de respaldo, pero son áreas de investigación activas más que problemas resueltos.
También hay consideraciones económicas. A medida que crece la capacidad de datos, la cuestión de quién paga por el almacenamiento y el ancho de banda se vuelve más relevante. Ethereum lo aborda con tarifas de blob que se queman con el tiempo, y Celestia utiliza un modelo similar. Ninguno de estos mecanismos es perfecto, y evolucionan junto al diseño técnico. Cualquiera que evalúe una cadena que utilice DAS debería prestar tanta atención a su mercado de tarifas y estructura de incentivos como a sus afirmaciones criptográficas.
Cómo seguir el muestreo de disponibilidad de datos de forma inteligente
El muestreo de disponibilidad de datos está pasando de los artículos de investigación a las redes en funcionamiento, y las novedades en torno a él cambian cada semana. Las redes de prueba PeerDAS de Ethereum, las actualizaciones de Celestia y los diseños competidores de NEAR y otros generan un flujo constante de anuncios, muchos de ellos envueltos en hype. Distinguir qué cambios son reales y cuáles son marketing requiere algo más que un vistazo superficial en Twitter. Zippfeed muestra titulares sobre disponibilidad de datos y escalado con puntuación de sentimiento (alcista, neutral o bajista) y una calificación de importancia, para que puedas distinguir los hitos técnicos del ruido sin tener que leer cada hilo tú mismo.