LogFlux implements enterprise-grade security with mandatory end-to-end encryption, ensuring your log data is protected at every stage of its lifecycle.
Security Architecture
Mandatory Encryption
All log payloads must be encrypted before transmission to LogFlux. This is not optional - unencrypted payloads are rejected by the API.
Application β SDK/Client β [Encrypted Payload] β [TLS Transport] β LogFlux API
β β
AES-256-GCM + PBKDF2 TLS 1.2+
(600,000 iterations) Certificate Validation
Cryptographic Standards
Current Encryption Standard: AES256-GCM_PBKDF2-SHA256-600K
LogFlux uses state-of-the-art encryption that exceeds OWASP 2023+ recommendations:
Component | Specification |
---|---|
Cipher | AES-256 in Galois/Counter Mode (GCM) |
Key Derivation | PBKDF2 with SHA-256 |
Iterations | 600,000 (OWASP 2023+ recommendation) |
Key Size | 256 bits (32 bytes) |
Salt Size | 256 bits (32 bytes) |
IV/Nonce Size | 96 bits (12 bytes) |
Auth Tag | 128 bits (16 bytes) included with ciphertext |
Encryption Implementation
Our SDKs handle encryption automatically:
|
|
What Gets Sent to LogFlux
|
|
Encryption Process Details
- Unique Salt Generation: Each log entry gets a cryptographically random 32-byte salt
- Key Derivation: Your secret + salt β 600,000 rounds of PBKDF2-SHA256 β 256-bit key
- Unique IV Generation: Each log entry gets a cryptographically random 12-byte IV
- Authenticated Encryption: AES-256-GCM encrypts and authenticates your log data
- Base64 Encoding: Binary data is encoded for JSON transport
Why 600,000 Iterations?
- OWASP 2023+ Recommendation: Latest security standards for PBKDF2
- Brute Force Protection: Makes password cracking computationally expensive
- Future Proof: Exceeds current minimum requirements
- Performance Optimized: SDKs cache derived keys for efficiency
Transport Security
HTTPS/TLS Requirements
All communication with LogFlux uses modern TLS:
- Minimum TLS Version: 1.2 (TLS 1.3 preferred)
- Certificate Validation: Required (no self-signed certificates)
- Cipher Suites: Only strong, forward-secret ciphers
- HSTS: Enforced with 1-year max-age
API Authentication
|
|
API Key Format: lf_
prefix + 32 alphanumeric characters
Data Protection
What We Protect
Data Type | Protection Level |
---|---|
Log Payloads | Encrypted client-side, never seen in plaintext |
Timestamps | Not encrypted (needed for time-based queries) |
Log Levels | Not encrypted (needed for severity filtering) |
Node Names | Not encrypted (needed for source filtering) |
Self-Contained Encryption
Each log entry contains everything needed for decryption:
- Salt: For key derivation (unique per entry)
- IV: For AES-GCM initialization (unique per entry)
- Encrypted Payload: Your actual log data + authentication tag
This means:
- β You can decrypt your own data anytime with your secret
- β Each log entry is independently encrypted
- β No key reuse between log entries
- β LogFlux cannot decrypt your data (we never have your secret)
Rate Limiting & DDoS Protection
Current Limits
Scope | Limit | Window |
---|---|---|
Per API Key | 600 requests | 1 minute |
Per IP Address | 60 requests | 1 minute |
Batch Size | 100 entries | Per request |
Payload Size | 1 MB | Per entry |
Rate Limit Headers
|
|
Security Best Practices
1. Secure Your Encryption Secret
|
|
2. Never Log Sensitive Data
|
|
3. Use Different Secrets Per Environment
|
|
4. Implement Key Rotation
Regular secret rotation improves security:
- Generate new secret
- Update application configuration
- New logs use new secret automatically
- Old logs remain readable with old secret
Compliance & Standards
Cryptographic Compliance
- NIST Approved: AES-256-GCM is NIST approved
- FIPS 140-2: Uses FIPS-validated cryptographic modules
- OWASP 2023+: Exceeds latest PBKDF2 recommendations
- Common Criteria: Algorithm implementations are certified
Regulatory Compliance
Standard | How LogFlux Helps |
---|---|
GDPR | Client-side encryption, data minimization |
HIPAA | Encryption exceeds Safe Harbor requirements |
PCI DSS | Prevents cardholder data in logs |
SOC 2 | Comprehensive encryption controls |
ISO 27001 | Cryptographic key management |
Advanced Security Features
Future Encryption Modes
The encryption_mode
field allows future algorithm upgrades:
Mode | Algorithm | Status |
---|---|---|
1 | AES256-GCM_PBKDF2-SHA256-600K | Current Standard |
2 | AES256-GCM_SCRYPT | Future Option |
3 | AES256-GCM_ARGON2 | Future Option |
4 | ChaCha20-Poly1305_ARGON2 | Future Option |
Cross-SDK Compatibility
All LogFlux SDKs use identical encryption:
- Data encrypted by Python SDK can be read by Go SDK
- JavaScript encrypted logs work with Java SDK
- Complete interoperability across all platforms
Performance Optimization
Despite 600,000 PBKDF2 iterations, our SDKs remain fast:
- Key Caching: Derived keys are cached (not recomputed per log)
- Async Processing: Encryption doesn’t block your application
- Batch Support: Efficiently encrypt multiple logs
Security Monitoring
What We Monitor
- API key usage patterns
- Rate limit violations
- Invalid payload attempts
- Unusual traffic patterns
- Failed authentication attempts
Security Alerts
Configure alerts for:
- Approaching rate limits
- Repeated authentication failures
- Unusual API usage patterns
- Large payload attempts
Emergency Procedures
Suspected API Key Compromise
- Immediately: Generate new API key in dashboard
- Update: Deploy new key to all applications
- Revoke: Disable compromised key
- Review: Check logs for unauthorized access
Encryption Secret Compromise
- Generate: Create new encryption secret
- Update: Configure applications with new secret
- Note: Old logs remain encrypted with old secret
- Future: New logs use new encryption
Technical Reference
SDK Encryption Example (Python)
|
|
Security Headers
All LogFlux API responses include:
|
|
Support
For security-related questions or to report vulnerabilities:
- Email: security@logflux.io
- Documentation: docs.logflux.io
- Status: status.logflux.io
Remember: LogFlux provides strong encryption for your logs, but security is a shared responsibility. Always use strong secrets, never log sensitive data, and keep your SDKs updated.