Security guards for LLM-powered and agentic AI applications. Zero dependencies. Covers OWASP Top 10 for LLMs 2025.
Project description
llm-trust-guard
Security guards for LLM-powered applications. Zero dependencies. Python port of the npm package.
Installation
pip install llm-trust-guard
Quick Start
from llm_trust_guard import InputSanitizer, EncodingDetector, CompressionDetector
# Check for prompt injection
sanitizer = InputSanitizer(threshold=0.3)
result = sanitizer.sanitize(user_input)
if not result.allowed:
print(f"Blocked: {result.matches}")
# Check for encoding bypass attacks
encoder = EncodingDetector()
result = encoder.detect(user_input)
if not result.allowed:
print(f"Encoded threat: {result.violations}")
# Check structural similarity to known attacks (NCD)
detector = CompressionDetector()
result = detector.detect(user_input)
if not result.allowed:
print(f"Similar to: {result.ncd_analysis.closest_category}")
Guards (Phase 1)
| Guard | Purpose | Method |
|---|---|---|
InputSanitizer |
Prompt injection detection (170+ patterns, 11 languages) | Regex + PAP |
EncodingDetector |
Encoding bypass (9 formats: Base64, URL, Unicode, Hex, HTML, ROT13, Octal, Base32) | Decode + scan |
CompressionDetector |
Structural similarity to known attacks | gzip NCD (135 templates) |
HeuristicAnalyzer |
Synonym expansion + structural + statistical analysis | 8 attack categories |
OutputFilter |
PII/secret detection and masking in LLM output | Regex + redaction |
Key Features
- Zero dependencies — only Python stdlib (re, zlib, base64, html)
- Same patterns as the npm package — feature parity with llm-trust-guard v4.13.1
- Fast — all checks complete in <5ms
- Python 3.9+ compatible
More Guards Coming
The npm package has 31 guards total. Python Phase 2 will add:
- ExternalDataGuard, AgentSkillGuard, SessionIntegrityGuard
- SchemaValidator, ToolResultGuard, TokenCostGuard
Links
- npm package (TypeScript — 31 guards)
- OWASP Top 10 for LLMs 2025
License
MIT
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
llm_trust_guard-0.2.1.tar.gz
(123.2 kB
view details)
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 llm_trust_guard-0.2.1.tar.gz.
File metadata
- Download URL: llm_trust_guard-0.2.1.tar.gz
- Upload date:
- Size: 123.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d88c56649f6c8863c5b5c5cfa791ff0d30f877dfa0263df7d6ec3fe20b0d048c
|
|
| MD5 |
4ea3f64bf1bbbb8ce64f81b5eff88ce5
|
|
| BLAKE2b-256 |
286af5c5a42959f2e30173c45629153df0591a2e12afe3f23950cd0bd004d91d
|
File details
Details for the file llm_trust_guard-0.2.1-py3-none-any.whl.
File metadata
- Download URL: llm_trust_guard-0.2.1-py3-none-any.whl
- Upload date:
- Size: 141.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cecf33c5129a0c530f1f29bcbe5505d6d251682fcabd5e7be77665a5f00cd017
|
|
| MD5 |
fdbdd99f939e97a4b74b5105fecf0b4d
|
|
| BLAKE2b-256 |
522db21b5e64e671b4c738974b39c1b067871273f83345dcf99b11edc43ecf3d
|