Bug 1728030

Summary: RFE: Add encryption of TPM emulator state
Product: [Community] Virtualization Tools Reporter: Marc-Andre Lureau <marcandre.lureau>
Component: libvirtAssignee: Libvirt Maintainers <libvirt-maint>
Status: CLOSED UPSTREAM QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: unspecifiedCC: libvirt-maint, tburke
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-10-17 14:42:15 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Marc-Andre Lureau 2019-07-08 20:16:18 UTC
TPM emulator state contains sensitive data that can be encrypted thanks to swtpm support.

A proposal from Stefan Berger ([libvirt] Encrypted vTPM state) is to use an XML similar to luks and the virSecret object framework:

    <tpm model='tpm-tis'>
       <backend type='emulator' version='2.0'>
         <encryption format='vtpm'>
             <secret type='passphrase' uuid='32ee7e76-2178-47a1-ab7b-269e6e348015'/>
         </encryption>
       </backend>
     </tpm>

Comment 1 Marc-Andre Lureau 2019-10-17 14:42:15 UTC
Fixed in v5.6.0 (2019-08-05) 

Support encrypted soft TPM
    A soft TPM backend could be encrypted with passphrase. Now libvirt supports using a secret object to hold the passphrase, and referring to it via the encryption element of the TPM device.