FOLD
Client de messagerie natifmacOS · iOS · iPadOS

Natif à grande échelle.La sécurité au cœur.

FOLD est un client de messagerie natif pour celles et ceux qui prennent leur boîte de réception au sérieux : ingénieurs, chercheurs, journalistes, administrateurs système. Moteur IMAP maison, S/MIME et OpenPGP intégrés, aucune télémétrie. La sécurité y est une contrainte de conception, pas une touche finale.

Échelle
500 000
messages par boîte aux lettres, recherche dans l’index en 58 ms

1FoldBench médiane de 5 2026-09-22

Tests
3 044
tests automatisés pour le moteur et l’interface

2@Test et XCTest comptés 2026-09-22

Dépendances
0
paquet tiers dans le moteur et l’interface, 103 000 lignes de Swift

3dépendances de Package.swift 2026-09-22

Normes
95
RFC citées dans le code source

4grep RFC sur l’arborescence source 2026-09-23

Coin plié : l’affirmation est sourcée, la source figure au pied de la cellule. Toutes les sources

Aperçu stylisé de la vue principale de FOLD sur macOS, en trois colonnes : boîte aux lettres, liste des messages, détail du message.
Vue principale · macOS Aperçu stylisé · les vraies captures d’écran suivront avec la sortie

Ce qui fonctionne aujourd’hui

TestFlight · macOS et iOS · état : 09/2026
  • Une seule boîte de réception pour tous les comptes
    boîte de réception unifiée
  • Synchronisation différentielle et push
    CONDSTORE QRESYNC IDLE
  • Envoi avec annulation
    0 à 30 s boîte d’envoi
  • Messages chiffrés
    S/MIME OpenPGP
  • Vérification de l’expéditeur sur l’appareil
    DKIM DMARC BIMI
  • Mode Fortress
    par compte Argon2id
  • Quatre langues d’interface
    anglais allemand japonais arabe
  • Des règles pour chaque nouveau message
    filtres dans la grammaire de recherche
Mesuré, pas promis

500 000 messages. Chronométrés.

Le moteur de stockage, mesuré sur une boîte aux lettres synthétique d’un demi-million de messages.

58 ms
recherche plein texte sur 500 000 messages
0,7 ms
50 en-têtes de messages lus depuis SQLite
9 ms
ouverture du stockage, premier instantané de l’index
67 s
pour ingérer 500 000 messages

FoldBench, compilation release, Apple M1 Ultra, macOS 27, médiane de cinq exécutions. Ce sont des mesures du moteur de stockage. Le démarrage à froid de l’app, le temps par image et la mémoire font l’objet d’un budget plus bas et ne sont pas encore instrumentés.

5FoldBench M1 Ultra compilation release 2026-09-22

Pourquoi FOLD

L’e-mail est un outil, pas un canal publicitaire.

Beaucoup de clients de messagerie font transiter votre courrier par le cloud de leur éditeur, embarquent la moitié du Web en dépendances et présentent leurs bannières comme de la productivité. FOLD prend le chemin inverse : moins de code, moins de surface d’attaque, moins d’hypothèses.

01

Divulgation progressive

Une réponse s’ouvre sur le champ À. Cc et Cci apparaissent quand vous les demandez. Ce qui est à l’écran doit mériter sa place.

02

Le clavier d’abord

Sur le Mac, ⌘K mène à la rédaction, à la réponse, au déplacement, à chaque dossier et à chaque compte. La recherche accepte des opérateurs comme from:, is:unread, before:6m et /regex/.

03

Une provenance que vous pouvez vérifier

FOLD vérifie les signatures DKIM sur votre machine et les aligne avec DMARC. Vous voyez si un message provient du domaine qu’il indique, et non ce qu’un serveur en dit.

RFC 6376 8463 7489

04

Des archives qui restent interrogeables

