1. Calcolo del valore di hash del file di dati

Calcola il valore di hash associato al file di dati da marcare temporalmente; il valore di hash funge da impronta digitale, identificando in modo univoco il documento originale non modificato. L’hash viene calcolato localmente all’interno del browser senza divulgare il documento a terzi, preservando la riservatezza; non è richiesta alcuna connessione a internet.

OpenTimestamps Trascina qui il file, oppure clicca per selezionarlo.

2. Invio dell’hash per l’attestazione

Invia l’hash a un insieme selezionato di calendar server pubblici di OpenTimestamps (ad esempio, btc.ots.dgi.io) per l’attestazione della sua esistenza (marcatura temporale) nella blockchain Bitcoin tramite una transazione Bitcoin; è richiesta la connessione a internet. La ricevuta di invio viene salvata localmente.

Col tempo, questo hash verrà attestato nell’header di un blocco Bitcoin e la ricevuta di invio potrà essere aggiornata a prova di attestazione. La ricevuta di invio non è ancora una prova di attestazione — non può essere verificata immediatamente, poiché la conferma della marcatura temporale da parte della blockchain Bitcoin può richiedere fino ad alcune ore.

Per evitare l’inefficienza di una transazione su blockchain per ogni hash di documento, un calendar server fornisce l’aggregazione di più hash in una struttura dati ad albero di Merkle ed esegue la loro attestazione in un’unica transazione, attestando di fatto soltanto la radice dell’albero di Merkle, che è essa stessa un valore di hash.

Calcola prima un hash nello step 1.

3. Caricamento della ricevuta/prova OTS da file

Carica una ricevuta/prova OTS esistente da un file locale; non è richiesta alcuna connessione a internet.

OpenTimestamps Trascina qui una ricevuta/prova .ots, oppure clicca per selezionarla.

4. Visualizzazione delle informazioni della ricevuta/prova OTS

Visualizza le informazioni contenute nella ricevuta/prova OTS, comprese le effettive operazioni di commitment e le attestazioni (se presenti); non è richiesta alcuna connessione a internet.

Invia prima un hash (step 2) o carica una ricevuta/prova (step 3).

5. Aggiornamento della ricevuta/prova OTS

Tenta di aggiornare la ricevuta/prova OTS con le attestazioni eventualmente disponibili dai calendar OpenTimestamps selezionati; è richiesta la connessione a internet.

Per essere aggiornate allo stato di prova, le ricevute incomplete necessitano dell’assistenza dei calendar remoti utilizzati per la marcatura temporale: ciascun calendar deve fornire la propria attestazione come percorso verso l’header di un blocco Bitcoin. L’aggiornamento di una ricevuta OTS aggiunge il percorso (o i percorsi) verso l’header (o gli header) del blocco Bitcoin, trasformandola in una prova OTS autonoma e indipendente dai calendar.

Anche le prove possono essere aggiornate, qualora un calendar sia in grado di aggiungere la propria attestazione a quelle precedentemente fornite da altri calendar. Naturalmente, l’attestazione più antica è la più rilevante: quelle successive non aggiungono informazioni significative.

Invia prima un hash (step 2) o carica una ricevuta/prova (step 3).

6. Verifica della ricevuta/prova OTS

Verifica le attestazioni contenute nella ricevuta/prova OTS (se presenti); è richiesta la connessione a internet.

Le ricevute/prove OTS possono essere verificate indipendentemente da qualsiasi server o strumento OpenTimestamps, utilizzando un nodo Bitcoin Core locale; tuttavia, poiché una pagina web non può accedere al filesystem locale, questa pagina fa affidamento su block-explorer pubblici per la verifica.

Innanzitutto, se disponibile, viene ottenuta una prova aggiornata dai calendar server selezionati (come nel passaggio precedente, eseguito anche qui per garantire informazioni aggiornate), quindi lo stato della ricevuta/prova viene mostrato di seguito.

Invia prima un hash (step 2) o carica una ricevuta/prova (step 3).