|
Botan 3.11.0
Crypto and TLS for C&
|
Common attributes of all secret (symmetric) keys. More...
#include <p11_object.h>
Public Member Functions | |
| template<typename TAlloc> | |
| void | add_binary (AttributeType attribute, const std::vector< uint8_t, TAlloc > &binary) |
| void | add_binary (AttributeType attribute, const uint8_t *value, size_t length) |
| void | add_bool (AttributeType attribute, bool value) |
| void | add_class (ObjectClass object_class) |
| template<std::integral T> | |
| void | add_numeric (AttributeType attribute, T value) |
| void | add_string (AttributeType attribute, std::string_view value) |
| const std::vector< Attribute > & | attributes () const |
| size_t | count () const |
| Attribute * | data () const |
| KeyType | key_type () const |
| ObjectClass | object_class () const |
| BOTAN_FUTURE_EXPLICIT | SecretKeyProperties (KeyType key_type) |
| void | set_allowed_mechanisms (const std::vector< MechanismType > &) |
| void | set_always_authenticate (bool value) |
| void | set_check_value (const std::vector< uint8_t > &checksum) |
| void | set_copyable (bool value) |
| void | set_decrypt (bool value) |
| void | set_derive (bool value) |
| void | set_destroyable (bool value) |
| void | set_encrypt (bool value) |
| void | set_end_date (Date date) |
| void | set_extractable (bool value) |
| void | set_id (const std::vector< uint8_t > &id) |
| void | set_label (std::string_view label) |
| void | set_modifiable (bool value) |
| void | set_private (bool value) |
| void | set_sensitive (bool value) |
| void | set_sign (bool value) |
| void | set_start_date (Date date) |
| void | set_token (bool value) |
| void | set_trusted (bool value) |
| void | set_unwrap (bool value) |
| void | set_unwrap_template (const AttributeContainer &) |
| void | set_verify (bool value) |
| void | set_wrap (bool value) |
| void | set_wrap_template (const AttributeContainer &) |
| void | set_wrap_with_trusted (bool value) |
Protected Member Functions | |
| void | add_attribute (AttributeType attribute, const uint8_t *value, Ulong size) |
| Add an attribute with the given value and size to the attribute collection m_attributes. | |
Common attributes of all secret (symmetric) keys.
Definition at line 390 of file p11_object.h.
| Botan::PKCS11::SecretKeyProperties::SecretKeyProperties | ( | KeyType | key_type | ) |
| key_type | type of key |
Definition at line 139 of file p11_object.cpp.
References Botan::PKCS11::KeyProperties::key_type(), and Botan::PKCS11::KeyProperties::KeyProperties().
|
protectedinherited |
Add an attribute with the given value and size to the attribute collection m_attributes.
Definition at line 40 of file p11_object.cpp.
References data().
Referenced by add_binary(), add_bool(), add_class(), add_numeric(), and add_string().
|
inlineinherited |
Add a binary attribute (e.g. CKA_ID / AttributeType::Id).
| attribute | attribute type |
| binary | binary attribute value to add |
Definition at line 79 of file p11_object.h.
References add_binary().
|
inherited |
Add a binary attribute (e.g. CKA_ID / AttributeType::Id).
| attribute | attribute type |
| value | binary attribute value to add |
| length | size of the binary attribute value in bytes |
Definition at line 30 of file p11_object.cpp.
References add_attribute().
Referenced by add_binary(), Botan::PKCS11::Object::search(), Botan::PKCS11::Object::search(), Botan::PKCS11::CertificateProperties::set_check_value(), Botan::PKCS11::SecretKeyProperties::set_check_value(), Botan::PKCS11::CertificateProperties::set_end_date(), Botan::PKCS11::KeyProperties::set_end_date(), Botan::PKCS11::KeyProperties::set_id(), Botan::PKCS11::DataObjectProperties::set_object_id(), Botan::PKCS11::CertificateProperties::set_public_key_info(), Botan::PKCS11::PrivateKeyProperties::set_public_key_info(), Botan::PKCS11::PublicKeyProperties::set_public_key_info(), Botan::PKCS11::CertificateProperties::set_start_date(), Botan::PKCS11::KeyProperties::set_start_date(), Botan::PKCS11::PrivateKeyProperties::set_subject(), Botan::PKCS11::PublicKeyProperties::set_subject(), and Botan::PKCS11::DataObjectProperties::set_value().
|
inherited |
Add a bool attribute (e.g. CKA_SENSITIVE / AttributeType::Sensitive).
| attribute | attribute type |
| value | boolean value to add |
Definition at line 35 of file p11_object.cpp.
References add_attribute(), Botan::PKCS11::False, and Botan::PKCS11::True.
Referenced by Botan::PKCS11::PrivateKeyProperties::set_always_authenticate(), Botan::PKCS11::SecretKeyProperties::set_always_authenticate(), Botan::PKCS11::StorageObjectProperties::set_copyable(), Botan::PKCS11::PrivateKeyProperties::set_decrypt(), Botan::PKCS11::SecretKeyProperties::set_decrypt(), Botan::PKCS11::KeyProperties::set_derive(), Botan::PKCS11::StorageObjectProperties::set_destroyable(), Botan::PKCS11::PublicKeyProperties::set_encrypt(), Botan::PKCS11::SecretKeyProperties::set_encrypt(), Botan::PKCS11::PrivateKeyProperties::set_extractable(), Botan::PKCS11::SecretKeyProperties::set_extractable(), Botan::PKCS11::StorageObjectProperties::set_modifiable(), Botan::PKCS11::StorageObjectProperties::set_private(), Botan::PKCS11::PrivateKeyProperties::set_sensitive(), Botan::PKCS11::SecretKeyProperties::set_sensitive(), Botan::PKCS11::PrivateKeyProperties::set_sign(), Botan::PKCS11::SecretKeyProperties::set_sign(), Botan::PKCS11::PrivateKeyProperties::set_sign_recover(), Botan::PKCS11::StorageObjectProperties::set_token(), Botan::PKCS11::CertificateProperties::set_trusted(), Botan::PKCS11::PublicKeyProperties::set_trusted(), Botan::PKCS11::SecretKeyProperties::set_trusted(), Botan::PKCS11::PrivateKeyProperties::set_unwrap(), Botan::PKCS11::SecretKeyProperties::set_unwrap(), Botan::PKCS11::PublicKeyProperties::set_verify(), Botan::PKCS11::SecretKeyProperties::set_verify(), Botan::PKCS11::PublicKeyProperties::set_verify_recover(), Botan::PKCS11::PublicKeyProperties::set_wrap(), Botan::PKCS11::SecretKeyProperties::set_wrap(), Botan::PKCS11::PrivateKeyProperties::set_wrap_with_trusted(), and Botan::PKCS11::SecretKeyProperties::set_wrap_with_trusted().
|
inherited |
Add a class attribute (CKA_CLASS / AttributeType::Class).
| object_class | class attribute to add |
Definition at line 18 of file p11_object.cpp.
References add_attribute(), and Botan::PKCS11::Class.
Referenced by AttributeContainer().
|
inlineinherited |
Add a numeric attribute (e.g. CKA_MODULUS_BITS / AttributeType::ModulusBits).
| attribute | attribute type |
| value | numeric value to add |
Definition at line 96 of file p11_object.h.
References add_attribute().
Referenced by Botan::PKCS11::CertificateProperties::CertificateProperties(), Botan::PKCS11::DomainParameterProperties::DomainParameterProperties(), Botan::PKCS11::KeyProperties::KeyProperties(), and Botan::PKCS11::CertificateProperties::set_category().
|
inherited |
Add a string attribute (e.g. CKA_LABEL / AttributeType::Label).
| attribute | attribute type |
| value | string value to add |
Definition at line 24 of file p11_object.cpp.
References add_attribute().
Referenced by Botan::PKCS11::Object::search(), Botan::PKCS11::Object::search(), Botan::PKCS11::DataObjectProperties::set_application(), and Botan::PKCS11::StorageObjectProperties::set_label().
|
inlineinherited |
Definition at line 44 of file p11_object.h.
Referenced by Botan::PKCS11::Object::search(), Botan::PKCS11::Object::search(), and Botan::PKCS11::Object::search().
|
inlineinherited |
Definition at line 50 of file p11_object.h.
Referenced by Botan::PKCS11::Object::copy(), and Botan::PKCS11::Object::Object().
|
inlineinherited |
Definition at line 47 of file p11_object.h.
Referenced by add_attribute(), Botan::PKCS11::Object::copy(), and Botan::PKCS11::Object::Object().
|
inlineinherited |
Definition at line 287 of file p11_object.h.
Referenced by KeyProperties(), Botan::PKCS11::PrivateKeyProperties::PrivateKeyProperties(), Botan::PKCS11::PublicKeyProperties::PublicKeyProperties(), and Botan::PKCS11::SecretKeyProperties::SecretKeyProperties().
|
inlineinherited |
Definition at line 156 of file p11_object.h.
Referenced by Botan::PKCS11::KeyProperties::KeyProperties(), ObjectProperties(), and Botan::PKCS11::StorageObjectProperties::StorageObjectProperties().
|
inlineinherited |
Sets a list of mechanisms allowed to be used with this key Not implemented TODO(Botan4) remove this
Definition at line 281 of file p11_object.h.
|
inline |
| value | if true, the user has to supply the PIN for each use (sign or decrypt) with the key |
Definition at line 420 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::AlwaysAuthenticate.
|
inline |
| checksum | the key check value of this key |
Definition at line 432 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_binary(), and Botan::PKCS11::CheckValue.
|
inlineinherited |
| value | if true the object can be copied using C_CopyObject |
Definition at line 184 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Copyable.
|
inline |
| value | true if the key supports decryption |
Definition at line 402 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Decrypt.
|
inlineinherited |
| value | true if key supports key derivation (i.e., if other keys can be derived from this one) |
Definition at line 274 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Derive.
|
inlineinherited |
| value | if true the object can be destroyed using C_DestroyObject |
Definition at line 187 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Destroyable.
|
inline |
| value | true if the key supports encryption |
Definition at line 399 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Encrypt.
|
inlineinherited |
| date | end date for the key |
Definition at line 269 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_binary(), and Botan::PKCS11::EndDate.
|
inline |
| value | true if the key is extractable and can be wrapped |
Definition at line 414 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Extractable.
|
inlineinherited |
| id | key identifier for key |
Definition at line 261 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_binary(), and Botan::PKCS11::Id.
|
inlineinherited |
| label | description of the object (RFC2279 string) |
Definition at line 169 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_string(), and Botan::PKCS11::Label.
|
inlineinherited |
| value | if true the object can be modified, otherwise it is read-only |
Definition at line 181 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Modifiable.
|
inlineinherited |
| value | if true the object is a private object; otherwise the object is a public object When private, a user may not access the object until the user has been authenticated to the token |
Definition at line 178 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Private.
|
inline |
| value | true if the key is sensitive |
Definition at line 396 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Sensitive.
|
inline |
| value | true if the key supports signatures where the signature is an appendix to the data |
Definition at line 405 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Sign.
|
inlineinherited |
| date | start date for the key |
Definition at line 264 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_binary(), and Botan::PKCS11::StartDate.
|
inlineinherited |
| value | if true the object is a token object; otherwise the object is a session object |
Definition at line 172 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Token.
|
inline |
| value | the key can be trusted for the application that it was created. The wrapping key can be used to wrap keys with CKA_WRAP_WITH_TRUSTED set to CK_TRUE |
Definition at line 429 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Trusted.
|
inline |
| value | true if the key supports unwrapping (i.e., can be used to unwrap other keys) |
Definition at line 411 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Unwrap.
|
inline |
For wrapping keys The attribute template to apply to any keys unwrapped using this wrapping key Any user supplied template is applied after this template as if the object has already been created Not Implemented TODO(Botan4) remove this function
Definition at line 455 of file p11_object.h.
|
inline |
| value | true if the key supports verification where the signature is an appendix to the data |
Definition at line 408 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Verify.
|
inline |
| value | true if the key supports wrapping (i.e., can be used to wrap other keys) |
Definition at line 423 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::Wrap.
|
inline |
For wrapping keys The attribute template to match against any keys wrapped using this wrapping key. Keys that do not match cannot be wrapped Not implemented TODO(Botan4) remove this function
Definition at line 443 of file p11_object.h.
|
inline |
| value | true if the key can only be wrapped with a wrapping key that has CKA_TRUSTED set to CK_TRUE |
Definition at line 417 of file p11_object.h.
References Botan::PKCS11::AttributeContainer::add_bool(), and Botan::PKCS11::WrapWithTrusted.