Entrevistador: Nickqiao y Fausto, Geek Web3

Entrevistado: YeZhang, Scroll Lianchuang

Editor: Fausto y Jomosis

El 17 de junio, Geek Web3 y BTCEden, con la ayuda de DevRel de Scroll - Vincent Jin, tuvieron el honor de invitar al cocreador de Scroll, Zhang Ye, a responder muchas preguntas sobre Scroll y zkEVM.

Durante el período, las dos partes no sólo hablaron sobre muchos temas técnicos, sino que también hablaron sobre algunas cosas interesantes sobre Scroll y su gran visión de potenciar la economía real en Asia, África y América Latina. Este artículo es una transcripción de la entrevista, con más de 10.000 palabras y un total de al menos 15 temas:

  • El espacio de aplicación de ZK en campos tradicionales.

  • La diferencia en dificultad de ingeniería entre zkEVM y zkVM

  • Las dificultades que encontró Scroll al implementar zkEVM

  • Mejoras de Scroll en el sistema de prueba halo2 de Zcash

  • Cómo cooperó Scroll con el equipo de Ethereum PSE

  • ¿Cómo garantiza Scroll que sus circuitos sean seguros y confiables en el nivel de auditoría de código?

  • El plan simple de Scroll para la futura nueva versión de zkEVM y el sistema de prueba

  • El diseño Multi Prover de Scroll y el método de construcción de su red de generación Prover (grupo de minería zk), etc.

Además, el Sr. Zhang Ye finalmente habló sobre la gran visión de Scroll de echar raíces en áreas con sistemas financieros atrasados ​​como África, Turquía y el sudeste asiático, y tiene la intención de crear escenarios económicos reales para que las personas de la región "trasciendan la realidad en realidad". .” Este artículo puede ser uno de los mejores materiales para que más personas comprendan mejor Scroll. Se recomienda que todos lo lean detenidamente.

1.Fausto: ¿Qué opinas de la aplicación de ZK por parte del profesor Zhang Ye fuera de Rollup? Mucha gente da por sentado que los usos principales de ZK son mezcladores de divisas, transferencias privadas o ZK Rollup y puentes ZK. Sin embargo, fuera de Web3, todavía hay muchas aplicaciones de ZK en industrias tradicionales, por ejemplo. ¿En qué direcciones cree usted que es más probable que se adopte ZK en el futuro?

YeZhang: Esta es una buena pregunta. La gente de ZK en las industrias tradicionales ha estado explorando varios escenarios de ZK hace cinco o seis años. Los escenarios en los que se usa ZK en blockchain son en realidad muy pequeños. Es por eso que Vitalik siente que dentro de unos años, la escena de ZK. será tan grande como blockchain.

Creo que ZK será muy útil en escenarios donde se requieren suposiciones de confianza. Supongamos que necesita manejar algunas tareas informáticas pesadas ahora. Si alquila un servidor en AWS, ejecuta sus propias tareas y obtiene los resultados, es equivalente a hacer cálculos en el equipo que controla. Luego tendrá que pagar el alquiler del servidor. pero este dinero a menudo no es barato;

Pero si adoptamos un modelo de subcontratación informática, muchas personas pueden compartir sus tareas informáticas con sus propios equipos o recursos inactivos, y el coste que usted paga puede ser más económico que alquilar un servidor usted mismo. Pero aquí hay un problema de confianza: no sabe si los resultados del cálculo que le devuelven otros son correctos. Ahora imagina que estás haciendo un cálculo muy problemático y luego me das el cálculo y me das dinero. Te daré un resultado aleatorio después de media hora y no tienes forma de creer que este resultado sea válido, porque puedo inventarlo.

Pero si puedo demostrarle que el resultado del cálculo entregado es correcto, entonces podrá estar tranquilo y atreverse a subcontratarme más tareas de cálculo. ZK puede convertir muchas fuentes de datos que no son de confianza en fuentes confiables. Esta función es muy poderosa. A través de ZK, puede utilizar recursos informáticos de terceros que no son de confianza pero que son baratos.

Creo que este escenario es muy significativo y puede conducir a un modelo de negocio similar a la informática subcontratada. En alguna literatura académica, se le llama cálculo verificable, lo que significa hacer que un cálculo sea confiable. Además, ZK se puede aplicar al campo de la base de datos. Supongamos que es demasiado costoso ejecutar la base de datos localmente y decide subcontratarla. Sucede que una persona tiene abundantes recursos de la base de datos y luego almacena los datos allí. ¿Le preocupa que la otra parte cambie los datos que aloja en ella o los resultados que obtiene después de una consulta SQL?

Para ello, puede pedirle a la otra parte que genere una prueba. Si esto se puede hacer, también puede subcontratar el almacenamiento de datos y obtener un resultado confiable. Esta y la informática confiable anterior son una gran categoría de escenarios de aplicación.

Además, hay muchos ejemplos de aplicaciones. Recuerdo un artículo que habla sobre ASIC verificable. Al producir el chip, puede escribir el algoritmo ZK en su chip. Cuando ejecuta el programa en el chip, el resultado tendrá un valor predeterminado. Prueba. De esta manera, creo que muchas cosas se pueden transferir a cualquier dispositivo y generar resultados creíbles.

