AES-256-GCM
Authenticated encryption for sensitive crew profile fields at rest
Fleet operators trust WaterTight with crew personal data, safety records, contracts, and compliance evidence. We treat that responsibility seriously. Security is designed into the platform from day one with encryption, authentication, and controlled rank-based permissions, and we review it continuously as new modules ship.
Authenticated encryption for sensitive crew profile fields at rest
All web and API traffic encrypted in transit
Passwords hashed with industry-standard bcrypt (12 rounds)
TOTP, email OTP, WebAuthn, and backup codes
Per-module none, read, or write, scoped to rank and vessel
Strict company scoping. No cross-organisation data access
WaterTight is a full fleet operations platform, not a single database with one login. Each feature area has its own permission key so you can give people exactly the access their rank requires.
The most sensitive information on the platform. Access is tightly gated by rank.
Separate who can report, who can review, and who can configure the safety system.
Official records with separate write and lock permissions.
Technical data and inventory separated from general crew access.
Financial and commercial workflows use approval tiers.
Configuration and messaging powers limited to office and senior ranks.
Maritime software sits at the intersection of personal data, commercial operations, and regulatory evidence. A breach or leak does not just inconvenience IT; it can affect crew welfare, contractual disputes, and port-state inspections. We build WaterTight assuming adversarial networks, shared devices on board, and high turnover in crew accounts. Every design decision is weighed against: who can see this, how is it protected, and what happens if a device is lost at sea.
Every dashboard module (more than fifty distinct permission keys) is controlled per crew rank at none, read, or write level. A cadet, AB, DPA, and company admin do not see the same platform: each rank’s permission profile defines exactly which menus appear and which API calls succeed. Permissions are enforced on every request, not just hidden in the user interface. Company-wide ranks can access all vessels; team-scoped ranks are limited to assigned vessels when on duty. Off-duty accounts cannot pull vessel data. When someone covers a position, on-duty rank can temporarily elevate permissions. Sensitive actions (approving purchases, closing incidents, locking logbooks, or editing permissions) each require their own explicit grant.
Sensitive crew profile data (names, contact details, dates of birth, addresses, next-of-kin, identity documents, and similar fields) is encrypted before it is written to the database using AES-256-GCM with a unique initialization vector per value. Encryption keys are held outside the application in a dedicated secrets vault and are required in production. Email lookups use one-way SHA-256 hashing so plaintext emails are not stored for indexing.
All access to the WaterTight dashboard and API is over HTTPS with modern TLS. Production traffic is terminated at our edge with hardened HTTP security headers including HSTS and frame protection. Certificate and document uploads use signed, time-limited URLs to secure object storage rather than exposing raw file paths.
User passwords are never stored in plaintext; they are hashed with bcrypt at 12 salt rounds. Multi-factor authentication is supported via authenticator apps (TOTP), email one-time codes, WebAuthn passkeys, and one-time backup codes. MFA secrets are encrypted at rest. Companies can require MFA by role so masters, DPAs, and office admins can be held to a higher bar than read-only accounts.
Production runs on enterprise-grade Google Cloud infrastructure in the EU. Application secrets and encryption keys are stored in a dedicated secrets vault, never embedded in application code or container images. Database backups are encrypted and retained in secure object storage. We minimise attack surface with a single controlled API entry point, staged deployments, and production hardening that avoids leaking internal detail in error responses.
Security is part of every release, not a yearly checkbox. We use dependency scanning, staged deployments before production, separate staging and production environments, and internal validation tooling to catch regressions. If you have specific requirements (MFA enforcement, data residency questions, or security questionnaires for procurement), contact us at hello@watertight.app and we will respond with detail appropriate to your fleet.
We are happy to answer procurement questionnaires, DPA reviews, and technical security enquiries.