Wrap
Content is marked with signed Guard Band boundaries that authenticate the body and marker metadata.
LLM application security
Guard Bands is a working proof-of-concept for making user-controlled content inert by default before it reaches trusted instructions, policy paths, or tool execution.
INERT:START v nonce iat exp
Untrusted content is wrapped, signed, bound to context, freshness-checked, verified, and audited before sensitive handling.
VERIFY -> ENFORCE -> AUDIT
The problem
Documents, emails, tickets, web pages, and other untrusted inputs can contain text that looks like instructions: ignore policy, reveal private data, call a tool, update a record, or treat user content as system policy.
Prompt wording helps, but it is not a security boundary. The application needs a verifiable way to distinguish untrusted content from trusted control paths before sensitive operations happen.
The approach
Guard Bands adds a cryptographic control plane around untrusted content, similar in spirit to how prepared statements separate SQL data from SQL commands.
Content is marked with signed Guard Band boundaries that authenticate the body and marker metadata.
The signature binds content to context such as tenant, user, request, workflow, issuer, lifetime, or policy path.
The application checks the marker, MAC, nonce, key id, issuer, expiry, and expected context before trust.
Tool calls and policy-controlled paths fail closed unless the content was verified first.
Two-channel architecture
The two-channel reference architecture separates the planes twice over: a data plane that can only wrap untrusted content into signed inert blocks, and a control plane that holds the tools. The planes deploy as separate services on different ports, hosts, or network segments, and they hold different keys: the data plane signs with an Ed25519 private key, and the control plane holds only the public key, so even a fully compromised control plane cannot forge data-plane provenance.
The control plane admits data only when the signature proves it came through the data plane (key id, issuer, and channel binding are all authenticated), and takes instructions exclusively from its own authenticated channel. An injected instruction inside a document selects nothing, and tampered, unwrapped, or foreign-issuer content is rejected fail-closed at the single cryptographic join point. Both planes refuse to start without real key material — there are no development fallback keys.
Threat model
Guard Bands helps prevent forged safe-content markers, tampering, replay in the wrong context, confusion between data and instructions, and unverified content reaching sensitive tool calls.
It does not make LLMs intrinsically safe or truthful. Production systems still need authorization, least-privilege tools, sandboxing, output validation, monitoring, and human review where appropriate.
Current POC
The core project is the Guard Bands boundary mechanism. The POC also includes practical controls smaller teams often want from enterprise LLM security stacks without adopting a heavyweight platform. It is published as versioned, tagged releases — see the GitHub repository for the latest.
Enterprise-style controls
The repository includes a local multi-service stack with API, Postgres, Keycloak, oauth2-proxy, audit logging, cost checks, and demo integration flow.
It also includes a hardened production overlay with a TLS front door, optional AWS Secrets Manager or HashiCorp Vault secret backends, release notes, API examples, replay-protection notes, key-management expectations, and security tests around the boundary mechanism.
Validation
The included test suite covers signature verification, context binding, content tampering, forged marker rejection, unwrapped content rejection, malformed marker hardening, middleware enforcement, reference-app authorization flow, replay ledger behavior, and normal wrapped-content verification.
The result is not a complete LLM security platform. It is a concrete, inspectable pattern for separating untrusted data from application authority.
Project status
Guard Bands is suitable for reviewing the pattern, testing the API flow, evaluating the threat model, experimenting with LLM boundary enforcement, and extending the implementation.
HMAC-based wrapping and verification, authenticated metadata and freshness, a two-channel data/control-plane reference architecture, app-side fail-closed enforcement, context binding, API endpoints, cost guardrails, audit events, SSO-aware identity propagation, and automated tests.
The default stack is evaluation-focused. Production still needs environment-specific authorization design, distributed replay handling, retention policy, operational review, and a key-rotation workflow.
A hardened overlay, non-root image, and secret-manager support are now included, but the cryptographic signal is useful only when the surrounding application enforces policy from it.