Stiamo costruendo una piattaforma di elaborazione dati su Amazon AWS. Archiviamo i dati sensibili nell'S3 (crittografati) e quindi il nodo Amazon EC2 verrà utilizzato per elaborare questi dati. Stiamo pianificando di utilizzare la crittografia ibrida per i dati S3, ad esempio utilizzando simmetriche Data Encryption Keys (DEK) & Key Encryption Keys asimmetrici (KEK) & sarà fatto sul lato client prima di caricare i dati su S3. Il DEK crittografato verrà memorizzato con l'oggetto S3 nei metadati. Il gruppo di dataset e amp; le chiavi saranno diverse per questi set di dati.
Stiamo progettando di costruire un piccolo sistema KMS in grado di distribuire le chiavi ai nodi EC2 quando elaboreranno i dati per decrittografarli. Il KMS sarà ospitato nei nostri locali e il trasferimento delle chiavi avverrà su VPN.
La domanda che stiamo discutendo riguarda il protocollo di distribuzione delle chiavi più adatto da costruire per distribuire le chiavi ai nodi EC2. Stiamo pensando di creare un servizio web utilizzando REST / SSL per distribuire le chiavi, tuttavia poiché non ci sono specifiche WS-Security disponibili per REST, riteniamo che solo REST / SSL non sia sufficiente.
- Quale può essere un'implementazione aggiuntiva per rafforzare la sicurezza?
- Quali sono i modi per autenticare / fornire il nodo EC2 quando chiama il servizio web REST da cui viene generato?
- Ciò che è più adatto: passare il DEK crittografato al webservice & ottenere DEK decrittografato vs semplicemente ottenere KEK dal webservice & utilizzarlo per decrittografare DEK per decrittografare i dati?
- Eventuali punti aggiuntivi da considerare?