blob: b430a50bc3d069c342b62db7f1d3b2619ba9f214 [file] [log] [blame]
###############################################################################
# Google Cryptohome package README
###############################################################################
* Full details: go/sc-cryptohome
* Cryptohome is a component in Chrome OS Core (Brillo) operating system, responsible
for remote attestation using the TPM chip in the devices.
* For more details about remote attestation on SpaceCast, please read: go/sc-attest
* Cryptohome source code: https://cs.corp.google.com/#chromeos_public/src/platform2/cryptohome/
* Procedure to port Cryptohome component from Brillo to SpaceCast platform:
- Build Cryptohome component and its dependencies using Chrome OS build environment.
See details here: http://dev.chromium.org/chromium-os/developer-guide
- Tarball the Cryptohome binaries, their required shared libraries and the TCSD config file under
chromeos root dir as below:
chromeos
|__ bin -> cryptohomed, cryptohome, tpm-manager, tcsd, chapsd, tpmc
|__ lib -> libprotobuf, libpthread, libdbus etc
|__ usr/lib -> gconv files
|__ etc -> tcsd.conf
- Ensure TCSD command can run, running the tpm commands like tpm_version
- Start chapsd and cryptohomed, run cryptohome client to check tpm status
- Name the tarball 'google_cryptohome-<ChromeOS version>.tar.gz'
- Drop the tarball in repo://vendor/google/tarballs
* This directory contains all necessary configs to build and setup Buffet in the
SpaceCast platform
- google_cryptohome.mk extracts the Cryptohome tarballs and setup the proper rootfs so
that Cryptohome is under /chroot/chromeos to utilize the ChromeOS environment.
- S99cryptohome starts TCSD, Chapsd and Cryptohome daemon in init.d.
- org.chromium.Chaps.conf and Cryptohome.conf are the additional DBus configurations customized to
run in SpaceCast platform.