Supponiamo che stiate cercando di archiviare i dati nel modo più sicuro possibile, inclusa la suddivisione su più macchine (crittografato in modo tale da renderlo illeggibile a meno che non vengano recuperati tutti i frammenti dei dati). Se l'attaccante conosce il tuo algoritmo e compromette tutti delle tue macchine, può sempre recuperare i dati, quindi c'è sempre qualche probabilità diversa da zero. Ma tu vuoi ridurre la probabilità il più possibile.
Sembra che la strategia sarebbe quella di crittografare i dati con una chiave, e quindi suddividere la chiave su più macchine, in modo tale che tutte le macchine (la macchina di archiviazione dati e le macchine di memorizzazione delle chiavi) siano il più possibile fisicamente indipendenti < em> e eseguono sistemi operativi diversi (con ogni sistema operativo che applica sempre tutte le ultime patch disponibili).
Eseguire diversi sistemi operativi significa che la probabilità di compromettere una macchina è più indipendente dalla probabilità di compromettere le altre macchine. Se si dispone di tre macchine e tutte utilizzano Windows Server e in un dato periodo di tempo si ha il 10% di possibilità di trovare una vulnerabilità in Windows Server che consente l'accesso in lettura alla macchina, si ha un 10% di compromissione l'intero sistema perché allora possiedi tutte e tre le macchine. Ma se ci sono tre macchine, ognuna con un sistema operativo diverso, e per ogni sistema operativo si ha il 10% di trovare una vulnerabilità in quel sistema operativo e le quote sono indipendenti per ogni sistema operativo, allora si ha una probabilità dello 0,1% di compromettere l'intero sistema.
Puoi anche ricodificare periodicamente i dati con una nuova chiave e poi dividere la nuova chiave. Quindi l'utente malintenzionato batte il sistema solo se compromette tutte le macchine nello stesso periodo di tempo prima della ri-crittografia.
Ora, ciò significa anche che se una qualsiasi delle macchine fallisce, si perdono tutti i dati, ma il frammento della chiave su ciascuna macchina può essere eseguito il backup su un'altra macchina. E in questo caso, mentre la macchina di backup dovrebbe essere fisicamente separata per ridurre la possibilità di essere persi contemporaneamente, potrebbe essere in esecuzione lo stesso SO della macchina su cui sta eseguendo il backup. L'idea è che se A1 viene eseguito il backup su A2, allora l'attaccante compromette la stessa quantità di dati sia se eseguono l'hacking in A1 o A2 o entrambi, quindi non c'è ragione A1 e A2 non può eseguire lo stesso SO (con le stesse potenziali vulnerabilità).
Tuttavia, non ho mai sentito parlare di un principio di sicurezza sulla falsariga di "dividere i dati sensibili su macchine che eseguono sistemi operativi diversi". Ho appena riscoperto qualcosa di noto e ovvio che ha già un nome? O c'è qualche ragione per cui l'intera logica è imperfetta (ed è per questo che non ha un nome)?