Resources
Simulator Journal Glossary Extensions Trust Service status ContactChange language
Below we list each security commitment of ARDNTECH accompanied by the proof backing it: code, automated test, compliance or documented decision. Transparent status per claim. No statement without a verifiable counterpart.
Version v1.0 · revised on {{ "now"|date("d/m/Y") }} · this page is updated at every major release.
Why this page? B2B security reviews always start with the same question: « how do I verify what you are claiming? ». This page is our standard answer. Every line is anchored in a verifiable fact.
The statuses: Delivered are active in production today; In progress = feature merged, not yet enabled in production; Upcoming = dated commitment for a later release; Documented = assumed architectural choice, explained.
The AGPL-3.0-or-later source code is public on github.com/aegirex/server (SaaS), github.com/aegirex/website (marketing site) and github.com/aegirex/extension (browser extensions). The runbooks and internal procedures remain reserved for design partners under NDA.
The heart of the promise: we cannot read your secrets, even with administrator access to the server.
| Promise | Proof | Status |
|---|---|---|
| OpenPGP.js v6 (SEIPDv2 + ChaCha20-Poly1305) browser-side | Library vendored with a SHA-256 fingerprint verified at build time (SRI integrity manifest). The application wrapper produces a publicly documented v2 JSON envelope. | Delivered |
| Private key never transmitted to the server | The authentication and session APIs accept only the public key. The private key stays in the browser's local storage and the user's hardware vault (passkey). | Delivered |
| Argon2id for the master password (RFC 9106) | Parameters: 256 MiB of memory, 5 passes, parallelism 4. Automated CI tests check these parameters at every release to prevent a silent regression. | Delivered |
| At-rest encryption of sensitive secrets server-side | XChaCha20-Poly1305 (key managed via environment variable, never in the database). Covers TOTP secrets, webhooks and other sensitive technical data. | Delivered |
| Web, browser extension roundtrip tested | An automated test verifies web encryption then extension decryption (and the reverse). It guarantees byte-for-byte compatibility between the surfaces. An end-to-end Playwright variant is planned. | In progress |
| Post-quantum migration (ML-KEM / ML-DSA) | Assessment planned. OpenPGP v6 + AES-256 remain estimated safe for 5 to 10 years according to the ANSSI RGS 2024. | Upcoming |
One organisation can never read another's data, even with a valid API token.
| Promise | Proof | Status |
|---|---|---|
| Strict isolation per organisation API-side | All endpoints systematically filter by the organisation associated with the token. A battery of cross-organisation isolation tests runs in CI on every commit to detect any potential leak. | Delivered |
| API tokens hashed with Argon2id, never stored in cleartext | The cleartext secret is displayed only once, at creation. There is no way to retrieve it afterwards. The database contains only the Argon2id hash. | Delivered |
| HMAC-SHA-256 audit chain (tamper-evidence in O(1)) | Chained signature via atomic database lock. Verification available via a public command. Signing key isolated by an HSM module (PKCS#11). See the detailed explanation. | Delivered |
100% France or European Union, no CLOUD Act dependencies.
| Promise | Proof | Status |
|---|---|---|
| Scaleway hosting in France (SecNumCloud trajectory targeted) | A single region in Île-de-France, three availability zones including one in a nuclear-proof bunker (DC3 Île-de-France). No replication outside the EU. Details on the trust page. | Delivered |
| Stancer payment (French company), no US provider | Integration being finalised on the KYB side for the opening of paid plans. Stancer is registered in France, outside CLOUD Act jurisdiction. | In progress |
| Brevo transactional emails (French company) | Strict SPF / DKIM / DMARC configuration applied to the domain, compliant with CNIL and Anti-phishing 2024 recommendations. | Delivered |
| GDPR: register, DPIA, contactable DPO | Privacy policy + signable DPA template + DPO reachable directly. Processing register kept up to date, DPIA available under NDA. | Delivered |
| Outside the CLOUD Act: exclusive French jurisdiction | ARDNTECH is French, the host is French, the subprocessors are French or European (see exhaustive list). No extra-European requisition can obtain anything other than unusable encrypted blobs. | Delivered |
AGPL-3.0 code, reproducible builds, artefact signing.
| Promise | Proof | Status |
|---|---|---|
| AGPL-3.0 source code (in full, including paid features) | AGPL-3.0-or-later licence on all the code, with a normalised SPDX header. Open public repositories: aegirex/server, aegirex/website, aegirex/extension. | Available |
| PHPStan static analysis level 9, zero error | The strictest level available. Blocking in CI: no merge if a new error is introduced. | Delivered |
| Automated test suite > 1,000 cases | Coverage: vault, API, authentication, 2FA, audit chain, GDPR export, import from competitors, multi-organisation isolation. Blocking in CI on every PR. | Delivered |
| Signed Docker image (Sigstore / cosign) | Lets the user verify the origin of the artefact before deployment, without prior trust in the distribution channel. | Upcoming |
| Downloadable and signed CycloneDX SBOM | Complete inventory of software dependencies per the NTIA/ENISA standard. Signed with Sigstore for integrity. Automated generation in CI at every release. | Upcoming |
What we chose not to do, and why. Details in the public threat model.
| Choice | Justification | Status |
|---|---|---|
| Secret and folder names stored in cleartext server-side | Enables instant search and display of the tree structure without decryption on every navigation. The content remains end-to-end encrypted. Trade-off documented in the threat model. | Documented |
| Master password = the vault's only key (no recovery) | A direct consequence of strict zero-knowledge: if we could recover it, there would be a decryption path server-side. Mitigation: backup codes printed at creation, Shamir sharing (M-of-N) upcoming for Enterprise plans. | Documented |
| Password in cleartext in the DOM during entry | Unavoidable: the user has to type it. Mitigation: Trusted Types CSP prevents DOM XSS from injecting JavaScript that exfiltrates field content. | Documented |
| Phishing of the master password via a clone site | No password withstands a perfectly cloned phishing site. Strong mitigation upcoming: WebAuthn PRF passkeys that remove the transmission of the password, and are bound to the origin domain by the browser. | Documented |
| ARDNTECH insider (future employee) | Contractual and organisational mitigation: NDA, separation of duties, mandatory code review, tamper-evident audit chain, principle of least privilege. An assumed limit of any SaaS publisher trust model. | Documented |
Everything above is a summary. For the exhaustive version with the STRIDE grid per surface, the modelled actors and every justified trade-off, read the public threat model.