Modifica: ho utilizzato principalmente le linee guida della mia università su come soddisfare gli standard DPA e il loro. Ho estrapolato un po 'perché la crittografia su una macchina virtuale ospitata dalla mia uni che è già probabilmente crittografata ha poco senso. avversari.
I dati che manipoliamo sono molto sensibili e il sito rimarrà in giro per un po 'e verrà riutilizzato tra i progetti, quindi credo di dover includere attacchi al server Web e crittografare le PII contro di esso.
Mi rendo conto che questo non ha nulla a che fare con il DPA ma solo la mia interpretazione di "mantenere i dati personali al sicuro, in proporzione alla loro sensibilità".
Il problema
Ho bisogno di configurare un server Web sul quale i partecipanti alla ricerca caricano tarball (le dimensioni e il contenuto dipendono dai progetti) contenenti informazioni identificabili personalmente e dati sensibili . Devo rispettare il DPA e altre linee guida che raccomandano la crittografia ma non chiariscono la crittografia contro quali minacce. Pertanto, suppongo di dover proteggere i dati dei miei partecipanti da una violazione del server .
Questo è ciò che avevo in mente di fare:
- I dati vengono crittografati dal mio server Web al momento dell'arrivo utilizzando una chiave simmetrica appena creata.
- La chiave simmetrica viene crittografata dal server utilizzando la chiave pubblica del ricercatore che elaborerà i dati e quella chiave simmetrica verrà archiviata con i dati.
- Noi ricercatori ci connettiamo al server, configuriamo un'immagine decrittografata dei file crittografati.
- Lavoriamo su quell'immagine, potenzialmente aggiungendo o modificando i file (cioè creando riepiloghi di dati, trascrizioni, metriche e così via, che possono anche contenere alcune informazioni personali finché non ci sediamo e le anonimizziamo correttamente).
- Ogni volta che lasciamo il server, nessun dato deve essere lasciato in chiaro.
Originariamente ho chiesto a se posso creare automaticamente volumi crittografati e poi riaprirli da altrove, cosa che è stata segnalata come una cattiva idea da smrt28. Cosa ho intenzione di fare:
- Il server crea un volume crittografato per utente, inserisce i dati non elaborati dall'utente nella cartella principale di quel volume e chiude correttamente il volume una volta terminato.
- I SSHFS nella cartella contenente tutti quei file di volume.
- Uso uno script locale per aprire punti di montaggio non crittografati per tutti quei volumi.
- Modifico felicemente i dati degli utenti e creo nuovi file.
- Spengo i punti di montaggio e tutto va bene, i nuovi dati sono stati aggiunti ai server già crittografati.
La domanda originale: come posso fare in modo che dm-crypt utilizzi chiavi asimmetriche in modo che il server possa solo creare un nuovo volume crittografato e io possa crittografare / decodificare? È possibile anche con i volumi? Se lvm non può farlo, qualche alternativa?
La soluzione che adotterò
Prenderò questo server Web per scrivere i dati su un mount di sola scrittura della partizione di un altro server. L'altro server sarà ospitato dalla mia università e accessibile solo dalla nostra VPN universitaria autenticata. Quella partizione verrà crittografata e supportata dall'università come meglio riterrà opportuno.
Noi ricercatori ci collegheremo alla VPN, monteremo la partizione e faremo le nostre cose, che sono essenzialmente le stesse della configurazione originale.