Aprende

Pruebas de conocimiento cero en Stellar

Imagina vivir en un mundo donde la confianza, la privacidad y la eficiencia coexisten sin problemas. Las pruebas de conocimiento cero (ZK Proofs) hacen esto posible, asegurando que la privacidad, la escalabilidad y la interoperabilidad vayan de la mano.

Al aprovechar las Pruebas ZK en la red de Stellar, podemos aumentar la privacidad de las personas no bancarizadas en todo el mundo, mejorar la escalabilidad para sistemas de pagos transnacionales y la interoperabilidad para aplicaciones de efectivo-a-cripto. Esta guía te ayudará a entender los conceptos básicos, las aplicaciones y la importancia de las Pruebas ZK en el panorama digital actual.

¿Qué son las pruebas de conocimiento cero?

Las Pruebas ZK son un avance en la tecnología criptográfica. Permiten que una parte demuestre a otra que una afirmación es verdadera sin revelar ninguna información más allá de la validez de la propia afirmación.

Aunque pueda parecer un concepto simple, el método subyacente de las Pruebas de Conocimiento Cero es realmente un hito de las matemáticas. Esta tecnología se ha investigado durante más de cuatro décadas; se introdujo por primera vez en 1985 en el artículo «The Knowledge Complexity of Interactive Proof-systems» [GMR85]. El desarrollo posterior de varios tipos de pruebas, como SNARK y STARK, ha sido particularmente crucial en las blockchains, demostrando la profundidad y utilidad de este trabajo pionero.

¿Cómo funcionan las pruebas de conocimiento cero?

En los sistemas de Pruebas ZK, el objetivo es simple: un probador busca convencer a verificador de que una afirmación sea verdadera sin revelar otra información.

Por ejemplo, en la red de Stellar, un verificador podría asegurar que la billetera del probador contiene más de X USDC sin conocer la cantidad exacta.

Conceptos clave de las Pruebas ZK:

Integridad

Si la declaración es verdadera, entonces un demostrador puede convencer a un verificador.

Solidez

Un tramposo demostrador no puede convencer a un verificador de una falsa declaración.

Conocimiento Cero

Solo se revela la verdad de la declaración, nada más.

Escalabilidad

Los ZK Rollups son una solución de escalado que agregan múltiples transacciones en una sola prueba para ser verificada en la blockchain, aumentando el rendimiento y reduciendo los costos de transacción.

Beneficios

Pruebas de conocimiento cero en Stellar

En cuanto al rendimiento de la red, Stellar busca superar a otras redes utilizando todas las capacidades de la computación moderna y ejecutando operaciones de disco, CPU y red simultáneamente. Al ubicar estos procesos criptográficos en «slots» dedicados dentro de cada bloque, el protocolo central de Stellar puede manejar mayores volúmenes de transacciones sin desacelerarse ni poner presión adicional en su infraestructura.

Veamos la asignación de recursos de un bloque.

Las transacciones (txs) a la derecha son un conjunto de txs enviadas a la red. A la izquierda está el bloque que se aplicará y se agregará a la blockchain; cuantas más txs haya en un bloque, mayor será el TPS. Al tener un carril separado o "slot" en el bloque por tipo de recurso, en este caso para una operación de prueba ZK, podemos incluir hasta 3x más txs por bloque (lo que significa hasta 3x TPS). Este enfoque es beneficioso para validadores y operadores, especialmente al manejar grandes volúmenes de transacciones, ya que alivia la carga computacional típica observada con otros modelos de tarifas.

Por ejemplo, un enfoque de tarifa de gas de recurso único:

