summaryrefslogtreecommitdiff
path: root/security/keymint/support/authorization_set.cpp
diff options
context:
space:
mode:
authorScott Lobdell <slobdell@google.com>2021-02-23 11:55:14 -0800
committerScott Lobdell <slobdell@google.com>2021-02-23 11:55:14 -0800
commit86bfa300dfbcf500ad04bede19a2b5f0e6d418b9 (patch)
tree0b635f8b37f8adf728064d7615f4bba25b51e418 /security/keymint/support/authorization_set.cpp
parent7b82a0f697d0cf832803a80f7ed2128002b54dec (diff)
parentf6fd33b5fdc12948537d800af8695ff6767039c2 (diff)
Merge SP1A.210222.001
Change-Id: I49bafb9c4e7adcb330e0e4c01111788b6ed84a00
Diffstat (limited to 'security/keymint/support/authorization_set.cpp')
-rw-r--r--security/keymint/support/authorization_set.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/security/keymint/support/authorization_set.cpp b/security/keymint/support/authorization_set.cpp
index 3d44dff27c..25eace3caf 100644
--- a/security/keymint/support/authorization_set.cpp
+++ b/security/keymint/support/authorization_set.cpp
@@ -191,6 +191,10 @@ AuthorizationSetBuilder& AuthorizationSetBuilder::EncryptionKey() {
return Authorization(TAG_PURPOSE, KeyPurpose::DECRYPT);
}
+AuthorizationSetBuilder& AuthorizationSetBuilder::AttestKey() {
+ return Authorization(TAG_PURPOSE, KeyPurpose::ATTEST_KEY);
+}
+
AuthorizationSetBuilder& AuthorizationSetBuilder::NoDigestOrPadding() {
Authorization(TAG_DIGEST, Digest::NONE);
return Authorization(TAG_PADDING, PaddingMode::NONE);
@@ -243,4 +247,12 @@ AuthorizationSetBuilder& AuthorizationSetBuilder::Padding(
return *this;
}
+AuthorizationSetBuilder& AuthorizationSetBuilder::SetDefaultValidity() {
+ // Per RFC 5280 4.1.2.5, an undefined expiration (not-after) field should be set to
+ // GeneralizedTime 999912312359559, which is 253402300799000 ms from Jan 1, 1970.
+ constexpr uint64_t kUndefinedExpirationDateTime = 253402300799000;
+ Authorization(TAG_CERTIFICATE_NOT_BEFORE, 0);
+ return Authorization(TAG_CERTIFICATE_NOT_AFTER, kUndefinedExpirationDateTime);
+}
+
} // namespace aidl::android::hardware::security::keymint