Entonces déjame explicarte: esta arquitectura completa de privacidad de Dusk se construye realmente sobre una pila específica de primitivas criptográficas. Y aquí está la cuestión: cada una cumple una función que ninguna de las demás puede desempeñar.

Empieza con BLS12-381; es lo que @Dusk_Foundation usa para habilitar firmas y gran parte de su criptografía relacionada con ZK. Ahora, específicamente para la capa de privacidad Phoenix, Dusk se apoya en algo llamado JubJub, que es una curva compatible con SNARK. Y honestamente, sin ella, las pruebas protegidas (shielded) en Dusk serían demasiado lentas como para ejecutarse en la práctica.

Para la autenticación a través de la red, $DUSK usa firmas Schnorr, una elección limpia y bien probada; no hay nada experimental en ello. Ahora, dentro de los circuitos ZK de Dusk, el hash se maneja con Poseidon, y esta se construyó específicamente para mantenerse barata en un contexto donde las funciones hash más antiguas se vuelven caras muy rápido cuando las incorporas a un circuito.

Cuando se trata de pruebas de estado y de membresía, #dusk usa un árbol Merkle disperso, y toda la capa de prueba y verificación corre sobre PLONK. Encima de todo eso, Dusk también aplica algo llamado agregación BLS: básicamente comprime las firmas de todo un comité en un solo paquete, en lugar de que la red tenga que verificar cada una individualmente.

Déjame poner el panorama completo para que quede claro:

BLS12-381 — firmas y criptografía relacionada con ZK
JubJub — curva compatible con SNARK que impulsa la privacidad estilo Phoenix
Schnorr — firma y autenticación
Poseidon — hash compatible con ZK
Árbol Merkle disperso — pruebas de membresía y estado
PLONK — pruebas y verificación ZK
Agregación BLS — comprime las firmas del comité en una sola

Ahora bien, hay algo que vale la pena tener en cuenta: ninguna de estas primitivas significa realmente mucho por sí sola, simplemente como algo escrito en papel. La criptografía de Dusk puede ser completamente sólida matemáticamente y aun así verse debilitada en la práctica; piensa en una mala serialización, una comprobación de subgrupo omitida, una unión débil del transcript o una separación de dominios saltada. Así que si realmente estás intentando evaluar con justicia la base criptográfica de Dusk.