paint-brush
Cómo las pruebas de conocimiento cero serán potenciadas por Bitcoinpor@bingventures
516 lecturas
516 lecturas

Cómo las pruebas de conocimiento cero serán potenciadas por Bitcoin

por Kyle Liu@Bing Ventures6m2023/06/20
Read on Terminal Reader

Demasiado Largo; Para Leer

Las pruebas de conocimiento cero ("ZKP") son una tecnología que se puede usar de manera efectiva en la protección de la privacidad. Es un método matemático por el cual una parte puede probar a otra parte que una declaración determinada es verdadera sin revelar ninguna información adicional sobre la declaración. Con los ZKP, los datos de las transacciones se pueden cifrar, lo que permite a los usuarios realizar transacciones con más privacidad.
featured image - Cómo las pruebas de conocimiento cero serán potenciadas por Bitcoin
Kyle Liu@Bing Ventures HackerNoon profile picture
0-item


Si bien hay muchos proyectos trabajando en el uso de pruebas de conocimiento cero para escalar y mejorar la infraestructura de blockchain o dApps , la mayoría de ellos se basan en Ethereum. De manera comparable, las posibilidades de aplicar pruebas de conocimiento cero a la red de Bitcoin están mucho menos exploradas.

Sin embargo, en teoría, las pruebas de conocimiento cero tienen un enorme potencial para mejorar la red de Bitcoin en términos de privacidad, escalabilidad, seguridad y espacio para la innovación.


Por ejemplo, como moneda virtual descentralizada, Bitcoin utiliza la cadena de bloques para almacenar toda la información de las transacciones. Eso significa que todos pueden acceder a dicha información, dejando la red con riesgos de privacidad. Las pruebas de conocimiento cero ("ZKP") son una tecnología que se puede usar de manera efectiva en la protección de la privacidad. Es un método matemático por el cual una parte (el probador) puede probar a otra parte (el verificador) que una declaración dada es verdadera sin revelar ninguna información adicional sobre la declaración. Con los ZKP, los datos de las transacciones se pueden cifrar, lo que permite a los usuarios realizar transacciones con más privacidad en la cadena de bloques de Bitcoin.


Además, la red Bitcoin se considera inadecuada para uso comercial debido a su baja velocidad de transacción debido al tamaño de bloque limitado y al problema de la congestión de la red. Los ZKP pueden ayudar a escalar la red para resolver esto al combinar transacciones para el procesamiento por lotes y minimizar las pruebas de tamaño para la validación.


Profundicemos en el panorama de este campo y el potencial por descubrir.


Fuente: Bing Ventures


ZkSNARK vs ZkSTARK

ZkSNARKs y zkSTARKs son dos vibraciones prominentes de la tecnología de prueba de conocimiento cero. Ambos permiten que una de las partes demuestre a la otra la validez de una declaración determinada sin revelar ninguna información confidencial. Pero difieren en su funcionamiento, rendimiento y posibles escenarios de uso.


Los ZkSNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) se basan en la criptografía de curva elíptica (ECC), que involucra ecuaciones matemáticas complejas que son difíciles de resolver. Pueden generar pruebas de tamaño extremadamente pequeño sin interactuar ni con el probador ni con el verificador. Los ZkSNARK se utilizan principalmente en criptomonedas y protección de la privacidad.


ZkSTARK (argumento de conocimiento transparente escalable de conocimiento cero) es un nuevo tipo de tecnología de prueba de conocimiento cero. Utilizan un marco matemático mucho más simple que incluye funciones hash criptográficas irreversibles e interpolación polinomial, lo que les permite implementarse de manera más eficiente a mayor escala.


Fuente: Matter Labs


Y, a diferencia de los zkSNARK, los zkSTARK no requieren una fase de configuración confiable potencialmente vulnerable, lo que los hace más seguros. Los zkSTARK también se consideran resistentes a la cuántica.

