Tecnología

Tecnología para mejorar la privacidad: Protocolo Zerocoin

Pruebas criptográficas de Conocimiento Cero

En Bitcoin, todas las transacciones se emiten en un libro mayor público. La investigación ha demostrado que la información externa, como las direcciones anunciadas públicamente, puede utilizarse para vincular identidades y organizaciones con transacciones. La reutilización por defecto de las direcciones de bitcoin agrava este problema.

Además, el mismo tipo de mecanismo utilizado para romper la privacidad en las redes sociales, como el análisis de la topología de las redes sociales, puede utilizarse para romper la privacidad en la red Bitcoin.

Bitcoin y las anteriores criptomonedas alternativas han intentado resolver este problema mediante el uso de mezcladores de transacciones o firmas de anillo. Sin embargo, hay una serie de inconvenientes en estas soluciones propuestas. Por un lado, un miembro malicioso o comprometido de un mezclador o de una firma de llamada puede romper la privacidad. Además, el conjunto de anonimato es una medida clave para entender cuán privada es una criptomoneda. El anonimato establecido en las soluciones propuestas anteriormente está limitado por el tamaño del ciclo de mezcla o la firma del anillo. Cada ciclo de mezcla o firma de anillo está limitada por el número de transacciones por ciclo, el cual está limitado transitivamente por el tamaño del bloque de la criptomoneda. Así, el anonimato establecido en intentos anteriores de privacidad tiende a ser de sólo unos pocos cientos de transacciones.

Con Zcoin, el anonimato es de una magnitud dramáticamente mayor. En lugar de tener un conjunto de anonimato limitado a unas pocas docenas, Zcoin tiene un conjunto de anonimato que abarca todas las monedas acuñadas en un acumulador RSA en particular que puede escalar a muchos miles y, a diferencia de otras soluciones, no está sujeto a análisis de gráficos de transacciones.

Seguridad descentralizada y justa: MTP

Bitcoin y muchas otras monedas de prueba de trabajo sufren de la centralización de la seguridad. El algoritmo MTP fue ideado por Alex Biryukov y Dmitry Khovratovich de la Universidad de Luxemburgo en su artículo publicado el 11 de junio de 2016 titulado Computación Igualitaria, que fue mejorado posteriormente en enero de 2018 (con investigación parcialmente financiada por Zcoin). Egalitarian ComputingMTP fue creado como una forma de remediar la disparidad entre los usuarios comunes y los adversarios/tramposos donde estos últimos podían utilizar botnets, GPU, FPGA y ASICS para obtener una ventaja significativa y montar un ataque más barato. El concepto básico es que debe establecer el mismo precio/costo para una sola unidad de cálculo en todas las plataformas. Esto significa que ningún dispositivo debe obtener una ventaja significativa sobre otro por el mismo precio, promoviendo así una informática igualitaria. Con una informática igualitaria, los atacantes tendrían que gastar la misma cantidad que los usuarios ordinarios para obtener un poder de “hash” equivalente. Como los atacantes necesitan usar hardware similar al de los usuarios comunes, los ataques automatizados a gran escala ya no son posibles. Esto combinado con el hecho de que el hash en MTP es altamente intensivo en memoria, los usuarios infectados por troyanos para participar en botnets experimentarían una notable degradación del rendimiento y por lo tanto es más probable que sospechen que algo anda mal. la centralización masiva se puede ver con muchos de los algoritmos de prueba de trabajo existentes, tales como SHA256 (Bitcoin), Scrypt (Litecoin, Dogecoin) y X11 (Dash), en los que el poder de hash está centralizado en las granjas de ASIC, y a los usuarios normales no se les incentiva para participar en la seguridad de la red. Incluso en esquemas más recientes como Ethash, que se utiliza en Ethereum, aunque está diseñado deliberadamente para ser compatible con la GPU (más de 100 veces más eficiente que en una CPU), esto sigue fomentando las granjas de GPU y la centralización. Equihash a pesar de que es duro de memoria, no es duro de memoria secuencialmente, lo que significa que puede ser en su mayor parte paralelizado, lo que hace más probable el desarrollo de ASICs. esto no significa que desincentivemos la minería en la GPU, pero con MTP se prevé que incluso con la minería en la GPUs, la minería en la CPUs seguiría siendo competitiva. verificacion rápida y livianaMTP, aunque es intensiva en computación y en memoria para encontrar la solución, una vez encontrada, su solución puede ser verificada de forma rápida y eficiente sin necesidad de una gran cantidad de memoria. Aunque nuestra implementación de referencia utiliza 2gb de RAM, lo que la hace notable en muchas CPUs, desalentando así a los botnets, ya que sería notable para el usuario, MTP está diseñado para soportar incluso el uso de RAM de hasta 10 gb, al tiempo que se mantiene rápido para verificar que no es posible con otras implementaciones de PoW. También permite que el hardware ligero como los teléfonos inteligentes realicen la verificación, lo que no es posible en muchos otros algoritmos de memoria dura. La velocidad de verificación del MTP es muy rápida.

Trabajos Académicos

Zerocoin: Anonymous Distributed E-Cash from Bitcoin (Ian Miers, Christina Garman, Matthew Green, Aviel D. Rubin)

Este es el documento original de Zerocoin que constituye la base de nuestro protocolo de privacidad. Zcoin fue el primero en implementar este protocolo en septiembre de 2016.

Mejoras a libzerocoin que solucionaron dos defectos fueron identificadas por Tim Ruffing cuando fue contratado para auditar a Zerocoin por Zcoin. Estas mejoras se han incorporado y ya están en marcha.

MTP: Egalitarian Computing (Alex Biryukov, Dmitry Khovratovich) (revision and improvement funded by Zcoin)

MTP es el algoritmo de Prueba de Trabajo que Zcoin utiliza para promover la minería igualitaria al tiempo que mantiene una rápida verificación. El artículo original tenía defectos identificados por Dinur y Nadler. Zcoin organizó una recompensa para endurecer el MTP y también financió la investigación para resolver estos problemas, como se refleja en el documento vinculado. El MTP fue codificado desde cero por Zcoin y cambiado al algoritmo MTP en diciembre de 2018.

Dandelion++ Lightweight Cryptocurrency Networking with Formal Anonymity Guarantees (Giula Fanti et al)

Dandelion++ fue desarrollado originalmente para Bitcoin como una forma de ocultar el origen de las transacciones cambiando la forma en que éstas se propagan a través de la red. Dandelion+++ está programado para salir en vivo en Bitcoin Core 0.18. Zcoin fue el primer proyecto que se puso en marcha con Dandelion++ en mainnet en septiembre de 2018.

One-out-of-Many Proofs: Or How to Leak a Secret and Spend a Coin (Jens Groth et al)

Una de las muchas pruebas constituye la base de Sigma, que mejora la calidad de Zerocoin al eliminar la configuración de confianza y reducir el tamaño de las pruebas. Zcoin también está aplicando otras modificaciones de eficiencia al papel original. Sigma está en desarrollo y su lanzamiento está previsto para el primer trimestre de 2019.

Lelantus: Private transactions with hidden origins and amounts based on DDH (Aram Jivanyan)

Lelantus es el protocolo de privacidad de última generación de Zcoin que mejora Sigma al eliminar el requisito de denominaciones fijas que permite a la gente acuñar cantidades arbitrarias y gastar cantidades parciales sin revelar valores. El documento de Lelantus está todavía en desarrollo y está buscando una revisión por pares. La codificación en las bibliotecas criptográficas de Lelantus ha comenzado. Lelantus es una innovación propia de Zcoin.