Recherche sur tous les comptes, hors ligne, par objet, expéditeur et destinataire. Les conversations sont regroupées en fils par Message-ID et References, et restent cohérentes d’un compte à l’autre et au fil des années.

Threading JWZ SQLite FTS5

En images Aperçu stylisé

Comment FOLD s’organise.

Quatre vues stylisées, dessinées d’après l’app en fonctionnement. Les vraies captures d’écran suivront avec la sortie.

Aperçu stylisé de la vue principale de FOLD avec les colonnes boîte aux lettres, liste des messages et détail du message.
01 · Mac et iPad

Trois colonnes

Boîte aux lettres, liste des messages, détail du message. Sur le Mac, conçu pour le clavier et le trackpad ; sur iPad, les trois mêmes colonnes via la vue partagée du système.

Aperçu stylisé de la palette de commandes de FOLD avec des suggestions d’opérateurs de recherche.
02 · Clavier

Palette de commandes

Rédiger, répondre, déplacer, changer de compte et atteindre n’importe quel dossier avec ⌘K. Les opérateurs de recherche comme from:, is:unread et /regex/ directement dans le champ.

Aperçu stylisé de l’inspecteur d’en-têtes de FOLD avec des lignes de protocole et des résultats d’authentification.
03 · Audit

Inspecteur d’en-têtes et de sécurité

En-têtes bruts et, pour chaque signature DKIM, son domaine, son sélecteur et son algorithme. Sur le Mac, une fenêtre d’activité affiche les étapes de synchronisation et la transcription SMTP, conservées en mémoire uniquement.

Aperçu stylisé de la vue conversation de FOLD avec un historique de fil empilé.
04 · Fils

Vue conversation

Des fils construits avec l’algorithme JWZ à partir de References et In-Reply-To, dédoublonnés par Message-ID d’un compte à l’autre, et lus comme un historique empilé. Un interrupteur dans les Réglages.

Configuration et moteur

Notre propre moteur, en Swift.

IMAP et SMTP écrits en Swift, sur les flux Foundation d’Apple. Pas de bibliothèque de messagerie en C, pas de passerelle, pas de SDK intermédiaire.

Configuration

Saisissez votre adresse

FOLD interroge quatre sources à la fois : son cache, onze profils de fournisseurs intégrés, les enregistrements DNS SRV et le fichier autoconfig de votre propre domaine. La base centrale de Mozilla n’est pas interrogée : votre domaine reste une affaire entre vous et votre fournisseur. Aucun serveur de messagerie n’est contacté avant que vous n’ajoutiez le compte.

Connexion

OAuth là où ça compte

Google via OAuth 2 avec PKCE dans le navigateur du système : aucun secret client dans l’app, les jetons se renouvellent d’eux-mêmes. La connexion Microsoft est préparée et attend l’enregistrement de son client ; d’ici là, les mots de passe pour app fonctionnent.

Comptes

Alias : la bonne adresse pour répondre

Plusieurs comptes, plusieurs alias par compte, chacun avec son propre nom et sa propre signature. Une réponse part de l’adresse à laquelle le message a été envoyé.

Synchronisation

Seulement ce qui a changé

Après le premier passage, FOLD conserve le HIGHESTMODSEQ du serveur et ne récupère que les nouveaux messages, les indicateurs modifiés et les suppressions. Les serveurs sans cette extension ont droit à une synchronisation complète et propre.

RFC 7162 CONDSTORE QRESYNC

Push

En direct via IDLE

Le serveur annonce lui-même les nouveaux messages ; FOLD renouvelle la session toutes les 25 minutes. Les serveurs sans IDLE sont interrogés périodiquement.

RFC 2177

Concurrence

Conçu pour les gros volumes

Chaque connexion et chaque couche de stockage est un acteur Swift à part entière. Un seul moteur de synchronisation sert tous les comptes, avec quatre connexions chacun, dont une reste toujours libre pour ce que vous êtes en train de faire.

Sortie TestFlight · macOS et iOS · état : 09/2026

