Santandersecurityresearch / cryptoinventory.datamodel

A Data Model Poc for Crypto Inventory for the Europol Quantum Safe Financial Forum (QSFF)
1 stars 0 forks source link

Cryptoinventory Data Model PoC

Currently using CycloneDX 1.6 schema CycloneDX 1.6. This repository has also schemas and objects valid for IBM CBOM (bom-1.4-cbom-1.0.schema.json) for documentation purposes.

Experiment using "ajv"

ajv is the recommended tool to validate schemas.

To install ajv as a node library:

npm install ajv-cli

Note: it is important to install the CLI version to be able to talk to it from the console. Once installed, we have prepared the validate.sh script to do the testing:

# validate certificate-object against CBOM 
./validate.sh CBOM certificate-object-cyclonedx-1.6.json

# validate certificate-object against SANTANDER BOM 
./validate.sh SBOM certificate-object-cyclonedx-1.6.json

# validate certificate-object against BOTH 
./validate.sh ALL certificate-object-cyclonedx-1.6.json

We have created the santander-cryptographic-properties schema to do the extra validations for our own data model.

Note: We decided to disregard our initial attempts with Python because of the difficulties found in managing dependent schemas (CBOM's case).

CBOM Comments

Requests for IBM / CycloneDX

Note: If many fields are being added to the extended properties block, it may indicate that the model is missing some important information.

To-Do