Skip to main content
DD Auth Logo

Security Policy

DD Auth

Product-Specific Policy 1.0

DD Auth Security Policy

Last Updated: January 1, 2026

Important Notice

This is a product-specific policy. In case of any conflict between this policy and our Common Policies, this product-specific policy shall prevail for the applicable product.

Found matches
No matches found for ""

1. Introduction

At DD, security is our top priority. This Security Policy outlines the security measures, practices, and controls we implement to protect your data across DD Auth Web Application (auth.duodev.in), DD Auth Mobile Application (in.duodev.auth), and DD Accounts (accounts.duodev.in).

2. Zero-Knowledge Architecture

DD Auth uses a zero-knowledge architecture where:
• We never see your plaintext data - All vault data is encrypted before leaving your device
• You control the encryption keys - Keys are derived from your master password
• Server stores only encrypted blobs - Even database administrators cannot read your data
• No backdoors - There is no way for us or anyone to decrypt your data without your master password

3. End-to-End Encryption (E2EE)

All vault data is encrypted using industry-standard algorithms:
• Vault Encryption: AES-256-GCM (256-bit key)
• Key Derivation: PBKDF2-SHA256 (256-bit output)
• Nonce Generation: CSPRNG (96-bit / 12 bytes)
• Salt Generation: CSPRNG (128-bit / 16 bytes)

Key Derivation Flow:
1. User Master Password → PBKDF2 (100,000 iterations) with Master Salt → Master Key (256-bit)
2. Master Key → PBKDF2 (10,000 iterations) with Item Salt → Item Key (256-bit)
3. Item Key → AES-256-GCM with Nonce → Encrypted Payload + Auth Tag

4. What We Store

Encrypted (Cannot Access):
• Vault items (passwords, TOTP, notes) - AES-256-GCM encrypted
• Key Verifier - Encrypted hash

Not Encrypted (Can See, But Useless Without Keys):
• Master Salt - Random value, cannot use without password
• Nonce (per item) - Random value, useless without key
• Item Salt (per item) - Random value, useless without master key

Not Encrypted (Can Access):
• Metadata (titles, etc.) - For search functionality
• User profile

5. Transport Encryption

All data in transit is protected:
• TLS 1.3 - Latest transport layer security
• HTTPS Only - HTTP connections are redirected
• HSTS - HTTP Strict Transport Security enabled
• Certificate Pinning - Mobile app pins server certificates

6. Authentication Security

OAuth2/OpenID Connect:
• Authorization Code Flow - For web applications
• PKCE (Proof Key for Code Exchange) - For mobile and desktop apps
• State Parameter - CSRF protection for OAuth flows
• ID Token Validation - JWT signature verification

Token Security:
• Access Token: Memory/Secure Storage, 1 hour expiry
• Refresh Token: HTTP-only Cookie/Secure Storage, 30 days expiry
• ID Token: Memory, 1 hour expiry
• PKCE Verifier: Memory, Session duration

Multi-Factor Authentication:
• TOTP - Time-based One-Time Password
• Biometric - Fingerprint and Face recognition (mobile)
• PIN Lock - Application-level PIN protection
• Hardware Keys - WebAuthn/FIDO2 (planned)

7. Mobile Application Security

Android:
• Android Keystore for cryptographic keys
• Encrypted Shared Preferences
• App integrity checks
• Secure flag for screenshots prevention

iOS:
• iOS Keychain for sensitive data
• Secure Enclave for biometrics
• App Transport Security (ATS)
• Jailbreak detection

Code Security:
• Obfuscation - Code obfuscation for release builds
• No hardcoded secrets - All secrets in secure storage
• Certificate pinning - Prevents MITM attacks
• Integrity checks - Detects app tampering

8. Web Application Security

Security Headers:
• Content-Security-Policy: Strict CSP (Prevent XSS)
• X-Content-Type-Options: nosniff (Prevent MIME sniffing)
• X-Frame-Options: DENY (Prevent clickjacking)
• X-XSS-Protection: 1; mode=block (XSS filter)
• Referrer-Policy: strict-origin-when-cross-origin
• Permissions-Policy: Restricted

Input Validation:
• Server-side validation - All input validated on server
• Parameterized queries - SQL injection prevention
• Output encoding - XSS prevention
• CSRF protection - Token-based CSRF prevention

9. Rate Limiting

We implement rate limiting to prevent abuse:
• Login attempts: 5 per 15 minutes
• Password reset: 3 per 1 hour
• API requests: 100 per 1 minute
• Export requests: 3 per 1 hour

10. Vulnerability Management

Security Testing:
• Penetration testing - Annual third-party testing
• Vulnerability scanning - Automated scanning
• Code reviews - Security-focused code reviews
• Dependency auditing - Third-party library monitoring

Bug Bounty Program:
We welcome responsible security research. Report security issues to security@duodev.in.

Vulnerability Disclosure:
1. Report privately - Email security@duodev.in
2. Provide details - Steps to reproduce, impact assessment
3. Allow time - Give us 90 days before public disclosure
4. Don't exploit - Don't access user data or cause damage

11. Incident Response

Incident Classification:
• Critical (Active breach, data exposure): Immediate response
• High (Exploitable vulnerability): < 24 hours
• Medium (Potential security risk): < 72 hours
• Low (Minor security improvement): < 2 weeks

Response Process:
1. Detection - Identify and classify incident
2. Containment - Limit damage and exposure
3. Investigation - Determine cause and scope
4. Remediation - Fix vulnerability and recover
5. Notification - Inform affected users (if applicable)
6. Post-mortem - Document and learn from incident

Breach Notification:
In the event of a data breach, we will notify affected users within 72 hours, provide details of the breach, recommend protective actions, and notify regulatory authorities as required.

12. User Security Best Practices

Master Password:
• Length - Minimum 12 characters (16+ recommended)
• Complexity - Mix of uppercase, lowercase, numbers, symbols
• Uniqueness - Don't reuse passwords from other sites
• Memorability - Consider using a passphrase

Account Security:
• Enable two-factor authentication
• Use biometric unlock on mobile
• Review active sessions regularly
• Log out on shared devices

Device Security:
• Keep your OS and apps updated
• Use device encryption
• Set up device PIN/password
• Don't jailbreak/root your device

Backup Your Data:
• Export your vault regularly
• Store encrypted backups securely
• Test backup restoration

13. Contact Security Team

For security-related inquiries:
• Security Issues: security@duodev.in
• Bug Reports: security@duodev.in
• PGP Key: Available on request

Response time: Critical issues within 24 hours

Related Policies