CertiExchMANUALI OPERATIVI
Home
Manuale attestazione e blockchain

Hash, canonicalizzazione e identità

Hash, canonicalizzazione e identità del contenuto#

L’attestazione parte da un hash SHA-256. L’hash non è il documento e non consente normalmente di ricostruirlo: è un’impronta di 256 bit, rappresentata come 64 caratteri esadecimali. Due contenuti identici producono lo stesso hash; una variazione anche minima produce, con probabilità pratica, un valore differente.

contenuto originale
→ serializzazione deterministica
→ SHA-256
→ hash di 64 caratteri
→ richiesta di attestazione

Il problema della serializzazione#

Per un file binario è possibile calcolare l’hash sui byte ricevuti. Per un oggetto JSON, invece, spazi, ordine delle chiavi, formati numerici e normalizzazione Unicode possono cambiare i byte pur lasciando invariato il significato apparente. CertiExch distingue quindi:

  • hash dei byte originali, utile per provare il file ricevuto;
  • hash canonico della struttura, utile per confrontare contenuti equivalenti;
  • hash di manifest, utile per legare più file, metadati e riferimenti in un unico pacchetto.

Un lotto di crediti, per esempio, può avere data_tape_hash, composition_hash e manifest_hash. Il primo prova il data tape ricevuto; il secondo prova la composizione normalizzata; il terzo lega fotografia, riepilogo e documentazione dichiarata.

Requisiti di canonicalizzazione#

La funzione deve essere stabile nel tempo e fuori dal singolo database. Deve ordinare ricorsivamente le chiavi degli oggetti, conservare l’ordine degli array quando semanticamente rilevante, rappresentare numeri e date in un formato definito e rifiutare valori non ammessi. L’algoritmo e la sua versione devono accompagnare la prova.

Cosa non inserire nell’attestazione#

CertiSigma riceve l’hash, non il contenuto originale. I metadati organizzativi vanno ridotti al necessario e non devono contenere dati personali in chiaro. Gli identificativi operativi devono essere pseudonimizzati o collocati nel livello cifrato previsto dal provider. La prova pubblica deve restare verificabile senza rivelare il soggetto, il cliente finale o il contenuto riservato.

Collisioni e sostituzione del contenuto#

La sicurezza dell’hash non elimina la necessità di governare la fonte. Un attore può attestare l’hash di un documento falso; la prova dimostrerà che quel documento esisteva, non che fosse vero. Per questo ogni attestazione deve essere collegata all’attore, al workflow, alla versione del Master Record e all’autorizzazione con cui l’evento è stato prodotto. Integrità, autenticità organizzativa e validità giuridica sono controlli distinti.