Sto cercando di garantire l'integrità dei file caricati e di dimostrare questa integrità a un utente.
Nel mio scenario attuale, un utente invia più file in diversi formati, questi file vengono trasportati in un dispositivo di memorizzazione o in una posizione. Devo creare un provider di report un contenitore con questi file (ad esempio Zip), ma su questo report devo stampare un riferimento visuale ed efficace come "seal", "mark", "hash" o qualcos'altro che è la prova di quanto segue i file sono integrati;
Quello che segue è un elenco di alcuni dei metodi più comuni di dimostrazione dell'integrità:
- Funzione di hash: un calcolo matematico stabilito che genera un valore numerico basato sui dati del contenuto del file. Questo valore alfa-numerico è indicato come il valore hashhash. L'hash calcola un numero usando una formula complessa ed è molto sensibile alle modifiche nel contenuto del file.
- Firma digitale: questo processo viene utilizzato insieme a un processo di hash. L'hash risultante è crittografato con una chiave privata specifica. File l'integrità può essere verificata usando il valore hash e l'origine del file la firma è convalidata usando la chiave pubblica.
- Checksum / Cyclical Redundancy Check (CRC): i checksum sono spesso utilizzati nel trasferimento di file per verificare che il trasferimento dei dati abbia avuto esito positivo. Alcuni checksum sono potenti come gli hash. Si raccomanda che quei checksum che non sono potenti come gli hash possono essere usati in concerto con altri metodi (come hashing o verifica visiva) a grado possibile. Per esempio. MD5Checksum.
- Crittografia: questo processo modifica il contenuto dei file e lo fa non di per sé dimostra che il file non è stato alterato. La crittografia può essere utilizzata di concerto con altri metodi.
- Filigrane: questo processo modifica il contenuto dei file e può persistere come parte del file. Questo metodo non è raccomandato.
- Metodi proprietari: metodi offerti in vendita o in licenza da un fornitore che controlla il codice sorgente potrebbe non essere verificabile in modo indipendente. Allo stesso modo, potrebbe non essere possibile validare la metodologia indipendentemente. Pertanto, questo metodo non è raccomandato.
Dopo aver dimostrato l'integrità del file digitale, l'utente dovrebbe essere in grado di convalidare l'autenticità di esso quando lo desidera.