También hay una cosa un tanto ridícula llamada Photo Proof. Por ejemplo, para muchas imágenes, no sabes si han sido retocadas con Photoshop, pero podemos usar ZK para demostrar que las fotos no han sido manipuladas. Por ejemplo, puedes agregar algunas configuraciones en el software de la cámara para generar algunas automáticamente. Firmas digitales Después de tomar las fotografías, esta firma A equivale a sellar una fotografía. Si alguien toma las fotos que usted tomó y las retoca para una "creación secundaria", podemos identificar que las imágenes han sido alteradas verificando la firma.

Aquí podemos presentar ZK. Después de realizar algunos cambios en la imagen original, puede usar ZK Proof para demostrarles a otros que solo realizó operaciones simples como rotación y traducción en la foto y que no alteró el contenido original de la foto. foto, lo que demuestra que realizó ajustes finos. La imagen final es básicamente la misma que la imagen original, lo que demuestra que no ha alterado el contenido principal de la imagen para participar en una "creación secundaria".

Este escenario también se puede extender al video y al audio. A través de ZK, no es necesario que le diga a la otra parte qué cambios realizó en el video original, pero puede demostrar que no ha alterado el contenido principal del original. versión y que sólo has hecho algunos ajustes inofensivos. Además, hay muchas aplicaciones interesantes en las que ZK puede participar.

En la actualidad, creo que la razón por la que los escenarios de aplicación de ZK no han sido ampliamente aceptados es que su costo es demasiado alto. El esquema de generación de pruebas de ZK existente no puede generar pruebas en tiempo real para ningún cálculo, porque la sobrecarga de ZK es generalmente el cálculo original. 100 a 1000 veces. Por supuesto, el número que mencioné ya es relativamente bajo.

Entonces, si imagina que una tarea informática originalmente tomaba 1 hora y ahora genera una prueba ZK para ella, la sobrecarga puede ser 100 veces mayor, es decir, tomará 100 horas generar la prueba, aunque puede usar GPU o ASIC. Para reducir este tiempo, el tiempo se acorta, pero aún requiere una gran sobrecarga computacional. Si me pide que calcule algo muy problemático y también me pide que genere una prueba ZK, puedo negarme a hacerlo porque consumirá 100. veces más recursos informáticos. Al final, no es rentable implementarlo en las cuentas económicas. Por lo tanto, para escenarios uno a uno, generar pruebas ZK únicas es costoso.

Sin embargo, esta es también la razón por la que ZK es muy adecuado para Blockchain. La razón es que Blockchain realiza cálculos redundantes y tiene muchos escenarios de uno a muchos. Diferentes nodos en la red blockchain realizan las mismas tareas informáticas. Si hay 10.000 nodos, la misma tarea se ejecutará 10.000 veces. Pero si completa la tarea fuera de la cadena y genera la prueba ZK, y 10,000 nodos solo verifican la prueba ZK sin volver a ejecutar la tarea, no tiene que repetir el cálculo original 10,000 veces, lo que equivale al costo del cálculo. de una persona, y se ha reemplazado el costo de la computación redundante en 10,000 nodos. Desde una perspectiva general, más personas pueden ahorrar recursos.

Por lo tanto, de hecho, cuanto más descentralizada sea la cadena, más adecuada será para ZK, porque cualquiera puede verificar ZKP a un costo casi nulo. Siempre que paguemos un cierto costo al generar inicialmente la prueba, podemos liberar a la mayoría de las personas. es por qué la verificabilidad pública de blockchain es muy adecuada para ZK, porque hay muchos escenarios de uno a muchos en blockchain.

Hay otro punto que no se mencionó anteriormente. Las pruebas ZK que se utilizan actualmente en el campo de la cadena de bloques con una sobrecarga relativamente grande no son interactivas. Me das algo, te doy la prueba y luego termina, porque en la cadena de bloques no puedes repetirla para interactuar. con la cadena. Pero existe una forma más eficiente y menos costosa de generar pruebas: las pruebas interactivas. Por ejemplo, me envías un desafío, yo te envío algo, tú me envías otra cosa y yo te envío otra. A través de este método de múltiples interacciones entre las dos partes, es posible reducir la magnitud computacional de ZK. otra vez. Si este método funciona, es posible que se pueda resolver el problema de la generación de pruebas en grandes escenarios de aplicaciones ZK.

Nickqiao: ¿Cómo ve las perspectivas de desarrollo de zkML, es decir, la combinación de ZK y aprendizaje automático?

YeZhang: zkML también es una dirección muy interesante, que puede transformar el aprendizaje automático en ZK, pero creo que todavía faltan escenarios de aplicaciones excelentes en esta área. En general, se cree que con la mejora del rendimiento del sistema ZK, podrá admitir aplicaciones de nivel ML en el futuro. Actualmente, la eficiencia de zkML es técnicamente posible, pero solo es posible. hacer inferencias en ML. En el análisis final, creo que todo el mundo todavía está explorando los escenarios de aplicación en esta área, es decir, qué tipo de cosas requieren que usted demuestre que el proceso de razonamiento es correcto. Este asunto es bastante complicado.

2.Nickqiao: Me gustaría preguntarle al Sr. Zhang Ye, ¿cuál es la diferencia específica en la dificultad de implementación de ingeniería entre zkEVM y zkVM?

YeZhang: En primer lugar, ya sea zkEVM o zkVM, la esencia es generar un circuito ZK personalizado para el código de operación/conjunto de instrucciones de una determinada máquina virtual. La dificultad de la implementación del proyecto zkEVM depende de cómo lo implementemos por primera vez. Comencé el proyecto, debido a que la eficiencia de ZK aún no es tan alta, es la forma más eficiente de personalizar un zkEVM escribiendo un circuito correspondiente para cada código de operación del EVM y luego combinando los circuitos.