Los ZkSTARK tienen tamaños de prueba más grandes que los zkSNARK, pero cualquier persona puede verificar la prueba de zkSTARK sin acceso a ningún parámetro externo. Además, pueden admitir mejor el procesamiento paralelo y la computación distribuida, lo que les permite manejar tareas informáticas complejas de manera eficiente. Esto significa que zkSNARK se puede usar en campos más amplios, como Internet de las cosas.



Fuente: Vitalik



Los ZkSTARK también permiten a los desarrolladores utilizar algoritmos más complejos y ejecutar operaciones matemáticas complejas, lo que brinda más posibilidades para las actualizaciones tecnológicas.

Dado que los zkSNARK se desarrollaron antes que los zkSTARK, tienen una ventaja inicial en términos de adopción.


Limitaciones de los proyectos de Bitcoin basados en ZkSNARK

Tome Zcash por ejemplo. Zcash es una bifurcación de código del protocolo Bitcoin. Se basa en el trabajo existente del equipo central de Bitcoin para permitir transacciones protegidas que codifican el remitente, el destinatario y la cantidad utilizando zk-SNARK.


Zcash funciona así. En primer lugar, hay dos tipos de direcciones de Zcash, protegidas y transparentes. Las direcciones transparentes comienzan con "t" y se comportan de manera similar a las direcciones de Bitcoin, exponiendo la dirección y el saldo en la cadena de bloques. Las direcciones protegidas que comienzan con "z" incluyen las mejoras de privacidad proporcionadas por las pruebas de conocimiento cero.


En segundo lugar, cuando los usuarios envían criptomonedas entre direcciones protegidas, se generará una prueba zkSNARK para demostrar que el remitente tiene suficiente cantidad de criptomonedas sin gastar. El proceso involucra operaciones matemáticas y criptográficas complejas que incluyen la generación de parámetros públicos, el cálculo de los hashes y la construcción de circuitos aritméticos.

Si bien generar una prueba de zkSNARK requiere mucho tiempo y potencia informática, validar una prueba de zkSNARK es muy rápido y simple. El validador solo necesita verificar si una transacción se procesa de acuerdo con las reglas de consenso de la cadena de bloques sin conocer el monto, el remitente y el destinatario de la transacción.


De esta forma, el uso de zkSNARK ayuda a Zcash a lograr el anonimato y la verificabilidad de las transacciones.


Sin embargo, existen algunas limitaciones en el uso de esta tecnología por parte de Zcash. En primer lugar, al igual que Bitcoin, Zcash utiliza salidas de transacciones no gastadas (UTXO) para determinar qué transacciones se pueden gastar. Esto significa que se han proporcionado datos de transacciones, pero solo protegidos del público. Al analizar los patrones y el tráfico de transacciones entre las direcciones protegidas, los atacantes pueden obtener información que puede socavar la privacidad de los usuarios.


En segundo lugar, Zcash mantiene su propia cadena de bloques, lo que dificulta que Zcash se integre o interactúe con otras aplicaciones. Esto ha limitado la aplicación de Zcash y ha impedido su desarrollo posterior. A pesar de su éxito en lograr transacciones que preservan la privacidad, el uso de Zcash es bajo. Además, las transacciones que preservan la privacidad tienen un costo mucho más alto que las transacciones públicas, lo cual es una de las razones detrás del bajo uso de Zcash y otra limitación del mismo.



Fuente: Ashish


Experimentos y perspectivas de aplicar ZkSTARK a Bitcoin

Las características de zkSTARK significan que podrían ser la tecnología ZKP más adecuada para Bitcoin. Uno de los experimentos de vanguardia se llama STARK de curva elíptica o EC-STARK. EC-STARKs tiene como objetivo aumentar la escalabilidad y la seguridad de Bitcoin al salir de la cadena de validación de la firma Elliptic Curve Digital Signature Algorithm (ECDSA) utilizando STARKs. Al reemplazar las funciones hash con curvas elípticas, EC-STARKS puede hacer que las soluciones de escalabilidad ya existentes para Ethereum sean compatibles con Bitcoin.


