Class CryptoProperties_AlgorithmProperties

Generated

from message cyclonedx.v1_6.CryptoProperties.AlgorithmProperties

Hierarchy

Constructors

Properties

certificationLevel: string[] = []

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).

Generated

from field: repeated string certificationLevel = 6;

classicalSecurityLevel?: number

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

Generated

from field: optional int32 classicalSecurityLevel = 10;

The cryptographic functions implemented by the cryptographic algorithm.

Generated

from field: repeated cyclonedx.v1_6.CryptoProperties.AlgorithmProperties.CryptoAlgorithmFunction cryptoFunctions = 9;

curve?: string

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.

Generated

from field: optional string curve = 3;

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

Generated

from field: optional cyclonedx.v1_6.CryptoProperties.AlgorithmProperties.CryptoExecutionEnvironment executionEnvironment = 4;

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

Generated

from field: optional cyclonedx.v1_6.CryptoProperties.AlgorithmProperties.CryptoImplementationPlatform implementationPlatform = 5;

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

Generated

from field: optional cyclonedx.v1_6.CryptoProperties.AlgorithmProperties.CryptoAlgorithmMode mode = 7;

nistQuantumSecurityLevel?: number

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.

Generated

from field: optional int32 nistQuantumSecurityLevel = 11;

The padding scheme that is used for the cryptographic algorithm.

Generated

from field: optional cyclonedx.v1_6.CryptoProperties.AlgorithmProperties.CryptoAlgorithmPadding padding = 8;

parameterSetIdentifier?: string

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).

Generated

from field: optional string parameterSetIdentifier = 2;

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).

Generated

from field: optional cyclonedx.v1_6.CryptoProperties.AlgorithmProperties.CryptoPrimitive primitive = 1;

fields: FieldList = ...
runtime: ProtoRuntime = proto3
typeName: "cyclonedx.v1_6.CryptoProperties.AlgorithmProperties" = "cyclonedx.v1_6.CryptoProperties.AlgorithmProperties"

Methods

  • Parse from binary data, merging fields.

    Repeated fields are appended. Map entries are added, overwriting existing keys.

    If a message field is already present, it will be merged with the new data.

    Parameters

    • bytes: Uint8Array
    • Optional options: Partial<BinaryReadOptions>

    Returns this

  • Parse a message from a JSON value.

    Parameters

    • jsonValue: JsonValue
    • Optional options: Partial<JsonReadOptions>

    Returns this

  • Parse a message from a JSON string.

    Parameters

    • jsonString: string
    • Optional options: Partial<JsonReadOptions>

    Returns this

  • Retrieve the MessageType of this message - a singleton that represents the protobuf message declaration and provides metadata for reflection- based operations.

    Returns MessageType<CryptoProperties_AlgorithmProperties>

  • Serialize the message to binary data.

    Parameters

    • Optional options: Partial<BinaryWriteOptions>

    Returns Uint8Array

  • Override for serialization behavior. This will be invoked when calling JSON.stringify on this message (i.e. JSON.stringify(msg)).

    Note that this will not serialize google.protobuf.Any with a packed message because the protobuf JSON format specifies that it needs to be unpacked, and this is only possible with a type registry to look up the message type. As a result, attempting to serialize a message with this type will throw an Error.

    This method is protected because you should not need to invoke it directly -- instead use JSON.stringify or toJsonString for stringified JSON. Alternatively, if actual JSON is desired, you should use toJson.

    Returns JsonValue

  • Serialize the message to a JSON value, a JavaScript value that can be passed to JSON.stringify().

    Parameters

    • Optional options: Partial<JsonWriteOptions>

    Returns JsonValue

  • Serialize the message to a JSON string.

    Parameters

    • Optional options: Partial<JsonWriteStringOptions>

    Returns string