Sin embargo, la implementación de ingeniería de esta solución debe ser muy difícil, mucho más grande que zkVM. Después de todo, el conjunto de instrucciones de EVM tiene más de 100 códigos de operación, cada código de operación debe personalizarse y luego combinarse. A los nuevos códigos de operación de EVM, como EIP-4844, zkEVM debe agregar cosas nuevas en consecuencia. Al final, hay que escribir un circuito largo y realizar un trabajo de auditoría prolongado, por lo que la dificultad de desarrollo y la carga de trabajo son mucho mayores que las de zkVM.

Por el contrario, zkVM define su propio conjunto de conjuntos de instrucciones/códigos de operación. Su conjunto de instrucciones personalizado puede ser muy simple y compatible con ZK. Después de crear un conjunto de zkVM, no necesita cambiar con frecuencia el código subyacente para admitirlo. Varias actualizaciones y precompilaciones. Por lo tanto, la carga de trabajo principal de zkVM y la dificultad de las actualizaciones y mantenimiento posteriores recaen en el compilador, que es el paso de convertir contratos inteligentes en códigos de operación de zkVM, que es muy diferente de zkEVM.

Por lo tanto, desde la perspectiva de la dificultad de ingeniería, creo que zkVM es más fácil de implementar que zkEVM personalizado, pero si desea ejecutar EVM en zkVM, el rendimiento general es mucho menor que el zkEVM personalizado, porque este último está especialmente personalizado. Pero en la actualidad, la eficiencia de Prover en la generación de pruebas ha aumentado al menos de 3 a 5 veces o incluso de 5 a 10 veces en los últimos dos años. La eficiencia de zkVM también está mejorando en consecuencia ahora que zkVM se usa para ejecutar EVM. La eficiencia general ha mejorado lentamente. En el futuro, las desventajas de rendimiento de zkVM pueden verse eclipsadas por su facilidad de desarrollo y mantenimiento. Después de todo, para zkVM y zkEVM, el mayor cuello de botella además del rendimiento es la dificultad de desarrollo. Se requiere un equipo de ingeniería muy sólido para mantener un sistema tan complejo.

3.Nickqiao: ¿Puede decirnos si Scroll encontró alguna dificultad técnica durante la implementación de zkEVM y cómo se resolvió?

YeZhang: El mayor desafío en el camino es que había demasiada incertidumbre cuando se lanzó inicialmente el proyecto. Cuando comenzamos el proyecto, básicamente no había nadie más haciendo zkEVM. Fuimos el primer equipo en explorar zkEVM de lo imposible a lo posible. A nivel teórico, básicamente se determinó un marco factible en los primeros 6 meses del proyecto. En el proceso de implementación posterior, zkEVM requirió una gran cantidad de trabajo de ingeniería y hubo algunos desafíos muy técnicos, como cómo soportar dinámicamente. Diferentes precompilaciones (precompilación), cómo agregar códigos de operación (código de operación) de manera más eficiente implica muchos problemas de ingeniería.

Y somos el único y el primero en admitir la precompilación de emparejamiento de curva elíptica EC. Los circuitos como el emparejamiento son muy difíciles de implementar e implican muchas matemáticas y otros problemas complejos de criptografía/matemáticas para las personas que escriben circuitos. Los requisitos de habilidades básicas y capacidades de ingeniería son muy altos.

Luego, en el desarrollo posterior, también debemos considerar la capacidad de mantenimiento a largo plazo de la pila de tecnología y en qué momento debemos actualizar a la próxima generación zkEVM 2.0. Contamos con un equipo de investigación dedicado que ha estado estudiando este tipo de soluciones, como el soporte de EVM a través de zkVM. También tenemos artículos relevantes para discutir este aspecto.

En resumen, creo que la dificultad anterior era convertir zkEVM de imposible a posible, y los principales desafíos estaban en la implementación y optimización del proyecto. En la siguiente etapa, la mayor dificultad es cuándo y cómo cambiar a un sistema de prueba ZK más eficiente, y cómo hacemos la transición del código base actual a la próxima generación de zkEVM, y a la siguiente. Hay mucho espacio para explorar en qué Nuevas características que nos puede proporcionar la primera generación de zkEVM.

4.Nickqiao: Parece que Scroll ha considerado cambiar a otro sistema a prueba de ZK. Hasta donde yo sé, Scroll actualmente usa un conjunto de algoritmos basados ​​​​en PLONK + Lookup. Entonces, ¿es este algoritmo actualmente el más adecuado para implementar zkEVM y qué sistema de prueba planea usar Scroll en el futuro?

YeZhang: En primer lugar, déjame responder brevemente a las preguntas sobre PLONK y Lookup. Actualmente, este sistema sigue siendo el más adecuado para implementar zkEVM o zkVM. La mayoría de las implementaciones están vinculadas a PLONK y Lookup específicos. En términos generales, cuando se menciona PLONK, la aritmetización de PLONK, que es la expresión aritmética del circuito, se utiliza para escribir circuitos zkVM.

La búsqueda es un método utilizado al escribir circuitos, un tipo de restricción. Entonces, cuando mencionamos PLONK + Lookup, nos referimos a utilizar el formato de restricción de PLONK al escribir circuitos zkEVM o zkVM. Este método es actualmente el más común.

