tibet-sbom — Software Bill of Materials + TIBET Provenance
Every dependency traced. Every build proven.
The EU Cyber Resilience Act (CRA) requires Software Bills of Materials for all products with digital elements sold in the EU. The US Executive Order 14028 mandates machine-readable SBOMs for government software. Existing tools like Syft and CycloneDX generate dependency lists — but a list alone proves nothing about where a component came from, why that version was chosen, or what the build context was.
tibet-sbom adds TIBET provenance to SBOMs. Every dependency becomes a TIBET token with four dimensions:
| Dimension | SBOM Meaning |
|---|---|
| ERIN | Component name, version, hash, source registry |
| ERAAN | Parent component, dependency chain, jis: URI |
| EROMHEEN | Scan environment, timestamp, scanner version |
| ERACHTER | Why this component, why this version, build context |
Compatible Formats
- CycloneDX — OWASP standard, JSON/XML
- SPDX — Linux Foundation standard, ISO/IEC 5962
- TIBET — Full provenance chain per component
Installation
pip install tibet-sbom
With rich terminal output:
pip install tibet-sbom[full]
Quick Start
from tibet_sbom import SBOMGenerator
gen = SBOMGenerator()
sbom = gen.scan("/path/to/project")
print(f"Found {len(sbom.components)} components")
print(f"TIBET chain: {sbom.tibet_chain_length} tokens")
# Export as CycloneDX
cyclonedx = gen.export_cyclonedx()
# Export with full TIBET provenance
tibet = gen.export_tibet()
CLI Usage
# Concept overview — what tibet-sbom does and why
tibet-sbom info
# Scan a project and print SBOM summary
tibet-sbom scan /path/to/project
# Export in specific format
tibet-sbom export /path/to/project --format cyclonedx
tibet-sbom export /path/to/project --format spdx
tibet-sbom export /path/to/project --format tibet
# Compliance check against CRA and EO 14028
tibet-sbom check /path/to/project
# Demo with sample project
tibet-sbom demo
All commands support --json for machine-readable output.
Why Not Just Syft/CycloneDX?
Those tools answer: "What dependencies does this project have?"
tibet-sbom answers: "What dependencies does this project have, where did each one come from, what was the build environment when it was scanned, and can you cryptographically prove the chain of custody?"
A dependency list without provenance is a checklist. A dependency list with TIBET provenance is evidence.
Regulatory Context
- EU CRA (Cyber Resilience Act) — Regulation (EU) 2024/2847. Requires manufacturers to identify and document vulnerabilities and components, maintain SBOMs, and provide security updates.
- US EO 14028 — Executive Order on Improving the Nation's Cybersecurity. Requires machine-readable SBOMs, supplier identification, and integrity verification for government software.
License
MIT — Humotica AI Lab 2025-2026
Part of the TIBET protocol family.
Credits
Designed by Jasper van de Meent. Built by Jasper and Root AI as part of HumoticaOS.
Stack-positie: Groep evidence · Bootstrap = OSAPI-handshake naar tibet + jis (fail → snaft-rule + tibet-pol-rapport) · ← tibet-cbom · tibet-ai-sbom → · See STACK.md · See demo/golden-path/ for the spine end-to-end.
Enterprise
For private hub hosting, SLA support, custom integrations, or compliance guidance:
| Enterprise | enterprise@humotica.com |
| Support | support@humotica.com |
| Security | security@humotica.com |
See ENTERPRISE.md for details.
Metadata
Release files for tibet-sbom 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| tibet_sbom-0.2.1.tar.gz | 44.8 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tibet_sbom-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 67.1 kB
Release files / tibet_sbom-0.2.1.tar.gz
| Download URL | tibet_sbom-0.2.1.tar.gz |
|---|---|
| Size | 44.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
19715f0159e13587f54639df4220207b832281f5e9d9f996618fb97b943002ba
|
|
BLAKE2b-256 checksum How to use checksums |
55d681d58df73fccb42b3570cbf3d1be6abb8d454aced423d691aff2a4a55d3f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.5
|
Release files / tibet_sbom-0.2.1-py3-none-any.whl
| Download URL | tibet_sbom-0.2.1-py3-none-any.whl |
|---|---|
| Size | 22.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e7da111e3b30fa2823ca44015dcff5003f8f4970574d26402eff94702d127bd9
|
|
BLAKE2b-256 checksum How to use checksums |
589056860ac7a33ab560f2879a922da8bec093de2deff8b547ecff487f0cc477
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.5
|
Security for tibet-sbom 0.2.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.