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.

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.0.tar.gz (26.0 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.0-py3-none-any.whl (20.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tibet_sbom-0.2.0.tar.gz
  • Upload date:
  • Size: 26.0 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.0.tar.gz
Algorithm Hash digest
SHA256 9f82327ce4401678409fd7de2e7c5f068bda8e326bf45a4b2b6eb313e23d4bc5
MD5 65aa633e324be3123673037973ad9477
BLAKE2b-256 8aae62b337cd1713a6af4fce74489df2b303559422a31ea908c2d31ed86653a4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tibet_sbom-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 20.3 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 28db818afbf8ef8a6aaf1f81c9ccb407421a1aa4f8f5986e8ed29f1578b73cdb
MD5 e77f636c2a95f76e2c9ad1b0367dbfad
BLAKE2b-256 61fe075b2391315834b61434e03c6491e365ad1134828ba59d3ca3c64ccd0ec1

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