blob: 6966cdfad7dea1be8fee7660322e659992d844ad [file] [log] [blame] [view] [edit]
# Local data migration
The document of the local data migration of the important secrets that used to
maintained by **cryptohome**.
# Background
Until M84, tpm manager only worked for TPM2.0 case. For TPM1.2 cryptohome
used to maintain the following auth values instead of tpm_manager:
1. Owner password.
2. Owner auth delegate.
Starting M84, tpm manager is launched for TPM1.2 as well, and the secrets
listed above are migrated to the same file where auth values were stored for
TPM2.0, which is manipulated by the object `LocalDataStore`.
The term "local data" is used for consistency with the object name, which in
cryptohome used to be "TPM status" referring to the same thing.
# Applicability
Since tpm manager works for TPM2.0 since ever, the local data migration is only
applicable to TPM1.2. For TPM2.0, local data migration is a no-op.
# Sources
* [The implementation of local_data_migration]
* [The definition of tpm manager local data]
* [The definition of legacy tpm status]
[The implementation of local_data_migration]: ./server/local_data_migration.cc
[The definition of tpm manager local data]: ../system_api/dbus/tpm_manager/tpm_manager.proto
[The definition of legacy tpm status]: https://chromium.googlesource.com/chromiumos/platform2/+/refs/heads/release-R84-13099.B/cryptohome/tpm_status.proto