En el lado final, los límites entre PLONK y STARK se han vuelto borrosos. Simplemente utilizan diferentes métodos de compromiso polinómico, pero en realidad son muy similares. Incluso si se usa la combinación de STARK + Lookup, es similar a PLONK + Lookup. Lo que todos miran es solo el algoritmo. La diferencia entre los dos se refleja principalmente en la eficiencia de Prover y el tamaño de la prueba. Por supuesto, en lo que respecta al front-end, Plonk + Lookup sigue siendo el más adecuado para implementar zkEVM.

Con respecto a la segunda pregunta, ¿a qué sistema de prueba planea cambiar Scroll en el futuro? Debido a que el objetivo de Scroll es mantener siempre su tecnología y su marco de cadena en la cima del campo zk, definitivamente usaremos las últimas tecnologías. Siempre hemos considerado la seguridad y la estabilidad como nuestros objetivos de máxima prioridad, por lo que no cambiaremos nuestro sistema de prueba ZK de manera demasiado radical. Primero podemos hacer la transición a través de algún Multi Prover y explorar y progresar paso a paso para completar la actualización de la próxima versión. Iterar. De todos modos, asegúrese de que esta sea una transición sin problemas.

Pero por ahora, todavía es pronto para cambiar a un nuevo sistema de prueba. Esta es en realidad la dirección de desarrollo de la siguiente etapa, como los próximos seis meses a un año.

5.Nickqiao: ¿Scroll tiene alguna innovación única en el sistema de prueba actual basado en PLONK y Lookup?

YeZhang: Halo2 se ejecuta actualmente en la red principal de Scroll. Halo2 se originó en el equipo del proyecto Zcash. Fueron los primeros en construir un sistema back-end que pudiera admitir búsquedas y escribir formatos de circuitos de manera flexible. Luego, trabajamos con el equipo PSE de Ethereum para transformar halo2, cambiando el esquema de compromiso polinomial que usaba de IPA a KZG y reduciendo el tamaño de la prueba, para que la prueba ZK se pueda verificar de manera más eficiente en Ethereum.

Luego, hemos trabajado mucho en la aceleración del hardware de la GPU. En comparación con el uso de la CPU para generar ZKP, podemos hacer que la generación de ZKP sea de 5 a 10 veces más rápida. En términos generales, reemplazamos el esquema de compromiso polinomial del halo2 original con una versión que es más fácil de verificar, hicimos muchas optimizaciones en Prover y pusimos mucho esfuerzo en la implementación de ingeniería.

6.Nickqiao: Entonces Scroll ahora está cooperando con el equipo de Ethereum PSE para mantener la versión KZG de halo2. ¿Puedes contarnos un poco sobre cómo trabajas con el equipo de PSE?

YeZhang: Antes de que Scroll comenzara el proyecto, conocíamos a algunos ingenieros del equipo de PSE. Hablamos con ellos y les dijimos que queríamos hacer zkEVM. Estimamos que la eficiencia estaba bien. Sucedió que querían hacer lo mismo al mismo tiempo y se llevaron bien de inmediato.

Por lo tanto, conocimos a personas de la comunidad Ethereum y de Ethereum Research que querían trabajar en zkEVM. Todos querían comercializar zkEVM y tenían la idea de servir a Ethereum, por lo que era natural iniciar una cooperación de código abierto. Este tipo de cooperación se parece más a una comunidad de código abierto que a una empresa comercial. Por ejemplo, hacemos una llamada telefónica una vez a la semana para sincronizar el progreso y discutir los problemas encontrados.

De esta manera, hemos mantenido este conjunto de código como código abierto, desde mejorar halo2 hasta implementar zkEVM, hay mucho proceso de exploración y nos ayudaremos mutuamente a revisar el código. Como puede ver en las contribuciones de código en Github, PSE escribió la mitad y Scroll escribió la otra mitad. Posteriormente, completamos la auditoría del código e implementamos una versión del código que realmente se produjo y se ejecutó en la red principal. En resumen, nuestro modelo de cooperación con Ethereum PSE se parece más al camino de una comunidad de código abierto y es una forma espontánea.

7.Nickqiao: Acabas de mencionar que escribir circuitos zkEVM requiere matemáticas y criptografía muy avanzadas. En este caso, probablemente haya muy pocas personas que puedan entender zkEVM. Entonces, ¿cómo garantiza Scroll la corrección de la escritura del circuito y reduce los errores?

YeZhang: Debido a que somos código fuente abierto, básicamente cada PR será revisado por nuestra gente, algunas personas de Ethereum y algunos miembros de la comunidad, y existe un proceso de auditoría relativamente estricto. Al mismo tiempo, también gastamos mucho dinero en auditorías de circuitos, más de 1 millón de dólares estadounidenses, y encontramos las instituciones de auditoría de circuitos y criptografía más profesionales en esta industria, como Trail of Bits, Zellic, etc. También usamos openzepplin para auditar los contratos inteligentes en nuestra cadena. Básicamente, todo lo relacionado con la seguridad utiliza los recursos de auditoría de más alto nivel. También contamos con un equipo de seguridad interno dedicado para realizar pruebas y continuar mejorando la seguridad de Scroll.

Nickqiao: Además de este método de auditoría, ¿existen métodos matemáticamente más rigurosos, como la verificación formal?

