Vitalik Buterin, cofundador de ETH Workshop, ha dejado claro que ETH Workshop fracasará sin un cambio tecnológico en la transición a la privacidad. Debido a que todas las transacciones son visibles públicamente, los sacrificios de privacidad son demasiado grandes para muchos usuarios, y todos están recurriendo a soluciones centralizadas que ocultan datos al menos hasta cierto punto.
En 2023, Vitalik realizó una serie de estudios sobre la protección de la privacidad y el avance de las tecnologías de pruebas de conocimiento cero (ZK). En el primer semestre del año, Vitalik publicó tres artículos en su sitio web dedicados a ZK y la protección de la privacidad. En abril, también presentó un estudio en Reddit sobre la privacidad de los guardianes de billeteras. En septiembre, fue coautor de un artículo con otros profesionales en el que proponía una solución para equilibrar la privacidad y el cumplimiento.
Además, ETH Fang Ecology también está promoviendo activamente la discusión y popularización de este tema. En el evento ETHDenver en marzo, se llevó a cabo un evento especial centrado en la privacidad. En la conferencia anual EDCON (Ethereum Community Conference) en mayo, Vitalik enfatizó que “los ZK-SNARK serán tan importantes como las cadenas de bloques en los próximos 10 años”.
Este artículo hace un seguimiento de los últimos desarrollos en el ecosistema de ETH Fang en 2023 en términos de uso de la tecnología ZK para avanzar en la protección de la privacidad. Si desea llegar al circuito ETH ZK, este artículo proporciona la interpretación y la orientación necesarias.
ETH transparencia puede poner la información personal de los usuarios en riesgo de verse comprometida. No hay secretos en las cadenas de bloques como ETH, y toda la información es pública, lo que incluye otras actividades en cadena como transacciones, votaciones, etc. Dicha apertura puede dar lugar a que se rastreen transacciones y direcciones específicas y se vinculen a identidades de usuarios reales. Por lo tanto, es importante implementar la protección de la privacidad en ETH. La ocultación de información en cadena se puede hacer a través de la criptografía, pero el desafío es garantizar que se verifique la validez de estas transacciones mientras se protege la privacidad. La tecnología ZK proporciona una solución para demostrar la autenticidad de una transacción sin revelar información adicional, teniendo en cuenta la privacidad y la verificabilidad.
ETH dan un gran valor a los ZK-SNARK, especialmente en ciertos casos de uso clave que preservan la privacidad. Esto es evidente en las investigaciones y propuestas de Vitalik, donde Salus recopila los escenarios típicos que Vitalik propone en su investigación, a saber, las transacciones privadas y la recuperación social.
Cuando se trata de transacciones privadas, Vitalik propone dos conceptos: Stealth Addresses y Privacy Pools.
El esquema de direcciones de privacidad permite realizar transacciones sin ocultar la identidad del destinatario de la transacción. Este enfoque proporciona protección de la privacidad al tiempo que garantiza la transparencia y la auditabilidad de las transacciones.
Con base en el protocolo del grupo de privacidad, los usuarios pueden demostrar que sus fondos comerciales pertenecen a una fuente conocida que cumple con los requisitos sin revelar transacciones históricas. Este esquema permite a los usuarios realizar transacciones privadas mientras cumplen con las regulaciones.
Ambos escenarios son inseparables de ZK. En ambos escenarios, los usuarios pueden generar pruebas de conocimiento cero para demostrar la validez de sus transacciones.
2.1.1 Dirección de privacidad
Digamos que Alice tiene la intención de transferir algún tipo de activo a Bob, y cuando Bob recibe el activo, no quiere que el público global sepa que él es el destinatario. Aunque es difícil ocultar el hecho de la transferencia de activos, es posible ocultar la identidad del destinatario. Es en este contexto que surgió el esquema de direcciones amigables con la privacidad, y su principal problema es cómo ocultar de manera efectiva la identidad del destinatario de la transacción.
Entonces, ¿cuál es la diferencia entre una dirección de privacidad y una dirección de ETH normal, y cómo usar una dirección de privacidad basada en ZK para transacciones privadas? Salus te los presentará uno a uno.
(1) ¿Cuál es la diferencia entre una dirección privada y una dirección ETH ordinaria?
Una dirección de privacidad es una dirección que permite que el remitente de una transacción se genere de forma no interactiva y solo puede ser accedida por su destinatario. Expliquemos la diferencia entre la dirección de privacidad y la dirección de ETH ordinaria desde dos dimensiones: quién la genera y quién tiene acceso a ella.
¿Generado por quién?
Las direcciones ETH ordinarias son generadas por el propio usuario en base a algoritmos de cifrado y hashing. Una dirección privada puede ser generada por la persona o por la otra parte de la transacción. Por ejemplo, cuando Alice envía una transferencia a Bob, la dirección que Bob usa para aceptar la transferencia puede ser generada por Bob o Alice, pero solo controlada por Bob.
¿Quién puede acceder?
El tipo, la cantidad y el origen de los fondos de una cuenta de ETH ordinaria son visibles públicamente. Mientras que, en las transacciones realizadas con una dirección blindada, solo el destinatario tiene acceso a los fondos almacenados en su dirección oculta. El observador no puede asociar la dirección de privacidad del destinatario con su identidad, protegiendo la privacidad del destinatario.
(2) ¿Cómo utilizar las direcciones de privacidad basadas en ZK para transacciones privadas?
Si Alice desea enviar activos a la dirección de privacidad de Bob para ocultar el destinatario de la transacción. Aquí hay una descripción detallada del proceso de negociación:
La dirección de privacidad en el proceso anterior también se puede construir utilizando pruebas de conocimiento cero construidas a partir de hashes y criptografía de clave pública. El código del contrato inteligente en la dirección de privacidad se puede integrar con ZK. Al incorporar la lógica de verificación de prueba de conocimiento cero, los contratos inteligentes pueden verificar automáticamente la validez de las transacciones. Este esquema para construir una dirección privada es más simple que otros esquemas, incluida la criptografía de curva elíptica, las isogenias de curva elíptica, las celosías y las primitivas genéricas de caja negra.
2.1.2 Grupo de privacidad
Ya sea que las transacciones privadas se logren ocultando la identidad del destinatario de la transacción u otra información sobre la transacción, existe un problema importante: ¿cómo pueden los usuarios demostrar que los fondos de sus transacciones pertenecen a una fuente conocida que cumple con los requisitos sin tener que revelar todo su historial de transacciones? ETH Place, como plataforma pública de blockchain, debe evitar convertirse en un medio para el lavado de dinero y otras actividades ilegales.
Vitalik ha propuesto una solución llamada “Privacy Pool” que tiene como objetivo equilibrar la protección de la privacidad y las necesidades de cumplimiento de las cadenas de bloques. Sin embargo, ¿cuáles son los desafíos de la protección de la privacidad y el cumplimiento, y cómo se equilibra la privacidad y el cumplimiento? Salus ofrece una discusión profunda e instructiva sobre ambos temas.
(1) Protección de la privacidad y desafíos de cumplimiento
Garantizar el cumplimiento de las transacciones y al mismo tiempo lograr la protección de la privacidad es un desafío, y esto se puede demostrar vívidamente analizando el caso de Tornado Cash.
Tornado Cash es un mezclador de criptomonedas que mezcla una gran cantidad de depósitos y retiros. Después de depositar tokens en una dirección, los usuarios pueden presentar ZK Proof para demostrar que han depositado y luego retirar fondos de una nueva dirección. Estas dos operaciones son públicas en la cadena, pero la correspondencia entre ellas no es pública, por lo que son anónimas. Si bien puede mejorar la privacidad de los usuarios, a menudo es utilizado por actores ilegales para lavar dinero. Como resultado, el Departamento del Tesoro de EE. UU., OFAC, finalmente agregó la dirección del contrato inteligente de Tornado Cash a la lista de sanciones. Los reguladores creen que el acuerdo facilita el lavado de dinero y no es propicio para la lucha contra los delitos financieros.
Las deficiencias de Tornado Cash en la protección de la privacidad son que no hay forma de verificar que el origen del token del usuario sea compatible. En respuesta a este problema, Tornado Cash proporciona un servidor centralizado para ayudar al usuario a demostrar que su token es compatible. Sin embargo, el servidor debe obtener los detalles del retiro proporcionados por el usuario y determinar a qué depósito corresponde el retiro, para poder generar la prueba. Este mecanismo centralizado no solo tiene el costo de los supuestos de confianza, sino que también produce asimetría de información. En última instancia, el mecanismo apenas es utilizado por los usuarios. Si bien Tornado Cash implementa funciones de privacidad, no proporciona un mecanismo efectivo para verificar que la fuente del token de un usuario sea compatible, que es lo que los delincuentes pueden explotar.
(2) ¿Cómo se equilibra la privacidad y el cumplimiento?
Sobre la base de estos desafíos, a Vitalik se le ocurrió el concepto de Privacy Pools, que permite a los usuarios demostrar que sus fuentes de financiación cumplen con los requisitos sin revelar información histórica de transacciones. Esto logra un equilibrio entre la privacidad y el cumplimiento.
Los grupos de privacidad se basan en ZK y conjuntos de asociaciones, lo que permite a los usuarios generar y emitir pruebas de ZK-SNARK que demuestran que sus fondos provienen de una fuente conocida y compatible. Esto significa que los fondos pertenecen a un conjunto de asociaciones conforme o no pertenecen a un conjunto de asociaciones no conforme.
Los proveedores de recopilaciones de asociaciones crean colecciones de correlación en función de directivas específicas:
Prueba de membresía: Coloque los depósitos de todas las plataformas comerciales confiables en un conjunto de correlación y, además, existe evidencia concluyente de que son de bajo riesgo.
Prueba de exclusión: Identifique un grupo de depósitos que han sido marcados como riesgosos, o para los cuales existe evidencia concluyente de que son fondos que no cumplen con los requisitos. Construya una colección asociada que contenga todos los depósitos excepto estos depósitos.
Al realizar un depósito, los usuarios generan un secreto a través de ZK y cifran una identificación de moneda pública para marcar su asociación con los fondos. Al retirar, el usuario envía un anulador correspondiente al secreto (el anulador es un identificador único derivado del secreto), lo que demuestra que los fondos son suyos. Además, los usuarios pueden demostrar que sus fondos pertenecen a una fuente conocida que cumple con los requisitos demostrando dos sucursales de merkle a través de ZK:
Su ID de moneda pertenece al árbol de ID de moneda, que es una colección de todas las transacciones que se están llevando a cabo actualmente;
Su ID de moneda pertenece a un árbol de conjuntos de asociaciones, que es una colección de transacciones que el usuario considera compatibles.
(3) ¿Cuáles son los escenarios de aplicación de ZK en los grupos de privacidad?
Flexibilidad para transacciones privadas: Con el fin de procesar transferencias de cualquier denominación en transacciones privadas, se adjuntan pruebas adicionales de conocimiento cero a cada transacción. Esta prueba asegura que la denominación total del token creado no supera la denominación total del token que se está consumiendo, asegurando así la validez de la transacción. En segundo lugar, ZK mantiene la continuidad y la privacidad de las transacciones al verificar el compromiso de cada transacción con el ID del token de depósito original, lo que permite garantizar que cada retiro esté asociado con su depósito original correspondiente, incluso en el caso de retiros parciales.
Ataques de suma de saldos: Los ataques de suma de saldos se pueden resistir fusionando tokens y comprometiéndose con un conjunto de ID de tokens, así como con un compromiso de unión de transacciones principales con múltiples transacciones de entrada. Este enfoque se basa en ZK para garantizar que todos los ID de token comprometidos estén en sus colecciones asociadas, lo que mejora la privacidad de las transacciones.
En la vida real, podemos tener más de una cuenta de tarjeta bancaria. Perder el PIN de su tarjeta significa que no podemos usar los fondos de nuestra tarjeta. En este caso, solemos acudir al banco para que nos ayude a recuperar la contraseña.
Del mismo modo, en blockchains como ETH, podemos tener múltiples direcciones (cuentas). Una clave privada, como la contraseña de una tarjeta bancaria, es la única herramienta que tienes para controlar los fondos de tu cuenta. Una vez que pierde su clave privada, pierde el control de su cuenta y ya no puede acceder a los fondos de su cuenta. Al igual que la recuperación de contraseñas en el mundo real, las billeteras blockchain proporcionan un mecanismo de recuperación social para ayudar a los usuarios a recuperar sus claves privadas perdidas. Este mecanismo permite a los usuarios seleccionar un grupo de personas de confianza para que actúen como guardianes al crear una billetera. Estos guardianes pueden ayudar a los usuarios a recuperar el control de sus cuentas aprobando el restablecimiento de sus claves privadas en caso de que pierdan sus claves privadas.
En el marco de este mecanismo de recuperación y tutela social, Vitalik propone dos puntos de protección de la privacidad a los que hay que prestar atención:
Ocultar la correlación entre varias direcciones: Para proteger la privacidad del usuario, debemos evitar que la atribución de varias direcciones quede expuesta al recuperar varias direcciones con una sola frase de recuperación.
Proteger la privacidad de la propiedad del usuario del tutor: Debemos asegurarnos de que el tutor no pueda obtener la información de los activos del usuario ni observar el comportamiento de las transacciones del usuario durante el proceso de aprobación de la operación del usuario, a fin de evitar que se viole la privacidad de la propiedad del usuario.
La tecnología clave para lograr ambos tipos de protección de la privacidad son las pruebas de conocimiento cero.
2.2.1 Ocultar la correlación entre varias direcciones de un usuario
(1) Cuestiones de privacidad en la recuperación social: Se revela la correlación entre las direcciones
En blockchains como ETH, los usuarios suelen generar múltiples direcciones para diversas transacciones con el fin de proteger su privacidad. Al usar diferentes direcciones para cada transacción, puede evitar que observadores externos asocien fácilmente estas transacciones con el mismo usuario.
Sin embargo, si se pierde la clave privada del usuario, no se recuperarán los fondos generados por la clave privada en varias direcciones. En este caso, se requiere la recuperación social. Una forma fácil de recuperar es recuperar varias direcciones con un solo clic, donde el usuario utiliza la misma frase de recuperación para recuperar varias direcciones generadas por una sola clave privada. Sin embargo, este enfoque no es ideal, ya que los usuarios generan varias direcciones para evitar que se asocien entre sí. Si un usuario elige restaurar todas las direcciones al mismo tiempo o en un momento similar, esto revela efectivamente que las direcciones son propiedad del mismo usuario. Esto va en contra de la intención original del usuario de crear varias direcciones para proteger su privacidad. Esto constituye una cuestión de protección de la privacidad en el proceso de recuperación social.
(2) Solución ZK: ¿Cómo evitar que se divulgue la correlación de múltiples direcciones?
La tecnología ZK se puede utilizar para ocultar la correlación entre múltiples direcciones de un usuario en la cadena de bloques y resolver el problema de privacidad de la recuperación social a través de una arquitectura que separa la lógica de verificación y las tenencias de activos.
Lógica de verificación: Los usuarios tienen varias direcciones en la cadena de bloques, pero la lógica de verificación de todas ellas está conectada a un contrato de autenticación principal (contrato de almacén de claves).
Tenencia y comercio de activos: Cuando los usuarios operan desde cualquier dirección, aprovechan la tecnología ZK para verificar el permiso para operar sin revelar de qué dirección se trata.
De esta manera, incluso si todas las direcciones están conectadas al mismo contrato de almacén de claves, un observador externo no puede determinar si las direcciones pertenecen al mismo usuario, logrando así la privacidad entre direcciones.
Es importante diseñar un esquema privado de recuperación social que pueda recuperar múltiples direcciones de usuarios al mismo tiempo sin revelar la correlación entre ellas.
2.2.2 Proteger la privacidad de la propiedad del usuario de la infracción de los tutores
(1) Cuestión de privacidad: el privilegio del tutor
En cadenas de bloques como ETH, los usuarios pueden establecer varios guardianes al crear una billetera. Especialmente para las billeteras multifirma y las billeteras de recuperación social, el papel del guardián es crucial. Normalmente, un tutor es una colección de N direcciones en poder de otra persona, donde cualquier dirección M puede aprobar una acción.
¿Cuáles son los privilegios de la tutela, tales como:
En el caso de los monederos multifirma, cada transacción debe estar firmada por M de los N guardianes antes de que pueda ser procesada.
Para Social Recovery Wallet, si se pierde la clave privada del usuario, M de los N guardianes deben firmar un mensaje para restablecer la clave privada.
Los tutores pueden aprobar sus acciones. En multifirma, esto sería cualquier transacción. En Social Recovery Wallet, esto será un restablecimiento de la clave privada de su cuenta. Uno de los retos a los que se enfrenta el mecanismo de tutela hoy en día es cómo proteger la privacidad financiera del usuario de la invasión del tutor.
(2) Solución ZK: Proteger la privacidad de la propiedad de los usuarios de la infracción de los tutores
En este artículo, Vitalik prevé que el tutor no está protegiendo su cuenta, sino más bien un contrato de “caja de seguridad”, y el vínculo entre su cuenta y esta caja fuerte está oculto. Esto significa que los tutores no tienen acceso directo a la cuenta del usuario y solo pueden hacerlo a través de un contrato de caja de seguridad oculto.
La función principal de ZK es proporcionar un sistema de certificación que permita a los tutores demostrar que una declaración es verdadera sin revelar los detalles de la declaración. En este caso, el tutor puede usar el ZK-SNARK para demostrar que tiene la autoridad para realizar una acción sin revelar ningún detalle relacionado con el “vínculo entre la cuenta y la caja de seguridad”.
Si bien la pista ETH ZK aún se encuentra en la etapa de desarrollo, y muchas ideas y conceptos innovadores aún se están concibiendo y estudiando, el ecosistema ETH ya ha lanzado una gama más amplia de actividades prácticas de exploración.
(1) Financiación de la Fundación ETH
En septiembre, la Fundación ETH Ethereum financió dos proyectos de preservación de la privacidad, IoTeX y ZK-Team. IoTex es una billetera abstracta para cuentas basada en pruebas de conocimiento cero, y ZK-Team se dedica a permitir que las organizaciones administren a los miembros del equipo mientras mantienen la privacidad personal.
(2) Inversión
En octubre, Vitalik, cofundador de ETH Place, invirtió en Nocturne Labs con el objetivo de llevar cuentas privadas a ETH Place. Los usuarios tendrán cuentas “internas” en Nocturne y el método para recibir/gastar fondos de estas cuentas será anónimo. Con la tecnología ZK, los usuarios pueden demostrar que tienen fondos suficientes para transacciones, como pagos, apuestas, etc.
(3) Reuniones y eventos
ETHDenver es considerado uno de los eventos más importantes relacionados con la ETH y la tecnología blockchain en el mundo. En marzo de este año, ETHDenver organizó un evento especial centrado en la privacidad. Este evento no solo muestra la preocupación de la comunidad ETH por los problemas de privacidad, sino que también refleja la importancia que la comunidad global de blockchain otorga a la protección de la privacidad. En este evento especial, se llevaron a cabo nueve sesiones relacionadas con la privacidad, incluyendo Privacy by Design y Privacy vs Security.
EDCON (Ethereum Community Conference) es una conferencia anual global organizada por la comunidad ETH, con el objetivo de promover el desarrollo y la innovación de ETH y fortalecer la conexión y la cooperación de la comunidad ETH. En la conferencia EDCON en mayo de este año, Vitalik hizo una declaración importante, afirmando que “en los próximos 10 años, los ZK-SNARK serán tan importantes como la cadena de bloques”. Esta declaración destaca la importancia de los ZK-SNARK en la tendencia de desarrollo de la tecnología blockchain.
(4) Proyectos
En la actualidad, algunos proyectos de capa de aplicación han comenzado a utilizar la tecnología ZK para proporcionar servicios de protección de la privacidad de los usuarios y las transacciones. Estos proyectos de capa de aplicación se denominan aplicaciones ZK. Por ejemplo, ZK Application, unyfy, un intercambio de activos de privacidad implementado en ETH. Aquí se ocultan los precios de las órdenes comerciales, y la integridad de estas órdenes con precios ocultos es verificada por la tecnología ZK. Además de unyfy, hay una serie de otras aplicaciones ZK en L2, como ZigZag y Loopring, entre otras. Si bien estas aplicaciones ZK preservan la privacidad en función de ZK, no se pueden implementar en ETH porque EVM no puede ejecutar estas aplicaciones ZK directamente.
(5) Investigación
Además, los investigadores han mantenido una acalorada discusión sobre la tecnología ZK y sus aplicaciones en la plataforma Ethereum Research, incluido un artículo de investigación de Salus dedicado al uso de ZK para promover la implementación de la protección de la privacidad en la capa de aplicación de ETH. Este artículo prueba el rendimiento de varios lenguajes ZK diferentes, Circom, Noir y Halo 2, y los resultados muestran que Circom tiene un mejor rendimiento. El artículo también propone una solución genérica para integrar Circom en Solidity para implementar un proyecto de capa de aplicación ETH basado en ZK. Esto es de gran importancia para ETH Fang para lograr una transición de privacidad. Este estudio ha ganado una atención significativa en 2023, ocupando el primer lugar en la lista.

