Historia del desarrollo de zk-SNARKs y análisis del principio de ZK-SNARK

robot
Generación de resúmenes en curso

Desarrollo y exploración de aplicaciones de zk-SNARKs

I. La historia de zk-SNARKs

El sistema moderno de zk-SNARKs tiene su origen en un artículo coescrito en 1985 por Goldwasser, Micali y Rackoff. Este artículo explora la cantidad de conocimiento que se necesita intercambiar a través de múltiples interacciones para probar la validez de una afirmación en un sistema interactivo. Si se puede lograr el intercambio de conocimiento cero, se denomina zk-SNARK. Aunque este sistema interactivo no puede ser probado completamente en términos matemáticos, es correcto en un sentido probabilístico.

Para superar las limitaciones de los sistemas interactivos, los sistemas no interactivos han surgido como una opción ideal para zk-SNARKs. Los primeros sistemas de zk-SNARKs tenían deficiencias en términos de practicidad, y no fue hasta la última década que comenzaron a florecer. En este sentido, el desarrollo de protocolos de zk-SNARKs que sean generales, no interactivos y con un tamaño de prueba limitado se ha convertido en una de las direcciones clave de exploración.

Un importante avance en los zk-SNARKs es la prueba de conocimiento cero no interactiva de corta emparejamiento propuesta por Groth en 2010, que sentó las bases teóricas para los zk-SNARKs. En 2015, los zk-SNARKs se aplicaron en el proyecto Zcash, logrando la protección de la privacidad de las transacciones. Desde entonces, la combinación de zk-SNARKs con contratos inteligentes ha ampliado aún más sus escenarios de aplicación.

Durante este tiempo, algunos logros académicos importantes incluyen:

  • El protocolo Pinocchio de 2013, que comprimió el tiempo de prueba y verificación.
  • Groth16 de 2016, que simplificó el tamaño de la prueba y mejoró la eficiencia de la verificación
  • En 2017, Bulletproofs propuso pruebas de conocimiento cero no interactivas y breves.
  • En 2018, se propusieron los zk-STARKs, un protocolo de algoritmo que no requiere una configuración de confianza.

Otros desarrollos como PLONK, Halo2, etc. también han mejorado zk-SNARKs.

HashKey ZK 101 Primera Edición: Principios Históricos y la Industria

Dos, las principales aplicaciones de zk-SNARKs

Las dos aplicaciones más amplias de zk-SNARKs son la protección de la privacidad y la escalabilidad.

En términos de protección de la privacidad, los primeros proyectos representativos incluyen Zcash y Monero. Sin embargo, debido a que la necesidad de transacciones privadas no ha sido tan alta como se esperaba, este tipo de proyectos han ido quedando en un segundo plano.

En cuanto a la escalabilidad de aplicaciones, con Ethereum girando hacia una ruta centrada en rollups, la serie ZK ha vuelto a convertirse en el centro de atención de la industria. La escalabilidad de ZK se puede lograr en una red de capa uno, como el proyecto Mina; también se puede lograr en una red de capa dos, es decir, zk-rollup.

Los principales roles de zk-rollup incluyen Sequencer y Aggregator. El Sequencer se encarga de empaquetar las transacciones, mientras que el Aggregator se encarga de fusionar las transacciones y generar zk-SNARKs para actualizar el estado en la cadena.

Las ventajas de zk-rollup incluyen bajos costos, rápida finalización y protección de la privacidad; las desventajas incluyen una gran cantidad de cálculos y la necesidad de configuraciones de confianza, entre otras.

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

Actualmente, los proyectos de zk-rollup competitivos en el mercado incluyen StarkNet, zkSync, Aztec Connect, Polygon Hermez, entre otros. Estos proyectos eligen principalmente entre SNARK( y sus versiones mejoradas ) y STARK, así como el nivel de soporte para EVM.

La compatibilidad con EVM es un tema importante. Algunos proyectos eligen ser completamente compatibles con el código de operación de Solidity, mientras que otros diseñan nuevas máquinas virtuales para equilibrar la amigabilidad con ZK y la compatibilidad con Solidity. En los últimos años, la mejora de la compatibilidad con EVM ha proporcionado más comodidad a los desarrolladores.

HashKey ZK 101 Primera Edición: Principios Históricos e Industria

Tres, el principio básico de ZK-SNARKs

Las zk-SNARKs deben cumplir con tres características: integridad, fiabilidad y conocimiento cero. ZK-SNARK es un protocolo de prueba de conocimiento cero ampliamente utilizado, cuyo nombre completo es "Prueba de conocimiento cero concisa y no interactiva".

Los pasos básicos de ZK-SNARKs incluyen:

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

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

El desarrollo de ZK-SNARKs ha establecido las bases para la aplicación de zk-SNARKs en el campo de blockchain. En el futuro, con el avance de la tecnología, se espera que zk-SNARKs desempeñe un papel importante en más escenarios.

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

ZK1.08%
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
  • 4
  • Compartir
Comentar
0/400
GasGuzzlervip
· 07-18 21:54
zk真alcista啊!
Ver originalesResponder0
OnchainHolmesvip
· 07-16 02:45
zk es demasiado absurdo 8
Ver originalesResponder0
FloorSweepervip
· 07-16 02:41
ngmi si todavía no entiendes la tecnología zk
Ver originalesResponder0
BlockchainDecodervip
· 07-16 02:36
Citando el punto de vista del artículo de Goldwasser de 1989, ZK es esencialmente un problema de granularidad interactiva.
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)