Vista resources / Annotated examples
CycloneDX CBOM example and field guide
A cryptographic bill of materials (CBOM) records cryptographic components within a defined scope. Download this CycloneDX 1.7 example to see how Vista represents protocols, algorithms, certificates and key metadata, then follow their recorded dependencies.
From inventory to a dated artifact
What does a CBOM contain?
To create one for your own environment, follow How to generate a CBOM with Vista Core. To inspect an existing file, open the CycloneDX JSON viewer.
Vista generates a CBOM from the inventory in a selected Scope. The result is a frozen snapshot: later discovery changes the inventory, not the bytes of an existing artifact. Current exports use CycloneDX 1.7. Older artifacts retain their original declared version.
Start by checking what was in scope and when the snapshot was generated. Then follow the components and their references. A valid file can still reflect incomplete collection; preserve coverage gaps alongside your interpretation.
Based on a real Vista export / CycloneDX 1.7
Explore a Vista CBOM
148 components: 97 algorithms, 28 protocols, 13 certificates and 10 public-key records. The file retains all 49 dependency entries from the supplied export, so you can follow real product structure rather than disconnected algorithm snippets.
Anonymized derivative, not an original artifact. UUIDs are consistently remapped; certificate names, subjects, issuers, serial numbers and fingerprints are fictional replacements; dates are shifted by 30 days. Algorithm data, component counts and dependency structure are retained. The original export stays private. This download’s checksum verifies these example bytes only; it is not the product’s original content hash or a signature.
Worked example: hybrid exchange, classical authentication
Search the file for X25519MLKEM768. Read its cryptoProperties and the algorithm role encoded in its bom-ref. Compare the protocol and certificate-related records sharing its context: the example also contains RSA certificate-key and SHA256-RSA certificate-signature entries.
{
"type": "cryptographic-asset",
"bom-ref": "crypto/algorithm/e3ac2c9f-685d-5270-82a0-eedc7503c99c/key_exchange/x25519mlkem768",
"name": "X25519MLKEM768",
"cryptoProperties": {
"assetType": "algorithm",
"algorithmProperties": {
"primitive": "kem",
"cryptoFunctions": [
"keygen",
"encapsulate",
"decapsulate"
],
"classicalSecurityLevel": 192,
"nistQuantumSecurityLevel": 3,
"certificationLevel": [
"none"
]
}
}
}- Identify the function. A key-exchange algorithm and a certificate signature solve different problems. Hybrid exchange does not make classical authentication post-quantum.
- Follow the context. Use
vista:asset-idto find related asset records anddependencies[].ref/dependsOnfor explicit dependency edges. Shared asset identity alone does not establish a dependency. - Read properties precisely. A catalogue security level describes the algorithm; it is not a whole-system score.
certificationLevel: ["none"]does not establish a CAVP or CMVP validation. - Keep uncertainty visible. An absent component is not proof that it does not exist. This example has no library components; other inventories and exports may contain them.
The export illustrates why a successful hybrid handshake and an outstanding migration finding can coexist. To decide what to change, review the corresponding configuration and findings in Vista, plus your collection coverage and intended clients.
A guided tour of a Vista CBOM
| Look for | What it tells you | What to check next |
|---|---|---|
| bomFormat, specVersion, serialNumber, version | The document format and artifact identity. | Use a viewer that supports the declared CycloneDX version. |
| metadata.timestamp and generator metadata | When the artifact was generated and which tool produced it. | Generation time is not a promise that every observation is equally fresh. |
| components and bom-ref | Named records and stable references within this document. | Distinguish algorithms, certificates, protocols, key metadata and libraries where present. |
| cryptoProperties.assetType | Which kind of cryptographic record you are reading. | Read its corresponding algorithm, certificate, protocol or related-material properties. |
| Algorithm and component references | Connections between the records that describe a cryptographic use. | Follow the actual references; one algorithm name does not describe the entire connection. |
| vista:asset-id, vista:environment, vista:discovered-at | Product context when available for that component. | Relate the evidence to the right asset, environment and observation time. Not every component has every property. |
| Artifact record: Scope, scope version, SHA-256 | The saved boundary and integrity check for the exported canonical bytes. | Retain the artifact record with the download; do not assume all record metadata is embedded in the JSON. |
Generate and verify your own baseline
- Collect authorized discovery evidence and review the inventory, identity questions and collection gaps.
- Choose a Scope that matches the service or environment you intend to assess.
- Open Risk & Compliance → Bills of Materials → Generate. Leave Kind on Cryptographic (CBOM), select the Scope and give the snapshot a useful name.
- Download the canonical CycloneDX JSON. Record its Scope, scope version, generation time and SHA-256 from the artifact record.
- Compute SHA-256 over the downloaded file and compare it with the recorded hash. Keep the original bytes: reformatting or editing the JSON changes its hash.
- After a migration step, collect new evidence and generate a new snapshot of the same intended boundary. Review scope changes before interpreting differences.
On Linux use sha256sum your-cbom.json; on macOS use shasum -a 256 your-cbom.json; in PowerShell use Get-FileHash .\your-cbom.json -Algorithm SHA256. A matching hash checks integrity against the saved value; it does not establish completeness or compliance.
Continue in Vista
Keep the snapshot connected to the work
Core includes scoped CBOM generation, canonical CycloneDX downloads and content hashes. Track follow-up work against the assets and findings in Remediation, then generate a fresh snapshot at the next milestone.
Enterprise adds built-in artifact comparison, compliance attestation, Ed25519 signing and verification, and SPDX/PDF downloads. Signing is separate from a content hash. Neither substitutes for reviewing scope, observations and applicable requirements.
Algorithm anatomy: small teaching files
The three downloads below are deliberately minimal CycloneDX 1.6 teaching snippets, not Vista exports. They remain useful for isolating an algorithm record, but they do not represent the current product’s complete 1.7 output, a live observation or a compliance report. Use the workflow above to obtain an operational Vista artifact.
The hybrid ingredient example contains only ML-KEM: it does not encode a complete hybrid construction. The anonymized 1.7 download above shows the complete structure of the supplied Vista export.
Classical signature algorithm
An algorithm inventory can identify a classical signing dependency. It does not by itself identify every key, signer, or verifying client.
{
"type": "cryptographic-asset",
"name": "RSA-2048",
"cryptoProperties": {
"assetType": "algorithm",
"algorithmProperties": {
"primitive": "signature",
"parameterSetIdentifier": "2048"
}
}
}Download example JSON ↓Hybrid key-agreement ingredients
This example inventories a KEM algorithm. A real hybrid protocol record must also describe the classical component, protocol binding and dependencies; this file does not prove a negotiated hybrid connection.
{
"type": "cryptographic-asset",
"name": "ML-KEM-768",
"cryptoProperties": {
"assetType": "algorithm",
"algorithmProperties": {
"primitive": "kem",
"parameterSetIdentifier": "768"
}
}
}Download example JSON ↓Symmetric encryption algorithm
A symmetric algorithm entry says nothing by itself about how its keys were transported or wrapped. Inspect those dependencies separately.
{
"type": "cryptographic-asset",
"name": "AES-256-GCM",
"cryptoProperties": {
"assetType": "algorithm",
"algorithmProperties": {
"primitive": "ae",
"parameterSetIdentifier": "256"
}
}
}Download example JSON ↓Reading checklist
- Check bomFormat, specVersion and artifact version.
- Identify the system or scope the artifact describes.
- Read the asset type and algorithm properties.
- Follow references and dependencies where present.
- Find when and how evidence was collected.
- Record missing context before making a migration decision.
A syntactically valid file can still be incomplete. None of these examples includes private key material. For operational generation, use the Vista CBOM guide.