YeZhang: De hecho, hemos analizado la dirección de la verificación formal durante mucho tiempo, incluido Ethereum, que recientemente ha estado pensando en cómo realizar la verificación formal para zkEVM. Esta es en realidad una buena dirección. Pero por ahora, todavía es pronto para realizar una verificación formal completa para zkEVM. Solo podemos comenzar con algunos módulos pequeños, porque ejecutar la verificación formal tiene un costo, por ejemplo, si necesita ejecutar la verificación formal en un conjunto de códigos. Primero debe escribir una especificación, pero escribir una especificación no es fácil. Se necesita mucho tiempo para perfeccionar este conjunto de cosas.

Así que creo que aún no estamos en la etapa de verificación formal completa de zkEVM, pero continuaremos explorando activamente cómo hacer una prueba formal de zkEVM con socios externos, incluido Ethereum.

Actualmente, la mejor manera es la auditoría manual, porque incluso si tiene una especificación y una verificación formal, si la especificación está escrita incorrectamente, seguirá teniendo problemas. Por lo tanto, creo que es mejor garantizar la estabilidad del código Scroll actual mediante una auditoría manual primero y luego mediante el código abierto y las recompensas por errores.

Sin embargo, en la próxima generación de zkEVM, el objetivo final de Ethereum Target es cómo realizar una verificación formal, cómo diseñar un mejor zkEVM para que sea más fácil escribir especificaciones y demostrar su seguridad a través de una verificación formal. Es decir, después de que un zkEVM se verifique formalmente, pueden implementarlo en la red principal de Ethereum con total confianza.

8.Nickqiao: Con respecto al halo2 adoptado por Scroll, si quiere admitir nuevos sistemas de prueba como STARK, ¿el costo de desarrollo será muy alto? ¿Se puede implementar un sistema de complemento para admitir múltiples sistemas de prueba al mismo tiempo?

YeZhang: halo2 es un sistema de prueba ZK muy modular. Puede reemplazar su dominio, compromiso polinómico, etc. Siempre que el compromiso polinómico que utiliza se cambie de KZG a FRI, básicamente puede implementar una versión halo2 de STARK. Además, alguien lo ha hecho, por lo que halo2 necesita ser compatible con STARK. Esta compatibilidad está completamente bien.

Luego, en la implementación real, descubrirá que si desea lograr la máxima eficiencia, es más probable que un marco más modular cause algunos problemas de eficiencia, porque sacrifica el grado de personalización por la modularidad y habrá que pagar un precio. Seguimos prestando atención a un problema: si la dirección de desarrollo futuro debe ser un marco modular o un marco muy personalizado, especialmente si tenemos un equipo de desarrollo de ZK lo suficientemente fuerte como para mantener un sistema de certificación independiente y luego hacer que zkEVM se convierta en Más eficiente. Por supuesto, los problemas anteriores requieren algunas compensaciones, pero en lo que respecta a halo2, puede admitir FRI.

9.Nickqiao: ¿Cuál es la dirección de iteración actual de Scroll en ZK? ¿Está optimizando el algoritmo actual, agregando algunas características nuevas, etc.?

YeZhang: El núcleo de lo que está haciendo nuestro equipo de ingeniería es duplicar el rendimiento del Prover actual y lograr la mejor compatibilidad con EVM. En la próxima versión de la actualización, continuaremos manteniendo nuestra posición como el EVM más compatible en ZK Rollup. Ahora todos los demás zkEVM no deberían ser tan compatibles como el nuestro.

Entonces, esto es lo que el equipo de ingeniería de Scroll está haciendo, por un lado, continuar optimizando Prover y la compatibilidad, y reducir costos. Ahora hemos invertido mucha mano de obra en la investigación de la próxima generación de zkEVM y hemos invertido aproximadamente la mitad de nuestros esfuerzos de ingeniería para lograr una generación de pruebas ZK de nivel minuto o incluso de segundo nivel, lo que hace que Prover sea más eficiente.

Al mismo tiempo, estamos explorando la nueva capa de ejecución zkEVM. Nuestros nodos solían usar go-ethereum, pero ahora hay una versión Rust de mejor rendimiento del cliente Ethereum Reth. Por eso estamos estudiando cómo combinar mejor el zkEVM de próxima generación con el cliente Reth para mejorar el rendimiento de toda la cadena. Examinaremos qué métodos de implementación y formas de transición son mejores para zkEVM si gira en torno a la nueva capa de ejecución.

10.Nickqiao: Entonces, al igual que los sistemas de prueba diversificados que Scroll está considerando admitir, ¿es necesario implementar múltiples contratos Verifier en la cadena? Por ejemplo, haga una validación cruzada

YeZhang: Creo que estas son dos preguntas. Primero, ¿es necesario construir un sistema de prueba modular y un Prover diversificado? Creo que tiene sentido hacerlo, porque somos un proyecto de código abierto de principio a fin. Cuanto más general sea el marco de código abierto, más personas se sentirán atraídas para ayudarlo a construir la rueda y, como resultado, su comunidad crecerá. Más adelante, en el desarrollo de proyectos o el uso de herramientas, naturalmente podrá confiar en fuerzas externas. Así que creo que tendría sentido crear un marco de prueba ZK que no solo sea utilizado por Scroll, sino también por otros.

