Dobbiamo fornire un'app per la contabilità / revisione basata su SQLite a zero conoscenza su Mac 10.6 e versioni successive.
Ci viene chiesto di caricare istantanee di database su cloud (AWS S3 o GCP) a intervalli regolari; quindi qualsiasi contabile con le giuste credenziali può scaricare il DB e avviare il controllo senza limitazioni geografiche.
Abbiamo deciso di fare la cosa degli snapshot caricando% c_de% s crittografato sul server. Inoltre, una volta completato il controllo, viene caricato l'intero DB.
Sono un programmatore junior non un ragazzo della sicurezza, quindi probabilmente non sono affari miei ma per curiosità -
la pratica di archiviare hundered di file crittografati, che in testo normale sarebbero come diffs incrementali, minare in qualche modo l'occultamento dei dati sottostanti?
In sostanza
Ho file patch in questo modo:
preso alle 3.00 AM
alice
preso a 3.01 AM
alice
bianca
carolina
preso a 3.02 AM
alice
bianca
carolina
doofenshmirtz
- La dimensione dei file patch è sempre inferiore a 100 kB.
- I file patch contengono dati ridondanti, basta guardare gli esempi.
- I file patch vengono caricati ad ogni minuto di funzionamento.
- Il cliente probabilmente ha più minacce da parte di concorrenti locali (nazionali) rispetto ai giganti.
- Tutti questi file patch sono crittografati sul lato client, utilizzando
sqldiff
, AES256 CBC. - Gli utenti (meno di 50) dovrebbero memorizzare le chiavi condivise di persona
- Non avevamo pensato di cambiare periodicamente la password, ma abbiamo in programma di applicare i soliti requisiti della password.
Sono curioso delle implicazioni dei punti 1, 2 e 3.