Sto rivedendo un sistema che sta usando Redis per archiviare tutti i segreti del client, le chiavi private e altre cose. Il problema è che Redis carica l'intero DB nella RAM
Poiché SSL heartbleed , Rowhammer e altri hack sono noti per esporre la memoria a utenti non fidati, penso che qualsiasi altro hack simile potrebbe esporre il intero database, in cui se avessi usato il server SQL, meno chiavi private sarebbero nella RAM in un dato momento.
C'è probabilmente un modo migliore per farlo.
Poiché sono richiesti per ospitare e archiviare i segreti e il PI del cliente, voglio che utilizzino un approccio load on demand e non caricino in modo troppo aggressivo i dati non necessari nella RAM e scarichino quanto prima nella RAM.
Se mi iscrivo alla filosofia che ....
My data is safer from attack when there are fewer copies of it laying around
... qual è l'approccio migliore per ridurre l'esposizione nella RAM? SecureErasing di memoria?
Sto guardando SecureString con ASP.NET e DiskIO , ma mi viene difficile trovare un implementazione end-to-end che non lascia copie non necessarie della stringa nei driver, nelle code di prefetch o in altre posizioni.