Luego, lo segundo es realizar una validación cruzada en la red principal. Este es en realidad un tema ortogonal para demostrar si el sistema en sí es diverso y si es compatible con STARK o PLONK. En términos generales, hay muy pocos proyectos que usan PLONK para verificar el mismo zkEVM y luego usan STARK para verificarlo. Esto es muy raro, porque hacerlo no mejorará en gran medida la seguridad, pero hará que Prover pague costos más altos, así es. generalmente no se hace. Esta situación de validación cruzada ocurre.

De hecho, estamos trabajando en algo llamado Multi Prover. Dos conjuntos de Prover pueden probar el mismo bloque juntos, pero las dos pruebas se agregarán fuera de la cadena y luego se colocarán en la cadena para su verificación. Por lo tanto, no se realizará validación cruzada entre STARK y SNARK en la cadena. Nuestra solución multi-Prover es garantizar que cuando un conjunto de códigos Prover tiene un problema, el otro conjunto de códigos pueda cubrirlo. Si un sistema tiene un error, el otro puede ejecutarse como de costumbre, por lo que este es otro tema. validación cruzada.

11.Nickqiao: Scroll's Multi Prover, ¿en qué se diferenciará el programa de prueba ejecutado por cada Prover?

YeZhang: En primer lugar, supongamos que tengo un zkEVM normal escrito en halo2 y un Prover normal para generar ZKP y luego verificarlo en la cadena. Pero hay un problema aquí: el zkEVM es muy complicado y pueden ocurrir errores. Si ocurre un error, por ejemplo, un hacker o un equipo de proyecto usa el error para generar una prueba y finalmente se puede retirar el dinero de todos, lo cual definitivamente no es bueno.

La idea central de Multi Prover fue propuesta por primera vez por Vitalik en el evento de Bogotá. Esto significa que si un zkEVM puede tener errores, puede ejecutar diferentes tipos de Prover al mismo tiempo. Por ejemplo, puede usar el Prover basado en SGX de TEE (Scroll actualmente usa este conjunto), o basado en OP, o usar zkVM para. ejecutar EVM forma de ejecutar un Prover. De todos modos, estos Prover deben demostrar la efectividad de un Bloque L2 al mismo tiempo.

Supongamos que hay 3 tipos diferentes de Prover. Si y solo si las 3 Pruebas diferentes generadas por ellas pasan la verificación, o al menos 2 de las 3 Pruebas pasan la verificación, puede finalizar el estado final de la Capa 2 en la cadena Ethereum. Multi Prover puede garantizar que cuando un Prover falla, los otros dos Prover puedan tomar el control. Finalmente, la estabilidad de todo el sistema Prover será muy buena, lo que mejora la seguridad de ZK Rollup. Por supuesto, esto también introducirá otras desventajas, como que aumentará el costo operativo general de Prover. Tenemos un blog dedicado a presentar estos conceptos.

12.Nickqiao: Ahora, con respecto a la generación de pruebas ZK de Scroll, ¿cómo se construye su red de generación de pruebas (grupo de minería ZK)? ¿Es de construcción propia o algunos cálculos se subcontratarán a un tercero como Cysic?

YeZhang: En lo que a nosotros respecta, todo el diseño es realmente muy sencillo. Queremos que más propietarios de GPU o mineros participen en nuestra red de prueba (grupo de minería ZK), pero por ahora, el Prover Market de Scroll todavía lo operamos nosotros mismos. y cooperaremos con algunos terceros con clústeres de GPU para ejecutar Prover, pero esto es por la estabilidad de la red principal, porque una vez que su Prover esté descentralizado, habrá muchos problemas.

Por ejemplo, si su mecanismo de incentivos no está bien diseñado, si nadie genera pruebas para usted, el rendimiento de la red se verá afectado. En la etapa inicial, elegimos un enfoque relativamente centralizado, pero el diseño de toda la interfaz y el marco hace que sea muy fácil cambiar a un modo descentralizado. Las personas pueden utilizar nuestro marco técnico para construir una red Prover descentralizada y agregar algunos incentivos.

Pero por ahora, para la estabilidad de Scroll, nuestra red de generación Prover todavía está centralizada. En el futuro, descentralizaremos la red Prover a mayor escala. Todos pueden ejecutar su propio nodo Prover, incluidos nosotros. Plataformas como Cysic, red Snarkify, etc., si alguien quiere iniciar su propia Capa 2 a través de nuestra pila de tecnología, puede ir al Prover Market de terceros y llamar directamente al servicio Prover de la otra parte.

13.Nickqiao: ¿Scroll tiene alguna inversión o producción en aceleración de hardware ZK?

YeZhang: Esto es en realidad lo que mencioné antes. Las dos direcciones principales en las que trabajó Scroll inicialmente fueron hacer que zkEVM sea de imposible a posible. La segunda es la razón por la que podemos hacerlo posible de imposible a posible. Porque La eficiencia de la aceleración del hardware ZK. sido mejorado.

De hecho, comencé a trabajar en la aceleración de hardware ZK tres años antes de comenzar a trabajar en Scroll. También tenemos artículos sobre aceleración de hardware ASIC o GPU. Conocemos muy bien el hardware de zk, ya sean chips o GPU, ya sea académica o prácticamente, tenemos una credibilidad muy sólida.

