Criptografía
Las garantías de evidencia de manipulación de ULedger se apoyan en tres capas criptográficas: esquemas de firma (quién autorizó cada acción), encadenamiento Merkle (orden e integridad de los bloques) y pruebas STARK (historial compacto y verificable a lo largo de las épocas).
Esquemas de firma
Cada cadena se crea con un algoritmo de clave fijo. Todas las billeteras de esa cadena usan el mismo algoritmo.
| Algoritmo | Tipo | Seguro frente a computación cuántica | Notas |
|---|---|---|---|
secp256k1 | ECDSA | No | Curva estándar de Bitcoin/Ethereum. Ampliamente soportada. |
ed25519 | EdDSA | No | Firmas compactas, verificación rápida. |
bls12377 | BLS basado en emparejamientos | No | Permite la agregación de firmas. |
mldsa87 | ML-DSA-87 (Dilithium-5) | Sí | Post-cuántico. Requerido para evidencia de manipulación a largo plazo. |
mldsa87 (ML-DSA-87) es la variante de CRYSTALS-Dilithium con nivel de seguridad 5 del NIST, implementada mediante Cloudflare CIRCL. Es el algoritmo de elección para despliegues de billeteras de los agentes donde el registro de auditoría debe poder verificarse una vez que las computadoras cuánticas sean viables.
Derivación de claves
Las claves privadas de las billeteras se derivan de mnemónicos BIP39 con entropía. El archivo .ukey almacena la clave privada; esta nunca sale del SDK. Solo la clave pública y las transactions firmadas tocan la red.
Derivación de la dirección:
address = SHA-256(lowercase(publicKeyHex))
Encadenamiento Merkle
El encabezado de cada bloque incluye la raíz Merkle de todas las transactions de ese bloque y un puntero hash al encabezado del bloque anterior. Esto crea una cadena de solo anexado (append-only): alterar cualquier transaction invalida todos los hashes de bloque posteriores.
Pruebas STARK (Helix)
El sidecar Helix se ejecuta en cada nodo y produce pruebas Plonky3 STARK sobre lotes de bloques por época. Propiedades:
| Propiedad | Detalle |
|---|---|
| Sistema de pruebas | Plonky3 (STARK, sin trusted setup) |
| Cobertura por época | Cada prueba cubre un lote de encabezados de bloque y datos de miembros |
| Plegado recursivo | Cada prueba de época se pliega en la cadena de pruebas anterior |
| Resultado | Una prueba de tamaño constante sobre un historial de cadena arbitrario |
| Anclaje entre algoritmos | Checkpoints firmados por miembros del council con secp256k1 y mldsa87 |
Un auditor independiente puede verificar todo el historial de la cadena usando únicamente las pruebas de checkpoint y las claves públicas del council. No se requiere acceso a ningún nodo en vivo.
Pruebas de conocimiento cero
Para el anclaje entre cadenas (Cross-Merkleization), ULedger utiliza pruebas ZK-SNARK (variantes Groth16 y PLONK) para validar referencias de estado entre cadenas sin revelar los datos subyacentes.
Referencias detalladas
- Fundamento criptográfico (Glosario) - funciones hash, sistemas de pruebas ZK, notas de implementación de algoritmos
- Cross-Merkleization (Glosario) - anclaje de pruebas multicadena
- Helix: Sistema de pruebas STARK - pipeline Plonky3, plegado recursivo, flujo de trabajo del auditor independiente
- Tipos de clave de billetera