Este artículo de investigación es el estudio más leído de 2023 en Ethereum Research— autor Salus
Aunque muchos de los proyectos existentes de capa de aplicación ETH necesitan urgentemente introducir un mecanismo de preservación de la privacidad basado en ZK, este proceso se enfrenta a una serie de desafíos.
Falta de recursos de talento en ZK: El estudio de la tecnología ZK requiere una sólida base teórica, especialmente en los campos de la criptografía y las matemáticas. Dado que la implementación de la tecnología ZK implica fórmulas complejas, los alumnos también deben tener fuertes habilidades de interpretación de fórmulas. Pero el problema es que hay relativamente pocas personas que se centran en el aprendizaje de la tecnología ZK.
Limitaciones de los lenguajes de desarrollo ZK: Lenguajes como Rust, Cairo y Halo 2 se utilizan para desarrollar circuitos a prueba de ZK, pero generalmente solo son adecuados para escenarios específicos y no son adecuados para proyectos de capa de aplicación. Algunos de estos lenguajes, como Cairo, aún son experimentales, y puede haber problemas de compatibilidad entre diferentes versiones, lo que hace que sea difícil y complejo adoptarlos en aplicaciones del mundo real.
Dificultad en la implementación de la tecnología ZK: La solución de Vitalik de aplicar la tecnología ZK a la protección de la privacidad en ETH puede enfrentar una variedad de problemas complejos en la implementación real, como la forma de evitar los ataques de suma de saldo y los ataques de doble gasto en transacciones privadas. Existe una cierta dificultad técnica para resolver estos problemas.
Privacidad vs. cumplimiento: Si bien las transacciones privadas protegen las identidades de los usuarios y los detalles de las transacciones, también pueden enmascarar actividades ilegales, como el lavado de dinero. En el futuro, queda por verificar si las aplicaciones ZK en ETH cumplirán con el proceso de implementación de la protección de la privacidad.
A pesar de los desafíos, la transición de ETH Place a la privacidad, un requisito previo para asegurar la transferencia de fondos que brindan protección de la privacidad y garantizar que todas las demás herramientas que se están desarrollando (recuperación social, identidad, reputación) protejan la privacidad, es implementar aplicaciones ZK de manera extensiva. Como se mencionó anteriormente, la investigación publicada por Salus se basa en la tecnología ZK para promover características como la protección de la privacidad en la capa de aplicación ETH. Además, Salus propuso por primera vez una solución universal que integra Circom y Solidity y la aplica a proyectos de capa de aplicación ETH, implementando el sistema de prueba ZK fuera de la cadena basado en Circom, e implementando contratos inteligentes y lógica de verificación ZK en el ETH basado en Solidity. Si necesitas ayuda o tienes alguna pregunta, no dudes en ponerte en contacto con Salus.
En 2023, la comunidad ETH, dirigida por Vitalik Buterin, exploró el potencial de la tecnología a prueba de conocimiento cero con el objetivo de mejorar las funciones de preservación de la privacidad de la plataforma. Si bien estas propuestas aún se encuentran en la fase de investigación, la investigación y los artículos de Vitalik, en particular sobre el equilibrio entre la privacidad y el cumplimiento, proporcionan una base teórica para las técnicas de conocimiento cero para proteger la privacidad del usuario.
Aunque existen desafíos en la integración de la tecnología de prueba de conocimiento cero en ETH, se espera que las pruebas de conocimiento cero desempeñen un papel aún más importante en el ecosistema de talleres de ETH en un futuro cercano a medida que la tecnología madure y la comunidad continúe trabajando duro. Por lo tanto, el compromiso oportuno y la exploración activa en esta área, aprovechando las oportunidades tempranas, ayudarán a ocupar una posición sólida en este campo emergente.