Aujourd’hui sur TestFlight.

La première version publique arrive bientôt : pour le Mac, en téléchargement direct signé et notarisé depuis ce site.

Télécharger FOLD
Défense en profondeur

Cinq couches. Aucune ne tient seule.

Chaque couche a sa propre mission et ses propres tests. Si l’une cède, la suivante tient.

Quatre règles tirées de nos documents de sécurité
  • La sécurité d’abord, pas en dernier.
  • L’auditabilité avant le confort.
  • Défense en profondeur.
  • Surface d’attaque minimale.
  1. L1

    TLS

    Vérification stricte du certificat et du nom d’hôte, sans dérogation possible. STARTTLS est imposé : si la mise à niveau échoue, ou si des octets arrivent avant elle, la connexion est coupée. IMAP et SMTP non chiffrés sont refusés.

  2. L2

    Authentification

    OAuth 2 avec PKCE lorsque le fournisseur le prend en charge. En SMTP, SCRAM-SHA-256 passe avant CRAM-MD5 et PLAIN, et PLAIN ne sort jamais de TLS.

  3. L3

    Sandbox

    App Sandbox et Hardened Runtime. Droits : réseau sortant, fichiers que vous choisissez, un groupe de trousseau, le conteneur iCloud pour la synchronisation facultative. Aucun contournement de la validation des bibliothèques.

  4. L4

    Trousseau

    Les mots de passe et les jetons restent dans le trousseau, liés à cet appareil déverrouillé. Rien n’est synchronisé par défaut ; la synchronisation des mots de passe via le trousseau iCloud fait l’objet d’un consentement distinct.

  5. L5

    Rendu

    JavaScript est désactivé dans les messages HTML. Le contenu distant attend votre accord, un clic sur un lien affiche d’abord sa véritable cible, les pièces jointes enregistrées portent l’attribut de quarantaine. L’analyseur MIME impose des limites strictes à la profondeur, au nombre de parties et à la taille des en-têtes.

Facultatif · par compte

Mode Fortress

Un chiffrement en plus de FileVault. Argon2id (64 Mio, 3 passes) transforme votre phrase secrète en une clé de 256 bits qui ne vit qu’en mémoire. Chaque compte reçoit sa propre sous-clé HKDF, et AES-256-GCM scelle la base des en-têtes et le cache des messages. Après une période d’inactivité, le coffre se verrouille et la clé est effacée.

6Argon2id vecteurs de test de la RFC 9106

Vérifié, pas proclamé : S/MIME et OpenPGP interopèrent avec les vrais GnuPG et OpenSSL, DKIM concorde octet par octet avec le vecteur de la RFC 8463, une suite de régression rejoue des CVE historiques de clients de messagerie, et cinq cibles de fuzzing renforcent les analyseurs.

Chiffrement

S/MIME et OpenPGP. Tous deux intégrés.

Signer, chiffrer et déchiffrer sur le Mac et sur iPhone, le tout vérifié face aux vrais GnuPG et OpenSSL.

S/MIME

Des certificats collectés et vérifiés

Importez votre identité .p12 et les certificats de vos destinataires, ou laissez FOLD les collecter dans les messages signés. Une signature valide dont le certificat ne correspond pas à l’expéditeur est marquée comme non fiable. Sur iPhone, tout cela fonctionne aussi ; les certificats des destinataires y proviennent des messages signés, l’import manuel suivra.

7données de test openssl RFC 5652

OpenPGP

Un cœur moderne, l’héritage sous contrôle

Signatures Ed25519, clés de chiffrement Curve25519 et AES-256, toujours avec un contrôle d’intégrité contre EFAIL. Les clés RSA de vos correspondants continuent de fonctionner. CAST5, IDEA, Blowfish, 3DES et les signatures MD5 et SHA-1 sont refusés.

8données de test gpg RFC 9580

Clés

Générer ou importer

