Configurazione corrente
Abbiamo un servizio che consente agli utenti di caricare documenti tramite un sito Web e memorizza i documenti caricati crittografati su disco.
I documenti su disco vengono crittografati con una chiave per utente, generata in modo casuale al momento della creazione dell'account. Questa chiave del documento è memorizzata in un campo del database che è crittografato con la password dell'utente come chiave.Quando l'utente (proprietario) desidera scaricare un documento, deve fornire la propria password, che viene utilizzata per decrittografare la chiave del documento che si trova in viene utilizzato per decrittografare il documento.
Abbiamo scelto questo modello per negare la necessità di crittografare nuovamente tutti i documenti crittografati quando l'utente sceglie di cambiare la propria password: abbiamo solo bisogno di crittografare nuovamente la chiave del documento.
Questa configurazione funziona bene (e pensiamo che sia un pattern sicuro 1 ).
Modifiche richieste
Sfortunatamente, abbiamo due nuovi requisiti da implementare.
- Per legge, siamo tenuti a poter decrittografare qualsiasi documento che abbiamo su disco, su richiesta del governo;
- Qualcuno ha deciso che il proprietario di un documento dovrebbe essere in grado di condividere il documento caricato con altri utenti.
Non so come implementare questi requisiti mantenendo i documenti archiviati con la crittografia per utente.
Quindi, la mia domanda è:
Esiste un modello noto che consente di crittografare i documenti in modo che possano essere decrittografati da una o più parti, dove le parti in questione devono essere determinati in base alla crittografia del documento?
Aggiorna :
Alcune informazioni di base sulla legge sopra menzionata:
In effetti, la legge non afferma che siamo tenuti a costruire una porta sul retro. La legge rende un reato penale non consegnare la chiave dei dati crittografati che hai 2 se la polizia richiede la chiave 3 . Il risultato di ciò è che noi che ospitiamo i dati dobbiamo avere una porta sul retro o essere perseguiti nel caso in cui non possiamo decrittografare i dati quando richiesto. Tuttavia, salvo che in altri paesi, siamo liberi di comunicare il fatto che abbiamo ricevuto un ordine per decrittografare i documenti. Queste leggi purtroppo non sono rare.
Informare i nostri clienti e il pubblico:
come ho indicato in un commento prima, ho intenzione di fare tutto il possibile per assicurarmi che questa politica sia chiaramente comunicata ai nostri clienti. Le dichiarazioni sulla privacy devono essere modificate e i Termini di servizio devono essere aggiornati.
La consapevolezza del pubblico da un lato e la certezza che le "cattive leggi costano denaro" dall'altro, sono il metodo migliore a disposizione per protestare contro tali leggi. Tuttavia, allo stesso tempo sono un po 'scettico sull'impatto di tale affermazione. Alla maggior parte delle persone semplicemente non importa. Allo stesso tempo, molte persone utilizzano la posta elettronica e la posta in arrivo per archiviare e condividere documenti. Quindi da quella prospettiva il nostro servizio è (ancora) un enorme miglioramento (ed è il motivo per cui alcuni dei nostri clienti richiedono ai propri dipendenti di utilizzarlo).
1. Se c'è un buco evidente in questo metodo, sentiti libero di commentarlo.
2. Gli avvocati hanno capito che i "dati che hai" dovrebbero includere tutti i dati memorizzati su dispositivi fisici che possiedi (non sono un avvocato, quindi questa è la mia traduzione da profani di ciò che hanno concluso).
3. Sì, non un ufficio di sicurezza di fantasia, ma la polizia. Ci sono alcune misure di sicurezza quando possono richiedere la password, ma ciò non cambia le implicazioni di questa legge. La grande domanda è cosa succede quando hai veramente dimenticato la password di alcuni dati. Il ministro ha indicato che è responsabilità del proprietario di tali dati crittografati eliminarli. Ma nessun caso del genere è stato ancora (per quanto ne so) in tribunale.