¿Cómo lo hicieron? Revisión de las tecnologías de anonimización de criptomonedas.

Seguramente a ti, como usuario de Bitcoin, Ether o cualquier otra criptomoneda, te preocupaba que cualquiera pudiera ver cuántas monedas tienes en tu billetera, a quién las transferiste y de quién las recibiste. Existe mucha controversia en torno a las criptomonedas anónimas, pero una cosa con la que no podemos estar en desacuerdo es cómo сказал El director del proyecto Monero, Riccardo Spagni, en su cuenta de Twitter: "¿Qué pasa si simplemente no quiero que el cajero del supermercado sepa cuánto dinero tengo en mi saldo y en qué lo gasto?"

¿Cómo lo hicieron? Revisión de las tecnologías de anonimización de criptomonedas.

En este artículo veremos el aspecto tecnológico del anonimato: cómo lo hacen y daremos una breve descripción de los métodos más populares, sus ventajas y desventajas.

Hoy en día existen alrededor de una docena de blockchains que permiten transacciones anónimas. Al mismo tiempo, para algunos el anonimato de las transferencias es obligatorio, para otros es opcional, algunos ocultan solo los destinatarios y destinatarios, otros no permiten que terceros vean ni siquiera los montos de las transferencias. Casi todas las tecnologías que estamos considerando proporcionan un anonimato total: un observador externo no puede analizar ni los saldos, ni los destinatarios, ni el historial de transacciones. Pero comencemos nuestra revisión con uno de los pioneros en este campo en rastrear la evolución de los enfoques hacia el anonimato.

Las tecnologías de anonimización actualmente existentes se pueden dividir a grandes rasgos en dos grupos: las basadas en la mezcla (en las que las monedas utilizadas se mezclan con otras monedas de la cadena de bloques) y las tecnologías que utilizan pruebas basadas en polinomios. A continuación, nos centraremos en cada uno de estos grupos y consideraremos sus pros y sus contras.

amasado a base

CoinJoin

CoinJoin no anonimiza las traducciones de los usuarios, solo complica su seguimiento. Pero decidimos incluir esta tecnología en nuestra revisión, ya que fue uno de los primeros intentos de aumentar el nivel de confidencialidad de las transacciones en la red Bitcoin. Esta tecnología cautiva por su simplicidad y no requiere cambiar las reglas de la red, por lo que se puede utilizar fácilmente en muchas cadenas de bloques.

Se basa en una idea simple: ¿qué pasaría si los usuarios aportan y realizan sus pagos en una sola transacción? Resulta que si Arnold Schwarzenegger y Barack Obama contribuyeron y realizaron dos pagos a Charlie Sheen y Donald Trump en una sola transacción, entonces resulta más difícil entender quién financió la campaña electoral de Trump: Arnold o Barack.

Pero de la principal ventaja de CoinJoin surge su principal desventaja: la seguridad débil. Hoy en día, ya existen formas de identificar transacciones CoinJoin en la red y hacer coincidir conjuntos de entradas con conjuntos de salidas comparando las cantidades de monedas gastadas y generadas. Un ejemplo de una herramienta para dicho análisis es CoinÚnete al Sudoku.

Pros:

• Simplicidad

Contras:

• Hackabilidad demostrada

monero

La primera asociación que surge al escuchar las palabras “criptomoneda anónima” es Monero. esta moneda demostrado su estabilidad y privacidad bajo el microscopio de los servicios de inteligencia:

¿Cómo lo hicieron? Revisión de las tecnologías de anonimización de criptomonedas.

En uno de sus recientes artículos Hemos descrito el protocolo de Monero con gran detalle y hoy resumiremos lo dicho.

En el protocolo Monero, cada salida gastada en una transacción se mezcla con al menos 11 (en el momento de escribir este artículo) salidas aleatorias de la cadena de bloques, lo que complica el gráfico de transferencia de la red y hace que la tarea de rastrear transacciones sea computacionalmente compleja. Las entradas mixtas se firman con una firma anular, lo que garantiza que la firma fue proporcionada por el propietario de una de las monedas mixtas, pero no permite determinar quién.

