Árbol de Merkle

Un árbol binario de hashes cuya raíz compromete con todos los depósitos del pool de SolMask.

SolMask guarda cada depósito como una hoja en un árbol de Merkle Poseidon de tipo append-only y profundidad 24, con capacidad para hasta 16.777.216 depósitos antes de tener que rotar el pool. La raíz del árbol es un único valor de 32 bytes que compromete criptográficamente con todo el historial de depósitos: si cualquier hoja cambia, la raíz cambia.

Cuando retiras, tu prueba de conocimiento cero certifica que tu commitment aparece en alguna posición del árbol, sin revelar cuál. La prueba lleva un camino de Merkle (un hash hermano en cada uno de los 24 niveles) y el circuito vuelve a hashear hacia arriba para confirmar que la raíz coincide.

En cadena mantenemos una PDA root_history que guarda las últimas 64 raíces, refrescada cada vez que llega un depósito. Un retiro es válido contra cualquiera de esas raíces recientes, así que una actualización transitoria de la raíz no invalida una prueba generada pocos segundos antes. La frontera (el camino más a la derecha del árbol) es lo que la instrucción de depósito realmente muta, lo que mantiene constante el coste por depósito en la profundidad del árbol.

Términos relacionados

Árbol de Merkle · Glossary · SolMask