BIMI 标准
当满足身份验证和策略要求时,BIMI 在电子邮件客户端中显示已验证的品牌图标。
三项要求
BIMI(消息识别品牌指示符)在三项技术控制的交汇处运作。首先,发送域必须发布并强制执行 quarantine 或 reject 级别的 DMARC 策略。其次,default._bimi.[domain] 处的 DNS TXT 记录必须通过 HTTPS 引用 SVG 图像。第三,该 SVG 必须符合 SVG Tiny Portable/Secure 配置文件。这三项均为强制性要求。任何组件失败都将阻止指示符显示。
DMARC 强制执行前置条件
BIMI 要求组织域的 DMARC 记录中包含 p=quarantine 或 p=reject。p=none 策略不符合要求。如果子域发布了自己的 BIMI 记录,则单独评估子域策略(sp=)。DMARC 身份验证必须使用 SPF 或 DKIM 并满足标识符对齐要求才能通过。该要求确保未经身份验证的邮件无法触发指示符显示,从而降低冒充风险。
SVG Tiny Portable/Secure 配置文件
SVG Tiny P/S 在 RFC 9345 中定义,将 SVG 限制为安全加固的子集。该配置文件禁止脚本、外部资源引用、动画和复杂滤镜效果。允许的元素包括基本形状(<path>、<circle>、<rect>)、<title>、<desc> 和静态渐变。所有样式必须是表示属性或内部 <style> 块——不允许外部 CSS。<svg> 根元素必须声明 Tiny 1.2 或 2.0 命名空间,并应包含 baseProfile="tiny-ps"。图像必须为正方形并带有 viewBox 属性。建议文件大小低于 32 KB。
这些约束存在的原因
该配置文件消除了整类客户端攻击向量。脚本可能在邮件客户端的上下文中执行。外部引用可能通过 HTTP 请求泄露收件人数据或引入恶意载荷。动画可能触发光敏性癫痫发作或掩盖钓鱼内容。滤镜可能利用渲染引擎漏洞。通过将 SVG 限制为声明式几何图形和渐变,该配置文件允许品牌表达,同时维护可在安全敏感环境中安全渲染的可解析、可审核格式。
BIMI 记录结构
default._bimi.[domain] 处的 DNS TXT 记录包含两个组件:v=BIMI1 声明规范版本 1。l=https://example.com/logo.svg 指定 SVG 位置,必须通过具有有效证书的 HTTPS 提供。可选的 a= 标签引用已验证标记证书(VMC),用于商标徽标。接收方可能要求提供 VMC 才能显示。记录格式有严格定义;多余的标签或语法错误会导致查找失败。
接收方实施的可变性
BIMI 是接收方决策框架,而非保证显示协议。Gmail、Yahoo、Fastmail 等维护关于 VMC 要求、缓存持续时间、图像渲染和回退行为的独立策略。一些接收方仅对同时通过 SPF 和 DKIM 的邮件显示指示符。其他接收方实施额外的信誉信号或人工审查。有效的 BIMI 记录不保证指示符可见性。接收方可能因技术合规之外的原因拒绝图像,包括内容策略违规或商标争议。
本工具的验证范围
makeBIMI 验证对 SVG Tiny P/S 的语法符合性:文档结构、元素白名单、属性限制、命名空间声明和 viewBox 几何形状。它检查禁止的元素、外部引用、脚本和动画。它不验证 DMARC 记录语法、DNS 传播、HTTPS 证书有效性、VMC 真实性、商标权利或接收方特定的接受标准。它不保证任何电子邮件接收方会显示您的指示符。验证确认技术合格性,而非部署成功。