Roll src/third_party/WebKit d9c6159:8139f33 (svn 201974:201975)
[chromium-blink-merge.git] / docs / tpm_quick_ref.md
blob296e4a8d4b39ea05b36bc5ba8506b99c1571fea1
1 # TPM Quick ref
3 TODO: this page looks very outdated. glossary.md does not exist,
4 git.chromium.org does not exist. Delete it?
6 This page is meant to help keep track of TPM use across the system. It may not
7 be up-to-date at any given point, but it's a wiki so you know what to do.
9 ## Details
11 *   [TPM ownership management](http://git.chromium.org/gitweb/?p=chromiumos/platform/cryptohome.git;a=blob;f=README.tpm)
12 *   TPM_Clear is done (as in vboot_reference) but in the firmware code itself on
13     switch between dev and verified modes and in recovery.  (TODO: link code)
14 *   [TPM owner password clearing](http://git.chromium.org/gitweb/?p=chromium/chromium.git;a=blob;f=chrome/browser/chromeos/login/login_utils.cc;h=9c4564e074c650bd91c27243c589d603740793bb;hb=HEAD#l861)
15     (triggered at sign-in by chrome):
16 *   [PCR extend](http://git.chromium.org/gitweb/?p=chromiumos/platform/vboot_reference.git;a=blob;f=firmware/lib/tpm_bootmode.c)
17     (no active use elsewhere):
18 *   [NVRAM use for OS rollback attack protection](http://git.chromium.org/gitweb/?p=chromiumos/platform/vboot_reference.git;a=blob;f=firmware/lib/rollback_index.c)
19 *   [Tamper evident storage](http://git.chromium.org/gitweb/?p=chromiumos/platform/cryptohome.git;a=blob;f=README.lockbox)
20 *   [Tamper-evident storage for avoiding runtime device management mode changes](http://git.chromium.org/gitweb/?p=chromium/chromium.git;a=blob;f=chrome/browser/chromeos/login/enrollment/enterprise_enrollment_screen.cc)
21 *   [User key/passphrase and cached data protection](http://git.chromium.org/gitweb/?p=chromiumos/platform/cryptohome.git;a=blob;f=README.homedirs)
22 *   A TPM in a Chrome device has an EK certificate that is signed by an
23     intermediate certificate authority that is dedicated to the specific TPMs
24     allocated for use in Chrome devices. OS-level self-validation of the
25     platform TPM should be viable with this or chaining any other trust
26     expectations.
27 *   TPM is used for per-user certificate storage (NSS+PKCS#11) using
28     opencryptoki but soon to be replaced by chaps. Update links here when chaps
29     stabilizes (Each user's pkcs#11 key store is kept in their homedir to ensure
30     it is tied to the local user account). This functionality includes VPN and
31     802.1x-related keypairs.