Pero Scroll se centrará en la aceleración de hardware de GPU, porque no tenemos los recursos para especializarnos en FPGA o hardware, ni tenemos la experiencia especializada en salida de cinta. Por lo tanto, optaremos por cooperar con empresas de hardware como Cysic, que se especializan en hardware, y nos centraremos en el campo de la aceleración de GPU orientado al software. Nuestro propio equipo optimizará la aceleración del hardware de la GPU y luego abrirá el código fuente de los resultados. Los socios externos pueden fabricar chips especializados como los ASIC. También discutiremos e intercambiaremos con frecuencia los problemas que surjan entre nosotros.

14.Nickqiao: Acabas de mencionar que Scroll cambiará a otros sistemas de prueba en el futuro. En cuanto a algunos sistemas de prueba nuevos, como Nova u otros algoritmos, ¿puede darnos algo de divulgación científica? ¿Cuáles son sus ventajas?

YeZhang: Sí. Una dirección que actualmente estamos explorando internamente es utilizar dominios más pequeños, que se pueden combinar con nuestros sistemas de prueba actuales, como bibliotecas como PLONKy3, que pueden implementar rápidamente algunas operaciones en dominios pequeños. Esta es una opción. ¿Cómo podemos cambiar de nuestro dominio grande original a un dominio pequeño?

También estamos analizando algunas direcciones internamente, como un sistema de prueba llamado GKR, que requiere un tiempo lineal para generar pruebas y tiene una complejidad mucho menor que otros Provers. Sin embargo, actualmente no existe una forma particularmente madura de implementar el proyecto. Para lograrlo, será necesario invertir más recursos humanos y materiales.

Pero la ventaja de GKR es que es muy eficiente cuando se trata de cálculos repetidos. Por ejemplo, si una firma se calcula 1000 veces, GKR puede generar pruebas de manera eficiente para tales cosas. ZK Bridge Polyhedra utiliza GKR para probar firmas, lo cual es muy eficiente. Luego, EVM tiene muchos pasos de cálculo repetidos y GKR se puede utilizar para reducir mejor el costo de generar pruebas ZK.

Luego hay algunos beneficios, es decir, el sistema de prueba GKR requiere muchos menos cálculos que otros sistemas. Por ejemplo, si usa métodos como PLONK o STARK para probar el proceso de cálculo de una función hash de keccak, debe confirmar todas las variables en el medio y todo lo generado durante todo el proceso de cálculo de keccak, y calcularlas todas una vez.

Pero con GKR, solo necesita confirmar su capa de entrada corta y puede expresar todos los parámetros en el medio a través de relaciones de transferencia. No necesita confirmar las variables en el medio, lo que reducirá mucho el costo de cálculo. El protocolo de verificación de suma detrás de GKR también lo utilizan los argumentos Jolt o Lookup o algunos marcos nuevos populares, por lo que esta dirección tiene potencial y también la estamos estudiando seriamente.

Finalmente, está la Nova que mencionaste. Siento que Nova se hizo popular hace unos meses, porque Nova es más adecuado para manejar este tipo de cálculos repetidos. Por ejemplo, si originalmente desea probar 100 tareas, el costo general para esto es 100. Pero lo que hace Nova es que puedo apilar estas 100 tareas para probar una encima de la otra, y combinar cada dos al azar de forma lineal, y finalmente combinarlas en algo que al final debe probarse, y luego simplemente probar la final. tarea Demuestre que las 100 tareas anteriores son válidas. En este caso, la sobrecarga de prueba original de 100 se puede comprimir en gran medida.

Luego, en algunos trabajos posteriores, como Hyper Nova, Nova se puede extender a algunos sistemas de prueba distintos de R1CS, algunos otros formatos de escritura de circuitos y puede admitir búsquedas u otras cosas, para hacer que una VM sea mejor. Probado por sistemas de prueba ZK como como Nova. Pero en la actualidad, la producción de Nova y GKR no es lo suficientemente perfecta y actualmente no existe una biblioteca buena y eficiente para Nova en el mercado.

Y debido a que Nova está plegado de esta manera, su idea de diseño es diferente de otros sistemas de prueba. Creo que todavía es muy inmaduro y es sólo una alternativa con potencial. Pero en la actualidad, desde la perspectiva de Production Ready, los sistemas de certificación ZK más comunes se lanzaron al mercado antes, pero es difícil decir cuál es el mejor a largo plazo.

15.Fausto: Finalmente, quiero hablar de valores. Recuerdo que dijiste que después de tu viaje a África el año pasado, sentiste que es más probable que blockchain se adopte a gran escala en lugares económicamente atrasados ​​como África. ¿Puedes hablarnos de lo que piensas al respecto?

YeZhang: Siempre he creído firmemente que blockchain realmente tiene margen de aplicación en países económicamente atrasados. De hecho, ahora se puede ver que hay muchas estafas en la industria blockchain, lo que ha sacudido la confianza de muchas personas en la industria. Es por eso que tienen que trabajar en una industria sin valor real. Además de la especulación monetaria o los juegos de azar, ¿existen escenarios de aplicación más prácticos?

Creo que puedes sentir mejor el potencial de blockchain cuando vas a algunos lugares económicamente atrasados, especialmente África. Debido a que las personas que viven en China o en los países occidentales tienen sistemas monetarios y financieros muy sólidos, los chinos están muy contentos con WeChat y Alipay, y el RMB es relativamente estable.