Para ocultar a los destinatarios, cada moneda recién generada utiliza una dirección única, lo que hace imposible que un observador (tan difícil como descifrar las claves de cifrado, por supuesto) asocie cualquier salida con una dirección pública. Y desde septiembre de 2017, Monero comenzó a soportar el protocolo. Transacciones confidenciales (CT) con algunas adiciones, ocultando así también los importes de las transferencias. Un poco más tarde, los desarrolladores de criptomonedas reemplazaron las firmas borromeas con Bulletproofs, reduciendo así significativamente el tamaño de la transacción.

Pros:

• Probado en el tiempo
• Relativa simplicidad

Contras:

• La generación y verificación de pruebas es más lenta que las ZK-SNARK y ZK-STARK.
• No es resistente a la piratería mediante computadoras cuánticas

Mimblewimble

Mimblewimble (MW) se inventó como una tecnología escalable para anonimizar transferencias en la red Bitcoin, pero encontró su implementación como una cadena de bloques independiente. Utilizado en criptomonedas sonrisa и BEAM.

MW se destaca porque no tiene direcciones públicas y, para enviar una transacción, los usuarios intercambian resultados directamente, eliminando así la capacidad de un observador externo de analizar las transferencias de un destinatario a otro.

Para ocultar las sumas de entradas y salidas, se utiliza un protocolo bastante común propuesto por Greg Maxwell en 2015: Transacciones confidenciales (CONNECTICUT). Es decir, los importes están cifrados (o mejor dicho, utilizan esquema de compromiso), y en lugar de ellos la red opera con los llamados compromisos. Para que una transacción se considere válida, la cantidad de monedas gastadas y generadas más la comisión deben ser iguales. Dado que la red no opera directamente con números, la igualdad se asegura mediante la ecuación de estos mismos compromisos, que se denomina compromiso a cero.

En el CT original, para garantizar la no negatividad de los valores (la llamada prueba de rango), se utilizan firmas borromeas (firmas en anillo borromeas), que ocupaban mucho espacio en la cadena de bloques (alrededor de 6 kilobytes por salida). ). En este sentido, las desventajas de las monedas anónimas que utilizan esta tecnología incluyen el gran tamaño de las transacciones, pero ahora han decidido abandonar estas firmas en favor de una tecnología más compacta: Bulletproofs.

No existe el concepto de transacción en el bloque MW en sí, solo hay productos gastados y generados dentro de él. Sin transacción, ¡no hay problema!

Para evitar la anonimización del participante de la transferencia en la etapa de envío de la transacción a la red, se utiliza un protocolo Diente de león, que utiliza una cadena de nodos proxy de red de longitud arbitraria que transmiten la transacción entre sí antes de distribuirla a todos los participantes, ofuscando así la trayectoria de la transacción que ingresa a la red.

Pros:

• Tamaño pequeño de la cadena de bloques
• Relativa simplicidad

Contras:

• La generación y verificación de pruebas es más lenta que las ZK-SNARK y ZK-STARK.
• La compatibilidad con funciones como scripts y firmas múltiples es difícil de implementar
• No es resistente a la piratería mediante computadoras cuánticas

Pruebas de polinomios

ZK-SNARK

El intrincado nombre de esta tecnología significa "Conocimiento cero Argumento de conocimiento sucinto no interactivo”, que puede traducirse como “Prueba sucinta de conocimiento cero no interactivo”. Se convirtió en una continuación del protocolo zerocoin, que evolucionó hasta convertirse en zerocash y se implementó por primera vez en la criptomoneda Zcash.

En general, la prueba de conocimiento cero permite a una parte demostrarle a la otra la verdad de algún enunciado matemático sin revelar ninguna información al respecto. En el caso de las criptomonedas, estos métodos se utilizan para demostrar que, por ejemplo, una transacción no produce más monedas de las que gasta, sin revelar el monto de las transferencias.

ZK-SNARKs es muy difícil de entender y haría falta más de un artículo para describir cómo funciona. En la página oficial de Zcash, la primera moneda que implementa este protocolo, se dedica una descripción de su funcionamiento. 7 artículos. Por tanto, en este capítulo nos limitaremos a una descripción superficial.

