Following are notes I jotted down following the March 2, 2011 meeting
between IBM and Red Hat that may be of general interest to the list.
Known Attendees:
Rajiv Andrade
Stefan Berger
Ken Goldman
Steve Grubb
Anthony Liguori
Frank Novak
Eric Paris
Dimitrios Pendarakis
Jack Rieden
Dave Safford
Lee Terrell
Dan Walsh
George Wilson
Lee Wilson
Chris Wright
Kent Yoder
Mimi Zohar
Meeting Summary:
- IBM has been open sourcing various Trusted Computing components over the
last several years that are fairly uninteresting in an of themselves.
- However, we have been doing so to to build out the ecosystem.
- We have long had TPM device drivers in the kernel, TrouSerS, tpm-tools, and
the PKCS#11 TPM token.
- The big missing piece has been trusted boot, and due to that deficiency,
TrouSerS has remained in Tech Preview status for quite some time.
- Red Hat had stated several years ago that they were uninterested in an SRTM
given the more scalable DRTM approach.
- However, a DRTM bootloader that works with TXT was thwarted by the Fedora
requirement not to carry or reference the 3rd party BLOB that is the sinit AC
module.
- During talks last year that included the System x organization, we were able
to get System x to agree to put the ACM into flash much as is done for the
BIOS.
- That allowed us to make a statement, and for tboot to be contributed to
Fedora.
- Eric stated that he's having trouble getting tboot to come up on the boards he
has tried.
- Given we can get past the tboot issues, there will finally be a complete
Trusted Computing stack that supports trusted boot on Intel TXT capable
machines.
- The support can be exploited by IMA in the kernel, and tpm-tools and the
PKCS#11 TPM token in userspace.
- Now it is time to turn our attention towards other issues: IMA appraisal, EVM,
PTS, an attestation management server, and a CA.
- It is possible that a PTS implementation will be open sourced by IBM Research
in the near future.
- That could be integrated with the TNC package to created an attested TNC in
the TCG sense using freeRADIUS and wpa_supplicant.
- Those pieces would provide a complete bare metal or KVM host ecosystem for the
first time.
- The other place that requires attention is the virtual space.
- IBM Research open sourced it's gold standard software TPM, and Ken has ported
it to freebl, the lower lower of NSS.
- Ken is still seeing an issue and will contact Bob Relyea to help resolve,
likely in a conference call.
- There will need to be a new version of NSS with cleanups Ken requires.
- It appears to be working fairly well and largely surviving torture tests.
- Stefan has turned it into libtpms and libtpms-devel packages, which have
undergone review.
- The software TPM library work is preparatory to submitting patches to the Qemu
community so that community members can "yum install libtpms libtpms-devel"
and proceed with building the patches.
- The patches are a large chunk of code somewhat akin to SPICE in terms of size
and complexity.
- However, they ware working for Stefan.
- It is expected to take some time for them to undergo review but the approach
appears viable.
- We still need a way to do measured launches of guests.
- The hope is to use the same tboot GRUB module for guests as we use for the
host by emulating TXT instructions in Qemu.
- A measured launch would complete the guest ecosystem.
- Another piece of the puzzle to consider is EVM.
- IMA appraisal makes little sense without EVM.
- Eric will take a look at Mimi's patches.
Component Status Summary:
Substantially Complete:
- tpm_tis
- TrouSerS
- tpm-tools
- PKCS #11 TPM token
May Need Work:
- tboot in the bare metal or host case
Potentially Open Sourced Soon:
- OpenPTS from IBM Research
Work in Progress:
- IBM's Software TPM port to freebl
- Transformation of IBM's Software TPM into a vTPM library and devel package
- Qemu integration of the vTPM
Work Not Yet Planned:
- Qemu emulation of TXT
- Virtual sinit AC module
- Any virtual BIOS work required to support TXT
- Other features upon which TXT emulation may be dependent
- Attestation management
- vTPM enrollment
Regards,
George Wilson
IBM Linux Technology Center
Security Architect & Team Lead
512-286-9271