Aplicaciones de las pruebas ZK

  • Identidad/Propiedad de Datos en Redes Sociales de Web3: En redes sociales descentralizadas, las Pruebas ZK pueden verificar la identidad de los usuarios y la propiedad de los datos sin exponer información personal. Los usuarios pueden demostrar que son elegibles para acceder a ciertos servicios o contenidos sin revelar su identidad, manteniendo así la privacidad y el control sobre sus datos.
  • Finanzas descentralizadas (DeFi): En aplicaciones DeFi, las Pruebas ZK pueden aportar funciones para mejorar la privacidad y seguridad de las transacciones financieras. Por ejemplo, los usuarios pueden probar la propiedad de activos o la capacidad de pagar un préstamo sin revelar todo su portafolio.
  • Acceso a servicios financieros: Las instituciones de microfinanzas pueden usar Pruebas ZK para verificar la solvencia de las personas sin profundizar en su historial financiero. Esto puede ayudar a personas no bancarizadas a obtener préstamos, seguros y cuentas de ahorro, brindando oportunidades para mejorar su situación económica.
  • Programas de inclusión financiera que preservan la privacidad: Las ONG pueden usar Pruebas ZK para implementar programas de inclusión financiera que protejan la privacidad de los beneficiarios. Por ejemplo, los programas de transferencias de efectivo pueden verificar la elegibilidad y distribuir fondos sin revelar públicamente los datos personales de los destinatarios. Esto garantiza que la ayuda llegue a quienes la necesitan sin exponerlos a posible estigmatización social o focalización.

Implementaciones y tecnologías

Zk-SNARKs (argumento sucinto no interactivo de conocimiento de conocimiento cero)

Los SNARKs son un tipo de prueba criptográfica que permite que una parte demuestre a otra que conoce un valor sin revelar el propio valor y sin ninguna interacción entre el probador y el verificador después de que se haya generado la prueba. Estas pruebas son sucintas, es decir, muy pequeñas y rápidas de verificar, lo que las hace altamente eficientes. Los zk-SNARKs se usan ampliamente en aplicaciones que preservan la privacidad para habilitar transacciones cuyos detalles permanecen confidenciales mientras se garantiza la validez de la transacción.

Aplicaciones de los zk-SNARKs:

  • Cómputo verificable: los zk-SNARKs facilitan externalizar cómputos costosos y validar la corrección de los resultados sin rehacer la ejecución. Este modelo cambia el paradigma de la blockchain de que todos computen lo mismo a que una parte compute y todos verifiquen.
  • Aplicaciones descentralizadas (Dapps): los zk-SNARKs pueden usarse en Dapps para habilitar contratos inteligentes que preservan la privacidad y cómputos off-chain. Por ejemplo, una Dapp podría usar zk-SNARKs para confirmar la elegibilidad de un usuario para un servicio sin revelar su información personal.
  • Pagos que preservan la privacidad: los zk-SNARKs permiten transacciones totalmente anónimas, manteniendo completamente privados los montos y las partes involucradas. Por ejemplo, permiten pagos sin asociar ninguna identidad, garantizando el anonimato total. Un caso de uso puede ser financiar una campaña de bienes públicos sin exponer la identidad de un usuario.

Implementaciones y tecnologías

Zk-STARKs (argumentos transparentes y escalables de conocimiento de conocimiento cero):

Los STARKs son una forma avanzada de prueba criptográfica que mejora la escalabilidad y la transparencia. Están diseñados para minimizar la interacción entre el probador y el verificador, acelerando significativamente el proceso de verificación en comparación con los zk-SNARKs. Estas pruebas son adecuadas para aplicaciones que requieren alto rendimiento y escalabilidad, como sistemas de blockchain a gran escala y cómputos intensivos que preservan la privacidad.

Aplicaciones de los zk-STARKs:

  • Sistemas de blockchain escalables: Las pruebas son más grandes. Sin embargo, los zk-STARKs están diseñados para manejar grandes cantidades de datos y cómputos complejos de manera eficiente. Es como tener un recibo más detallado que tarda más en leerse pero puede probar transacciones más complejas.
  • Cómputo verificable: Al igual que los zk-SNARKs, los zk-STARKs facilitan el cómputo verificable, permitiendo que partes no confiables realicen cómputos mientras aportan prueba criptográfica de corrección. Esto asegura que los cómputos puedan ser confiables sin revelar los datos subyacentes.
  • Análisis de datos que preserva la privacidad: los zk-STARKs pueden usarse en escenarios de análisis de datos que preservan la privacidad, donde los datos sensibles pueden procesarse sin revelar los datos subyacentes. Por ejemplo, pueden usarse para verificar grandes conjuntos de datos de salud sin revelar la información subyacente del paciente.

