@cyclonedx/cyclonedx-library
Version:
Core functionality of CycloneDX for JavaScript (Node.js or WebBrowser).
592 lines • 17.1 kB
JSON
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://cyclonedx.org/schema/cryptography-defs.schema.json",
"$comment": "2026-02-26T14:12:39Z",
"title": "Cryptographic Algorithm Family Definitions",
"description": "Enumerates cryptographic algorithm families and their specific metadata.",
"type": "object",
"additionalProperties": false,
"properties": {
"$schema": {
"type": "string"
},
"lastUpdated": {
"type": "string",
"format": "date-time",
"title": "Last Updated",
"description": "The date and time (timestamp) when the data was last updated."
},
"algorithms": {
"type": "array",
"title": "Algorithm Families",
"description": "An array of cryptographic algorithm family definitions.",
"items": {
"type": "object",
"title": "Algorithm Family",
"description": "Defines a cryptographic algorithm family and its metadata.",
"additionalProperties": false,
"properties": {
"family": {
"type": "string",
"title": "Algorithm Family",
"description": "The name of the cryptographic algorithm family."
},
"standard": {
"type": "array",
"title": "Standards",
"description": "List of standards defining or relating to the algorithm family.",
"items": {
"type": "object",
"title": "Standard Reference",
"description": "Reference to a standard, including its name and URL.",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"title": "Standard Name",
"description": "The name or identifier of the standard."
},
"url": {
"type": "string",
"format": "iri-reference",
"title": "Standard URL",
"description": "A URL pointing to the standard's official documentation."
}
},
"required": [
"name",
"url"
]
}
},
"variant": {
"type": "array",
"title": "Variants",
"description": "Defines algorithm variants by a naming pattern and the corresponding cryptographic primitive.",
"items": {
"type": "object",
"title": "Standard Reference",
"description": "Reference to a standard, including its name and URL.",
"additionalProperties": false,
"properties": {
"pattern": {
"type": "string",
"title": "Standard Name",
"description": "Defines the pattern used to construct the complete algorithm name. Placeholders are defined by {} for algorithm-specific properties."
},
"primitive": {
"type": "string",
"title": "Primitive",
"description": "Type of cryptographic primitive (e.g., signature, encryption, hash)."
},
"standard": {
"type": "array",
"title": "Standards",
"description": "List of standards defining or relating to the algorithm variant.",
"items": {
"type": "object",
"title": "Standard Reference",
"description": "Reference to a standard, including its name and URL.",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"title": "Standard Name",
"description": "The name or identifier of the standard."
},
"url": {
"type": "string",
"format": "iri-reference",
"title": "Standard URL",
"description": "A URL pointing to the standard's official documentation."
}
},
"required": [
"name",
"url"
]
}
}
},
"required": [
"pattern",
"primitive"
]
}
}
},
"required": [
"family",
"variant"
]
}
},
"ellipticCurves": {
"type": "array",
"title": "Elliptic Curves",
"description": "An array of elliptic curve family definitions.",
"items": {
"type": "object",
"title": "Elliptic Curve Family",
"description": "Defines an elliptic curve family and its metadata.",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"title": "Curve Family Name",
"description": "The name of the elliptic curve family."
},
"description": {
"type": [
"string",
"null"
],
"title": "Description",
"description": "A description of the elliptic curve family."
},
"curves": {
"type": "array",
"title": "Curves",
"description": "List of curves in this family.",
"items": {
"type": "object",
"title": "Curve",
"description": "Defines a specific elliptic curve and its metadata.",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"title": "Curve Name",
"description": "The name of the elliptic curve."
},
"description": {
"type": [
"string",
"null"
],
"title": "Description",
"description": "A description of the elliptic curve."
},
"oid": {
"type": [
"string",
"null"
],
"title": "OID",
"description": "The Object Identifier (OID) of the elliptic curve."
},
"form": {
"type": "string",
"title": "Form",
"description": "The form of the elliptic curve.",
"enum": [
"Weierstrass",
"Edwards",
"TwistedEdwards",
"Montgomery"
]
},
"aliases": {
"type": "array",
"title": "Aliases",
"description": "List of aliases for this curve.",
"items": {
"type": "object",
"title": "Alias",
"description": "An alias for the curve.",
"additionalProperties": false,
"properties": {
"category": {
"type": "string",
"title": "Category",
"description": "The category of the alias."
},
"name": {
"type": "string",
"title": "Name",
"description": "The name of the alias."
}
},
"required": [
"category",
"name"
]
}
}
},
"required": [
"name",
"description",
"oid",
"form"
]
}
}
},
"required": [
"name",
"description",
"curves"
]
}
}
},
"required": [
"lastUpdated",
"algorithms",
"ellipticCurves"
],
"definitions": {
"algorithmFamiliesEnum": {
"type": "string",
"title": "Algorithm Families",
"description": "An enum for the algorithm families.",
"enum": [
"3DES",
"3GPP-XOR",
"A5/1",
"A5/2",
"AES",
"ARIA",
"Argon2",
"Ascon",
"BLAKE2",
"BLAKE3",
"BLS",
"Blowfish",
"CAMELLIA",
"CAST5",
"CAST6",
"CMAC",
"CMEA",
"CTR_DRBG",
"ChaCha",
"ChaCha20",
"DES",
"DSA",
"ECDH",
"ECDSA",
"ECIES",
"EdDSA",
"ElGamal",
"FFDH",
"Fortuna",
"GOST",
"HC",
"HKDF",
"HMAC",
"HMAC_DRBG",
"HPKE",
"Hash_DRBG",
"IDEA",
"IKE-PRF",
"J-PAKE",
"KMAC",
"LMS",
"MD2",
"MD4",
"MD5",
"MILENAGE",
"ML-DSA",
"ML-KEM",
"MQV",
"OPAQUE",
"PBES1",
"PBES2",
"PBKDF1",
"PBKDF2",
"PBMAC1",
"Poly1305",
"RABBIT",
"RC2",
"RC4",
"RC5",
"RC6",
"RIPEMD",
"RSAES-OAEP",
"RSAES-PKCS1",
"RSASSA-PKCS1",
"RSASSA-PSS",
"SEED",
"SHA-1",
"SHA-2",
"SHA-3",
"SLH-DSA",
"SM2",
"SM3",
"SM4",
"SM9",
"SNOW3G",
"SP800-108",
"SPAKE2",
"SPAKE2PLUS",
"SRP",
"Salsa20",
"Serpent",
"SipHash",
"Skipjack",
"TUAK",
"Twofish",
"UMAC",
"Whirlpool",
"X3DH",
"XMSS",
"Yarrow",
"ZUC",
"bcrypt",
"scrypt"
]
},
"ellipticCurvesEnum": {
"type": "string",
"enum": [
"anssi/FRP256v1",
"bls/BLS12-377",
"bls/BLS12-381",
"bls/BLS12-446",
"bls/BLS12-455",
"bls/BLS12-638",
"bls/BLS24-477",
"bls/Bandersnatch",
"bn/bn158",
"bn/bn190",
"bn/bn222",
"bn/bn254",
"bn/bn286",
"bn/bn318",
"bn/bn350",
"bn/bn382",
"bn/bn414",
"bn/bn446",
"bn/bn478",
"bn/bn510",
"bn/bn542",
"bn/bn574",
"bn/bn606",
"bn/bn638",
"brainpool/brainpoolP160r1",
"brainpool/brainpoolP160t1",
"brainpool/brainpoolP192r1",
"brainpool/brainpoolP192t1",
"brainpool/brainpoolP224r1",
"brainpool/brainpoolP224t1",
"brainpool/brainpoolP256r1",
"brainpool/brainpoolP256t1",
"brainpool/brainpoolP320r1",
"brainpool/brainpoolP320t1",
"brainpool/brainpoolP384r1",
"brainpool/brainpoolP384t1",
"brainpool/brainpoolP512r1",
"brainpool/brainpoolP512t1",
"gost/gost256",
"gost/gost512",
"gost/id-GostR3410-2001-CryptoPro-A-ParamSet",
"gost/id-GostR3410-2001-CryptoPro-B-ParamSet",
"gost/id-GostR3410-2001-CryptoPro-C-ParamSet",
"gost/id-tc26-gost-3410-12-512-paramSetA",
"gost/id-tc26-gost-3410-12-512-paramSetB",
"gost/id-tc26-gost-3410-2012-256-paramSetA",
"gost/id-tc26-gost-3410-2012-512-paramSetC",
"mnt/mnt1",
"mnt/mnt2/1",
"mnt/mnt2/2",
"mnt/mnt3/1",
"mnt/mnt3/2",
"mnt/mnt3/3",
"mnt/mnt4",
"mnt/mnt5/1",
"mnt/mnt5/2",
"mnt/mnt5/3",
"nist/B-163",
"nist/B-233",
"nist/B-283",
"nist/B-409",
"nist/B-571",
"nist/K-163",
"nist/K-233",
"nist/K-283",
"nist/K-409",
"nist/K-571",
"nist/P-192",
"nist/P-224",
"nist/P-256",
"nist/P-384",
"nist/P-521",
"nums/ed-254-mont",
"nums/ed-255-mers",
"nums/ed-256-mont",
"nums/ed-382-mont",
"nums/ed-383-mers",
"nums/ed-384-mont",
"nums/ed-510-mont",
"nums/ed-511-mers",
"nums/ed-512-mont",
"nums/numsp256d1",
"nums/numsp256t1",
"nums/numsp384d1",
"nums/numsp384t1",
"nums/numsp512d1",
"nums/numsp512t1",
"nums/w-254-mont",
"nums/w-255-mers",
"nums/w-256-mont",
"nums/w-382-mont",
"nums/w-383-mers",
"nums/w-384-mont",
"nums/w-510-mont",
"nums/w-511-mers",
"nums/w-512-mont",
"oakley/192-bit Random ECP Group",
"oakley/224-bit Random ECP Group",
"oakley/256-bit Random ECP Group",
"oakley/384-bit Random ECP Group",
"oakley/521-bit Random ECP Group",
"oakley/Oakley Group 3",
"oakley/Oakley Group 4",
"oscaa/SM2",
"other/BADA55-R-256",
"other/BADA55-VPR-224",
"other/BADA55-VPR2-224",
"other/BADA55-VR-224",
"other/BADA55-VR-256",
"other/BADA55-VR-384",
"other/Curve1174",
"other/Curve22103",
"other/Curve25519",
"other/Curve383187",
"other/Curve41417",
"other/Curve4417",
"other/Curve448",
"other/Curve67254",
"other/E-222",
"other/E-382",
"other/E-521",
"other/Ed25519",
"other/Ed448",
"other/Ed448-Goldilocks",
"other/FourQ",
"other/Fp224BN",
"other/Fp254BNa",
"other/Fp254BNb",
"other/Fp254n2BNa",
"other/Fp256BN",
"other/Fp384BN",
"other/Fp512BN",
"other/JubJub",
"other/M-221",
"other/M-383",
"other/M-511",
"other/MDC201601",
"other/Pallas",
"other/Tom-256",
"other/Tom-384",
"other/Tom-521",
"other/Tweedledee",
"other/Tweedledum",
"other/Vesta",
"other/ssc-160",
"other/ssc-192",
"other/ssc-224",
"other/ssc-256",
"other/ssc-288",
"other/ssc-320",
"other/ssc-384",
"other/ssc-512",
"secg/secp112r1",
"secg/secp112r2",
"secg/secp128r1",
"secg/secp128r2",
"secg/secp160k1",
"secg/secp160r1",
"secg/secp160r2",
"secg/secp192k1",
"secg/secp192r1",
"secg/secp224k1",
"secg/secp224r1",
"secg/secp256k1",
"secg/secp256r1",
"secg/secp384r1",
"secg/secp521r1",
"secg/sect113r1",
"secg/sect113r2",
"secg/sect131r1",
"secg/sect131r2",
"secg/sect163k1",
"secg/sect163r1",
"secg/sect163r2",
"secg/sect193r1",
"secg/sect193r2",
"secg/sect233k1",
"secg/sect233r1",
"secg/sect239k1",
"secg/sect283k1",
"secg/sect283r1",
"secg/sect409k1",
"secg/sect409r1",
"secg/sect571k1",
"secg/sect571r1",
"wtls/wap-wsg-idm-ecid-wtls1",
"wtls/wap-wsg-idm-ecid-wtls10",
"wtls/wap-wsg-idm-ecid-wtls11",
"wtls/wap-wsg-idm-ecid-wtls12",
"wtls/wap-wsg-idm-ecid-wtls3",
"wtls/wap-wsg-idm-ecid-wtls4",
"wtls/wap-wsg-idm-ecid-wtls5",
"wtls/wap-wsg-idm-ecid-wtls6",
"wtls/wap-wsg-idm-ecid-wtls7",
"wtls/wap-wsg-idm-ecid-wtls8",
"wtls/wap-wsg-idm-ecid-wtls9",
"x962/c2onb191v4",
"x962/c2onb191v5",
"x962/c2onb239v4",
"x962/c2onb239v5",
"x962/c2pnb163v1",
"x962/c2pnb163v2",
"x962/c2pnb163v3",
"x962/c2pnb176w1",
"x962/c2pnb208w1",
"x962/c2pnb272w1",
"x962/c2pnb304w1",
"x962/c2pnb368w1",
"x962/c2tnb191v1",
"x962/c2tnb191v2",
"x962/c2tnb191v3",
"x962/c2tnb239v1",
"x962/c2tnb239v2",
"x962/c2tnb239v3",
"x962/c2tnb359v1",
"x962/c2tnb431r1",
"x962/prime192v1",
"x962/prime192v2",
"x962/prime192v3",
"x962/prime239v1",
"x962/prime239v2",
"x962/prime239v3",
"x962/prime256v1",
"x963/ansip160k1",
"x963/ansip160r1",
"x963/ansip160r2",
"x963/ansip192k1",
"x963/ansip224k1",
"x963/ansip224r1",
"x963/ansip256k1",
"x963/ansip384r1",
"x963/ansip521r1",
"x963/ansit163k1",
"x963/ansit163r1",
"x963/ansit163r2",
"x963/ansit193r1",
"x963/ansit193r2",
"x963/ansit233k1",
"x963/ansit233r1",
"x963/ansit239k1",
"x963/ansit283k1",
"x963/ansit283r1",
"x963/ansit409k1",
"x963/ansit409r1",
"x963/ansit571k1",
"x963/ansit571r1"
]
}
}
}