Pero en lugares como África, realmente tienen demanda de blockchain y monedas estables en cadena, porque la inflación de su moneda es realmente grave. En este caso, la tasa de inflación en algunos países africanos puede alcanzar el 100% cada seis meses. , cada vez que compras comida cada seis meses, el precio aumentará un 20%. Si es un año, puede aumentar aún más. En este caso, sus monedas se han depreciado severamente y sus activos también se están depreciando, por lo que muchas personas esperan usar dólares estadounidenses para obtener monedas estables o monedas estables de otros países desarrollados.

Pero a los africanos les resulta difícil solicitar cuentas bancarias en los países desarrollados. Las monedas estables son una necesidad urgente para ellos. Incluso si no existe una cadena de bloques, todavía quieren tener cosas como dólares estadounidenses. Obviamente, para los africanos, la mejor manera de conservar dólares estadounidenses es obtener monedas estables. Cada vez que reciben un pago, pueden ir a Binance y cambiar rápidamente el dinero por USDT o USDC, y luego usarlo cuando lo necesiten. , lo que les llevará a tener necesidades reales y aplicaciones prácticas para blockchain.

De hecho, después de ir a África, obviamente sentirá que Binance ha estado implementado en África durante mucho tiempo y ha hecho un trabajo muy sólido. Muchos africanos realmente confían en las monedas estables. Incluso si todos prefieren confiar en el intercambio, ellos. Es posible que no confíe en el sistema monetario de su propio país, porque es posible que muchos africanos no puedan solicitar préstamos localmente. Supongamos que desea pedir prestado 100 yuanes, el banco emitirá varios procedimientos y condiciones, y es posible que al final no pueda obtener un préstamo, pero en los intercambios u otras plataformas en cadena, esto es mucho más flexible, así que creo En África, la gente tiene aplicaciones y necesidades más prácticas para blockchain.

Por supuesto, la mayoría de la gente no sabe mucho sobre lo que estoy hablando, porque a la mayoría de las personas que usan Twitter no les importa esto, o no lo verán en Twitter. Hay muchas regiones relativamente atrasadas como África, incluidos países donde Binance tiene una gran cantidad de usuarios, como Turquía, algunos países del sudeste asiático y Argentina. Descubrirá que la gente de estas regiones utiliza mucho los intercambios. Entonces creo que en estos lugares, el caso de Binance ha demostrado que la gente tiene una demanda muy fuerte de blockchain.

Por eso creo que es realmente necesario construir mercados y comunidades en estas áreas. También tenemos un equipo dedicado en Turquía. Tenemos una comunidad muy grande en Turquía y luego nos expandiremos lentamente a las áreas mencionadas anteriormente en África y el Sudeste Asiático. , Argentina y otros países están atravesando una transición. Y creo que entre todos los Layer 2, es más probable que Scroll se arraigue con éxito en los países mencionados anteriormente, porque la cultura de nuestro equipo es bastante diversa. Aunque los tres fundadores son chinos, nuestro equipo completo probablemente incluya al menos 20 o 30 países. Aunque sólo somos setenta u ochenta en total, básicamente hay al menos dos o tres personas en cada región, por lo que la cultura general es muy diversa. En comparación, otras Capas 2 que se puedan imaginar están básicamente dominadas por occidentales, como OP, Base y Arbitrum, que están completamente occidentalizados.

En resumen, esperamos construir un conjunto de infraestructura con escenarios de aplicación práctica para las personas en África, que está económicamente atrasada y tiene una necesidad real de blockchain. Se siente un poco como "áreas rurales que rodean las ciudades", vaya y comience a hacerlo lentamente. Adopción masiva. Entonces creo que mis sentimientos durante mi viaje a África todavía son muy profundos, pero en la actualidad, el costo de usar Scroll todavía es un poco caro para algunas personas, por lo que todavía espero reducir aún más el costo, por ejemplo, diez veces O más, y luego llevar a los usuarios a la cadena de bloques a través de otros medios.

De hecho, hay otro ejemplo que no se ha mencionado antes y puede resultar algo inadecuado, que es Tron. Puede que todo el mundo tenga malas impresiones al respecto, pero es cierto que muchas personas en países económicamente atrasados ​​lo están utilizando debido a la estrategia de intercambio anterior de HTX y muchas otras estrategias de marketing, TRON se ha convertido lentamente en su propia marca. Creo que si hay una cadena en el ecosistema Ethereum que pueda atraer a estos usuarios al ecosistema Ethereum, será un gran logro y también hará algunas cosas muy positivas para la industria. .

Ahora muchas segundas capas de Ethereum están implementando datos TVL, haciéndolos circular. Ustedes son 600 millones de dólares estadounidenses, nosotros podemos ser 700 millones de dólares estadounidenses, son mil millones de dólares estadounidenses, pero creo que en comparación con estas cosas, las noticias más impactantes. Es que TEDA De repente se dijo que emití otros mil millones de USDT en esta segunda capa o en qué cadena, o cuántas monedas estables se emitieron. Si una cadena crece naturalmente hasta tal punto que no necesita capturar las necesidades de los usuarios a través de las expectativas de lanzamiento aéreo, entonces se considerará un estado relativamente exitoso, al menos un estado con el que estoy más satisfecho, es decir, puede hacer que el Las necesidades reales de los usuarios alcanzan un cierto nivel. Como resultado, cada vez más personas utilizan su cadena a diario.

Finalmente, quiero hacer una digresión. Habrá muchas actividades en el ecosistema de Scroll a continuación. Espero que todos presten más atención a nuestro progreso de seguimiento y participen más en nuestro ecosistema defi.