Come firmare i dati in MySQL database di revisione di sicurezza (marcatura temporale attendibile)?
-
10-10-2019 - |
Domanda
Attualmente sto progettando un progetto in cui la sicurezza revisione dei dati del database è importante. Ciò significa che:. Vogliamo essere in grado di prova che i dati presenti nel database non sono stati alterati da quando è stata importata - nessun utente ha modificato il valore, nessun amministratore db registrato nel database e lo cambiò
Qual è il modo migliore per raggiungere questo obiettivo?
Fino ad ora, mi piace l'idea di firmare la riga di database migliore: creo un hash MD5 di tutti i campi della riga, poi inviarlo a un server timestamping firma ( avere uno sguardo su wikipedia ) e memorizzare la firma creata con la riga. Da questo momento in poi, siamo in grado di dimostrare che nessuno ha cambiato la fila dal questo francobollo è stato creato.
idee di meglio? E, se vi piace l'idea tanto quanto me, quale server timestamp devo usare e come posso accedervi? Il Verisign timestamp Server sembra essere usato molto, ma non ho potuto trovare alcuna documentazione su come usarlo "raw", ad esempio, senza gli strumenti di firma del codice di Microsoft, ecc.
Grazie!
Soluzione
server registrazione del tempo non sono di solito free-to-use.
In alternativa si può utilizzare un HMAC-MD5 (o HMAC-SHA1), invece, e l'uso di un la password che è noto solo all'utente autorizzato. La password non è ovviamente utilizzato direttamente, meglio via PKCS # 5 o almeno hashing con un seme. Senza la password nessuno in grado di verificare o ricreare l'HMAC-MD5