Un detalle al que volvía una y otra vez es el nonce de 32 bytes que se añade a cada carga útil.
Es como guardar un mensaje corto bajo llave en una caja y poner dentro una cadena aleatoria larga, para que nadie pueda adivinar el mensaje con solo mirar la cerradura.
En Covenants, el protocolo no se limita a aplicar un hash a la instrucción. Añade un nonce de 32 bytes y luego crea el compromiso keccak256(payload || nonce). Como muchas instrucciones de mercado son breves y predecibles, esta aleatoriedad adicional hace que adivinarlas por fuerza bruta resulte inviable.
Así se obtiene una mayor protección frente a quien intente asociar el compromiso en cadena con una orden común. El costo es almacenar de forma segura 32 bytes de entropía que nunca aparecen en la cadena hasta que el autor los revele.
¿Es un precio justo pagar 32 bytes adicionales de aleatoriedad oculta para impedir que se adivinen instrucciones predecibles?
#nil $NIL @Nillion
Es como guardar un mensaje corto bajo llave en una caja y poner dentro una cadena aleatoria larga, para que nadie pueda adivinar el mensaje con solo mirar la cerradura.
En Covenants, el protocolo no se limita a aplicar un hash a la instrucción. Añade un nonce de 32 bytes y luego crea el compromiso keccak256(payload || nonce). Como muchas instrucciones de mercado son breves y predecibles, esta aleatoriedad adicional hace que adivinarlas por fuerza bruta resulte inviable.
Así se obtiene una mayor protección frente a quien intente asociar el compromiso en cadena con una orden común. El costo es almacenar de forma segura 32 bytes de entropía que nunca aparecen en la cadena hasta que el autor los revele.
¿Es un precio justo pagar 32 bytes adicionales de aleatoriedad oculta para impedir que se adivinen instrucciones predecibles?
#nil $NIL @Nillion
