cyclonedx.model.crypto

This set of classes represents cryptoPropertiesType Complex Type in the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

Classes

CryptoAssetType

This is our internal representation of the cryptoPropertiesType.assetType ENUM type within the CycloneDX standard.

CryptoPrimitive

This is our internal representation of the cryptoPropertiesType.algorithmProperties.primitive ENUM type within the

CryptoExecutionEnvironment

This is our internal representation of the cryptoPropertiesType.algorithmProperties.executionEnvironment ENUM type

CryptoImplementationPlatform

This is our internal representation of the cryptoPropertiesType.algorithmProperties.implementationPlatform ENUM type

CryptoCertificationLevel

This is our internal representation of the cryptoPropertiesType.algorithmProperties.certificationLevel ENUM type

CryptoMode

This is our internal representation of the cryptoPropertiesType.algorithmProperties.mode ENUM type

CryptoPadding

This is our internal representation of the cryptoPropertiesType.algorithmProperties.padding ENUM type

CryptoFunction

This is our internal representation of the cryptoPropertiesType.algorithmProperties.cryptoFunctions.cryptoFunction

AlgorithmProperties

This is our internal representation of the cryptoPropertiesType.algorithmProperties ENUM type within the CycloneDX

CertificateProperties

This is our internal representation of the cryptoPropertiesType.certificateProperties complex type within

RelatedCryptoMaterialType

This is our internal representation of the cryptoPropertiesType.relatedCryptoMaterialProperties.type ENUM type

RelatedCryptoMaterialState

This is our internal representation of the cryptoPropertiesType.relatedCryptoMaterialProperties.state ENUM type

RelatedCryptoMaterialSecuredBy

This is our internal representation of the cryptoPropertiesType.relatedCryptoMaterialProperties.securedBy complex

RelatedCryptoMaterialProperties

This is our internal representation of the cryptoPropertiesType.relatedCryptoMaterialProperties complex type

ProtocolPropertiesType

This is our internal representation of the cryptoPropertiesType.protocolProperties.type ENUM type

ProtocolPropertiesCipherSuite

This is our internal representation of the cryptoPropertiesType.protocolProperties.cipherSuites.cipherSuite

Ikev2TransformTypes

This is our internal representation of the cryptoPropertiesType.protocolProperties.ikev2TransformTypes

ProtocolProperties

This is our internal representation of the cryptoPropertiesType.protocolProperties complex type within

CryptoProperties

This is our internal representation of the cryptoPropertiesType complex type within CycloneDX standard.

Module Contents

class cyclonedx.model.crypto.CryptoAssetType

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.assetType ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

ALGORITHM = 'algorithm'
CERTIFICATE = 'certificate'
PROTOCOL = 'protocol'
RELATED_CRYPTO_MATERIAL = 'related-crypto-material'
class cyclonedx.model.crypto.CryptoPrimitive

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.algorithmProperties.primitive ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

AE = 'ae'
BLOCK_CIPHER = 'block-cipher'
COMBINER = 'combiner'
DRBG = 'drbg'
HASH = 'hash'
KDF = 'kdf'
KEM = 'kem'
KEY_AGREE = 'key-agree'
MAC = 'mac'
PKE = 'pke'
SIGNATURE = 'signature'
STREAM_CIPHER = 'stream-cipher'
XOF = 'xof'
OTHER = 'other'
UNKNOWN = 'unknown'
class cyclonedx.model.crypto.CryptoExecutionEnvironment

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.algorithmProperties.executionEnvironment ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

HARDWARE = 'hardware'
SOFTWARE_ENCRYPTED_RAM = 'software-encrypted-ram'
SOFTWARE_PLAIN_RAM = 'software-plain-ram'
SOFTWARE_TEE = 'software-tee'
OTHER = 'other'
UNKNOWN = 'unknown'
class cyclonedx.model.crypto.CryptoImplementationPlatform

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.algorithmProperties.implementationPlatform ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

ARMV7_A = 'armv7-a'
ARMV7_M = 'armv7-m'
ARMV8_A = 'armv8-a'
ARMV8_M = 'armv8-m'
ARMV9_A = 'armv9-a'
ARMV9_M = 'armv9-m'
GENERIC = 'generic'
PPC64 = 'ppc64'
PPC64LE = 'ppc64le'
S390X = 's390x'
X86_32 = 'x86_32'
X86_64 = 'x86_64'
OTHER = 'other'
UNKNOWN = 'unknown'
class cyclonedx.model.crypto.CryptoCertificationLevel

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.algorithmProperties.certificationLevel ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

