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.3.0.tar.gz
(143.0 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.3.0.tar.gz.
File metadata
- Download URL: llm_trust_guard-0.3.0.tar.gz
- Upload date:
- Size: 143.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
babed74b34ee214bd2cfbcb01265ba20d60bfa0ce5150f2fd1bce390f1b0288a
|
|
| MD5 |
2790f347d7575bba3cf5590b9b584a8c
|
|
| BLAKE2b-256 |
ac6d8f6f52a86f5bb982368c5ed4cc58b473f22e82a0b11c9b3e86093ff81746
|
File details
Details for the file llm_trust_guard-0.3.0-py3-none-any.whl.
File metadata
- Download URL: llm_trust_guard-0.3.0-py3-none-any.whl
- Upload date:
- Size: 166.6 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 |
c70ef3f5980875f007ec2a98e250fbb2b42a8f129ce77f9da0b84b7600e4ab5f
|
|
| MD5 |
21b67a01105b08d492d5bf3aac0da14e
|
|
| BLAKE2b-256 |
aab59c3c9f6385c99dae0dfaa8363b1b4cc799669f2816bd38db63205b338170
|