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.4.2.tar.gz
(36.7 MB
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.4.2.tar.gz.
File metadata
- Download URL: llm_trust_guard-0.4.2.tar.gz
- Upload date:
- Size: 36.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e56ffd4ccf26a61655df33d7befa8c9d486256f35230c14ed9b0f87be905771
|
|
| MD5 |
71b13c84af1a23a27822a23eec4726fd
|
|
| BLAKE2b-256 |
d33943eb2fcb51d4ab41eeb4bcf982aa8cddf6b5373a6ed9c9f8d7da3313dec9
|
File details
Details for the file llm_trust_guard-0.4.2-py3-none-any.whl.
File metadata
- Download URL: llm_trust_guard-0.4.2-py3-none-any.whl
- Upload date:
- Size: 168.0 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 |
2c134f4fe8934ad0881dc384407a78322d985f17c565c8d6775da1fd49097ad5
|
|
| MD5 |
053b8692c0bf5714ab0c1fbe0e395969
|
|
| BLAKE2b-256 |
c95bc1e3957ad28040aebc94a77224e6bca40288d48c1a1853f4ceca1abf8dd3
|