NONE = 'none'
FIPS140_1_L1 = 'fips140-1-l1'
FIPS140_1_L2 = 'fips140-1-l2'
FIPS140_1_L3 = 'fips140-1-l3'
FIPS140_1_L4 = 'fips140-1-l4'
FIPS140_2_L1 = 'fips140-2-l1'
FIPS140_2_L2 = 'fips140-2-l2'
FIPS140_2_L3 = 'fips140-2-l3'
FIPS140_2_L4 = 'fips140-2-l4'
FIPS140_3_L1 = 'fips140-3-l1'
FIPS140_3_L2 = 'fips140-3-l2'
FIPS140_3_L3 = 'fips140-3-l3'
FIPS140_3_L4 = 'fips140-3-l4'
CC_EAL1 = 'cc-eal1'
CC_EAL1_PLUS = 'cc-eal1+'
CC_EAL2 = 'cc-eal2'
CC_EAL2_PLUS = 'cc-eal2+'
CC_EAL3 = 'cc-eal3'
CC_EAL3_PLUS = 'cc-eal3+'
CC_EAL4 = 'cc-eal4'
CC_EAL4_PLUS = 'cc-eal4+'
CC_EAL5 = 'cc-eal5'
CC_EAL5_PLUS = 'cc-eal5+'
CC_EAL6 = 'cc-eal6'
CC_EAL6_PLUS = 'cc-eal6+'
CC_EAL7 = 'cc-eal7'
CC_EAL7_PLUS = 'cc-eal7+'
OTHER = 'other'
UNKNOWN = 'unknown'
class cyclonedx.model.crypto.CryptoMode

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.algorithmProperties.mode ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

CBC = 'cbc'
CCM = 'ccm'
CFB = 'cfb'
CTR = 'ctr'
ECB = 'ecb'
GCM = 'gcm'
OFB = 'ofb'
OTHER = 'other'
UNKNOWN = 'unknown'
class cyclonedx.model.crypto.CryptoPadding

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.algorithmProperties.padding ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

PKCS5 = 'pkcs5'
PKCS7 = 'pkcs7'
PKCS1V15 = 'pkcs1v15'
OAEP = 'oaep'
RAW = 'raw'
OTHER = 'other'
UNKNOWN = 'unknown'
class cyclonedx.model.crypto.CryptoFunction

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.algorithmProperties.cryptoFunctions.cryptoFunction ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

DECAPSULATE = 'decapsulate'
DECRYPT = 'decrypt'
DIGEST = 'digest'
ENCAPSULATE = 'encapsulate'
ENCRYPT = 'encrypt'
GENERATE = 'generate'
KEYDERIVE = 'keyderive'
KEYGEN = 'keygen'
SIGN = 'sign'
TAG = 'tag'
VERIFY = 'verify'
OTHER = 'other'
UNKNOWN = 'unknown'
class cyclonedx.model.crypto.AlgorithmProperties(*, primitive: CryptoPrimitive | None = None, parameter_set_identifier: str | None = None, curve: str | None = None, execution_environment: CryptoExecutionEnvironment | None = None, implementation_platform: CryptoImplementationPlatform | None = None, certification_levels: Iterable[CryptoCertificationLevel] | None = None, mode: CryptoMode | None = None, padding: CryptoPadding | None = None, crypto_functions: Iterable[CryptoFunction] | None = None, classical_security_level: int | None = None, nist_quantum_security_level: int | None = None)

This is our internal representation of the cryptoPropertiesType.algorithmProperties ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

property primitive: CryptoPrimitive | None

Cryptographic building blocks used in higher-level cryptographic systems and protocols.

Primitives represent different cryptographic routines: deterministic random bit generators (drbg, e.g. CTR_DRBG from NIST SP800-90A-r1), message authentication codes (mac, e.g. HMAC-SHA-256), blockciphers (e.g. AES), streamciphers (e.g. Salsa20), signatures (e.g. ECDSA), hash functions (e.g. SHA-256), public-key encryption schemes (pke, e.g. RSA), extended output functions (xof, e.g. SHAKE256), key derivation functions (e.g. pbkdf2), key agreement algorithms (e.g. ECDH), key encapsulation mechanisms (e.g. ML-KEM), authenticated encryption (ae, e.g. AES-GCM) and the combination of multiple algorithms (combiner, e.g. SP800-56Cr2).

Returns:

