zk-SNARKs: de la ruptura teórica a los escenarios de aplicación en Web3

robot
Generación de resúmenes en curso

zk-SNARKs: Historia, Aplicaciones y Principios

I. Desarrollo de zk-SNARKs

El sistema moderno de zk-SNARKs se originó en 1985 en un artículo colaborativo de Goldwasser, Micali y Rackoff. Este artículo explora la cantidad de conocimiento que debe ser intercambiado para demostrar la veracidad de una afirmación a través de múltiples interacciones en un sistema interactivo. Si se puede lograr un intercambio de conocimiento nulo, se denomina zk-SNARK. Los primeros sistemas de zk-SNARKs tenían deficiencias en términos de eficiencia y aplicabilidad, permaneciendo principalmente a un nivel teórico.

En la última década, con el auge de la criptografía en el campo de las criptomonedas, los zk-SNARKs han comenzado a prosperar. Entre ellos, la construcción de protocolos de zk-SNARKs generales, no interactivos y de tamaño de prueba limitado se ha convertido en una de las direcciones clave de exploración. El núcleo de los zk-SNARKs radica en equilibrar la velocidad de prueba, la velocidad de verificación y el tamaño de la prueba.

El artículo publicado por Groth en 2010 es un importante avance en el campo de las pruebas de conocimiento cero, que sentó las bases teóricas para zk-SNARKs. En 2015, Zcash adoptó un sistema de pruebas de conocimiento cero para lograr la protección de la privacidad en las transacciones, lo que marcó un importante progreso de esta tecnología en el ámbito de las aplicaciones. Posteriormente, zk-SNARKs se combinó con contratos inteligentes, ampliando así un espectro más amplio de escenarios de aplicación.

Otros logros académicos importantes incluyen:

  • Pinocchio de 2013: comprimiendo las pruebas y el tiempo de verificación a un rango práctico
  • Groth16 de 2016: reduce el tamaño de la prueba y mejora la eficiencia de verificación
  • Bulletproofs de 2017: se propuso una prueba de conocimiento cero corta no interactiva sin necesidad de configuración confiable.
  • zk-STARKs de 2018: se propone un protocolo ZK-STARK sin necesidad de configuración de confianza

La aparición de tecnologías como PLONK y Halo2 también ha traído mejoras adicionales a zk-SNARKs.

HashKey ZK 101 Primera edición: Principios históricos e industria

Dos, aplicaciones de zk-SNARKs

Las dos aplicaciones más amplias de zk-SNARKs son la protección de la privacidad y la escalabilidad. Proyectos de transacciones privadas tempranas como Zcash y Monero recibieron mucha atención, pero debido a que la demanda real no cumplió con las expectativas, fueron desapareciendo gradualmente del mainstream. En los últimos años, con la transición de Ethereum 2.0 hacia una ruta centrada en rollups, las soluciones de escalabilidad basadas en ZK han vuelto a ser el centro de atención.

transacciones privadas

Los proyectos representativos de transacciones privadas incluyen:

  • Zcash y Tornado que utilizan zk-SNARKs
  • Usar Monero con Bulletproof

Tomando Zcash como ejemplo, su proceso de transacción zk-SNARKs incluye: configuración del sistema, generación de claves, acuñación, transacción, verificación y recepción, entre otros pasos. Sin embargo, Zcash todavía presenta algunas limitaciones, como estar basado en el modelo UTXO y ser difícil de escalar. La proporción de uso de transacciones privadas es de menos del 10%, lo que indica que su promoción no ha tenido éxito.

En comparación, Tornado utiliza un único y gran pool de mezcla de monedas, lo que lo hace más versátil y está basado en la red de Ethereum. Tornado es esencialmente un pool de mezcla que utiliza zk-SNARKs y puede ofrecer varias características de protección de la privacidad.

HashKey ZK 101 Primera edición: principios históricos y la industria

escalabilidad

La aplicación de zk en la escalabilidad se puede dividir en redes de primera capa ( como Mina ) y redes de segunda capa (, es decir, zk-rollup ). La idea central del zk-rollup fue propuesta por Vitalik en 2018.

zk-rollup se compone principalmente de dos roles: Sequencer y Aggregator. El Sequencer es responsable de empaquetar las transacciones, mientras que el Aggregator se encarga de combinar las transacciones y generar pruebas zk-SNARKs, que se utilizan para actualizar el árbol de estado de Ethereum.

Las ventajas de zk-rollup incluyen: bajos costos, rápida finalización, protección de la privacidad, entre otros. Las desventajas incluyen: gran carga computacional, consideraciones de seguridad ( como SNARK requieren configuración confiable ), y la posible alteración del orden de las transacciones, entre otros.

Actualmente, los principales proyectos de zk-rollup en el mercado son: StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll, entre otros. Estos proyectos eligen principalmente entre SNARK( y sus versiones mejoradas ) y STARK, así como el grado de soporte para EVM.

La compatibilidad de los sistemas ZK con EVM ha sido un foco de atención en la industria. Actualmente, hay principalmente dos soluciones: compatibilidad total con los códigos de operación de Solidity, o el diseño de una nueva máquina virtual amigable con ZK que sea compatible con Solidity. En los últimos años, la rápida iteración tecnológica ha mejorado significativamente la compatibilidad de EVM, brindando más conveniencia a los desarrolladores.

HashKey ZK 101 Primera edición: principios históricos y la industria

Tres, el principio básico de zk-SNARKs

zk-SNARKs debe cumplir con tres propiedades: integridad, fiabilidad y propiedad de cero conocimiento. zk-SNARK(Argumento de Conocimiento No Interactivo y Conciso de Cero Conocimiento) como un importante esquema de prueba de cero conocimiento, tiene las siguientes características:

  • zk-SNARKs: el proceso de prueba no revela información adicional
  • Sencillo: tamaño de verificación pequeño
  • No interactivo: no se requieren múltiples interacciones
  • Fiabilidad: los probadores con capacidad de cálculo limitada no pueden falsificar pruebas
  • Conocimiento: El probador debe conocer la información válida para construir la prueba.

HashKey ZK 101 Primera edición: principios históricos e industria

Como ejemplo de zk-SNARKs de Groth16, su principio de prueba incluye los siguientes pasos:

  1. Convertir el problema en un circuito
  2. Convertir el circuito a la forma R1CS
  3. Conversión de R1CS a forma QAP
  4. Establecer una configuración confiable, generar parámetros aleatorios
  5. Generación y verificación de pruebas zk-SNARKs

HashKey ZK 101 Primera edición: principios históricos e industria

ZK-1.09%
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • 5
  • Compartir
Comentar
0/400
MevWhisperervip
· hace5h
¡Ven rápido que está interesante!
Ver originalesResponder0
Frontrunnervip
· hace11h
Eh, aún no es tan bueno como L2.
Ver originalesResponder0
tx_pending_forevervip
· hace11h
¿Cuándo podré entender zk...?
Ver originalesResponder0
SelfRuggervip
· hace11h
¡zk es realmente bueno! Finalmente ha salvado el mercado.
Ver originalesResponder0
LightningClickervip
· hace12h
¡Aceleración de la expansión del universo a la velocidad de la luz!
Ver originalesResponder0
  • Anclado
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)