Explicación detallada de la aplicación de zk-SNARKs en la red Filecoin

Los zk-SNARK brindan la capacidad de que una parte demuestre a otra parte que conoce un secreto sin revelar el secreto en sí, lo que permite interacciones seguras y privadas con partes desconocidas y no confiables en la cadena de bloques.

Escrito por: Instituto de Investigación Dayou IPFS

Los zk-SNARK (argumento de conocimiento sucinto no interactivo de conocimiento cero) brindan a una parte la capacidad de demostrar a otra parte que conocen un secreto sin revelar el secreto en sí. Los zk-SNARK permiten interacciones seguras y privadas con partes desconocidas y no confiables en la cadena de bloques.

**La red Filecoin actualmente genera entre 6 y 7 millones de pruebas de zk-SNARK por día, cada una de las cuales contiene más de 100 millones de restricciones aritméticas. **Para lograr este objetivo, Protocol Labs mejoró y optimizó en gran medida la herramienta de generación de snark existente, lo que le permitió escalar para satisfacer nuestras necesidades sin precedentes.

**Filecoin es la red zk-SNARK más grande hasta la fecha. **

varios aspectos:

  • La configuración confiable de Filecoin admite circuitos de hasta 2 ^ 27 = restricciones de ~ 134 millones.
  • Filecoin tiene un límite de > 100M para circuitos individuales grandes.
  • Para cumplir con los requisitos de seguridad de Filecoin, algunas pruebas agrupan hasta 10 zk-snarks individuales en una prueba grande.
  • Filecoin también amplía e implementa la investigación en agregaciones zk-SNARK para permitir la compresión de miles de pruebas individuales en una sola prueba.

Todo esto contribuye a la capacidad de Filecoin para probar más información en producción.

El poder de Tau y generar confianza

Para respaldar la cantidad limitada requerida para Filecoin, realizamos una nueva Ceremonia de poder Tau que aumentó la cantidad de apoyo en 64 veces la cantidad que ejecutó Zcash. Esto nos permite generar pruebas de más de 100 millones de restricciones, limitadas únicamente por el tamaño del parámetro de la distribución.

Para respaldar nuestra configuración confiable de segunda etapa (específica del circuito) para circuitos grandes, implementamos técnicas para reducir significativamente el uso de RAM, permitir el paralelismo y reducir la sobrecarga de E/S, para permitir que las partes que usan hardware práctico participen dentro de las 7 semanas posteriores a la ceremonia.

Use el probador basado en GPU

La generación del zk-snark se convierte rápidamente en un cuello de botella, por lo que la parte costosa se implementa en la GPU usando OpenCL y CUDA. Dado que las operaciones centrales que respaldan la generación de pruebas son altamente paralelizables, aprovechamos los cálculos modernos de GPU de propósito general para descargarlos de la CPU.

**Esto permite un mayor rendimiento al mismo tiempo que genera eficiencia económica. **Al descargar el trabajo paralelizable a procesadores paralelos relativamente baratos, podemos mantener la memoria principal y la CPU libres para el trabajo intensivo de memoria y de alto orden utilizado para crear mineros de datos.

Los algoritmos de dominio de bajo nivel son la base de la mayoría de las operaciones realizadas al generar y verificar zk-snarks. **La biblioteca blst implementa secciones críticas en ensamblador y C para obtener el máximo rendimiento de la CPU. **Para garantizar que estas optimizaciones no comprometan la seguridad, Galois está verificando formalmente el código (¡incluso el lenguaje ensamblador!).

Validación de lotes más fuerte

Para mejorar la velocidad de verificación de múltiples zk-snarks, se implementa la verificación por lotes. Esta es una técnica descrita en el Apéndice B2 de la especificación Zcash, pero aún no está en uso. Esto permite reducir la cantidad de bucles de Miller (la operación más costosa en el proceso de validación) que deben realizarse, lo que reduce en gran medida cuando se buscan múltiples validaciones a la vez.

Si bien la verificación por lotes ayuda, necesitábamos una verificación más rápida, por lo que implementamos SnarkPack. Esto nos permite agregar muchos zk-snarks en una prueba combinada. **Esta optimización no solo reduce el tiempo de verificación en más de 10 veces a escala, sino que también reduce el ancho de banda de la cadena al reducir la cantidad promedio de bytes por prueba que se debe enviar a la cadena. **

Para lograrlo, nos basamos en una justificación interna del producto y trabajamos con los autores para ampliarla y satisfacer nuestras necesidades sin necesidad de una nueva configuración de confianza. Logramos esto adaptando la técnica para aplicarla de manera segura utilizando dos configuraciones confiables existentes de poder de Tau. **Este es un gran ejemplo de los obstáculos que históricamente hemos tenido que superar para lograr una escala revolucionaria. **

El Instituto de Investigación Dayou IPFS continuará prestando atención a las últimas noticias sobre el proyecto Filecoin.

Ya sea que sea un novato o un profesional experimentado, Dayou IPFS Institute le brindará perspectivas innovadoras y un análisis en profundidad. Mantenemos el espíritu de apertura y tolerancia, y lo invitamos a unirse a nosotros para aprender y crecer juntos.

Ver originales
El contenido es solo de referencia, no una solicitud u oferta. No se proporciona asesoramiento fiscal, legal ni de inversión. Consulte el Descargo de responsabilidad para obtener más información sobre los riesgos.
  • Recompensa
  • Comentar
  • Compartir
Comentar
0/400
Sin comentarios
  • Anclado
Comercie con criptomonedas en cualquier lugar y en cualquier momento
qrCode
Escanee para descargar la aplicación Gate.io
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • ไทย
  • Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)