CryptoPrimitive or None

property parameter_set_identifier: str | None

An identifier for the parameter set of the cryptographic algorithm. Examples: in AES128, ‘128’ identifies the key length in bits, in SHA256, ‘256’ identifies the digest length, ‘128’ in SHAKE128 identifies its maximum security level in bits, and ‘SHA2-128s’ identifies a parameter set used in SLH-DSA (FIPS205).

Returns:

str or None

property curve: str | None

The specific underlying Elliptic Curve (EC) definition employed which is an indicator of the level of security strength, performance and complexity. Absent an authoritative source of curve names, CycloneDX recommends use of curve names as defined at https://neuromancer.sk/std/, the source from which can be found at https://github.com/J08nY/std-curves.

Returns:

str or None

property execution_environment: CryptoExecutionEnvironment | None

The target and execution environment in which the algorithm is implemented in.

Returns:

CryptoExecutionEnvironment or None

property implementation_platform: CryptoImplementationPlatform | None

The target platform for which the algorithm is implemented. The implementation can be ‘generic’, running on any platform or for a specific platform.

Returns:

CryptoImplementationPlatform or None

property certification_levels: SortedSet[CryptoCertificationLevel]

The certification that the implementation of the cryptographic algorithm has received, if any. Certifications include revisions and levels of FIPS 140 or Common Criteria of different Extended Assurance Levels (CC-EAL).

Returns:

Iterable[CryptoCertificationLevel]

property mode: CryptoMode | None

The mode of operation in which the cryptographic algorithm (block cipher) is used.

Returns:

CryptoMode or None

property padding: CryptoPadding | None

The padding scheme that is used for the cryptographic algorithm.

Returns:

CryptoPadding or None

property crypto_functions: SortedSet[CryptoFunction]

The cryptographic functions implemented by the cryptographic algorithm.

Returns:

Iterable[CryptoFunction]

property classical_security_level: int | None

The classical security level that a cryptographic algorithm provides (in bits).

Returns:

int or None

property nist_quantum_security_level: int | None

The NIST security strength category as defined in https://csrc.nist.gov/projects/post-quantum-cryptography/post-quantum-cryptography-standardization/ evaluation-criteria/security-(evaluation-criteria). A value of 0 indicates that none of the categories are met.

Returns:

int or None

class cyclonedx.model.crypto.CertificateProperties(*, subject_name: str | None = None, issuer_name: str | None = None, not_valid_before: datetime.datetime | None = None, not_valid_after: datetime.datetime | None = None, signature_algorithm_ref: cyclonedx.model.bom_ref.BomRef | None = None, subject_public_key_ref: cyclonedx.model.bom_ref.BomRef | None = None, certificate_format: str | None = None, certificate_extension: str | None = None)

This is our internal representation of the cryptoPropertiesType.certificateProperties complex type within CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

property subject_name: str | None

The subject name for the certificate.

Returns:

str or None

property issuer_name: str | None

The issuer name for the certificate.

Returns:

str or None

property not_valid_before: datetime.datetime | None

The date and time according to ISO-8601 standard from which the certificate is valid.

Returns:

datetime or None

property not_valid_after: datetime.datetime | None

The date and time according to ISO-8601 standard from which the certificate is not valid anymore.

Returns:

datetime or None

property signature_algorithm_ref: cyclonedx.model.bom_ref.BomRef | None

The bom-ref to signature algorithm used by the certificate.

Returns:

BomRef or None

property subject_public_key_ref: cyclonedx.model.bom_ref.BomRef | None

The bom-ref to the public key of the subject.

Returns:

BomRef or None

property certificate_format: str | None

The format of the certificate. Examples include X.509, PEM, DER, and CVC.

Returns:

str or None

property certificate_extension: str | None

The file extension of the certificate. Examples include crt, pem, cer, der, and p12.

Returns:

str or None

class cyclonedx.model.crypto.RelatedCryptoMaterialType

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.relatedCryptoMaterialProperties.type ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

ADDITIONAL_DATA = 'additional-data'
CIPHERTEXT = 'ciphertext'
CREDENTIAL = 'credential'
DIGEST = 'digest'
INITIALIZATION_VECTOR = 'initialization-vector'
KEY = 'key'
NONCE = 'nonce'
PASSWORD = 'password'
PRIVATE_KEY = 'private-key'
PUBLIC_KEY = 'public-key'
SALT = 'salt'
SECRET_KEY = 'secret-key'
SEED = 'seed'
SHARED_SECRET = 'shared-secret'
SIGNATURE = 'signature'
TAG = 'tag'
TOKEN = 'token'
OTHER = 'other'
UNKNOWN = 'unknown'
class cyclonedx.model.crypto.RelatedCryptoMaterialState

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.relatedCryptoMaterialProperties.state ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

