Data Security
How your data is protected
This page explains what this site and the systems we deliver actually do. It's not a generic security statement.
Accounts and Permissions
- Admin accounts and customer member accounts use two completely separate logins with different signing keys. A member's login token won't pass the admin check; this separation is enforced by cryptography, not by program logic.
- Every page that shows a single record checks who owns it. Changing the URL or order number won't show you anyone else's data.
- Admin accounts are created by the person in charge; there is no public sign-up.
Passwords and Keys
- Passwords are stored only as bcrypt hashes, never in plain text, and are never written to any log.
- Password reset links are stored only as hashes, expire after a set time, and stop working once used. Until automatic emails are turned on, the link is first placed in an admin notification and we pass it to you personally; it's removed from the notification once the reset is done.
- API keys and database passwords are kept in server-side environment variables, never in version control, and never appear in the page source.
The Website Itself
- Our content security policy blocks external and inline scripts; this site has no third-party JavaScript or tracking.
- Every form has anti-forgery tokens and rate limits.
- All database queries use parameterized statements; your input is never pasted into SQL.
- Error pages never show stack traces, file paths, or database messages.
Files
- Paid products and delivered files are kept in a non-public folder, outside the static file paths, so they can't be linked to directly.
- Every download first checks the license, the order's payment status, and the expiry date.
- File paths are normalized and checked to prevent path traversal.
Personal Data
- We only collect the data needed to reply to you and carry out the project.
- Source IPs are stored only as irreversible hashes (used to block spam); the original IP is not stored.
- You can ask to view, correct, or delete your personal data; see Privacy Policy.
Backups
- The database and uploaded files are backed up automatically every day and kept for 14 days; the backup from day 1 of each month is kept for an extra 6 months.
- The restore process has actually been tested, not just written down.
Found a security issue? Please use the request form to let us know, and mark it "Security report". We'll deal with it as quickly as we can and won't take legal action against anyone reporting in good faith. Please don't run destructive tests against this site without permission.