Puede ejecutar un protocolo fuera de la cadena para Bitcoin y guardar pruebas en STARK. Significa que Bitcoin se puede emular dentro de STARK, lo que permite construir protocolos altamente sofisticados en tokens basados en Bitcoin con las mismas claves de curva elíptica.


En pocas palabras, esta tecnología no solo puede aumentar la escalabilidad de Bitcoin, sino que también permite que la cadena de bloques de Bitcoin se transforme en una plataforma donde los desarrolladores pueden crear dApps, convirtiéndose potencialmente en un rival para Ethereum. También mejora la privacidad y reduce las necesidades de almacenamiento, ya que los datos se pueden convertir en pruebas significativamente más pequeñas. Sin embargo, algunos de los desafíos incluyen la compatibilidad con la infraestructura Bitcoin existente y la demanda de recursos informáticos.



Fuente: Starkware



Los zkSTARK también se pueden usar para probar la validez de los encabezados de los bloques, lo que permite a los clientes ligeros verificar el estado más reciente de la cadena en un instante. En combinación con UTreeXO zKSTARKs, un acumulador dinámico basado en hash diseñado para el conjunto UTXO de Bitcoin, se puede usar para sincronizar instantáneamente un nodo completo de Bitcoin sin la necesidad de descargar gigabytes del historial de la cadena de bloques. Y un bloque solo se puede validar comprobando los valores hash raíz de UTreeXO que representan todo el conjunto de UTXO y el estado de salida.


Los ZkSTARK también se pueden aplicar al proceso de verificación de transacciones, incluida la serialización de transacciones, el cálculo de hashes Double-SHA256, operaciones secp256k1 y otras operaciones centrales en el proceso de verificación. Podrían garantizar un alto grado de seguridad y confiabilidad operativa en el proceso. Además, los ZKSTARK también se pueden usar para verificar las funciones integradas de Cairo para la aceleración de Bitcoin. Aprovechando la función integrada de Cairo, el sistema de prueba de conocimiento cero altamente eficiente de StarkNet, la eficiencia del proceso de verificación de transacciones podría aumentar drásticamente.



Fuente: Bing Ventures



Más allá de lo mencionado anteriormente, los zkSTARK tienen otras aplicaciones potenciales. Por ejemplo, en combinación con Taro, pueden hacer que Taro sea más escalable, permitiéndole procesar más transacciones y admitir aplicaciones a mayor escala, allanando así el camino para el despliegue de múltiples cadenas de Taro y expandiendo potencialmente los casos de uso de Bitcoin.


Además, mediante el uso de zkSTARK para comprimir el historial de transacciones en una sola transacción y proteger de manera efectiva los datos de las transacciones, se pueden lograr transacciones confidenciales en la cadena de bloques de Bitcoin. Además, los zkSTARK se pueden usar para realizar la primitiva de Taro, lograr la serialización de activos por TVL y realizar y verificar los árboles Merkle-Sum Sparse Merkle (MS-SMT). Estas operaciones podrían mejorar efectivamente la privacidad y la seguridad. Y las soluciones de capa 2, como Lightening Network, pueden aprovechar zkSTARK para verificar las transacciones de Bitcoin de manera más eficiente sin sacrificar la privacidad.



Fuente: Bing Ventures


Cada vez más proyectos están comenzando a experimentar con la adopción de tecnología a prueba de conocimiento cero para la infraestructura y las dApps en la red de Bitcoin. Algunas de las soluciones prometen acelerar el uso de esta tecnología para aprovechar el espacio de bloques de la cadena de bloques de Bitcoin y mejorar la privacidad y la escalabilidad de la cadena de bloques.


Pero en general, la mayoría de las actividades están en Ethereum. Hay una evidente falta de atención a la intersección de Bitcoin y la tecnología a prueba de conocimiento cero. Además, la práctica de la ingeniería actual está muy por detrás de los logros de la investigación académica.

Creemos que se necesita más exploración y experimentos en este espacio, pero es una dirección prometedora que merece nuestra atención y apoyo.


También publicado aquí.