OPENTC is a trusted computing project sponsored by the European Commission dedicated to building secure operating systems using trusted computing technology and virtualization technologies. A DEMOCD has been published on its website to demonstrate the usefulness of trusted computing.
This conceptual demo scenario is called PET (Private Electronic Transaction), which is used to demonstrate that the trusted computing and virtualization technologies used by OPENTC can protect the security of online banking transactions. The demo scenario contains four steps:
1. Installation of Trusted computing platform
In this step, the user performs the take ownership operation and applies for the AIK certificate. In order to simplify, there is no direct use of hard-coded passwords on clients to apply to trusted computing infrastructure PCA, a process that leverages the Tccert library in which iaik/tu can simulate certificates used to produce trusted computing.
2. Authentication boot process (authenticated boot)
The process of establishing the chain of trust, the order of initiation is S-crtm->mbr->os LOADER->HYPERVISOR->DOM0->DOMT, and any component will hash the next component before handing over control. The value is then stored in the TPM's PCR register. Here OSLoader uses a modified grub version of--trusted Grub, which hashes the hypervisor (L4/fiasko or Xen) to be started and is stored in PCR.
When trusted grub runs, the user can choose to use Normal mode or expert mode. In normal mode, is the normal online banking user operation, the user shielding the details of these security mechanisms. Users can only use the Domu operating system DOMT and the operating system dedicated to online banking, while in expert mode access to the management VM Dom0.
When using L4, OPENTC Democd also provides opent Secure OS Loader--oslo, a grub module that enables D-CRTM to reinitialize the trust status of the entire platform using the Skinit instructions of the AMD CPU.
3. User Registration expected Hash
Users to the integrity of their computer status (PCR) told the online bank, the bank operator check confirmed, Enable. For simplicity (no additional TPM is needed), the online banking server runs in a virtual machine domsbox, using software TPM_TPM emulator.
4. Trusted Communication process
Users can only use the Firefox in DOMT access to the Internet banking server, where the access request through the DOM0 proxy access Domsbox, through the hypervisor security policy, this proxy only allow DOMT use. Then Dom0 and online bank Doms Open the SSL/TLS channel for communication, the two sides also have to interact AIK to the signature of the PCR, and mutual authentication. The user will be able to successfully see the login page only if the AIK certificate is validated and the other party has the desired integrity metric PCR.
OPENTC also provides a rogue DOMT mode, in which the expected integrity status of the user registration will be inconsistent with the integrity status when accessing the online bank (indicating malicious code) and the trusted communication process cannot be successfully completed.
This democd is still very exquisite, the interface is exquisite, clear, the basic coverage of all the current OPENTC research results, can make people intuitively feel the role of trusted computing technology, indicating that trusted computing is not necessarily just DRM. But at the same time also feel the practical application of trusted computing, there is a long way to go, even in user mode, the user's operation is still more complex. And in addition to the TPM, there is a lack of supporting infrastructure, such as PCA. There is also the management of expected integrity metrics, and the bank operator is based on what determines the integrity measure of user registration is trustworthy, and how users judge the integrity measures of online banking servers to be trustworthy and maintain these trusted integrity measures. What I have seen in DEMOCD is the simplification of the process, such as the local simulation generation AIK, Dom0 the expected integrity metric of the doms beforehand, and the bank operator simply enable. In the process of establishing the trust chain, the onboard BIOS on my machine has not yet implemented the CRTM function. A major flaw is said to be that the trusted communications process has not considered defending against man-in-the-middle attacks and replay integrity metrics challenges.