In generale, hai alcuni obiettivi:
- Mantieni i dati protetti durante il trasporto
- Previene perdite durante la trasmissione dal sistema all'output e ritorno al sistema
- Limita l'esposizione possibile, anche del valore crittografato dopo la trasmissione.
- Assicurati che la persona che sta trasportando il segreto non possa ottenerla o scappare con essa
Se stai spostando una chiave simmetrica o copi una chiave privata, potresti voler impostare le chiavi pub / private tra i due spazi vuoti anche se stai facendo questo attraverso un meccanismo manuale come copiare su una chiavetta USB, anche se l'unità flash stessa è crittografata, in modo che solo in presenza della chiave privata il decreto possa essere decrittografato. Se stai semplicemente spostando le chiavi pubbliche, quelle potrebbero non richiedere lo stesso livello di sicurezza.
Diamo un'occhiata ad alcuni rischi nello scenario del codice QR. È necessario generare il codice QR con qualche programma e quindi stamparlo. È necessario assicurarsi che la stampante sia protetta (anche se la stampante si trova nel traferro, qualcuno può controllare successivamente la memoria della stampante, forzare una ristampa dell'ultima pagina, ecc.). È inoltre possibile che il valore venga archiviato in un file temporaneo non sicuro o in una cache di stampa in un punto del disco che può essere successivamente recuperato. Ora, quando la persona con il codice QR lo sta spostando tra i siti, può scattarne una foto? Hanno fatto in modo che la stampa fosse in una foto sicura, possibilmente a prova di manomissione, così possiamo assicurarci che non lo commutino con una stampa malevola nel processo e nessuna videocamera tra il traferro ruba la foto? All'altra intercapedine, come viene letto il codice QR? La fotocamera / scanner è sicura, il programma sta leggendo nel codice QR andando a lasciare traccia in un file temporaneo? È necessario memorizzare il valore del codice QR in un file temporaneo da leggere nella memoria crittografata o HSM?
Direi che i codici QR sono probabilmente una scelta sbagliata per questo. Preferiresti idealmente qualcosa che fornisca sicurezza crittografica, anti-manomissione (per uso umano o un dispositivo che intercetta o copia nell'aria) e prove di manomissione tra i due siti.
Alcuni tipi di HSM sarebbero una buona scelta. Oltre a ciò, un CD / DVD di sola scrittura può essere una buona opzione con una corretta crittografia della chiave pubblica / privata perché è possibile utilizzare hardware affidabile su entrambi i lati e quindi distruggere il disco in modo economico e semplice. Tuttavia, avrai problemi a rilevare la duplicazione non autorizzata. È molto più probabile che un dispositivo USB sia infettato da malware e più difficile da rilevare o bloccare ( dai un'occhiata alla presentazione del blackhat di quest'anno ). Con qualsiasi metodo, potresti voler dividere la chiave e richiedere due corrieri in modo che la collusione sia richiesta per divulgare il testo cifrato. Una bella funzionalità sarebbe se avessi un dispositivo che dovrebbe solo riscrivere il valore una volta e poi non scriverlo di nuovo (autodistruzione dopo scrittura), quindi se c'è una perdita che non potresti impedire, potresti almeno rilevarla.
(Come notato nel mio commento, sto ancora cercando di vedere se riesco a trovare quei dispositivi, quelli che ho trovato risalenti a specifici sistemi militari proprietari).
Potresti essere interessato ad alcune delle NIST SP-800 linee guida relative a questo:
Sezione 6.6.1 Trasporto chiave di Bozza SP 800-152 indirizzo trasporto chiave , Sezione 6.6.1 di SP 800-130, è anche molto simile.
SP 800-57 Parte 2 ha alcuni scenari che mostrano la gestione delle chiavi e diventa piuttosto tecnico. Ulteriori dettagli tecnici sono trattati in FIPS PUB 140-2