La prueba de conocimiento cero (ZKP) es una tecnología criptográfica propuesta por primera vez por S. Goldwasser, S. Micali y C. Rackoff a principios de la década de 1980 en un artículo titulado The Knowledge Complexity Of Interactive Proof Systems. En este artículo, se conceptualizó como un modelo teórico para abordar el problema de verificar enunciados matemáticos sin revelar la evidencia. Este concepto ganó mucha atención en la comunidad académica ya que desafió los límites de las técnicas de cifrado tradicionales y proporcionó un nuevo enfoque para el manejo de información confidencial.
Con el tiempo, ZKP evolucionó de un concepto teórico abstracto a protocolos concretos que pueden integrarse en diversas aplicaciones. En 2010, Groth publicó un artículo titulado Short Pairing-based Non-interactive Zero-Knowledge Arguments, que se convirtió en un trabajo fundamental en el desarrollo de zk-SNARK, una solución importante en ZKP. La aplicación práctica más importante de ZKP es el sistema de prueba de conocimiento cero utilizado por Z-cash en 2015, que logró protección de la privacidad para transacciones y montos. Posteriormente, zk-SNARK se combinó con contratos inteligentes, lo que dio lugar a una gama más amplia de aplicaciones.
Los principios a los que debe adherirse el ZKP tradicional son los siguientes:
El principio de ZKP se puede entender con un ejemplo simple: si necesito demostrarle a A que tengo el número de teléfono de B, no necesito decirle directamente el número de teléfono de A B. En cambio, puedo marcar directamente el número de teléfono de B y, una vez conectada la llamada, puedo demostrar que efectivamente tengo el número de teléfono de B. Este proceso no revela la información del número de B.
Y zk-SNARK se actualiza aún más sobre esta base, con las siguientes características:
En el artículo de Groth, propuso un método de prueba de conocimiento cero no interactivo basado en emparejamientos que transforma un problema computacional en un programa aritmético cuadrático (QAP) y luego construye una prueba eficiente utilizando criptografía de curva elíptica y funciones hash. Los diseños posteriores de zk-SNARK generalmente implican cuatro pasos:
Para ayudar a comprender, consideremos un ejemplo simple: suponga que tiene un mapa del tesoro que puede guiarlo a la ubicación exacta del tesoro enterrado. Quieres demostrarle a alguien que conoces la ubicación del tesoro sin revelar el contenido del mapa o la ubicación real del tesoro. Si utiliza la tecnología zk-SNARK, necesitará crear un rompecabezas complejo del mapa del tesoro. Seleccionas una pequeña pieza del rompecabezas (una prueba) y se la muestras a la persona, lo que la convence de que sabes cómo encaja el rompecabezas completo, es decir, la ubicación del tesoro, sin ver el rompecabezas completo. Sin embargo, para conseguirlo, necesitarás obtener marcas especiales de una imprenta de confianza, que sirvan como prueba de que la pieza del rompecabezas es auténtica.
El enfoque tradicional de las pruebas de conocimiento cero implica métodos de prueba interactivos, en los que un probador pregunta repetidamente al verificador "¿sí o no?". preguntas hasta llegar a una respuesta correcta. Este proceso es ineficiente. Sin embargo, zk-SNARK elimina la necesidad de interacciones repetidas al obtener un CRS de un tercero confiable. Todos los probadores pueden comparar directamente el CRS para determinar la veracidad. Esto mejora enormemente la eficiencia de las pruebas de conocimiento cero.
Además, zk-SNARK ofrece las siguientes ventajas:
La primera aplicación de zk-SNARK es Zcash, que permite a los usuarios realizar transacciones totalmente anónimas ocultando información como remitentes, destinatarios y montos utilizando zk-SNARK. En el espacio Web3 actual, la tecnología zk-SNARK desempeña un papel importante en la escalabilidad de blockchain y la gestión de reservas de intercambio.
Debido al mecanismo de consenso y los requisitos de seguridad de blockchain, su rendimiento y eficiencia son muy limitados. Para abordar este problema, una solución común es utilizar la tecnología Layer2, que construye una capa adicional sobre la cadena de bloques para migrar una gran cantidad de transacciones o cálculos de la cadena principal (Capa1) a la Capa2, mejorando así el rendimiento y la usabilidad del sistema. .
zk-SNARK juega un papel importante en esta solución, ya que puede comprimir las transacciones o cálculos en Layer2 en una prueba pequeña y rápida, que luego se envía para verificación en la cadena principal, garantizando la corrección y coherencia de Layer2. Actualmente, existen dos soluciones Layer2 convencionales basadas en zk-SNARK: ZK-rollup y Validium.
Debido a la volatilidad y la incertidumbre del mercado de las criptomonedas, muchas bolsas necesitan mantener una cierta cantidad de fondos de reserva para hacer frente a posibles riesgos o demandas. Sin embargo, estos fondos de reserva a menudo carecen de transparencia y confiabilidad, lo que deja a los usuarios inseguros sobre si el intercambio realmente tiene suficientes fondos de reserva para salvaguardar sus activos.
zk-SNARK puede proporcionar una solución a este respecto al permitir que los intercambios demuestren a los usuarios o a los organismos reguladores que poseen una cantidad y un valor adecuados de fondos de reserva sin revelar detalles o ubicaciones de activos específicos.
Un ejemplo típico es Gate.io, que utiliza una combinación de árboles zk-SNARK y Merkle. Cifran los datos del usuario y generan pruebas de los fondos de reserva de 100 tokens diferentes utilizando circuitos restringidos para demostrar su capacidad de solvencia del 100%.
Fuente: https://www.gate.io/proof-of-reserves
Lectura adicional: Cómo zk-SNARK mejora la prueba de reservas de Gate.io
Además de las aplicaciones Web3, zk-SNARK también se puede utilizar en dominios que no son blockchain, como por ejemplo:
En la sección anterior, presentamos los principios técnicos de zk-SNARK, que mencionamos que zk-SNARK mejora la eficiencia de la prueba al encontrar un tercero confiable para generar CRS. Sin embargo, esto también conlleva algunas limitaciones y desafíos inherentes a zk-SNARK.
En resumen, existen varios enfoques para abordar las limitaciones inherentes de zk-SNARK.
zk-SNARK, como tecnología criptográfica innovadora, tiene amplios escenarios de aplicación futuros, especialmente en el campo de la privacidad:
La tecnología zk-SNARK representa un avance significativo en los campos de la protección de la privacidad y la verificación cifrada. No sólo es prometedor porque proporciona sólidas garantías de privacidad, sino que también es práctico para mejorar la escalabilidad de blockchain y otras aplicaciones. A pesar de la existencia de desafíos y limitaciones técnicas, a través de la investigación e innovación continuas, esperamos que zk-SNARK continúe evolucionando, optimizando los sistemas existentes e inspirando nuevos modelos de aplicaciones para impulsar el avance de la tecnología de cifrado y protección de la privacidad. Con la madurez de la tecnología y el creciente énfasis en la privacidad de los datos en la sociedad, zk-SNARK tiene el potencial de convertirse en una herramienta indispensable en la era digital, brindando a los usuarios un mayor control sobre su información y promoviendo interacciones digitales seguras y transparentes.
La prueba de conocimiento cero (ZKP) es una tecnología criptográfica propuesta por primera vez por S. Goldwasser, S. Micali y C. Rackoff a principios de la década de 1980 en un artículo titulado The Knowledge Complexity Of Interactive Proof Systems. En este artículo, se conceptualizó como un modelo teórico para abordar el problema de verificar enunciados matemáticos sin revelar la evidencia. Este concepto ganó mucha atención en la comunidad académica ya que desafió los límites de las técnicas de cifrado tradicionales y proporcionó un nuevo enfoque para el manejo de información confidencial.
Con el tiempo, ZKP evolucionó de un concepto teórico abstracto a protocolos concretos que pueden integrarse en diversas aplicaciones. En 2010, Groth publicó un artículo titulado Short Pairing-based Non-interactive Zero-Knowledge Arguments, que se convirtió en un trabajo fundamental en el desarrollo de zk-SNARK, una solución importante en ZKP. La aplicación práctica más importante de ZKP es el sistema de prueba de conocimiento cero utilizado por Z-cash en 2015, que logró protección de la privacidad para transacciones y montos. Posteriormente, zk-SNARK se combinó con contratos inteligentes, lo que dio lugar a una gama más amplia de aplicaciones.
Los principios a los que debe adherirse el ZKP tradicional son los siguientes:
El principio de ZKP se puede entender con un ejemplo simple: si necesito demostrarle a A que tengo el número de teléfono de B, no necesito decirle directamente el número de teléfono de A B. En cambio, puedo marcar directamente el número de teléfono de B y, una vez conectada la llamada, puedo demostrar que efectivamente tengo el número de teléfono de B. Este proceso no revela la información del número de B.
Y zk-SNARK se actualiza aún más sobre esta base, con las siguientes características:
En el artículo de Groth, propuso un método de prueba de conocimiento cero no interactivo basado en emparejamientos que transforma un problema computacional en un programa aritmético cuadrático (QAP) y luego construye una prueba eficiente utilizando criptografía de curva elíptica y funciones hash. Los diseños posteriores de zk-SNARK generalmente implican cuatro pasos:
Para ayudar a comprender, consideremos un ejemplo simple: suponga que tiene un mapa del tesoro que puede guiarlo a la ubicación exacta del tesoro enterrado. Quieres demostrarle a alguien que conoces la ubicación del tesoro sin revelar el contenido del mapa o la ubicación real del tesoro. Si utiliza la tecnología zk-SNARK, necesitará crear un rompecabezas complejo del mapa del tesoro. Seleccionas una pequeña pieza del rompecabezas (una prueba) y se la muestras a la persona, lo que la convence de que sabes cómo encaja el rompecabezas completo, es decir, la ubicación del tesoro, sin ver el rompecabezas completo. Sin embargo, para conseguirlo, necesitarás obtener marcas especiales de una imprenta de confianza, que sirvan como prueba de que la pieza del rompecabezas es auténtica.
El enfoque tradicional de las pruebas de conocimiento cero implica métodos de prueba interactivos, en los que un probador pregunta repetidamente al verificador "¿sí o no?". preguntas hasta llegar a una respuesta correcta. Este proceso es ineficiente. Sin embargo, zk-SNARK elimina la necesidad de interacciones repetidas al obtener un CRS de un tercero confiable. Todos los probadores pueden comparar directamente el CRS para determinar la veracidad. Esto mejora enormemente la eficiencia de las pruebas de conocimiento cero.
Además, zk-SNARK ofrece las siguientes ventajas:
La primera aplicación de zk-SNARK es Zcash, que permite a los usuarios realizar transacciones totalmente anónimas ocultando información como remitentes, destinatarios y montos utilizando zk-SNARK. En el espacio Web3 actual, la tecnología zk-SNARK desempeña un papel importante en la escalabilidad de blockchain y la gestión de reservas de intercambio.
Debido al mecanismo de consenso y los requisitos de seguridad de blockchain, su rendimiento y eficiencia son muy limitados. Para abordar este problema, una solución común es utilizar la tecnología Layer2, que construye una capa adicional sobre la cadena de bloques para migrar una gran cantidad de transacciones o cálculos de la cadena principal (Capa1) a la Capa2, mejorando así el rendimiento y la usabilidad del sistema. .
zk-SNARK juega un papel importante en esta solución, ya que puede comprimir las transacciones o cálculos en Layer2 en una prueba pequeña y rápida, que luego se envía para verificación en la cadena principal, garantizando la corrección y coherencia de Layer2. Actualmente, existen dos soluciones Layer2 convencionales basadas en zk-SNARK: ZK-rollup y Validium.
Debido a la volatilidad y la incertidumbre del mercado de las criptomonedas, muchas bolsas necesitan mantener una cierta cantidad de fondos de reserva para hacer frente a posibles riesgos o demandas. Sin embargo, estos fondos de reserva a menudo carecen de transparencia y confiabilidad, lo que deja a los usuarios inseguros sobre si el intercambio realmente tiene suficientes fondos de reserva para salvaguardar sus activos.
zk-SNARK puede proporcionar una solución a este respecto al permitir que los intercambios demuestren a los usuarios o a los organismos reguladores que poseen una cantidad y un valor adecuados de fondos de reserva sin revelar detalles o ubicaciones de activos específicos.
Un ejemplo típico es Gate.io, que utiliza una combinación de árboles zk-SNARK y Merkle. Cifran los datos del usuario y generan pruebas de los fondos de reserva de 100 tokens diferentes utilizando circuitos restringidos para demostrar su capacidad de solvencia del 100%.
Fuente: https://www.gate.io/proof-of-reserves
Lectura adicional: Cómo zk-SNARK mejora la prueba de reservas de Gate.io
Además de las aplicaciones Web3, zk-SNARK también se puede utilizar en dominios que no son blockchain, como por ejemplo:
En la sección anterior, presentamos los principios técnicos de zk-SNARK, que mencionamos que zk-SNARK mejora la eficiencia de la prueba al encontrar un tercero confiable para generar CRS. Sin embargo, esto también conlleva algunas limitaciones y desafíos inherentes a zk-SNARK.
En resumen, existen varios enfoques para abordar las limitaciones inherentes de zk-SNARK.
zk-SNARK, como tecnología criptográfica innovadora, tiene amplios escenarios de aplicación futuros, especialmente en el campo de la privacidad:
La tecnología zk-SNARK representa un avance significativo en los campos de la protección de la privacidad y la verificación cifrada. No sólo es prometedor porque proporciona sólidas garantías de privacidad, sino que también es práctico para mejorar la escalabilidad de blockchain y otras aplicaciones. A pesar de la existencia de desafíos y limitaciones técnicas, a través de la investigación e innovación continuas, esperamos que zk-SNARK continúe evolucionando, optimizando los sistemas existentes e inspirando nuevos modelos de aplicaciones para impulsar el avance de la tecnología de cifrado y protección de la privacidad. Con la madurez de la tecnología y el creciente énfasis en la privacidad de los datos en la sociedad, zk-SNARK tiene el potencial de convertirse en una herramienta indispensable en la era digital, brindando a los usuarios un mayor control sobre su información y promoviendo interacciones digitales seguras y transparentes.