Utilizando polinomios algebraicos, ZK-SNARKs demuestra que el remitente del pago es propietario de las monedas que está gastando y que la cantidad de monedas gastadas no excede la cantidad de monedas generadas.

Este protocolo fue creado con el objetivo de reducir el tamaño de la prueba de la validez de una declaración y al mismo tiempo verificarla rápidamente. Sí, según presentaciones Zooko Wilcox, director ejecutivo de Zcash, el tamaño de la prueba es de solo 200 bytes y su exactitud se puede verificar en 10 milisegundos. Además, en la última versión de Zcash, los desarrolladores lograron reducir el tiempo de generación de pruebas a unos dos segundos.

Sin embargo, antes de utilizar esta tecnología, se requiere un complejo procedimiento de configuración confiable de "parámetros públicos", lo que se denomina "ceremonia" (La ceremonia). El problema es que durante la instalación de estos parámetros, a ninguna de las partes le quedan claves privadas, lo que se denomina "residuos tóxicos", de lo contrario podrán generar nuevas monedas. Puede aprender cómo se produce este procedimiento en el vídeo de YouTube.

Pros:

• Tamaño de evidencia pequeño
• Verificación rápida
• Generación de pruebas relativamente rápida

Contras:

• Procedimiento complejo para establecer parámetros públicos
• Residuos tóxicos
• Complejidad relativa de la tecnología
• No es resistente a la piratería mediante computadoras cuánticas

ZK-STARK

Los autores de las dos últimas tecnologías son buenos jugando con acrónimos, y el siguiente acrónimo significa "Argumentos de conocimiento transparentes, escalables y de conocimiento cero". Este método tenía como objetivo resolver las deficiencias existentes de los ZK-SNARK en ese momento: la necesidad de una configuración confiable de parámetros públicos, la presencia de desechos tóxicos, la inestabilidad de la criptografía ante la piratería mediante algoritmos cuánticos y una generación de pruebas insuficientemente rápida. Sin embargo, los desarrolladores de ZK-SNARK han solucionado el último inconveniente.

Los ZK-STARK también utilizan pruebas basadas en polinomios. La tecnología no utiliza criptografía de clave pública, sino que se basa en la teoría de transmisión y hash. La eliminación de estos medios criptográficos hace que la tecnología sea resistente a los algoritmos cuánticos. Pero esto tiene un precio: la prueba puede alcanzar un tamaño de varios cientos de kilobytes.

Actualmente, ZK-STARK no tiene implementación en ninguna de las criptomonedas, sino que existe solo como una biblioteca. libSTARK. Sin embargo, los desarrolladores tienen planes que van mucho más allá de blockchains (en su White Paper los autores dan un ejemplo de evidencia de ADN en una base de datos policial). Para ello se creó Industrias StarkWare, que a finales de 2018 recaudó 36 millones inversiones de las mayores empresas del sector.

Puede leer más sobre cómo funciona ZK-STARK en las publicaciones de Vitalik Buterin (Parte 1, Parte 2, Parte 3).

Pros:

• Resistencia a la piratería por parte de ordenadores cuánticos
• Generación de pruebas relativamente rápida
• Verificación de prueba relativamente rápida
• Sin residuos tóxicos

Contras:

• Complejidad de la tecnología
• Tamaño de prueba grande

Conclusión

Blockchain y la creciente demanda de anonimato plantean nuevas exigencias a la criptografía. Así, la rama de la criptografía que se originó a mediados de la década de 1980 (las pruebas de conocimiento cero) se ha ido reponiendo con nuevos métodos en desarrollo dinámico en tan sólo unos años.

Por lo tanto, la fuga del pensamiento científico ha dejado obsoleto a CoinJoin y a MimbleWimble en un recién llegado prometedor con ideas bastante nuevas. Monero sigue siendo un gigante inquebrantable en la protección de nuestra privacidad. Y los SNARK y STARK, aunque tienen deficiencias, pueden convertirse en líderes en el campo. Quizás en los próximos años los puntos que indicamos en la columna “Contras” de cada tecnología dejen de ser irrelevantes.

Fuente: habr.com

Añadir un comentario