Trusted Computing Group
|Founder||AMD, Hewlett-Packard, IBM, Intel, Microsoft|
|Headquarters||Beaverton, OR, United States|
The Trusted Computing Group is a group formed by AMD, Hewlett-Packard, IBM, Intel and Microsoft to implement Trusted Computing concepts across personal computers. The Trusted Computing Group was announced in 2003 as the successor to the Trusted Computing Platform Alliance which was previously formed in 1999. Many other companies have since joined the Trusted Computing Group, including Wave Systems Corp, Digital Management, Inc., Cisco, Lenovo, Infineon, Juniper Networks and Fujitsu.
On October 11, 1999, the Trusted Computing Platform Alliance (abbreviated as TCPA), a consortium of various technology companies including Compaq, Hewlett-Packard, IBM, Intel, and Microsoft, was formed in an effort to promote trust and security in the personal computing platform. In November 1999, the TCPA held its Founding Conference and announced that over 70 leading hardware and software companies had joined the alliance since its inception in the previous month. On January 30, 2001, the TCPA announced the release of version 1.0 of its Trusted Computing Platform Specifications, aiming to "provide the industry with a clear direction that facilitates trust in computing platforms and environments." In December, the TCPA released version 1.1a of its Trusted Computing Platform Specifications. IBM was the first original equipment manufacturer to incorporate hardware features based on version 1.1 of the TCPA Trusted Computing Platform Specifications with the introduction of its ThinkPad T30 mobile computer on April 24, 2002.
TCG's original goal was the development of a Trusted Platform Module (TPM), a semiconductor intellectual property core or integrated circuit that conforms to the trusted platform module specification put forward by the Trusted Computing Group and which is to be included with computers to enable trusted computing features. TCG-compliant functionality has since been integrated directly into certain mass-market chipsets.
TCG also recently released the first version of their Trusted Network Connect ("TNC") protocol specification, based on the principles of AAA, but adding the ability to authorize network clients on the basis of hardware configuration, BIOS, kernel version, and which updates that have been applied to the OS and anti-virus software, etc.
In 2009, TCG released a set of specifications that describe the protocol to communicate with self encrypting disk drives. The TCG Storage Work Group (SWG) Storage Core Architecture Specification describes in detail how to implement and utilize trust and security services on storage devices. Security Subsystem Class (SSC) Specifications describe the requirements for specific classes of devices; specifically, the Enterprise SSC defines minimum requirements for Data Center and Server Class devices while the Opal SSC defines minimum requirements for client devices.
The vendor of a TPM-enabled system has complete control over what software does and does not run on the owner's system. In some cases the vendor may choose to grant permission to the owner to configure hardware they have legally purchased. This does include the possibility of an operating system (OS), whether chosen by the user or preinstalled on the hardware before purchase, that refuses to load unsigned or unlicensed software (e.g., Microsoft, as described in more detail below), but those restrictions would have to be enforced by the operating system and not by the TCG technology. What a TPM does provide in this case is the capability for the OS to lock software to specific machine configurations, meaning that "hacked" versions of the OS designed to get around these restrictions would not work. There is legitimate concern that OS vendors could use these capabilities to restrict what software would load under their OS (hurting small software companies or open source/shareware/freeware providers, and causing vendor lock-in for some data formats), and Microsoft has already stated they will begin restricting what software they will allow to run on Windows, starting with Windows 8 on ARM.
The TPM can be used in conjunction with the boot loader to ensure only vendor-approved operating systems are running. This could restrict alternative operating systems from running, including free or open source operating systems. For example, Microsoft is requiring x86/x64 machines which come with Windows 8 to have Secure Boot enabled by default, which has caused alternative OS vendors to make payments through Microsoft to ensure their OS will be able to be installed by the user; additionally any ARM machine shipped with Windows 8 is banned from allowing another OS to be installed.
At the same time, there are several projects which are experimenting with TPM support in free operating systems; examples of such projects include a TPM device driver for Linux, an open source implementation of the TCG's Trusted Software Stack called TrouSerS (also ported to Windows Vista and Windows 7 in 2010), a Java interface to TPM capabilities called TPM/J, and a TPM-supporting version of the Grub bootloader called TrustedGrub.
The TPM 1.1 specification envisioned a standard PC platform equipped with a TPM chip. In this scenario, the TPM chip can serve as a hardware key storage. Additionally, it can keep track of so-called measurements of the platform (i.e. hashes of various software) and be able to produce signed statements about the running software chain. Particularly the latter mode of operation proved unfeasible in practice, since the amount of software that has to be measured and trusted is very large; it includes (in addition to the system firmware) the operating system, drivers and application programs. Therefore, numerous other TPM-related projects are in progress, the purpose of which is to make it possible to launch and measure a trusted subenvironment from within an untrusted environment. The TPM specification 1.2 has been enhanced to accommodate this mode of operation. Additionally, hardware changes are required in the CPU and chipset (note that this should not be confused with the inclusion of TPM functionality into the chipset even though this is a possibility too). Intel's approach is called Trusted Execution Technology (TXT). Many of Intel's Core 2 Duo CPUs are advertised to support these extensions. However, chipset support is required for the extensions to be operational. Currently, Intel's chipset Q35 Express supports TXT. In addition to chipset support, the mainboard must also feature a TPM 1.2 chip. Intel currently advertises DQ35MP and DQ35JO as being compliant with the technology. The first application of the technology will be a set of manageability enhancements under the brand name vPro. AMD's platform is called Secure Execution Mode.
In 2002-2003, Microsoft announced an initiative called Next-Generation Secure Computing Base (formerly Palladium). This was basically a vision of how a TPM 1.2 chip, CPU, chipset and software could provide an environment and a software ecosystem in which trusted applications (launched from within "regular" Windows) could be developed. Intel's TXT and AMD's SEM can be seen as realizations of the hardware side of the NGSCB vision. Owing to significant difficulties in creating a working implementation that third-party developers were interested in using and in unavailability of the enhancements to CPU and chipset, NGSCB was not included with Microsoft Windows Vista. Instead, Vista ships with a few technologies that can make use of a subset of the functions of the TPM chip (but not of Intel's TXT or AMD's SEM), such as BitLocker Drive Encryption, and a new version of the Microsoft Cryptography API.
The group has faced widescale opposition from the free software community on the grounds that the technology they are developing has a negative impact on the users' privacy and can create customer lock-in, especially if it is used to create DRM applications. It has received criticism from the GNU/Linux and FreeBSD communities, as well as the software development community in general. Significant backlash amongst the Trusted Computing Group was present during Richard Stallman's speech at the Hackers on Planet Earth conference in July 2006, in New York. Richard Stallman and the Free Software Foundation have also criticized the group publicly in other speeches. The criticism calls Trusted Computing "Treacherous Computing" instead and warns that vendors can lock out software that is not officially signed by specific vendors, rendering it unusable.
Privacy concerns with the TCG revolve around the fact that each TPM has a unique keypair, called the "endorsement key", that identifies the platform. In initial versions of the TPM (version 1.1), the TCG addressed privacy concerns by suggesting the use of a "Privacy CA" that could certify pseudonymous machine credentials. By having separate credentials for interacting with different parties, actions could not be linked, and so some level of privacy is provided. However, this requires trust in the Privacy CA, who could still link pseudonyms to the common, identifying machine credential. Since this left unresolved privacy concerns, version 1.2 of the TPM specification introduced "Direct anonymous attestation": a protocol based on the idea of a zero-knowledge proof which allows a TPM user to receive a certification in such a way that the Privacy CA would not be able to link requests to a single user or platform, while still being able to identify rogue TPMs.
Privacy concerns for TPM were heightened when Christopher Tarnovsky presented methods to access and compromise the Infineon TPM non-volatile memory capacity which contains user data at Black Hat 2010.
Efforts to have the TCG specifications standardized by ISO was active for a first part in October 2007. Member states of the ISO/DIS JTC1 were expected to send their opinion to ISO by July 24, 2008. On May 18, 2009, TCG managed to achieve standardization for their TPM specifications:
- ISO/IEC 11889-1:2009 Information technology—Trusted Platform Module—Part 1: Overview
- ISO/IEC 11889-2:2009 Information technology—Trusted Platform Module—Part 2: Design principles
- ISO/IEC 11889-3:2009 Information technology—Trusted Platform Module—Part 3: Structures
- ISO/IEC 11889-4:2009 Information technology—Trusted Platform Module—Part 4: Commands
Membership fees vary by level. Promoters pay annual membership fees of $30,000, contributors pay $15,000, and depending upon company size, adopters pay annual membership fees of either $2,500 or $7,500.