Sto sviluppando un software che verrà utilizzato per il backup dei dati.
Il server funzionerà su Linux. La sicurezza nel trasporto non è un problema (HTTPS o SSH), ma i dati devono essere memorizzati crittografati sul server.
I dati non sono legati a un singolo computer, quindi più computer dovrebbero essere in grado di accedere agli stessi dati, se forniti di una chiave (la chiave condivisa è accettabile).
Il cliente deve essere certo che i dati non possono essere visualizzati sul server, da un dipendente curioso o da un hacker. Ciò significa che il server non deve memorizzare la chiave utilizzata per decifrare la crittografia, ma potrebbe usarla in una transazione se necessario.
Essendo un file server, la rete sarà saturata, quindi l'invio di delta è preferibile rispetto all'invio di interi file. I file saranno anche gestiti (sul server) da un sistema di controllo della versione; mentre il cliente può o non può avere il controllo della versione. Lo spazio è una considerazione.
Questo è quello che mi è venuto in mente:
- Ogni utente ha il proprio punto di mount
- Ogni punto di montaggio sarà crittografato
- I file verranno decodificati, applicando il delta, quindi crittografato nuovamente
Sembra un po 'inefficiente, quindi sono venuto qui per una guida.
I file delta possono essere applicati a un file crittografato?
I requisiti più importanti sono:
- Integrità dei dati (gli aggiornamenti non dovrebbero mai interrompere un file)
- Riduci al minimo l'overhead di rete / archiviazione (conservare CPU / ram sarebbe bello, ma non necessario)
- Deve essere possibile controllare la versione