CreatorLedger 1.1.1
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet tool install --global CreatorLedger --version 1.1.1
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
dotnet tool install --local CreatorLedger --version 1.1.1
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=CreatorLedger&version=1.1.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
nuke :add-package CreatorLedger --version 1.1.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
⚠️ This repository has moved to ledger-suite Source now lives at:
src/CreatorLedger/
CreatorLedger
Local-first cryptographic provenance for digital assets.
CreatorLedger proves who created what, when — with Ed25519 signatures, append-only event chains, and optional blockchain anchoring. No cloud required.
What It Does
- Sign assets locally — Ed25519 signatures tied to creator identity
- Track derivation chains — Know when work is derived from other work
- Export self-contained proofs — JSON bundles that verify without any database
- Anchor to blockchain — Optional timestamping for legal-grade evidence
Trust Levels
| Level | Meaning |
|---|---|
| Verified Original | Signed + anchored to blockchain |
| Signed | Valid signature, not yet anchored |
| Derived | Signed work derived from another signed work |
| Unverified | No attestation found |
| Broken | Signature invalid or content modified |
CLI Verifier
Verify proof bundles without any infrastructure:
# Verify a proof bundle
creatorledger verify proof.json
# Verify with asset file (checks content hash)
creatorledger verify proof.json --asset artwork.png
# Machine-readable output for CI
creatorledger verify proof.json --json
# Inspect bundle structure
creatorledger inspect proof.json
Exit Codes
| Code | Status | Use in scripts |
|---|---|---|
| 0 | Verified | if creatorledger verify ... |
| 2 | Unverified | Structurally valid, can't verify |
| 3 | Broken | Tamper detected |
| 4 | Invalid input | Bad JSON, wrong version |
| 5 | Error | Runtime failure |
Quick Start
# Build
dotnet build
# Run tests
dotnet test
# Build CLI
dotnet publish CreatorLedger.Cli -c Release -r win-x64 --self-contained
Architecture
┌─────────────────────────────────────────────────────────────┐
│ CreatorLedger.Cli │
│ (standalone verifier) │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────────────────────────────────────────────────────┐
│ CreatorLedger.Application │
│ CreateIdentity │ AttestAsset │ Verify │ Export │ Anchor │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────────────────────────────────────────────────────┐
│ CreatorLedger.Domain │
│ CreatorIdentity │ AssetAttestation │ LedgerEvent │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────────────────────────────────────────────────────┐
│ CreatorLedger.Infrastructure │
│ SQLite (WAL) │ DPAPI KeyVault │ NullAnchor │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────────────────────────────────────────────────────┐
│ Shared.Crypto │
│ Ed25519 │ SHA-256 │ Canonical JSON │
└─────────────────────────────────────────────────────────────┘
Cryptographic Guarantees
- Signatures: Ed25519 (RFC 8032)
- Hashing: SHA-256 for content and event chain
- Serialization: Canonical JSON (deterministic, UTF-8, no BOM)
- Key storage: Windows DPAPI (CurrentUser scope)
Event Chain
Events form an append-only chain where each event includes the hash of the previous:
[Genesis] ──hash──▶ [CreatorCreated] ──hash──▶ [AssetAttested] ──hash──▶ [LedgerAnchored]
The chain is enforced by:
- SQLite triggers (no UPDATE/DELETE)
seqordering (not timestamps)PreviousEventHashverification on append
Proof Bundle Format
Self-contained JSON for offline verification:
{
"version": "proof.v1",
"algorithms": {
"signature": "Ed25519",
"hash": "SHA-256",
"encoding": "UTF-8"
},
"assetId": "...",
"attestations": [...],
"creators": [...],
"ledgerTipHash": "...",
"anchor": null
}
Platform Support
| Component | Windows | Linux | macOS |
|---|---|---|---|
| CLI Verifier | ✅ | ✅ | ✅ |
| Core Library | ✅ | ✅ | ✅ |
| DPAPI KeyVault | ✅ | ❌ | ❌ |
| InMemory KeyVault | ✅ | ✅ | ✅ |
License
MIT
Status
v1.0 — Core functionality complete:
- ✅ Identity creation with Ed25519 key pairs
- ✅ Asset attestation with signatures
- ✅ Derivation tracking
- ✅ Proof bundle export
- ✅ Standalone CLI verifier
- ✅ SQLite persistence with append-only enforcement
- ✅ Anchoring abstraction (NullAnchor for testing)
- ⏳ Real blockchain adapter (Polygon planned)
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.