Korium is an autonomous network fabric.
Korium is addressless by design. Signed contacts carry identity and
authority, never network addresses. Transport owns endpoints and
reaches discovered identities through consented introductions.
Identity, discovery, routing, streams, pub-sub, tunneling, and
authorization share one local-verifier trust model. Applications
name services with stable DIDs and place resources with signed records.
Destination nodes authorize service-to-service streams with signed
source grants that applications can install and remove at runtime.
Invocation grants bind each protected action to its caller, service,
and resource; delegated issuers stay within a bounded chain of proof.
Encrypted QUIC carries messages, streams, and TCP tunnels with
BBRv3 congestion control. Open connections can survive NAT rebinding,
address changes, and direct-to-relay switches while retaining the
same authenticated destination, within their existing deadlines.
Request deadlines cover discovery through response reading, and the
client never replays a request after timeout. Local mDNS and
regular DNS are opt-in, mutually exclusive adapters. Explicit seeds
provide wider introduction. Korium requires Rust 1.99.0+;
Linux is the production target.
01
One security model
Identity, discovery, transport, stream admission, and L7
authorization share local verification at every protocol edge.
02
Self-certifying identity
Every node is named by a did:korium URI derived from
the public key. The pubkey travels in band, then BLAKE3-binds to
the URI before signature verification.
03
No central resolver
Verification does not depend on a DID document fetch, CA, SPIRE
server, key registry, or online root. The destination checks the
evidence it received.
04
Explicit service permissions
Exact-service authority proves which service a node represents.
Installed source grants authorize each source and destination pair.
Applications can change those permissions without restarting the
node; protected actions still require an invocation grant.
05
Identity-routed QUIC
Korium routes encrypted QUIC sessions by node identity and uses
BBRv3 congestion control. Transport validates paths, detects stalled
delivery, and selects another live address or eligible relay.
Recovery preserves the destination and never replays application work.
06
Bounded discovery
Applications explicitly start bounded IPv4 and IPv6 mDNS.
Wider introduction uses identity-pinned seeds and literal
endpoints. Construction performs no public DNS seed lookup;
connections still require signed transport validation and
PoW-valid mTLS. Fixed RTT bands guide query scheduling while
results retain XOR-distance order.
07
Production data planes
Direct and forwarded QUIC, GossipSub, raw streams, request-response,
and TCP tunneling use authenticated fabric paths. Linux batches
UDP sends and receives; explicit memory and queue limits bound
work under pressure. Accepted stream writers can observe remote
stop notifications without a pending write.
08
TCP over QUIC
TCP tunnel entry carries local application traffic to an identity,
exact service, or resource over encrypted QUIC. The destination
explicitly enables admission and drains its in-process stream handler.
09
Bounded grant delegation
A grant carries at most four signed blocks, including its terminal
invocation. Each link preserves the service and narrows lifetime or
scope. The terminal grant names one caller and exact rights;
destination verification and local policy make the decision.
10
Observable decisions
Verified grants expose their issuer chain, per-link revocation IDs,
audience, action, resource, expiry, and bounded app claims. Complete,
durable, or tamper-evident audit collection remains a deployment
responsibility.
11
PQ-aware identifier surface
The did:korium URI carries a 48-byte BLAKE3-384
digest; identity hex uses its first 32 bytes. DHT routing positions
are separately derived from the key and PoW proof, raising the cost
of targeted placement. Scoped routing adds an authority prefix.
12
Owned lifecycle boundaries
Each node owns its tasks, receivers, listeners, and shutdown.
DNS and mDNS can stop and restart independently of transport.
Awaiting tunnel stop releases its listener and sessions within
a bounded grace period.