Créez des clés Ed25519 et Curve25519 dans FOLD ou importez votre trousseau de clés GnuPG. Les clés privées sont conservées, protégées par une phrase secrète, dans un coffre du trousseau lié à cet appareil.

À la rédaction

Visible pendant la saisie

Pendant la saisie, les pastilles des destinataires indiquent qui peut recevoir des messages chiffrés. Signer et chiffrer tiennent en deux interrupteurs, rien de plus.

Authenticité de l’expéditeur

Vérifié sur votre appareil.

FOLD recalcule DKIM lui-même : hachage du corps, clé DNS, canonicalisation, signature. L’en-tête Authentication-Results d’un serveur n’est pas cru sur parole.

DKIM

Calculé sur votre machine

Ed25519 octet par octet par rapport au vecteur de référence de la RFC 8463, RSA par rapport à un message de test signé avec openssl. Les clés de moins de 1024 bits sont rejetées. La requête DNS a lieu au chargement du corps du message.

9vecteur de test RFC 8463 RSA via openssl

DMARC

Aligné sur l’expéditeur

FOLD aligne son propre résultat DKIM et le résultat SPF de l’en-tête du serveur sur l’adresse From visible. Seul cet alignement fait d’une signature une preuve.

RFC 7489

Affichage

Silencieux quand tout va bien

Quand tout est en ordre, vous ne voyez rien. Une lacune ou un soupçon d’usurpation est signalé discrètement, et l’inspecteur liste chaque signature avec son domaine, son sélecteur et son algorithme. Pour les listes de diffusion, l’indication est atténuée afin de garder tout son poids.

BIMI

Logos de marque, vérifiés

Le logo d’un expéditeur n’apparaît que si DMARC réussit avec une politique contraignante et si le certificat de marque remonte à l’une des racines BIMI embarquées. Le logo provient du certificat lui-même et il est assaini avant d’être affiché.

BIMI VMC racines embarquées

Pile technique et performances

Frameworks Apple. Swift 6. Notre propre moteur.

Une app native, bâtie sur ce que le système d’exploitation fournit déjà. Pas de couche multiplateforme, pas de vue web déguisée en app.

Pile technique

Langage
Mode de langage Swift 6, concurrence stricte, ExistentialAny.
Interface
SwiftUI d’abord. AppKit et UIKit seulement là où SwiftUI ne suffit pas.
Réseau
Moteur IMAP et SMTP maison sur les flux Foundation, STARTTLS sur la connexion active. Aucune bibliothèque C.
Stockage
SQLite sans ORM : base des en-têtes (WAL), cache de messages adressé par contenu, index plein texte (FTS5).
Crypto
CryptoKit, Security et CommonCrypto. Là où Apple ne fournit pas de primitive, FOLD l’implémente et la vérifie par rapport à des vecteurs de référence : Argon2id, BLAKE2b, AES-OCB.
Concurrence
55 acteurs Swift. Chaque connexion et chaque couche de stockage est isolée.
Dépendances
Moteur et interface : uniquement les frameworks système d’Apple. L’outil de mise à jour du téléchargement direct (Sparkle) réside seul dans l’enveloppe de l’app.

Budget

Objectifs de conception
Démarrage à froid
≤ 300 ms
De l’appui à la première ligne visible de la liste
Image au défilement
≤ 8 ms
Limite stricte 16 ms, y compris à 500 000 messages
Recherche
≤ 50 / 200 ms
En-têtes / plein texte
Mémoire
80 / 150 / 250 Mo
Ensemble de travail iPhone / iPad / Mac

Objectifs de conception issus de la spécification de performances. Ce qui est mesuré aujourd’hui figure plus haut.

Intégrité

Chaque corps de message est adressé par son hachage

Le cache des messages stocke chaque corps sous son SHA-256. Un contenu identique n’est écrit qu’une fois sur le disque, et un corps modifié après coup échoue à la vérification dès son chargement. En outre, FOLD contrôle la taille et la complétude MIME de chaque message récupéré, et propose de recharger un message incomplet au lieu de le présenter comme entier.

