Tamper‑evident signatures and license lineage for LoRA / adapter files
Project description
LoRA‑Provenance loraprov
📚 Docs: https://keithtyser.github.io/lora-provenance
Tamper‑evident signatures and license lineage for any LoRA / adapter file.
Quick‑start
# install (after first PyPI release)
pip install loraprov
# generate a signing key
loraprov key generate alice
# sign an adapter
loraprov sign adapter.safetensors --parent-sha 6efa... --license MIT --key alice
# verify before deploying
loraprov verify adapter.safetensors
Tip → to protect Hugging Face pushes, enable the pre‑upload filter.
Need compliance docs? loraprov sbom adapter.safetensors exports a CycloneDX SBOM instantly.
Architecture
flowchart LR
A[Developer] --> B["loraprov sign"]
B --> C["Signed Adapter"]
C --> D["loraprov verify<br/>(CI / Prod)"]
B --> E["HF filter"]
E --> C
C --> F["SBOM export"]
Why use LoRA‑Provenance?
| Problem | Benefit |
|---|---|
| Poisoned adapters | Signature mismatch blocks deployment |
| License ambiguity | License + parent SHA embedded at sign‑time |
| Compliance (EU AI Act, NIST AI RMF) | One‑line SBOM and full provenance chain |
| Reproducibility | Cite an immutable SHA‑256 instead of a URL |
Roadmap
- WebAssembly verifier (browser demo)
- Hardware‑backed keys (YubiKey)
- Lineage visualizer (interactive graph)
Contributing
git clone …→poetry installpoetry run pytest(tests + lint)- Open a PR – CI must stay green
Licensed under Apache‑2.0 © 2025 Keith Tyser & contributors.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file loraprov-0.1.2.tar.gz.
File metadata
- Download URL: loraprov-0.1.2.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.9.13 Windows/10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bca6b4238f9693eb3c955a29af91af90f8e357dcf18ca76ac203796bdce4f374
|
|
| MD5 |
76611876f2bdf4603aa3092a756fb0ee
|
|
| BLAKE2b-256 |
a0a679a82149966f9678a22ef59e3b42f74fb80755951a612bc606baa247c58a
|
File details
Details for the file loraprov-0.1.2-py3-none-any.whl.
File metadata
- Download URL: loraprov-0.1.2-py3-none-any.whl
- Upload date:
- Size: 12.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.9.13 Windows/10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d8909c83391d9caddbeaec7dd871f3f00216b2479d9d8c90b86cacae7f10552f
|
|
| MD5 |
477a11a9d62dcb10740e36fc59a92610
|
|
| BLAKE2b-256 |
c338d9404696cf012cd99208235e92836c9737cc6823d4d4a3053ed4fb085d9b
|