Mi interessa aggiungere 'chiavi preesistenti alla gerarchia di archiviazione di TPM.
Un esempio di una gerarchia di chiavi desiderata può essere mostrato come:
(SRK)----->(User Storage Key)-------> User Working Key 1
|
|------> User Working Key 2
|
|------> User Working Key 3
Dove:
- SRK è la chiave radice di archiviazione creata e gestita dall'amministratore di TPM
- Chiave di archiviazione utente viene creata come una coppia di chiavi (pubblica, privata) all'esterno del TPM. Ad esempio utilizzando gli strumenti della riga di comando di OpenSSL.
- Le chiavi di lavoro degli utenti vengono create anche all'esterno del TPM utilizzando OpenSSL.
Come posso inserire "User Storage Key" e "User Working Keys" nella gerarchia sopra?
Il TPM mi consente di creare coppie di chiavi (pubbliche, private) internamente al TPM (e di esportare la chiave pubblica insieme a una sua chiave privata). Ma non mi è chiaro se i comandi TPM come TPM_CreateWrapKey
e TPM_LoadKey2
consentano questa opzione.
Ciò è garantito dalle situazioni in cui le chiavi di firma / crittografia dell'utente sono già state create altrove e siamo interessati a utilizzare il TPM come repository sicuro di chiavi sulla piattaforma operativa. (Il binding / sealing per creare dati opachi all'interno del TPM non è utile qui, poiché i dati vincolati / sigillati non sono in grado di estendere la gerarchia delle chiavi).