SHA-256 vérifié à chaque chargement

Normes

Quelles RFC FOLD implémente, et lesquelles pas encore

Chaque norme à l’aune de laquelle on juge un client de messagerie, avec son statut dans le code et la raison de chaque lacune.

Toutes les normes
Implémenté
58
Partiel
8
Pas encore
10
Écarté
6
Questions fréquentes

Questions courtes, réponses courtes.

Puis-je essayer FOLD ?

Bientôt. La première version publique pour le Mac est sur le point de sortir sous forme de téléchargement direct signé ; iPhone et iPad suivront via l’App Store. Sur la page de téléchargement, vous pouvez laisser votre adresse : nous vous écrirons une fois, dès sa sortie.

Quelles plateformes sont prises en charge ?

macOS 13 Ventura ou version ultérieure, iOS et iPadOS 18 ou version ultérieure. Les deux apps partagent le même moteur et tournent aujourd’hui dans TestFlight. Le Mac a une longueur d’avance sur quelques fonctions : glisser-déposer, éditeur de dossiers intelligents, expéditeurs VIP et affichage du quota.

Quelles langues FOLD parle-t-il ?

L’interface est disponible en anglais, en allemand, en japonais et en arabe, sur Mac, iPhone et iPad. Sur iPhone et iPad, vous pouvez choisir la langue dans l’app, indépendamment de la langue du système.

Pourquoi aucune bibliothèque tierce ?

Parce que chaque dépendance est une surface d’attaque. CryptoKit, Security, SQLite et Foundation couvrent ce dont le moteur a besoin. Quiconque lit le Swift peut tout lire, et personne n’a à faire confiance au résultat de compilation de quelqu’un d’autre. La seule exception est l’outil de mise à jour du téléchargement direct.

Qu’en est-il d’OpenPGP et de S/MIME ?

S/MIME avec des identités .p12 et des certificats de destinataires, RSA et AES ; AES-GCM, que demande S/MIME 4.0, n’est pas encore pris en charge. OpenPGP avec des signatures Ed25519, un chiffrement Curve25519 et AES-256 avec contrôle d’intégrité, plus RSA pour les clés existantes, vérifié face au vrai gpg ; les clés de version 6 ne sont pas encore prises en charge. Les chemins défaillants restent exclus par conception : MD5, signatures SHA-1, CAST5, IDEA, 3DES et tout ce qui n’a pas de contrôle d’intégrité.

FOLD est-il open source ?

Non, le code est propriétaire et édité par Datargo GmbH. Il est testé plutôt que cru sur parole : plus de 3 000 tests automatisés, des tests d’interopérabilité avec Dovecot, gpg et openssl, et un audit adverse interne en juin 2026 (65 constats, aucun critique, tous suivis). Un test d’intrusion externe est prévu avant la sortie publique.

Combien coûtera FOLD ?

Les tarifs ne sont pas encore arrêtés. Deux choses le sont : les fonctions de sécurité ne seront jamais une option payante, et il n’y aura pas de modèle publicitaire.

Que deviennent mes données ?

Elles restent sur votre appareil. FOLD communique avec vos serveurs de messagerie, avec le DNS, avec le fichier autoconfig de votre domaine lors de la configuration, avec Google pour la connexion OAuth et, pour les logos BIMI, avec l’hôte de certificats de l’expéditeur une fois DMARC validé. La synchronisation iCloud ne s’active qu’à votre demande. Aucune télémétrie, aucun outil de rapport de plantage.

Téléchargement

L’e-mail, pris au sérieux.
Sur Mac, iPhone et iPad.

FOLD pour Mac est proposé en téléchargement direct, signé et notarisé, depuis ce site. La version pour iPhone et iPad tourne dans TestFlight et sera distribuée via l’App Store.

Vers le téléchargement