Liderando la Revolución de la Privacidad en Blockchain: Un Análisis Profundo del Último Algoritmo de $Aleo
@AleoHQ es un proyecto de blockchain enfocado en la protección de la privacidad, logrando una mayor privacidad y escalabilidad a través de la tecnología de pruebas de conocimiento cero (#ZKP). La idea central de #$Aleo es permitir a los usuarios verificar su identidad y procesar datos sin revelar información personal.
Este artículo presenta principalmente una visión general del proyecto $Aleo y sus últimos desarrollos, con una interpretación detallada de la actualización del algoritmo de rompecabezas, que es de gran interés para el mercado. Si esto ayuda a tu comprensión de @AleoHQ, siéntete libre de darle un pulgar arriba.
Última Vista Previa del Algoritmo ;) TLDR
La red $Aleo genera un circuito ZK aleatoriamente cada hora;
Los mineros necesitan probar diferentes nonces como entradas para el circuito dentro de esa hora, calcular el testigo (es decir, todas las variables en el circuito, este proceso de cálculo también se llama síntesis) y luego determinar la raíz de Merkle del testigo para ver si cumple con los requisitos de dificultad de minería.
Debido a la aleatoriedad del circuito, este algoritmo de minería no es amigable con las GPU, presentando desafíos significativos en la aceleración computacional.
Antecedentes de Financiamiento
$Aleo completó su ronda de financiamiento Serie A en 2021, recaudando 28 millones de dólares liderados por a16z, y completó una ronda de financiamiento Serie B de 200 millones de dólares en 2024, con inversores que incluyen Kora Management, SoftBank Vision Fund 2, Tiger Global, Sea Capital, Slow Ventures y Samsung Next. Esta ronda de financiamiento ha valorado a $Aleo en 1.450 millones de dólares.
Descripción General del Proyecto
Privacidad
El núcleo de $Aleo es la tecnología de prueba de conocimiento cero (ZKP), que permite que las transacciones y ejecuciones de contratos inteligentes se realicen mientras se mantiene la privacidad. Los detalles de las transacciones de los usuarios, como el remitente y la cantidad de la transacción, están ocultos por defecto. Este diseño no solo protege la privacidad del usuario, sino que también permite la divulgación selectiva cuando sea necesario, lo que lo hace muy adecuado para el desarrollo de aplicaciones DeFi.Sus componentes principales incluyen:
#$Leo Programming Language: Adaptado del lenguaje #Rust, diseñado específicamente para desarrollar aplicaciones de conocimiento cero (ZKApps), reduciendo los requisitos de conocimiento en criptografía para los desarrolladores.
snarkVM y snarkOS: snarkVM permite la ejecución fuera de la cadena de cálculos, con solo los resultados de verificación subidos a la blockchain, mejorando así la eficiencia. snarkOS asegura la seguridad de los datos y cálculos y permite la ejecución de funciones sin permisos.
zkCloud: Proporciona un entorno de computación fuera de la cadena, seguro y privado, para apoyar las interacciones de programación entre usuarios, organizaciones y DAOs.
$Aleo también ofrece un entorno de desarrollo integrado (IDE) y un kit de desarrollo de software (SDK), que permite a los desarrolladores escribir y desplegar aplicaciones rápidamente; además, los desarrolladores pueden desplegar aplicaciones en el registro de programas de $Aleo sin depender de terceros, reduciendo así el riesgo de la plataforma.
Escalabilidad
$Aleo adopta un enfoque de procesamiento fuera de la cadena, donde las transacciones se calculan primero en los dispositivos de los usuarios, y solo los resultados de verificación se suben a la blockchain. Este método mejora significativamente la velocidad de procesamiento de transacciones y la escalabilidad del sistema, evitando la congestión de la red y altas tarifas similares a las de Ethereum.
Mecanismo de Consenso
$Aleo introduce AleoBFT, un mecanismo de consenso de arquitectura híbrida que combina la finalización instantánea de los validadores con las capacidades computacionales de los probadores. AleoBFT no solo mejora la descentralización de la red, sino que también mejora el rendimiento y la seguridad.
Finalidad Rápida de Bloques: AleoBFT asegura que cada bloque se confirme inmediatamente después de su generación, mejorando la estabilidad de los nodos y la experiencia del usuario.
Garantía de Descentralización: Al separar la producción de bloques de la generación de coinbase, los validadores son responsables de la generación de bloques, mientras que los probadores realizan los cálculos de prueba, previniendo que unas pocas entidades monopolizen la red.
Mecanismo de Incentivos: Los validadores y proveedores comparten recompensas de bloques; se anima a los proveedores a apostar tokens para convertirse en validadores, mejorando así el nivel de descentralización y el poder computacional de la red.
$Aleo permite a los desarrolladores crear aplicaciones sin limitaciones de gas, lo que lo hace particularmente adecuado para aplicaciones que requieren procesos de larga duración, como el aprendizaje automático.
Desarrollos Actuales
$Aleo lanzará su testnet de incentivos el 1 de julio, y aquí hay algunas actualizaciones importantes:
Votación de ARC-100 Aprobada: La votación para ARC-100 ("Mejores Prácticas para el Cumplimiento para Desarrolladores y Operadores de $Aleo", propuesta que aborda el cumplimiento, el bloqueo de fondos y las transacciones retrasadas en la red $Aleo para medidas de seguridad) ha concluido con aprobación. El equipo está realizando ajustes finales.
Programa de Incentivos para Validadores: Este programa comenzará el 1 de julio y tiene como objetivo validar el nuevo mecanismo de rompecabezas. Se llevará a cabo hasta el 15 de julio, durante el cual se asignarán 1 millón de puntos $Aleo como recompensas. El porcentaje de puntos generados por los nodos determinará su parte de las recompensas, siendo necesario que cada validador gane al menos 100 tokens para calificar para recompensas. Los detalles específicos aún están por finalizar.
Oferta Inicial y Oferta Circulante: La oferta inicial es de 1,50 mil millones de tokens, con una oferta circulante inicial de aproximadamente el 10% (aún no finalizada). Estos tokens provienen principalmente de tareas de Coinbase (75 millones), que se distribuirán durante los primeros seis meses, incluyendo también recompensas por hacer staking, ejecutar validadores y verificar nodos.
Reinicio de Testnet Beta: Este es el reinicio final de la red, y no se agregarán nuevas características después de la finalización; la red será similar a la mainnet. El reinicio está destinado a agregar ARC-41 y nueva funcionalidad de rompecabezas.
Congelación de Código: La congelación de código se completó hace una semana.
Plan de Expansión de Nodos Validador: El número inicial de nodos validadores es de 15, con el objetivo de aumentar a 50 dentro del año y alcanzar finalmente 500.Convertirse en un delegador requiere 10 mil tokens, mientras que convertirse en un validador requiere 10 millones de tokens; estas cantidades disminuirán gradualmente con el tiempo.
Interpretación de la Actualización del Algoritmo
$Aleo anunció recientemente noticias sobre la última testnet, junto con una actualización a la versión más reciente del algoritmo de rompecabezas. El nuevo algoritmo ya no se centra en generar resultados de pruebas zk, eliminando los cálculos de MSM y NTT (ambos módulos computacionales ampliamente utilizados en zk para generar pruebas; los participantes de la testnet anterior optimizaron la eficiencia de este algoritmo para mejorar las recompensas de minería) y, en su lugar, se enfoca en generar testigos de datos intermedios antes de producir pruebas. Proporcionamos una breve introducción al último algoritmo basado en la especificación oficial del rompecabezas (https://t.co/7Kk5OMfKX7) y el código.
Proceso de Consenso
En el nivel del protocolo de consenso, el proceso involucra a los demostradores y validadores que son responsables de producir resultados computacionales (soluciones) y crear bloques mientras agregan y empaquetan soluciones. El flujo es el siguiente:
1/ El demostrador computa rompecabezas para construir soluciones y las difunde a la red.
2/ El validador agrega transacciones y soluciones para el siguiente nuevo bloque, asegurando que el número de soluciones no supere el límite de consenso (MAX_SOLUTIONS).
3/ La legalidad de la solución debe ser verificada contra el epoch_hash mantenido por el validador, comparándolo con el latest_epoch_hash, asegurando que el proof_target calculado coincida con el latest_proof_target mantenido por el validador en la red, y que el número de soluciones incluidas en el bloque esté por debajo del límite de consenso.
4/ Las soluciones válidas pueden ganar recompensas de consenso.
Rompecabezas de Síntesis
El núcleo del último algoritmo se llama Rompecabezas de Síntesis, el cual se enfoca en producir un EpochProgram común para cada época. Al construir circuitos de prueba R1CS para las entradas y el EpochProgram, genera asignaciones R1CS correspondientes (comúnmente denominadas testigos) que sirven como nodos hoja del árbol de Merkle.Después de calcular todos los nodos hoja, se genera la raíz de Merkle y se convierte en el proof_target para la solución. El proceso detallado y las especificaciones para construir el Synthesis Puzzle son las siguientes:
1/ Cada cálculo de puzzle se denomina nonce, que se construye a partir de la dirección que recibe las recompensas de minería, epoch_hash y un contador aleatorio. Cada vez que se calcula una nueva solución, se puede obtener un nuevo nonce actualizando el contador.
2/ Dentro de cada época, todos los proveedores en la red calculan el mismo EpochProgram, que se selecciona del conjunto de instrucciones basado en un número aleatorio generado por el epoch_hash actual. La lógica de muestreo es:
· El conjunto de instrucciones es fijo, y cada instrucción contiene una o más operaciones computacionales, cada una con un peso y un recuento de operaciones preestablecidos.
· Durante el muestreo, se genera un número aleatorio basado en el epoch_hash actual, y se obtienen y ordenan instrucciones del conjunto de instrucciones de acuerdo con el peso hasta que el recuento de operaciones acumulado alcanza 97, momento en el cual se detiene el muestreo.
· Todas las instrucciones se combinan para formar el EpochProgram.
3/ El nonce se utiliza como una semilla aleatoria para generar entradas para el EpochProgram.
4/ El R1CS correspondiente al EpochProgram y la entrada se agregan para realizar cálculos de testigos (asignación R1CS).
5/ Después de calcular todos los testigos, estos se convierten en la secuencia correspondiente de nodos hoja del árbol de Merkle, que es un árbol de Merkle de 8 niveles y 8 aristas.
6/ Se calcula la raíz de Merkle y se convierte en el proof_target para la solución, verificando si cumple con el latest_proof_target de la época actual. Si cumple con los criterios, el cálculo es exitoso y se envían como solución la dirección de recompensa requerida, el epoch_hash y el contador para construir la entrada, y se retransmiten.
7/ Dentro de la misma época, se pueden realizar múltiples cálculos de solución iterando el contador para actualizar las entradas del EpochProgram.
Cambios e Impactos en la Minería
Después de esta actualización, el rompecabezas ha cambiado de generar pruebas a generar testigos. La lógica de computación para todas las soluciones dentro de cada época es consistente, pero hay diferencias significativas en la lógica de computación a través de diferentes épocas.
En la prueba anterior, encontramos que muchos métodos de optimización se centraban en utilizar GPUs para optimizar los cálculos de MSM y NTT durante la generación de pruebas para mejorar la eficiencia de la minería. Esta actualización elimina por completo esa parte de la computación. Al mismo tiempo, el proceso de generación de testigos surge de la ejecución de un programa que sigue los cambios en las épocas, donde algunas instrucciones tendrán dependencias de ejecución en serie. Por lo tanto, lograr la paralelización presenta desafíos significativos.