ACTIVE = 'active'
COMPROMISED = 'compromised'
DEACTIVATED = 'deactivated'
DESTROYED = 'destroyed'
PRE_ACTIVATION = 'pre-activation'
SUSPENDED = 'suspended'
class cyclonedx.model.crypto.RelatedCryptoMaterialSecuredBy(*, mechanism: str | None = None, algorithm_ref: cyclonedx.model.bom_ref.BomRef | None = None)

This is our internal representation of the cryptoPropertiesType.relatedCryptoMaterialProperties.securedBy complex type within CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

property mechanism: str | None

Specifies the mechanism by which the cryptographic asset is secured by. Examples include HSM, TPM, XGX, Software, and None.

Returns:

str or None

property algorithm_ref: cyclonedx.model.bom_ref.BomRef | None

The bom-ref to the algorithm.

Returns:

BomRef or None

class cyclonedx.model.crypto.RelatedCryptoMaterialProperties(*, type: RelatedCryptoMaterialType | None = None, id: str | None = None, state: RelatedCryptoMaterialState | None = None, algorithm_ref: cyclonedx.model.bom_ref.BomRef | None = None, creation_date: datetime.datetime | None = None, activation_date: datetime.datetime | None = None, update_date: datetime.datetime | None = None, expiration_date: datetime.datetime | None = None, value: str | None = None, size: int | None = None, format: str | None = None, secured_by: RelatedCryptoMaterialSecuredBy | None = None)

This is our internal representation of the cryptoPropertiesType.relatedCryptoMaterialProperties complex type within CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

property type: RelatedCryptoMaterialType | None

The type for the related cryptographic material.

Returns

property id: str | None

The optional unique identifier for the related cryptographic material.

Returns:

property state: RelatedCryptoMaterialState | None

The key state as defined by NIST SP 800-57.

Returns:

RelatedCryptoMaterialState or None

property algorithm_ref: cyclonedx.model.bom_ref.BomRef | None

The bom-ref to the algorithm used to generate the related cryptographic material.

Returns:

BomRef or None

property creation_date: datetime.datetime | None

The date and time (timestamp) when the related cryptographic material was created.

Returns:

datetime or None

property activation_date: datetime.datetime | None

The date and time (timestamp) when the related cryptographic material was activated.

Returns:

datetime or None

property update_date: datetime.datetime | None

The date and time (timestamp) when the related cryptographic material was updated.

Returns:

datetime or None

property expiration_date: datetime.datetime | None

The date and time (timestamp) when the related cryptographic material expires.

Returns:

datetime or None

property value: str | None

The associated value of the cryptographic material.

Returns:

str or None

property size: int | None

The size of the cryptographic asset (in bits).

Returns:

int or None

property format: str | None

The format of the related cryptographic material (e.g. P8, PEM, DER).

Returns:

str or None

property secured_by: RelatedCryptoMaterialSecuredBy | None

The mechanism by which the cryptographic asset is secured by.

Returns:

RelatedCryptoMaterialSecuredBy or None

class cyclonedx.model.crypto.ProtocolPropertiesType

Bases: str, enum.Enum

This is our internal representation of the cryptoPropertiesType.protocolProperties.type ENUM type within the CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

IKE = 'ike'
IPSEC = 'ipsec'
SSH = 'ssh'
SSTP = 'sstp'
TLS = 'tls'
WPA = 'wpa'
OTHER = 'other'
UNKNOWN = 'unknown'
class cyclonedx.model.crypto.ProtocolPropertiesCipherSuite(*, name: str | None = None, algorithms: Iterable[cyclonedx.model.bom_ref.BomRef] | None = None, identifiers: Iterable[str] | None = None)

This is our internal representation of the cryptoPropertiesType.protocolProperties.cipherSuites.cipherSuite complex type within CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

property name: str | None

A common name for the cipher suite. For example: TLS_DHE_RSA_WITH_AES_128_CCM.

Returns:

str or None

property algorithms: SortedSet[BomRef]

A list BomRefs to algorithms related to the cipher suite.

Returns:

Iterable[BomRef] or None

property identifiers: SortedSet[str]

A list of common identifiers for the cipher suite. Examples include 0xC0 and 0x9E.

