- Mitigation: EKA IDs are 8-character Crockford Base32 strings sourced from
crypto/rand. - Permutation space exceeds 1.09 trillion combinations.
- Rate limiting on
/identities/{ekaId}(100 requests per minute per IP) prevents dictionary sweeps.
- Mitigation: Static QR codes that print personal data directly are strictly banned.
- All QR codes encode ephemeral HTTPS URLs with signed tokens.
- Tokens expire within 5 to 60 minutes and enforce selective disclosure.
- Passwords are encrypted using standard bcrypt with default cost factor 10.
- Secrets, passwords, OTPs, and auth tokens are stripped and redacted (
[REDACTED]) before being recorded into audit ledgers.
- Strict boundary between
USER,ORG_ADMIN, andSYSTEM_ADMIN. - System admin routes enforce
RequireRole(domain.RoleSystemAdmin). - Organizations can never query identities without explicit owner consent or active token presentation.
Please report any potential vulnerabilities to security@eka.dev.