Implemented finalization of endorsement data.

When endorsement data is finalized it only exists in a form that is
bound to a particular CA.  It can no longer be extracted by software
running locally.  Existing endorsement data will be moved into this
state on the next boot.  New endorsement data will be moved into this
state on the next boot after attestation is prepared.

BUG=chromium:243605
TEST=unit, manual

Change-Id: If5adb771de1479ba60298aa9b52378a41e2f47c4
Reviewed-on: https://chromium-review.googlesource.com/176578
Reviewed-by: Darren Krahn <dkrahn@chromium.org>
Commit-Queue: Darren Krahn <dkrahn@chromium.org>
Tested-by: Darren Krahn <dkrahn@chromium.org>
5 files changed
tree: 7807811f19bd970d8a2e532b695992e0dc5c2ae7
  1. etc/
  2. attestation.cc
  3. attestation.h
  4. attestation.proto
  5. attestation_task.cc
  6. attestation_task.h
  7. attestation_unittest.cc
  8. common.mk
  9. credentials.h
  10. crypto.cc
  11. crypto.h
  12. crypto_unittest.cc
  13. cryptohome-path.cc
  14. cryptohome.cc
  15. cryptohome.xml
  16. cryptohome_common.h
  17. cryptohome_event_source.cc
  18. cryptohome_event_source.h
  19. cryptohome_event_source_unittest.cc
  20. cryptohome_testrunner.cc
  21. cryptohomed.cc
  22. cryptolib.cc
  23. cryptolib.h
  24. email_to_image
  25. homedirs.cc
  26. homedirs.h
  27. homedirs_unittest.cc
  28. inherit-review-settings-ok
  29. install_attributes.cc
  30. install_attributes.h
  31. install_attributes.proto
  32. install_attributes_unittest.cc
  33. interface.cc
  34. interface.h
  35. keystore.h
  36. LICENSE
  37. lockbox-cache-main.cc
  38. lockbox-cache-tpm.cc
  39. lockbox-cache-tpm.h
  40. lockbox-cache.cc
  41. lockbox-cache.h
  42. lockbox.cc
  43. lockbox.h
  44. lockbox_unittest.cc
  45. make_tests.cc
  46. make_tests.h
  47. make_tests.sh
  48. Makefile
  49. marshal.list
  50. mock_crypto.h
  51. mock_homedirs.cc
  52. mock_homedirs.h
  53. mock_install_attributes.cc
  54. mock_install_attributes.h
  55. mock_keystore.cc
  56. mock_keystore.h
  57. mock_lockbox.cc
  58. mock_lockbox.h
  59. mock_mount.cc
  60. mock_mount.h
  61. mock_mount_factory.h
  62. mock_pkcs11_init.cc
  63. mock_pkcs11_init.h
  64. mock_platform.cc
  65. mock_platform.h
  66. mock_service.cc
  67. mock_service.h
  68. mock_tpm.cc
  69. mock_tpm.h
  70. mock_user_oldest_activity_timestamp_cache.cc
  71. mock_user_oldest_activity_timestamp_cache.h
  72. mock_user_session.cc
  73. mock_user_session.h
  74. mock_vault_keyset.cc
  75. mock_vault_keyset.h
  76. mock_vault_keyset_factory.h
  77. mount-encrypted.c
  78. mount-encrypted.h
  79. mount-helpers.c
  80. mount-helpers.h
  81. mount.cc
  82. mount.h
  83. mount_factory.cc
  84. mount_factory.h
  85. mount_stack.cc
  86. mount_stack.h
  87. mount_stack_unittest.cc
  88. mount_task.cc
  89. mount_task.h
  90. mount_task_unittest.cc
  91. mount_unittest.cc
  92. OWNERS
  93. pam_mount.conf.xml
  94. pkcs11_init.cc
  95. pkcs11_init.h
  96. pkcs11_keystore.cc
  97. pkcs11_keystore.h
  98. pkcs11_keystore_unittest.cc
  99. platform.cc
  100. platform.h
  101. README
  102. README.dbus
  103. README.homedirs
  104. README.lockbox
  105. README.tpm
  106. service.cc
  107. service.h
  108. service_unittest.cc
  109. stateful_recovery.cc
  110. stateful_recovery.h
  111. stateful_recovery_unittest.cc
  112. stub_tpm.h
  113. tpm.cc
  114. tpm.h
  115. tpm_init.cc
  116. tpm_init.h
  117. tpm_status.proto
  118. user_oldest_activity_timestamp_cache.cc
  119. user_oldest_activity_timestamp_cache.h
  120. user_oldest_activity_timestamp_cache_unittest.cc
  121. user_session.cc
  122. user_session.h
  123. user_session_unittest.cc
  124. username_passkey.cc
  125. username_passkey.h
  126. username_passkey_unittest.cc
  127. vault_keyset.cc
  128. vault_keyset.h
  129. vault_keyset.proto
  130. vault_keyset_factory.cc
  131. vault_keyset_factory.h
  132. vault_keyset_unittest.cc
  133. WATCHLISTS