Skip to main content

Software Bill of Materials with TIBET Provenance — every dependency traced, every build proven

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tibet_sbom-0.2.1.tar.gz (44.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tibet_sbom-0.2.1-py3-none-any.whl (22.2 kB view details)

Uploaded Python 3

File details

Details for the file tibet_sbom-0.2.1.tar.gz.

File metadata

  • Download URL: tibet_sbom-0.2.1.tar.gz
  • Upload date:
  • Size: 44.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for tibet_sbom-0.2.1.tar.gz
Algorithm Hash digest
SHA256 19715f0159e13587f54639df4220207b832281f5e9d9f996618fb97b943002ba
MD5 99a460a93e28972aa9bda30897ea9fe0
BLAKE2b-256 55d681d58df73fccb42b3570cbf3d1be6abb8d454aced423d691aff2a4a55d3f

See more details on using hashes here.

File details

Details for the file tibet_sbom-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: tibet_sbom-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 22.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for tibet_sbom-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e7da111e3b30fa2823ca44015dcff5003f8f4970574d26402eff94702d127bd9
MD5 1ab9ac2d7067b89bd49f5678bda9aa4c
BLAKE2b-256 589056860ac7a33ab560f2879a922da8bec093de2deff8b547ecff487f0cc477

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page