Le standard BIMI
BIMI affiche des icônes de marque vérifiées dans les clients de messagerie lorsque les exigences d'authentification et de politique sont satisfaites.
Trois exigences
BIMI (Brand Indicators for Message Identification) opère à l'intersection de trois contrôles techniques. Premièrement, le domaine émetteur doit publier et appliquer une politique DMARC à quarantine ou reject. Deuxièmement, un enregistrement DNS TXT à default._bimi.[domain] doit référencer une image SVG via HTTPS. Troisièmement, ce SVG doit se conformer au profil SVG Tiny Portable/Secure. Les trois sont obligatoires. L'échec de tout composant empêche l'affichage de l'indicateur.
Prérequis d'application DMARC
BIMI requiert p=quarantine ou p=reject dans l'enregistrement DMARC du domaine organisationnel. La politique p=none ne qualifie pas. Les politiques de sous-domaine (sp=) sont évaluées séparément si un sous-domaine publie son propre enregistrement BIMI. L'authentification DMARC doit réussir en utilisant soit SPF soit DKIM avec alignement d'identifiant. Cette exigence établit que le courrier non authentifié ne peut déclencher l'affichage d'indicateur, réduisant le risque d'usurpation d'identité.
Profil SVG Tiny Portable/Secure
SVG Tiny P/S est défini dans la RFC 9345 et restreint SVG à un sous-ensemble renforcé en sécurité. Le profil interdit les scripts, les références de ressources externes, les animations et les effets de filtre complexes. Les éléments autorisés incluent les formes de base (<path>, <circle>, <rect>), <title>, <desc> et les dégradés statiques. Tous les styles doivent être des attributs de présentation ou des blocs <style> internes—aucun CSS externe. La racine <svg> doit déclarer l'espace de noms Tiny 1.2 ou 2.0 et devrait inclure baseProfile="tiny-ps". Les images doivent être carrées avec un attribut viewBox. La taille de fichier recommandée est inférieure à 32 Ko.
Justification de ces contraintes
Le profil élimine des classes entières de vecteurs d'attaque côté client. Les scripts pourraient s'exécuter dans le contexte du client de messagerie. Les références externes pourraient divulguer des données de destinataire via des requêtes HTTP ou introduire des charges utiles malveillantes. Les animations pourraient déclencher des crises photosensibles ou masquer du contenu de phishing. Les filtres pourraient exploiter des vulnérabilités du moteur de rendu. En restreignant SVG à la géométrie déclarative et aux dégradés, le profil permet l'expression de marque tout en maintenant un format analysable et auditable pouvant être rendu en toute sécurité dans des contextes sensibles à la sécurité.
Structure de l'enregistrement BIMI
L'enregistrement DNS TXT à default._bimi.[domain] contient deux composants : v=BIMI1 déclare la version 1 de la spécification. l=https://example.com/logo.svg spécifie l'emplacement SVG, qui doit être servi via HTTPS avec un certificat valide. Une balise optionnelle a= référence un Verified Mark Certificate (VMC) pour les logos déposés. Les récepteurs peuvent exiger des VMC pour l'affichage. Le format d'enregistrement est strictement défini ; les balises superflues ou les erreurs de syntaxe provoquent un échec de recherche.
Variabilité de l'implémentation par les récepteurs
BIMI est un cadre de décision côté récepteur, et non un protocole d'affichage garanti. Gmail, Yahoo, Fastmail et d'autres maintiennent des politiques indépendantes concernant les exigences VMC, la durée de mise en cache, le rendu d'image et le comportement de repli. Certains récepteurs affichent des indicateurs uniquement pour le courrier passant à la fois SPF et DKIM. D'autres implémentent des signaux de réputation supplémentaires ou une révision manuelle. Un enregistrement BIMI valide ne garantit pas la visibilité de l'indicateur. Les récepteurs peuvent rejeter des images pour des raisons au-delà de la conformité technique, notamment des violations de politique de contenu ou des litiges de marque.
Périmètre de validation de cet outil
makeBIMI valide la conformité syntaxique à SVG Tiny P/S : structure du document, liste blanche d'éléments, restrictions d'attributs, déclarations d'espace de noms et géométrie viewBox. Il vérifie les éléments interdits, les références externes, les scripts et les animations. Il ne valide pas la syntaxe de l'enregistrement DMARC, la propagation DNS, la validité du certificat HTTPS, l'authenticité VMC, les droits de marque ou les critères d'acceptation spécifiques aux récepteurs. Il ne garantit pas qu'un récepteur de messagerie affichera votre indicateur. La validation confirme l'éligibilité technique, pas le succès du déploiement.
Validez votre SVG par rapport au profil Tiny P/S ou auditez votre configuration DMARC.