Blockchain para registro de evidencias digitales
Crear cuenta

# Blockchain para pruebas de existencia

Publicado el 4 de octubre de 2018

## RESUMEN

El presente artículo explica matemáticamente como demostrar la existencia de un documento y/o secuencia de datos en un momento de tiempo.

## APIS

API | Descripción | TIPO
--- | --- | ---
https://api.stamping.io/stamp | Permite estampar un documento o secuencia de datos en la Blockchain de Stamping.io | POST
https://api.stamping.io/getstamp | Permite recuperar un documento o secuencia de datos que ha sido estampado en la Blockchain de Stamping.io | GET

Otra forma de ver el estado del proceso de estampado de un documento o secuencia de datos en stamping.io es ingresando a esta URL: http://www.stamping.io/q/?{code SHA1(Hash)}, donde debe calacular el hash de tipo SHA1 de hash (SHA256) de la evidencia digital.

## REGISTRO (ESTAMPADO)

Contiene los datos que son posteados en la api http://api.stamping.io/stamp

### DOCUMENTO DIGITAL

Cuando se genera un documento, se calcula el código hash (SHA256) del documento codificado en base64.

El código hash y algunos datos referenciales del documento son enviados a stamping.io para que sea endosados a la Blockchain de Ethereum, Bitcoin y los nodos privados Hyperledger Fabric que se ecnuetran asociados a stamping.io

Los datos que se pueden envíar la API RESTful de stamping.io son:

Elemento | Descripción | Ejemplo
--- | --- | ---
evidence | Hash de tipo SHA256 que representa el documento que se desea estampar en la Blockchain de Stamping.io | 5fef2ab39c2ed60ca5e5dc2b867786...
from | UserId del usuario que emite el documento, esta asociado al token de acceso del usuario que estampó el documemto en la Blockchain | AlzaH5fef2ab39c2ed60ca5e5dc2b86
to | UserId del usuario que tiene la propiedad del documento | AlzaH5fef2ab39c2ed60ca5e5dc2b86
subject | Descripción del registro | Resolución Nr 8383-LIM/2018
transactionType | Namespace que representa al proceso que genera el documento en los sistemas de la empresa. | module.miapp.com
data | Contenido asociado a la evidencia a estampar puede ser en formato JSON, XML o TXT | {url: http://bit.com/YJDMLj, name: Joshe....}
reference | Código de referencia del sistema del emisor | C8383

### SECUENCIA DE DATOS

Se calcula el código hash (SHA256) de los datos que se desea estampar.

El código hash y algunos datos referenciales del documento son enviados a stamping.io para que sea endosados a la Blockchain de Ethereum, Bitcoin y los nodos privados Hyperledger Fabric que se ecnuetran asociados a stamping.io

Los datos que se pueden envíar la API RESTful de stamping.io son:

Elemento | Descripción | Ejemplo
--- | --- | ---
evidence | Hash de tipo SHA256 que representa secuencia de datos que se desea estampar en la Blockchain de Stamping.io | 5fef2ab39c2ed60ca5e5dc2b867786...
from | UserId del usuario que genera la secuencia de datos, esta asociado al token de acceso del usuario que estampó la secuencia de datos en la Blockchain | AlzaH5fef2ab39c2ed60ca5e5dc2b86
to | UserId del usuario que recibe o tiene la propiedad de la secuencia de datos, en caso de ser una transacción sería el usuario o cliente | AlzaH5fef2ab39c2ed60ca5e5dc2b86
subject | Descripción del registro | Orden de Compra Nr 8383-LIM/2018
transactionType | Namespace que identifica al proceso que genera la secuencia de datos en la empresa que estampa la secuencia de datos en la Blockchain | module.miapp.com
data | Contenido asociado a la evidencia a estampar puede ser en formato JSON, XML o TXT | {url: http://bit.com/YJDMLj, name: Joshe....}
reference | Código de referencia del sistema del emisor | C8383

## PRUEBA DE EXISTENCIA

1. Se calcula el hash (SHA256) del documento o secuencia de datos.

2. Se obtiene el trxId SHA1(HASH) de la evidencia digital.

3. Se obtiene los datos que se han estampado en la Blockchain, si existe el documento ha sido creado en la fecha determinada, caso contrario el documento no existe.

Powered by stamping.io

Todos los derechos reservados.