No description
- CLAUDE.md: update error convention from core.E() to coreerr.E() to match actual codebase usage - Standardise go-log import alias from `core` to `coreerr` across 6 files (crypt/symmetric.go, crypt/kdf.go, crypt/crypt.go, crypt/hash.go, crypt/checksum.go, crypt/openpgp/service.go) for consistency with the 11 files already using `coreerr` - Fix shortenPackageName to handle all forge.lthn.ai/core/* module prefixes instead of only cli/ and gui/, fixing TestShortenPackageName Co-Authored-By: Virgil <virgil@lethean.io> |
||
|---|---|---|
| .core | ||
| .forgejo/workflows | ||
| .idea | ||
| auth | ||
| cmd | ||
| crypt | ||
| docs | ||
| trust | ||
| .editorconfig | ||
| .gitignore | ||
| .golangci.yml | ||
| CLAUDE.md | ||
| CONTRIBUTING.md | ||
| go.mod | ||
| go.sum | ||
| README.md | ||
go-crypt
Cryptographic primitives, authentication, and trust policy engine for the Lethean agent platform. Provides symmetric encryption (ChaCha20-Poly1305 and AES-256-GCM with Argon2id KDF), OpenPGP challenge-response authentication with online and air-gapped courier modes, Argon2id password hashing, RSA-OAEP key generation, RFC-0004 deterministic content hashing, and a three-tier agent trust policy engine with an audit log and approval queue.
Module: forge.lthn.ai/core/go-crypt
Licence: EUPL-1.2
Language: Go 1.25
Quick Start
import (
"forge.lthn.ai/core/go-crypt/crypt"
"forge.lthn.ai/core/go-crypt/auth"
"forge.lthn.ai/core/go-crypt/trust"
)
// Encrypt with ChaCha20-Poly1305 + Argon2id KDF
ciphertext, err := crypt.Encrypt(plaintext, passphrase)
// OpenPGP authentication
a := auth.New(medium, auth.WithSessionStore(auth.NewSQLiteSessionStore(dbPath)))
session, err := a.Login(userID, password)
// Trust policy evaluation
engine := trust.NewPolicyEngine(registry)
decision := engine.Evaluate("Charon", "repo.push", "core/go-crypt")
Documentation
- Architecture — crypt primitives, auth protocol, trust tiers, policy engine
- Development Guide — building, testing, security standards
- Project History — completed phases and known limitations
Build & Test
go test ./...
go test -race ./...
go build ./...
Licence
European Union Public Licence 1.2 — see LICENCE for details.