Returns:

Iterable[str] or None

class cyclonedx.model.crypto.Ikev2TransformTypes(*, encr: Iterable[cyclonedx.model.bom_ref.BomRef] | None = None, prf: Iterable[cyclonedx.model.bom_ref.BomRef] | None = None, integ: Iterable[cyclonedx.model.bom_ref.BomRef] | None = None, ke: Iterable[cyclonedx.model.bom_ref.BomRef] | None = None, esn: bool | None = None, auth: Iterable[cyclonedx.model.bom_ref.BomRef] | None = None)

This is our internal representation of the cryptoPropertiesType.protocolProperties.ikev2TransformTypes complex type within CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

property encr: SortedSet[BomRef]

Transform Type 1: encryption algorithms.

Returns:

Iterable[BomRef] or None

property prf: SortedSet[BomRef]

Transform Type 2: pseudorandom functions.

Returns:

Iterable[BomRef] or None

property integ: SortedSet[BomRef]

Transform Type 3: integrity algorithms.

Returns:

Iterable[BomRef] or None

property ke: SortedSet[BomRef]

Transform Type 4: Key Exchange Method (KE) per RFC9370, formerly called Diffie-Hellman Group (D-H).

Returns:

Iterable[BomRef] or None

property esn: bool | None

Specifies if an Extended Sequence Number (ESN) is used.

Returns:

bool or None

property auth: SortedSet[BomRef]

IKEv2 Authentication method.

Returns:

Iterable[BomRef] or None

class cyclonedx.model.crypto.ProtocolProperties(*, type: ProtocolPropertiesType | None = None, version: str | None = None, cipher_suites: Iterable[ProtocolPropertiesCipherSuite] | None = None, ikev2_transform_types: Ikev2TransformTypes | None = None, crypto_refs: Iterable[cyclonedx.model.bom_ref.BomRef] | None = None)

This is our internal representation of the cryptoPropertiesType.protocolProperties complex type within CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

property type: ProtocolPropertiesType | None

The concrete protocol type.

Returns:

ProtocolPropertiesType or None

property version: str | None

The version of the protocol. Examples include 1.0, 1.2, and 1.99.

Returns:

str or None

property cipher_suites: SortedSet[ProtocolPropertiesCipherSuite]

A list of cipher suites related to the protocol.

Returns:

Iterable[ProtocolPropertiesCipherSuite]

property ikev2_transform_types: Ikev2TransformTypes | None

The IKEv2 transform types supported (types 1-4), defined in RFC7296 section 3.3.2, and additional properties.

Returns:

Ikev2TransformTypes or None

property crypto_refs: SortedSet[BomRef]

A list of protocol-related cryptographic assets.

Returns:

Iterable[BomRef]

class cyclonedx.model.crypto.CryptoProperties(*, asset_type: CryptoAssetType | None = None, algorithm_properties: AlgorithmProperties | None = None, certificate_properties: CertificateProperties | None = None, related_crypto_material_properties: RelatedCryptoMaterialProperties | None = None, protocol_properties: ProtocolProperties | None = None, oid: str | None = None)

This is our internal representation of the cryptoPropertiesType complex type within CycloneDX standard.

Note

Introduced in CycloneDX v1.6

Note

See the CycloneDX Schema for hashType: https://cyclonedx.org/docs/1.6/#type_cryptoPropertiesType

property asset_type: CryptoAssetType | None

Cryptographic assets occur in several forms. Algorithms and protocols are most commonly implemented in specialized cryptographic libraries. They may however also be ‘hardcoded’ in software components. Certificates and related cryptographic material like keys, tokens, secrets or passwords are other cryptographic assets to be modelled.

Returns:

CryptoAssetType

property algorithm_properties: AlgorithmProperties | None

Additional properties specific to a cryptographic algorithm.

Returns:

AlgorithmProperties or None

property certificate_properties: CertificateProperties | None

Properties for cryptographic assets of asset type ‘certificate’.

Returns:

CertificateProperties or None

property related_crypto_material_properties: RelatedCryptoMaterialProperties | None

Properties for cryptographic assets of asset type ‘relatedCryptoMaterial’.

Returns:

RelatedCryptoMaterialProperties or None

property protocol_properties: ProtocolProperties | None

Properties specific to cryptographic assets of type: ‘protocol’.

Returns:

ProtocolProperties or None

property oid: str | None

The object identifier (OID) of the cryptographic asset.

Returns:

str or None