Desafíos y consideraciones

Complejidad computacional: Implementar Pruebas ZK requiere una potencia de procesamiento significativa, pero la infraestructura de Stellar optimiza recursos para manejar múltiples operaciones simultáneamente. Al utilizar multihilo y procesamiento en paralelo, Stellar optimiza el uso de los recursos de cómputo de los validadores para manejar múltiples operaciones a la vez. Sin embargo, agregar operaciones de Pruebas ZK como Rollups a Stellarstack puede introducir cargas computacionales desconocidas en la red, lo que requiere un monitoreo y una optimización cuidadosos para asegurar un rendimiento sostenido de la red.

Suposiciones de confianza: La seguridad de los sistemas de Pruebas ZK depende de suposiciones criptográficas específicas que deben probarse y validarse rigurosamente. Por ejemplo, implementar funciones para curvas criptográficas avanzadas es crucial para operaciones criptográficas sofisticadas en el ecosistema de Stellar. Esto incluye funciones como suma y multiplicación de puntos en curvas elípticas. Sin embargo, aún es necesario implementar componentes esenciales como operaciones de emparejamiento y hash a la curva en el protocolo central de Stellar para garantizar la funcionalidad completa.

Mitigaciones de finanzas ilícitas: Emplear Pruebas ZK para soluciones de privacidad on-chain puede presentar desafíos legales. Los reguladores y las fuerzas del orden en todo el mundo han estado tomando medidas enérgicas contra mixers y billeteras de privacidad que carecen de controles sólidos contra finanzas ilícitas. La industria de la blockchain está trabajando arduamente para desarrollar estrategias y alternativas que puedan satisfacer preocupaciones de privacidad y cumplimiento.Stellar Development Foundation está colaborando con socios de la industria y expertos técnicos y de cumplimiento para avanzar en la adopción de diseños de privacidad compatibles.

Únete a la discusión

Stellar está trabajando activamente en integrar operaciones ZK en la red de Stellar. Únete a la comunidad para ayudar a dar forma a las capacidades de Stellar! Visita la Discusión en GitHub sobre la implementación de ZK.

FAQ

Preguntas frecuentes

Las pruebas de conocimiento cero son métodos criptográficos que permiten a una parte demostrarle a otra que una afirmación es verdadera sin revelar ninguna información más allá de la validez de la propia afirmación. Son cruciales para la privacidad y la seguridad en transacciones digitales.

En la red de Stellar, las Pruebas ZK pueden garantizar que la billetera del demostrador contenga más que una cantidad especificada sin revelar el saldo exacto, mejorando así la privacidad de los usuarios.

Las zk-SNARKs son pruebas sucintas y no interactivas que son eficientes y se usan ampliamente en aplicaciones que preservan la privacidad. Las zk-STARKs, por otro lado, están diseñadas para la escalabilidad y la transparencia, manejando grandes cantidades de datos de forma eficiente.

Al usar Pruebas ZK, Stellar puede optimizar la asignación de recursos en los bloques, permitiendo más transacciones por bloque e incrementando el rendimiento de la red sin carga adicional.

En DeFi, las Pruebas ZK mejoran la privacidad y la seguridad al permitir a los usuarios demostrar la propiedad de activos o su solvencia sin revelar toda su cartera, manteniendo así la confidencialidad.

Implementar Pruebas ZK requiere una potencia de cómputo significativa y una validación criptográfica rigurosa. Stellar debe optimizar su infraestructura para manejar estas operaciones de forma eficiente mientras garantiza el cumplimiento de las normas regulatorias.

La comunidad puede unirse a discusiones en plataformas como GitHub y Discord para ayudar a definir la integración de operaciones ZK en la red de Stellar, aportando ideas y comentarios.