8 jul 2018

¿Qué es OpenTimeStamps y para qué se utiliza?

OpenTimestamps (OTS) es un sistema descentralizado de sellado de tiempo que utiliza Bitcoin para probar la existencia de documentos. Interactúa normalmente con servidores de calendario para agrupar peticiones y registrar atestaciones.

Prueba OTS y sello de tiempo

Una prueba OTS está compuesta por un sello de tiempo (también llamado "fichero OTS"), así como por el fichero original al que se refiere ese sello de tiempo. Cualquier persona o entidad que posea la prueba OTS puede verificar que el contenido del fichero se mantiene sin modificaciones al menos desde el momento en que se creó el sello de tiempo. Esta verificación de integridad se puede obtener sin delegar la consulta en un tercero de confianza.

Creación del sello de tiempo

La operación stamp crea la primera versión del sello de tiempo. Se aplica sobre el fichero del que se quiere demostrar su existencia (fichero original).

$ cat hello.txt
Hello World!
$ ots stamp hello.txt
Submitting to remote calendar https://a.pool.opentimestamps.org
Submitting to remote calendar https://b.pool.opentimestamps.org
Submitting to remote calendar https://a.pool.eternitywall.com
La operación stamp calcula el hash SHA256 del fichero original, le concatena un nonce aleatorio de 128 bits para mantener la privacidad, y vuelve a calcular el hash SHA256, enviando este único valor a los servidores de calendario. Cada uno de los servidores de calendario añadirá el hash recibido a su árbol de Merkle y devolverá la respuesta necesaria para generar el fichero OTS inicial. Este fichero OTS está aún incompleto porque no contiene el registro en la cadena de bloques.

Una vez que ha transcurrido un tiempo prudencial, el usuario lanzará la operación upgrade sobre el mismo fichero OTS. Así se comunicará con los servidores de calendario y se actualizará el fichero OTS con la atestación de la cabecera de bloque de Bitcoin.
$ ots upgrade hello.txt.ots
Success! Timestampcomplete
También se pueden crear sellos de tiempo para varios ficheros diferentes de forma simultánea. En ese caso, la operación stamp envíará una única petición a los servidores de calendario con una raíz de árbol de Merkle derivada a partir de los ficheros originales. Posteriormente esa misma operación recalculará las rutas del árbol de Merkle y creará los ficheros OTS adaptados a cada uno de los ficheros originales.

Verificación de la prueba OTS

La verificación de la prueba OTS requiere el fichero OTS y el fichero original. Para que la verificación se pueda realizar sin depender de terceros de confianza, el usuario debe tener un nodo de Bitcoin en su máquina con la cadena de bloques actualizada.
$ ots verify hello.txt.ots
Assuming target filename is 'hello.txt'
Success! Bitcoin attests data existed as of Mon Apr 16 01:15:16 2018CEST
fc15231ef6de

Casos de uso

El Boletín Oficial de la República Argentina utiliza actualmente OpenTimestamps para demostrar que las publicaciones oficiales no han sido modificadas de forma fraudulenta.

Los 750.000.000 ficheros de Internet Archive han sido registrados mediante OpenTimestamps para que no puedan ser modificados de forma encubierta. La evidencia final resultó en la anotación irreversible de la raíz de Merkle de todos esos ficheros en una única transacción de Bitcoin.

Otras aplicaciones incluyen publicaciones defensivas, evidencias contra plagios, verificación de firmas desde claves PGP revocadas, etc

Contenido completo en fuente original: Wikipedia

Suscríbete a nuestro Boletín

0 Comments:

Publicar un comentario

Gracias por dejar un comentario en Segu-Info.

Gracias por comentar!