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.1.tar.gz
(143.1 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.1.tar.gz.
File metadata
- Download URL: llm_trust_guard-0.3.1.tar.gz
- Upload date:
- Size: 143.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d54628aba0a9e8f473eac0b072fc61d5b148899388c0f835396efe97bae02653
|
|
| MD5 |
040a5512e9caaa2fca83ea4a30b3e789
|
|
| BLAKE2b-256 |
a717d9f3ac4de7cfd767183cfa946341a105317d49b893fbd5bd5200d1a9fd05
|
File details
Details for the file llm_trust_guard-0.3.1-py3-none-any.whl.
File metadata
- Download URL: llm_trust_guard-0.3.1-py3-none-any.whl
- Upload date:
- Size: 166.7 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 |
12e9e2c6cbfdd85f579579c141f3ec1750dc0fbda4ee89ba7b82488002b28844
|
|
| MD5 |
da3f0d11e61ba889516e002dd7ebfa56
|
|
| BLAKE2b-256 |
4743e129e503faabd14bd12dda0e240eb475ab6de502d906d19d61fcffb37110
|