From 0028ac547841feee4c9df47deddc406de72f9a7b Mon Sep 17 00:00:00 2001 From: pigweed-roller Date: Mon, 27 Nov 2023 00:43:34 +0000 Subject: [third_party/pigweed/src] Roll 26 commits 8b5d45a34aa2d4b roll: gn 4f55cd893c39b21 pw_rpc_transport: Unblock sockets when stopping 5d6c8774460f969 pw_transfer: Don't "block-network" by default 8ac986c74c35d73 pw_perf_test: Rename logging event handler files 4b364904cfc955c pw_transfer: Use StatusCode in integration tests 72fbddaec144309 pw_allocator: Improve heap poisoning configuration 8c14e34c768452a SEED: Generate the SEED index table 764ed8f3950766c pw_bluetooth_sapphire: Use explicit constructor fo 9e204659334a44a pw_bluetooth_sapphire: Follow pigweed style for te a4b7366b78abfc3 pw_perf_test: Rework docs 0c7d8aaf023b6b9 pw_transfer: Make integration_test_server testonly fdc60cf2bd0f4c7 Revert "pw_bluetooth: Update all commands and even 5137292e08ea5fa SEED-0118: Claim SEED number a8bf01aab9b8a23 bazel: Rename Python toolchains 6c2b186c7fcd088 SEED-0114: Channels 0ef8bdcbde8b7a6 pw_bluetooth: Update all commands and events to th 3bf61f1d7c0c21a pw_bluetooth_sapphire: Add OWNERS file 3aff8a3ef73ffde pw_bluetooth: Fix LEExtendedAdvertisingReportData 431faf75b7b6052 bazel: Remove py_proto_library wrapper fddeb6c56f90d9e pw_toolchain_bazel: Mirror features to be flag set 2997df7c3ad7ce6 pw_system: Add missing dependency on pw_trace f41e118cbb24bbb pw_transfer: Tag integration tests block-network 2a963a07cfa228c pw_bluetooth_sapphire: Delete unused build file 6a45a6e8af6a171 bazel: Use py_proto_library from rules_python 5a3735537697d02 pw_presubmit: Add Fuchsia style to todo_check_with 3623b95aac6bcc7 roll: buildifier https://pigweed.googlesource.com/pigweed/pigweed third_party/pigweed/src Rolled-Commits: 5d8f62aff08aa9f..8b5d45a34aa2d4b Roller-URL: https://ci.chromium.org/b/8763318179908801729 GitWatcher: ignore CQ-Do-Not-Cancel-Tryjobs: true Change-Id: I67f671b6bd36b851bb77e3d1c7bf1c223ff76dc3 Reviewed-on: https://pigweed-review.googlesource.com/c/open-dice/+/182590 Commit-Queue: Pigweed Roller Bot-Commit: Pigweed Roller --- third_party/pigweed/src | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/third_party/pigweed/src b/third_party/pigweed/src index 5d8f62a..8b5d45a 160000 --- a/third_party/pigweed/src +++ b/third_party/pigweed/src @@ -1 +1 @@ -Subproject commit 5d8f62aff08aa9f3a7333943a1052b418784cbfd +Subproject commit 8b5d45a34aa2d4b30a8624a6df946077c879b892 -- cgit v1.2.3 From 1ce7fb54be6d084f26a1faf1c0a00629d7c4a520 Mon Sep 17 00:00:00 2001 From: Andrew Scull Date: Tue, 28 Nov 2023 14:23:01 +0000 Subject: Clarify the security version field Explain that the security version field must increment for every code update. This intends to exclude implementations that only update the security version selectively, possibly after multiple code updates have been applied. Change-Id: Ie47e85ddb2411a773f959be5bd953197c6c73af5 Reviewed-on: https://pigweed-review.googlesource.com/c/open-dice/+/181132 Reviewed-by: Darren Krahn Commit-Queue: Auto-Submit Pigweed-Auto-Submit: Andrew Scull Reviewed-by: Max Bires --- docs/android.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/android.md b/docs/android.md index 6398996..11a8960 100644 --- a/docs/android.md +++ b/docs/android.md @@ -76,12 +76,12 @@ of the reserved range. Unless explicitly stated as required in the [versions](#versions) section, each field is optional. If no fields are relevant, an empty map should be encoded. -Name | Key | Value type | Meaning +Name | Key | Value type | Meaning --- | --- | --- | --- Component name | -70002 | tstr | Name of the component Component version | -70003 | int / tstr | Version of the component Resettable | -70004 | null | If present, key changes on factory reset -Security version | -70005 | uint | Machine-comparable, monotonically increasing version of the component where a greater value indicates a newer version, for example, the anti-rollback counter +Security version | -70005 | uint | Machine-comparable, monotonically increasing version of the component where a greater value indicates a newer version. This value must increment for every update that changes the code hash, for example by using the timestamp of the version's release. [RKP VM][rkp-vm] marker | -70006 | null | If present, the component can take part in running a VM that can receive an attestation certificate from an [RKP Service][rkp-service]. [rkp-vm]: https://android.googlesource.com/platform/packages/modules/Virtualization/+/main/service_vm/README.md#rkp-vm-remote-key-provisioning-virtual-machine -- cgit v1.2.3 From 11e2ffb04000b77904d540f903a09f2b2f12fffb Mon Sep 17 00:00:00 2001 From: Seth Moore Date: Thu, 30 Nov 2023 17:55:03 +0000 Subject: Remove description of RKP VM marker from Android profile docs We hope to remove the RKP VM marker in the future, but if we document it here, it will be difficult to remove. Favor documenting this marker in the Android HAL docs so we can version it alongside of Android. This will allow us to remove it from the docs once it's no longer needed by Android. Change-Id: I6915efc152fbfac6f000b28c2ca22341727139c8 Reviewed-on: https://pigweed-review.googlesource.com/c/open-dice/+/183159 Reviewed-by: Alan Stokes Reviewed-by: Andrew Scull Commit-Queue: Seth Moore --- docs/android.md | 23 ++--------------------- 1 file changed, 2 insertions(+), 21 deletions(-) diff --git a/docs/android.md b/docs/android.md index 11a8960..8c40f27 100644 --- a/docs/android.md +++ b/docs/android.md @@ -82,29 +82,10 @@ Component name | -70002 | tstr | Name of the component Component version | -70003 | int / tstr | Version of the component Resettable | -70004 | null | If present, key changes on factory reset Security version | -70005 | uint | Machine-comparable, monotonically increasing version of the component where a greater value indicates a newer version. This value must increment for every update that changes the code hash, for example by using the timestamp of the version's release. -[RKP VM][rkp-vm] marker | -70006 | null | If present, the component can take part in running a VM that can receive an attestation certificate from an [RKP Service][rkp-service]. +[RKP VM][rkp-vm] marker | -70006 | null | See the [Android HAL documentation][rkp-hal-readme] for precise semantics, as they vary by Android version. [rkp-vm]: https://android.googlesource.com/platform/packages/modules/Virtualization/+/main/service_vm/README.md#rkp-vm-remote-key-provisioning-virtual-machine -[rkp-service]: https://source.android.com/docs/core/ota/modular-system/remote-key-provisioning#stack-architecture - -### RKP VM - -The RKP VM marker is used to distinguish the RKP VM from other components. - -When parsing a DICE chain compliant with this profile, there are multiple types -of components that may be described by a given chain: -1. RKP VM: If a DICE chain has zero or more certificates without the RKP VM - marker followed by one or more certificates with the marker, then that chain - describes an RKP VM. If there are further certificates without the RKP VM - marker, then the chain does not describe an RKP VM. - - Implementations must include the first RPK VM marker as early as possible - after the point of divergence between TEE and non-TEE components in the DICE - chain, prior to loading the Android Bootloader (ABL). -2. A TEE Component (e.g. KeyMint): If there are no certificates with the RKP VM - marker then it describes a TEE component. -3. Other: Any component described by a DICE chain that does not match the above - two categories. +[rkp-hal-readme]: https://android.googlesource.com/platform/hardware/interfaces/+/main/security/rkp/README.md ### Versions -- cgit v1.2.3