
¿Qué significa prueba zero-knowledge proof y cuáles son sus casos de uso en cripto?
¿Alguna vez presentaste un informe financiero o médico con información privada comprometedora, solo para demostrar que calificas para un préstamo o que no tienes ningún problema serio de salud? ¿Y si pudieras demostrarles que tus ingresos son estables y abundantes, o que gozas de buena salud, sin revelar que acabas de comprar $100 dólares de Nutella o que te caíste de la bicicleta y te raspaste la rodilla? Este es un ejemplo perfecto, y también un posible caso de uso, de zero-knowledge proof.
¿Qué es zero-knowledge proof?
Como habrás deducido de nuestro ejemplo, zero-knowledge proof (zkP) es un método o proceso para demostrar la validez de una afirmación sin revelar dicha afirmación.
Digamos que completaste el Wordle de hoy (sí, todavía se juega) antes que tus amigos. En lugar de decirles cuál es la palabra, solo tienes que compartir tu imagen del resultado de Wordle con cinco casillas verdes seguidas. De esta manera, todos los que vean la imagen sabrán que acertaste la palabra, pero nadie podría decir cuál es a menos que ya la conozcan. Lo más práctico es que solo tienes que compartir esta imagen en tu Twitter una vez y todos sabrán que lo has resuelto sin necesidad de interactuar contigo (ni siquiera tienen que conocerte). Esto se conoce como ZKP sin interacción, en contraste a ZKP con interacción, en donde los verificadores tienen que participar en una serie de intercambios con los generadores de pruebas para que estos decidan si están convencidos.
No hace falta decir que este complejo mecanismo (interactivo y no interactivo) dará lugar a muchos casos de uso novedosos e interesantes, especialmente en sectores en los que la privacidad se valora por encima de casi cualquier otra cosa, como es el caso de las criptomonedas. Dos de los avances más famosos en este campo son los ZK-SNARK y ZK-STARK.
ZK-SNARK vs. ZK-STARK
ZK-SNARK significa zero-knowledge Succinct Non-Interactive Argument of Knowledge (argumento de conocimiento sucinto no interactivo de conocimiento cero) y su característica más destacada es que no es interactivo, lo que significa que cualquiera puede verificar una afirmación sin interactuar con el generador de pruebas. Esto permite que una red blockchain verifique la titularidad de las cuentas y que garantice que el remitente de una transacción determinada tiene saldo suficiente sin revelar direcciones ni montos de transacción.
Las curvas elípticas aleatorias son el núcleo del modelo de seguridad de ZK-SNARK. También se requiere una configuración de confianza para iniciar un protocolo utilizando ZK-SNARK. Esto implica crear claves privadas que posteriormente se utilizan con el fin de crear pruebas para transacciones y verificaciones. Como resultado, los ZK-SNARK están sujetos a ataques cuánticos y fugas de claves privadas. Dicho esto, los ZK-SNARK pueden reducir significativamente el tamaño de los bloques y el consumo de gas, y ya han acumulado una gran comunidad desde su creación en 2012.
El mecanismo ZK-STARK, que significa zero-knowledge Scalable Transparent Argument of Knowledge (argumento de conocimiento escalable transparente de conocimiento cero), se lanzó en 2018. Como su nombre lo indica, los ZK-STARK se centran en la escalabilidad y la transparencia. Los tiempos de demostración y verificación de los ZK-SNARK aumentan linealmente con el tamaño del testigo, pero en el caso de los ZK-STARK, lo hacen de forma cuasilineal, lo que los hace mucho más ágiles a la hora de gestionar grandes conjuntos de datos. Los ZK-STARK también utilizan funciones hash y aleatoriedad verificables públicamente, lo que significa que no requieren una configuración inicial de confianza y son resistentes a ataques cuánticos.
Dicho esto, los ZK-STARK generan bloques mucho más grandes y requieren mucha más capacidad de cómputo, lo que se traduce en un mayor consumo de gas y un tiempo de verificación más largo. Los ZK-STARK también cuentan con muchos menos desarrolladores y recursos disponibles en comparación con su hermano mayor.
¿Cuáles son los casos de uso de ZKP en cripto?
Prueba de identidad
No hay ningún lugar con una mayor concentración de datos privados que nuestra información de identidad. Tradicionalmente, una prueba de identidad requiere que quién la demuestra (tú) envíe su información de identidad (todo sobre ti, sea relevante o no, con una sorprendente cantidad de detalles) al verificador.
Con ZKP, por otro lado, todo lo que necesitas hacer es generar una credencial que sirva como prueba de la titularidad y solidez de tu identidad. Los verificadores solo deben hacer algunos cálculos para comprobar la validez de tu credencial, en lugar de tener acceso a toda tu información personal.
Prueba de Reservas del árbol de Merkle
Un árbol de Merkle es un árbol binario con datos almacenados en sus hojas. Cada hoja tiene su propio valor hash y estos valores hash se clasifican en diferentes grupos (nodos) para seguir con el proceso de hash hasta que solo quede un valor: el hash raíz.
Los verificadores solo necesitan tomar los valores hash de varios nodos para verificar la integridad de todo lo que hay en el árbol de Merkle sin sumergirse en un mar de unos y ceros. Esto se utiliza comúnmente para demostrar que un exchange cuenta con fondos de reserva suficientes y que no ha trasladado los fondos de sus traders a otro lugar con fines indebidos.
Bitget siempre ha dado prioridad a nuestros clientes y nuestra Prueba de Reservas del árbol de Merkle está disponible para que todos puedan verificarla: Prueba de Reservas de Bitget.
Para obtener más información sobre nuestra Prueba de Reservas del árbol de Merkle, consulta nuestra introducción al Árbol de Merkle.
ZK-rollups
Un rollup, como su nombre lo indica, es una solución de escalabilidad que agrupa una serie de transacciones en una sola. Esto permite ejecutar transacciones mucho más rápidas y económicas que, por ejemplo, la mainnet de Ethereum. Hay dos facciones en las soluciones de rollup de Ethereum: Optimistic y Zero-knowledge. En este artículo nos centraremos en la segunda.
Los rollups ZK (o rollups de conocimiento cero) ejecutan los cálculos off-chain y solo envían una prueba de validez (un "resumen" de todas las transacciones agrupadas) on-chain. Una vez que esta prueba se verifica on-chain, todas las transacciones del rollup se finalizarán de una sola vez.
Hay varios actores importantes en las soluciones zk-rollup de Ethereum. Polygon anunció que su mainnet zkEVM beta se lanzará a finales de marzo. En un esfuerzo por contrarrestar a Polygon, zkSync, otro competidor, abrió el registro para desarrolladores en su "mainnet" solo un día después del anuncio de Polygon.
Otros participantes destacados en esta carrera son Loopring, un exchange descentralizado que ofrece un alto rendimiento y bajos costos de liquidación gracias al uso de zk-rollup; Immutable X, una solución de layer 2 centrada en los NFT que ofrece una experiencia casi instantánea y sin comisiones de gas con zk-rollups.
Regístrate ahora y comienza a operar con Polygon, Loopring, Immutable X, Mina y muchos otros exploradores en el campo de zero-knowledge.
Aviso legal: Las opiniones expresadas en este artículo tienen solo fines informativos. Este artículo no constituye un respaldo a ninguno de los productos y servicios analizados ni un asesoramiento de inversión, financiero o de trading. Consulta a profesionales calificados antes de tomar decisiones financieras.