This package contains the cryptohome daemon, which is responsible for

- the creation and mounting/unmounting of per-user encrypted home directories.
  See README.homedirs

- TPM owner initialization
  See README.tpm

- Tamper-evident, install-time system attribute storage
  See README.lockbox

And it provides this functionality via a DBus interface, see README.dbus for
details.
