La privacidad puede ser lo único en lo que los fanáticos de DeFi y los cypherpunks pueden estar de acuerdo. En 2020, la censura política está motivando una mayor adopción de criptomonedas que son anónimas, lo que significa que las identidades de los remitentes y receptores no están vinculadas en la cadena de bloques. Por otro lado, la comunidad DeFi está despertando a la necesidad de transacciones confidenciales, donde la cantidad que se envía está oculta. Esto será esencial para los instrumentos derivados de contratos inteligentes, préstamos entre pares y similares.
Herramientas de privacidad de Ethereum para 2020
Entonces, ¿qué herramientas de privacidad están disponibles en Ethereum? A día de hoy, no muchos. La última década ha sido testigo de mucha innovación en torno a la privacidad de Bitcoin y las monedas de privacidad, como Monero y Zcash, pero Ethereum aún no ha cosechado los beneficios de esta innovación.
Esto esta cambiando. Desde protocolos de mezcla livianos hasta pruebas de conocimiento cero de vanguardia, la privacidad de Ethereum finalmente está teniendo su día. Esto es lo que debe saber y hacia dónde se dirigen las cosas.
Si es nuevo en blockchain, Ethereum o monedas de privacidad, Ivan On Tech Academy tiene docenas de cursos que lo convertirán en un desarrollador, comerciante o profesional capaz de blockchain. Pruebe nuestro curso sobre criptografía y monedas de privacidad hoy.
Blockchains privados de Ethereum: intercambia efectos de red por mutabilidad
La primera propuesta para DeFi privada fue establecer cadenas de bloques Ethereum no públicas y separadas. Por ejemplo, un gobierno local podría establecer un registro de títulos de propiedad como un contrato inteligente en la red interna Ethereum del estado. En este ejemplo, solo el gobierno puede ejecutar nodos, y el mecanismo de consenso es “prueba de autoridad”: los nodos autorizados pueden emitir nuevos bloques cuando lo deseen.
Un beneficio principal de esto (además de la privacidad) es que los registros se pueden cambiar. En el caso de los títulos de propiedad, si alguien fallece y no ha designado un heredero, la cadena de bloques debe “actualizarse manualmente” para que la tierra física pueda subastarse. Sin embargo, estas redes no admiten pagos en monedas mainnet, por lo que las cadenas de bloques privadas de Ethereum pierden los efectos de red de las cadenas de bloques públicas globales.
Zether: una moneda de privacidad en Ethereum
Zether es una criptomoneda privada que vive dentro del contrato inteligente Zether. Cualquiera puede comprar ZTH depositando ETH en el contrato inteligente de Zether. Cuando se transfiere ZTH, la cadena de bloques registra largas cadenas de números y letras desde la dirección del usuario hasta el contrato que ocultan la cantidad y el destinatario, pero aún son verificables. Zether también usa el tiempo y los señuelos para expandir el conjunto de anonimato.
Tornado.cash: el mezclador Ethereum
Imagine una red de cajeros automáticos donde, si deposita $ 1, recibe una “ficha de depósito” que puede usar para retirar $ 1 de cualquier otro cajero automático, en cualquier momento.
Tornado.cash es un contrato inteligente que funciona de esta manera: cuando un usuario envía ETH, recibe una nota. Ese billete se puede canjear por la misma cantidad de ETH, en cualquier momento y desde cualquier dirección. Es importante destacar que la nota demuestra que está relacionada con algún depósito no gastado, pero no revela cuál, por lo que Alice no está directamente vinculada a Bob. También funciona para cualquier token ERC20, no solo para ETH.
Las notas de Tornado son en realidad zk-SNARK, una nueva versión de la prueba de conocimiento cero que Zcash ha utilizado principalmente. Pero en lugar de empezar desde cero, Tornado usa snarkjs y circom, un par de bibliotecas Javascript de código abierto desarrolladas por iden3. También adoptaron un enfoque novedoso para la configuración de confianza, mediante el crowdsourcing de la “entropía” de la red a más de 1.000 voluntarios. Hasta la fecha, han aceptado más de 3200 depósitos por 0,1 ETH (la denominación más utilizada) y el saldo de la cuenta es de 57,1 ETH.
Incognito.org: una cadena lateral sin confianza para el intercambio privado ERC20
A continuación, imagine que toma estos “tokens de depósito” y permite que las personas los intercambien de forma privada en una cadena de bloques separada.
Incognito es una cadena de bloques separada conectada a la red principal de Ethereum mediante un puente de contrato inteligente. Puede “acuñar” una versión privada de cualquier token ERC20 en Incognito depositando uno real (junto con su dirección de incógnito) en el contrato inteligente ERC20. Después de eso, puede enviar y recibir sus tokens privados en la red de incógnito de forma privada y económica. Cuando esté listo para retirarse, sus tokens de privacidad se quemarán y sus contrapartes públicas se enviarán desde el contrato inteligente a la dirección de Ethereum que elija.
Incognito ejecuta un libro mayor basado en UTXO similar a Monero con RingCT, Stealth Addresses y Bulletproofs. Debido a que los usuarios pueden intercambiar tokens en Incognito DEX, el conjunto de anonimato es potencialmente todo el valor mantenido en Incognito, de cualquier moneda. Al momento de escribir este artículo, hay más de $ 750,000 en USD-T solo protegidos y creciendo.
Plasma: una interfaz para cadenas laterales de Ethereum
Ahora, imagina que el puente de la cadena lateral se cae. ¿Qué sucede con el ETH que depositó en el contrato inteligente? Necesitamos un mecanismo para que la red Ethereum mantenga el control incluso mientras otras redes ayudan con la computación. Necesitamos pruebas de fraude. En 2017, Vitalk propuso tal solución y la llamó Plasma. En sus propias palabras de 2019:
“Las cadenas de plasma son cadenas laterales que no tienen una propiedad de custodia: si hay algún error en la cadena de plasma, entonces se puede detectar el error y los usuarios pueden salir de forma segura de la cadena de plasma y evitar que el atacante haga un daño duradero”.
Estaba particularmente interesado en la confianza y la vivacidad. Los usuarios no deberían tener que confiar en terceros más allá de la red principal de Ethereum. Si hay un problema con la cadena de bloques privada, la red principal de Ethereum aún permitirá a los usuarios retirarse del contrato. Si bien se discutieron algunas ideas, se avanzó poco en esta idea antes de ser reemplazada por la siguiente sugerencia de Vitalik …
Roll-ups: valide muchas transacciones con una pequeña prueba y ETH 2.0
Entonces, ¿cómo puede la red principal de Ethereum vigilar las cadenas laterales? Haciéndoles publicar pruebas compactas de su propia validez en transacciones “acumuladas” en la red principal de Ethereum. De esa forma, si una transacción no es válida, no se aceptará la transacción acumulada. Si la cadena lateral se cae, puedo retirar la cantidad que deposité en el contrato +/- todas las transacciones aceptadas.
Pero, ¿cómo es esto más eficiente que una transacción normal?
En lugar de enviar transacciones a la EVM (máquina virtual Ethereum), un servicio separado (capa 2) valida todo y produce una prueba “sucinta” de que todo el lote es correcto. Si el EVM puede validar esta prueba, aceptará todo el lote y lo registrará como metadatos en la transacción acumulada. Si el EVM encuentra un problema en la prueba, se rechaza todo el lote. Todo esto está incluido en las fases de ETH 2.0.
ZoKrates: una caja de herramientas para zkSNARKs en Ethereum
ZoKrates es una biblioteca de Javascript y un complemento de remezcla que proporciona un lenguaje de alto nivel para crear y validar pruebas de zkSNARK en Solidity. Debido a que es de alto nivel, necesita comprender cómo crear y validar pruebas para poder usarlo en sus programas, pero existen varios tutoriales en línea para hacerlo.
Podemos combinar ZoKrates con roll-ups para crear monedas de privacidad altamente escalables, que es exactamente lo que han hecho los dos proyectos siguientes. Los llamamos zk-rollups porque combinan las dos tecnologías. (¿Alguien quiere RingCT?) Pero tenga en cuenta dos cosas:
Los protocolos zkSNARK siempre requieren una configuración confiable. Z
El efectivo llevó a cabo su ceremonia de génesis en completo secreto, pero mantuvo registros meticulosos para demostrar su validez sin exponerse a interferencias. Tornado contribuyó a resolver el problema haciendo que los voluntarios contribuyan a la aleatoriedad que configuró el sistema. Se han propuesto y utilizado otros métodos.
Cualquier solución de privacidad es tan buena como su conjunto de anonimato, y si el documento técnico dice que el conjunto de anonimato es 1050 pero solo hay 5,000 personas usándolo, el conjunto de anonimato es 5,000.
Si alguno de los anteriores es nuevo para ti, deberías consultar mi curso de Criptografía y Monedas de Privacidad en la academia IvanOnTech. Puedes probarlo gratis durante 7 días, y tbh puedes terminar en ese tiempo si trabajas duro. Te veo allí.
Ethereum 9 ¾: zk-rollup más MimbleWimble
Ethereum 9 ¾ es una instanciación de acumulaciones que usa MimbleWimble para ocultar aún más información. MimbleWimble elimina las cuentas y, en cambio, básicamente emite una clave de gasto única para cada nueva producción. Ethereum 9 ¾ también utiliza una estructura de datos cifrada con ECC llamada Cordillera de Pedersen Markle para reducir el tamaño de la prueba publicada en la red principal.
Ethereum 9 ¾ se está desarrollando actualmente a tiempo parcial, pero tienen planificada una ceremonia de confianza a la que llaman “Destrucción de horrocruxes”. Para aquellos que luchan por mantenerse al día con las referencias de Harry Potter en el ecosistema MimbleWimble, un Horrocrux es un objeto que otorga la inmortalidad a cambio de un fragmento del alma. Esté atento a “eth 934” este año.
Nightfall: una biblioteca zk-rollup de E&Y
Ernst & Young, la consultora estadounidense ‘Big-Four’ produjo su propia versión de una biblioteca zk-rollup llamada Nightfall y abrió el código. Esto fue visto como un gran paso para las finanzas tradicionales alejándose de las cadenas de bloques privadas de Ethereum, que han recibido mucha atención en los últimos dos años, hacia soluciones de privacidad para cadenas de bloques públicas.
Nightfall básicamente es una biblioteca de Javascript que toma una “configuración confiable” como entrada y le brinda un esquema similar a cero en efectivo donde el token público X se puede intercambiar libremente desde y hacia el token privado pX. Bajo este tipo de esquema, los montos de pX mint todavía son visibles, pero los montos de transferencia generalmente no lo son, por lo que las transacciones pueden tener tanto anonimato como confidencialidad.
Parece útil y aporta la reputación técnica de E&Y. Esté atento a los desarrolladores que usan Nightfall para agregar privacidad a sus Dapps en 2020.
Aztec, Plonks con configuración común
Donde Nightfall toma una configuración confiable como entrada, Aztec viene precargado con una. Cualquiera puede generar y validar pruebas zk en sus propios contratos inteligentes para niños al interactuar con el contrato inteligente ACE (Aztec Cryptography Engine).
Es importante tener en cuenta que Aztec no es una cadena de bloques privada de Ethereum. Es solo un contrato inteligente que se puede solicitar para crear y validar pruebas de conocimiento cero en el EVM. Aztec también se basa en ZoKrates y se desarrolló teniendo en cuenta los instrumentos financieros. Las notas privadas pueden representar proporciones de otras notas, como pagos de intereses o rendimientos de bonos. Aztec se enfoca en la confidencialidad por ahora – oscureciendo el valor de una transacción – y agregará características de anonimato en versiones futuras.
STARKs: ¿el futuro de Ethereum?
Cuando se le pregunta sobre la privacidad de Ethereum, Vitalk generalmente dice que las cadenas de bloques públicas desempeñan un papel insustituible y que se puede lograr la privacidad adecuada a través de soluciones de capa 2, como las descritas anteriormente, por lo que probablemente sea mejor que Ethereum siga siendo público. Últimamente, sin embargo, incluye “STARKS” (Scalable, Transparent, Arguments of Knowledge) en su visión a largo plazo de Ethereum 2.0. Los STARK, a diferencia de los SNARK, se basan en criptografía anterior a ECC.
Otro gran defensor de STARKs es Eli Ben-Sasson, uno de los inventores de zkSNARKS y autor del artículo Zerocash. Fue cofundador de StarkWare, quien hizo una prueba de concepto de mainnet hace solo un par de días. Es probable que veamos una colaboración más amistosa entre él, Vitalik y otros mientras Ethereum busca la solución de privacidad adecuada para implementar a nivel de protocolo.
Si se toma en serio la privacidad y desea una comprensión intuitiva de Ethereum, la tecnología de cadena de bloques privada y la criptografía, regístrese ahora para Cryptography and Privacy Coins. Ya hemos certificado a cientos de estudiantes. ¿A qué estás esperando?