Botan 3.6.0
Crypto and TLS for C&
Botan::TPM2::ObjectAttributes Struct Reference

#include <tpm2_object.h>

Static Public Member Functions

static ObjectAttributes read (TPMA_OBJECT attributes)
 
static TPMA_OBJECT render (ObjectAttributes attributes)
 

Public Attributes

bool admin_with_policy = false
 ADMIN role actions may or may not require a policy session.
 
bool decrypt = false
 The private portion of the key might be used for data decryption.
 
bool encrypted_duplication = false
 
bool fixed_parent = false
 The parent of the object may or may not change.
 
bool fixed_tpm = false
 The hierarchy of the object may or may not change (i.e. when keys are duplicated)
 
bool no_da = false
 If set, the object is not subject to dictionary attack protection.
 
bool restricted = false
 
bool sensitive_data_origin = false
 Indicates that the TPM generated all of the sensitive data other than the authValue.
 
bool sign_encrypt = false
 
bool st_clear = false
 Saved contexts of this object may or may not be loaded after Startup(CLEAR)
 
bool user_with_auth = false
 USER role actions may or may not be performed without authorization (HMAC or password)
 
bool x509sign = false
 

Detailed Description

See TPM 2.0 Part 2, Section 8.3.2

Definition at line 30 of file tpm2_object.h.

Member Function Documentation

◆ read()

ObjectAttributes Botan::TPM2::ObjectAttributes::read ( TPMA_OBJECT attributes)
static

Definition at line 40 of file tpm2_object.cpp.

40 {
41 return ObjectAttributesWrapper::read(attributes);
42}

Referenced by Botan::TPM2::Object::attributes().

◆ render()

TPMA_OBJECT Botan::TPM2::ObjectAttributes::render ( ObjectAttributes attributes)
static

Definition at line 44 of file tpm2_object.cpp.

44 {
45 return ObjectAttributesWrapper::render(attributes);
46}

Referenced by Botan::TPM2::EC_PrivateKey::create_unrestricted_transient(), and Botan::TPM2::RSA_PrivateKey::create_unrestricted_transient().

Member Data Documentation

◆ admin_with_policy

bool Botan::TPM2::ObjectAttributes::admin_with_policy = false

ADMIN role actions may or may not require a policy session.

Definition at line 50 of file tpm2_object.h.

◆ decrypt

bool Botan::TPM2::ObjectAttributes::decrypt = false

The private portion of the key might be used for data decryption.

Definition at line 64 of file tpm2_object.h.

Referenced by Botan::TPM2::PrivateKey::is_parent().

◆ encrypted_duplication

bool Botan::TPM2::ObjectAttributes::encrypted_duplication = false

If not set, the object may be duplicated without an inner wrapper on the private portion Otherwise, symmetricAlg must not be TPM_ALG_NULL and newParentHandle must not be TPM_RH_NULL

Definition at line 57 of file tpm2_object.h.

◆ fixed_parent

bool Botan::TPM2::ObjectAttributes::fixed_parent = false

The parent of the object may or may not change.

Definition at line 41 of file tpm2_object.h.

◆ fixed_tpm

bool Botan::TPM2::ObjectAttributes::fixed_tpm = false

The hierarchy of the object may or may not change (i.e. when keys are duplicated)

Definition at line 35 of file tpm2_object.h.

◆ no_da

bool Botan::TPM2::ObjectAttributes::no_da = false

If set, the object is not subject to dictionary attack protection.

Definition at line 53 of file tpm2_object.h.

◆ restricted

bool Botan::TPM2::ObjectAttributes::restricted = false

Key usage is restricted to structures of known format (e.g. it won't sign data whose hash was not calculated by the TPM)

Definition at line 61 of file tpm2_object.h.

◆ sensitive_data_origin

bool Botan::TPM2::ObjectAttributes::sensitive_data_origin = false

Indicates that the TPM generated all of the sensitive data other than the authValue.

Definition at line 44 of file tpm2_object.h.

◆ sign_encrypt

bool Botan::TPM2::ObjectAttributes::sign_encrypt = false

The private portion of the key might be used for data signing, or data encryption (if the key is a symmetric key)

Definition at line 68 of file tpm2_object.h.

◆ st_clear

bool Botan::TPM2::ObjectAttributes::st_clear = false

Saved contexts of this object may or may not be loaded after Startup(CLEAR)

Definition at line 38 of file tpm2_object.h.

◆ user_with_auth

bool Botan::TPM2::ObjectAttributes::user_with_auth = false

USER role actions may or may not be performed without authorization (HMAC or password)

Definition at line 47 of file tpm2_object.h.

◆ x509sign

bool Botan::TPM2::ObjectAttributes::x509sign = false

The private portion of the key might be used for X.509 certificate signing (normal signing, via Esys_Sign(), of arbitrary data is not allowed)

Definition at line 72 of file tpm2_object.h.


The documentation for this struct was generated from the following files: