Security

Security policy.

How DigiAsh protects accounts, API keys and searches: what is in place today, and what is planned.

Version 1.0Last reviewed October 2026Owner DungeonXplorerNext review October 2027

Certification status. This policy is inspired by the structure and control themes of ISO/IEC 27001:2022. DigiAsh is not certified against ISO/IEC 27001 or any other standard, and has not been independently audited.

1. Purpose

This policy sets out how DigiAsh protects the information it handles: user accounts, the API keys users store, the searches they run, and the service itself. It records what is in place today and what is planned, so that users and reviewers can see how security decisions are made.

2. Scope

The policy covers:

3. Principles

  1. Security by design. Security requirements are considered when a feature is designed, not added afterwards.
  2. Least privilege and data minimisation. DigiAsh collects only what the service needs and gives each component only the access it needs.
  3. Defence in depth. No single control is relied on alone; for example, rate limits, lockouts and bot checks all protect sign-in.
  4. Untrusted input. Everything received from users and from third-party providers is treated as untrusted and validated or escaped before use.
  5. Transparency. Controls that are planned but not yet in place are labelled as such in this document.

4. Roles and responsibilities

RoleResponsibilities
Maintainer (DungeonXplorer)Owns this policy; designs, builds and operates the service; manages secrets and infrastructure access; handles security reports and incidents; reviews this policy.
UsersKeep their password and authenticator app safe; are responsible for the API keys they add and for using each provider within that provider's terms; use DigiAsh only for lawful investigation.
Service providersCloudflare, the email provider and the threat-intelligence providers operate their services under their own terms and security programmes (see section 8).

DigiAsh is operated by a single maintainer, so duties that a larger organisation would split between people (for example, development and production access) cannot be fully separated. This is compensated for by automated checks, multi-factor authentication on infrastructure accounts, and recorded change history.

5. Information classification

ClassExamplesHandling
SecretUsers' provider API keys, MFA secrets, the master encryption key, the session-signing key, password-reset and email-verification tokensEncrypted or hashed at rest; never logged, displayed after entry, committed to source control or sent to the browser in readable form. Infrastructure secrets live only in Cloudflare's secret store.
ConfidentialEmail addresses, password hashes, search history, contact-form messagesStored in D1; accessible only to the account it belongs to (or the maintainer for operation and support); never shared except as described in the Privacy Policy.
InternalSecurity logs, configuration, operational notesKept within the maintainer's accounts.
PublicThe website content and public documentationNo restrictions.

6. Risk management

Security risks are identified and assessed when features are designed and before releases, and the full application is reviewed periodically. The most recent assessment (October 2026) covered static and dynamic security testing, dependencies, the OWASP Top 10:2025, GDPR, these principles and the providers' terms; its findings were fixed or, where they need action at launch, scheduled in the launch checks. Each risk is treated by fixing it, reducing it with additional controls, or accepting it with a recorded reason.

7. Controls

7.1 Access control and authentication

7.2 Cryptography

7.3 Secure development

7.4 Third-party providers

DigiAsh sends the indicator being searched (an IP address, domain or file hash) to the threat-intelligence providers the user has added a key for, using the user's own key. Submissions to urlscan.io are made as unlisted, so they do not appear in its public feed. Each provider processes these requests under its own terms; DigiAsh is not affiliated with any of them. Supporting services are listed in section 8.

7.5 Logging and monitoring

7.6 Data retention

DataRetention
Account detailsUntil the account is deleted
Provider API keysUntil the user deletes them or their account
Search historyThe most recent 50 searches per account
Search resultsUp to 5 minutes in Cloudflare's cache, so a repeat search doesn't query the providers again; then deleted automatically
Failed sign-in recordsOnly as long as needed for the lockout window (minutes, up to a day for email limits)
Unconfirmed accountsDeleted 7 days after signup if the email address is never confirmed
Reset and verification tokensUnusable after use or expiry; deleted after 24 hours
Error logs3 days in Cloudflare Workers Logs, without search terms or account details
MFA recovery codesUntil used, replaced with a new set, or MFA is turned off
Contact-form messagesUntil handled and removed by the maintainer, and with the account

Users can download a copy of their data and delete their account, with all associated data, from the Security panel of the dashboard. Deleting an account requires the password and, where MFA is on, a second-factor code.

7.7 Backup and continuity

The database relies on Cloudflare D1's point-in-time recovery for the retention period Cloudflare provides on the current plan. The restore procedure is documented and was tested on a scratch database on 3 November 2026: a deleted row was recovered with D1 Time Travel. The service can be redeployed from the source repository and the documented production setup.

7.8 Vulnerability management

8. Supporting services

ServicePurposeData involved
CloudflareHosting, database, key storage, DNS lookups, bot checksAll service data, under Cloudflare's security programme
Email provider (Resend)Account emails (verification, password reset, notices)Email address and message content
Have I Been Pwned (Pwned Passwords)Breached-password checkThe first 5 characters of a password hash only
ipwho.is, IANA and RDAP registriesNetwork and registration context for a searched indicatorThe searched indicator
Threat-intelligence providers chosen by the userThe lookups themselvesThe searched indicator and the user's own API key

9. Incident management

If a security incident is suspected, the maintainer will:

  1. Identify what happened and which data or accounts are affected.
  2. Contain it, for example by rotating affected secrets, ending all sessions, or disabling the affected feature.
  3. Eradicate the cause and recover the service, verifying the fix.
  4. Notify affected users without undue delay when their data may be affected, and, where a personal data breach is likely to result in a risk to people's rights and freedoms, the relevant data protection supervisory authority within 72 hours of becoming aware of it, as the GDPR requires.
  5. Review the incident afterwards and update controls and this policy.

10. Compliance

DigiAsh aims to comply with the EU General Data Protection Regulation (GDPR), including data minimisation, purpose limitation, security of processing and data subjects' rights; see the Privacy Policy. It also operates within the terms of each third-party service it uses.

11. Review

This policy is reviewed at least once a year and after any significant change to the service, its infrastructure or its risks.

VersionDateChange
1.0October 2026First version