El sistema de pruebas de conocimiento cero se originó en 1985 en el artículo de Goldwasser, Micali y Rackoff, que exploró la cantidad de conocimiento que se necesita intercambiar para probar la corrección en sistemas interactivos. Si se puede realizar un intercambio de conocimiento cero, se llama prueba de conocimiento cero. Los primeros sistemas de prueba de conocimiento cero tenían una eficiencia y usabilidad insuficientes, permaneciendo principalmente a un nivel teórico.
En la última década, zk-SNARKs se han desarrollado rápidamente y se han convertido en una dirección importante en el campo de la criptografía. Entre ellos, el desarrollo de protocolos de zk-SNARKs generales, no interactivos y de pequeño tamaño de prueba es una de las direcciones clave de exploración. zk-SNARKs necesitan equilibrar la velocidad de prueba, la velocidad de verificación y el tamaño de la prueba.
El artículo de Groth de 2010 es un importante avance en el campo de ZKP, sentando las bases teóricas para zk-SNARKs. En 2015, Zcash aplicó zk-SNARKs para proteger la privacidad de las transacciones, lo que dio inicio a la amplia aplicación de ZKP.
Otros logros académicos importantes incluyen:
Protocolo Pinocchio de 2013
Algoritmo Groth16 de 2016
Algoritmo Bulletproofs de 2017
Protocolo zk-STARKs de 2018
Además, PLONK, Halo2 y otros son importantes avances en el campo de ZKP.
2. Aplicaciones de zk-SNARKs
zk-SNARKs se aplica principalmente en dos áreas: protección de la privacidad y escalabilidad.
protección de la privacidad
Los proyectos de transacciones privadas tempranas como Zcash y Monero fueron bastante destacados, pero ahora han ido perdiendo protagonismo en la esfera principal. Zcash utiliza zk-SNARKs para implementar transacciones privadas, cuyos pasos principales incluyen la configuración del sistema, generación de claves, acuñación, transacciones, verificación y recepción.
Tornado Cash utiliza un único gran pool de mezcla, basado en la red de Ethereum, y emplea zk-SNARKs para implementar protección de privacidad. Sus principales características incluyen que solo se pueden retirar las monedas depositadas, las monedas no se pueden retirar de nuevo, y la prueba está vinculada a la notificación de anulación, entre otras.
En comparación con la escalabilidad, la implementación de la protección de la privacidad es relativamente fácil. Si el esquema de escalabilidad tiene éxito, la protección de la privacidad no será un problema.
escalabilidad
La expansión ZK se puede implementar en una red de capa uno o de capa dos. ZK rollup es una importante solución de escalabilidad de capa dos, que incluye dos tipos de roles: Sequencer y Aggregator. El Sequencer es responsable de empaquetar transacciones, el Aggregator combina transacciones y genera pruebas ZK, actualizando el árbol de estado de Ethereum.
Las ventajas de ZK rollup son costos bajos, finalización rápida, etc., y las desventajas son gran carga computacional, necesidad de configuraciones de confianza, etc. Actualmente, los principales proyectos de ZK rollup son StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll, entre otros.
La ruta técnica se centra principalmente en la elección entre SNARK( y su versión mejorada ), así como en el grado de soporte para EVM. La compatibilidad con EVM es un problema clave que afecta el ecosistema de desarrollo y el panorama competitivo.
Tres, el principio básico de zk-SNARKs
ZK-SNARKs tiene tres características: integridad, fiabilidad y cero conocimiento. Su principio de implementación incluye principalmente:
Convertir el problema en un circuito
Convertir el circuito a la forma R1CS
R1CS convertido a la forma QAP
Establecer un trusted setup, generar parámetros aleatorios
Generación y verificación de pruebas zk-SNARKs
El desarrollo de zk-SNARKs, sus aplicaciones y la relación con zk-STARK se explorarán en profundidad en el futuro.
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.
El desarrollo de zk-SNARKs y sus aplicaciones duales: protección de la privacidad y escalado Layer2
zk-SNARKs en la historia y sus aplicaciones
Uno, el desarrollo de zk-SNARKs
El sistema de pruebas de conocimiento cero se originó en 1985 en el artículo de Goldwasser, Micali y Rackoff, que exploró la cantidad de conocimiento que se necesita intercambiar para probar la corrección en sistemas interactivos. Si se puede realizar un intercambio de conocimiento cero, se llama prueba de conocimiento cero. Los primeros sistemas de prueba de conocimiento cero tenían una eficiencia y usabilidad insuficientes, permaneciendo principalmente a un nivel teórico.
En la última década, zk-SNARKs se han desarrollado rápidamente y se han convertido en una dirección importante en el campo de la criptografía. Entre ellos, el desarrollo de protocolos de zk-SNARKs generales, no interactivos y de pequeño tamaño de prueba es una de las direcciones clave de exploración. zk-SNARKs necesitan equilibrar la velocidad de prueba, la velocidad de verificación y el tamaño de la prueba.
El artículo de Groth de 2010 es un importante avance en el campo de ZKP, sentando las bases teóricas para zk-SNARKs. En 2015, Zcash aplicó zk-SNARKs para proteger la privacidad de las transacciones, lo que dio inicio a la amplia aplicación de ZKP.
Otros logros académicos importantes incluyen:
Además, PLONK, Halo2 y otros son importantes avances en el campo de ZKP.
2. Aplicaciones de zk-SNARKs
zk-SNARKs se aplica principalmente en dos áreas: protección de la privacidad y escalabilidad.
protección de la privacidad
Los proyectos de transacciones privadas tempranas como Zcash y Monero fueron bastante destacados, pero ahora han ido perdiendo protagonismo en la esfera principal. Zcash utiliza zk-SNARKs para implementar transacciones privadas, cuyos pasos principales incluyen la configuración del sistema, generación de claves, acuñación, transacciones, verificación y recepción.
Tornado Cash utiliza un único gran pool de mezcla, basado en la red de Ethereum, y emplea zk-SNARKs para implementar protección de privacidad. Sus principales características incluyen que solo se pueden retirar las monedas depositadas, las monedas no se pueden retirar de nuevo, y la prueba está vinculada a la notificación de anulación, entre otras.
En comparación con la escalabilidad, la implementación de la protección de la privacidad es relativamente fácil. Si el esquema de escalabilidad tiene éxito, la protección de la privacidad no será un problema.
escalabilidad
La expansión ZK se puede implementar en una red de capa uno o de capa dos. ZK rollup es una importante solución de escalabilidad de capa dos, que incluye dos tipos de roles: Sequencer y Aggregator. El Sequencer es responsable de empaquetar transacciones, el Aggregator combina transacciones y genera pruebas ZK, actualizando el árbol de estado de Ethereum.
Las ventajas de ZK rollup son costos bajos, finalización rápida, etc., y las desventajas son gran carga computacional, necesidad de configuraciones de confianza, etc. Actualmente, los principales proyectos de ZK rollup son StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll, entre otros.
La ruta técnica se centra principalmente en la elección entre SNARK( y su versión mejorada ), así como en el grado de soporte para EVM. La compatibilidad con EVM es un problema clave que afecta el ecosistema de desarrollo y el panorama competitivo.
Tres, el principio básico de zk-SNARKs
ZK-SNARKs tiene tres características: integridad, fiabilidad y cero conocimiento. Su principio de implementación incluye principalmente:
El desarrollo de zk-SNARKs, sus aplicaciones y la relación con zk-STARK se explorarán en profundidad en el futuro.