Come utilizzare TPM per eseguire l'autenticazione della piattaforma?

4

Attualmente sto guardando al TPM (Trusted Platform Module) e mi chiedo come fa TPM a offrire l'autenticazione della piattaforma. Supponiamo che un host legale sia distribuito nel cloud. Come faccio a utilizzare TPM per garantire che l'host a cui mi sto collegando sia proprio quello host, piuttosto che un altro host con la stessa configurazione?

In linea di principio, dal momento che questo host è dotato di TPM, la cui Chiave di approvazione è unica, posso verificarla tramite la chiave pubblica di EK (Endorsement Key). Ad esempio, posso avere TPM per crittografare un messaggio con la sua chiave privata di EK. E lo decifro con la chiave pubblica di EK. Tuttavia, ho cercato i documenti e non ho trovato alcuna API per crittografare esplicitamente un messaggio arbitrario con la chiave privata di EK.

Quindi, in genere, come può essere utilizzato TPM per eseguire tale autenticazione host?

    
posta user1834567 01.04.2014 - 15:54
fonte

2 risposte

5

Ciò di cui hai bisogno è attestato remoto (operazione QUOTE).

L'Endorsement Key (EK) non è direttamente accessibile in quanto sarebbe un problema di privacy - potremmo monitorare un sistema utilizzando questo identificatore univoco. L'EK può essere utilizzato in combinazione con una chiave di identificazione dell'attestato (AIK) o utilizzando l'attestazione anonima diretta ( DAA ).

  • Il modello AIK utilizza una Privacy CA (Certificate Authority) che asserisce la validità del tuo EK a terzi. È possibile creare più AIK per proteggere la tua identità (ad esempio, una AIK per terza parte, una AIK per dominio di sicurezza).
  • Il modello DAA utilizza ' Prova di conoscenza zero ' per verificare in modo anonimo il tuo EK. Vedi questo per avere un'idea generale di come funzionano i protocolli a conoscenza zero.

Ti suggerisco di dare un'occhiata alla OpenAttestation soluzione open-source di Intel, PrivateCA e questa presentazione .

    
risposta data 01.04.2014 - 18:30
fonte
1

Solo una piccola correzione a ciò che Northox ha detto: l'attestazione remota utilizza un AIK ed è ciò di cui hai bisogno. Puoi ottenere un AIK correttamente certificato utilizzando CA Privacy o DAA, a seconda di ciò che hai a disposizione.

Tuttavia, per questo tipo di utilizzo, potrebbe non essere effettivamente necessario il certificato AIK: se si dispone di un accesso fisico (o di un canale di sicurezza equivalente) alla macchina, è possibile farlo generare un AIK e esportare semplicemente la sua chiave pubblica e usalo per autenticarlo.

    
risposta data 10.04.2015 - 18:19
fonte