Cada decisión que toma ONYX va a un registro que solo crece. Cada hora se firma una nota que dice cuánto medía y cuál era su huella. Si algo se reescribiera después, esas notas dejarían de cuadrar.
Cada nota está firmada con la clave que se publica arriba — y se comprueba aquí, en tu máquina.
Cada nota apunta a la anterior. Una nota que falte deja un hueco.
La altura nunca baja. Para borrar algo del pasado habría que dejar el registro más corto que una nota ya firmada.
La última nota es reciente. Si se hubiera parado, se vería.
Cada co-firma se comprueba también aquí, contra los mismos bytes. Un testigo no puede co-firmar sin haber visto la misma historia que estás viendo tú.
Para cuando alguien diga «me habéis sancionado sin razón». Su recibo lleva un número, ese número tiene que estar dentro de este registro, y este registro no puede haber cambiado desde entonces. Sin esto, la única respuesta posible sería «confía en nosotros».
Gente independiente que se descarga cada nota, comprueba que crece desde la que vio antes, y la co-firma con su propia clave. Un testigo que vio una historia no co-firma otra distinta — así que una historia falsa se queda sin co-firmas, y eso se ve.
node tools/witness.js https://argos.is-a.dev
Un comando. Se hace una clave, mira cada hora, y para si algo deja de cuadrar.
Esta página lee exactamente esto, y nada más. Tú también puedes. /api/attest
{
"v": 2,
"algo": "ed25519",
"key": "MCowBQYDK2VwAyEA25zqsz+yCAxGMPwfT+c/DfOJRhlzI7A8Wn6bT2nMPXI=",
"signed": {
"1": "JSON.stringify({v,seq,at,height,head,prev})",
"2": "JSON.stringify({v,seq,at,height,head,size,root,prev})",
"3": "JSON.stringify({v,seq,at,height,head,size,root,code,prev})",
"4": "JSON.stringify({v,seq,at,height,head,size,root,code,prev})"
},
"count": 1063
}