BIMIを使ってメールにロゴを表示する方法 (概要編)

# BIMIを使ってメールにロゴを表示する方法 (概要編)

## はじめに

SPF、DKIM、DMARCなどのメールセキュリティの延長線上にBIMIというものがあります。BIMIは信頼できる送信元からのメールにロゴを表示するという仕組みです。まだRFCにはなっていませんが、ドラフトの作成が引き続き行われています。

BIMIを使ってロゴを表示するための仕組みを送信側、受信側の視点を交えながら説明し、また、実際にやってみてわかった苦労した点や、それをどうやって乗り越えたのか、乗り越えられなかったかなどについて、3部作で紹介します。

以前JPAAWGやJANOGで発表した「[これから始めるBIMI ～メールにロゴを表示するまでの長い道のり ～](https://www.janog.gr.jp/meeting/janog49/wp-content/uploads/2021/12/bimi-pre_hirano_20220126.pdf)」をベースに資料を最新にした内容になっています。

- 概要編: BIMIに至るまでの歴史と概要 (本記事)
- [受信編](https://qiita.com/hirachan/items/4922ae25a3d0602a140a): 受信側としてロゴを表示するための技術仕様
- [送信者編](https://qiita.com/hirachan/items/85d0983ebfa0e5034041): 送信側としてロゴを表示してもらう方法

<!-- ## 目次

- BIMIとは
- BIMI以前のロゴ表示
- BIMIの登場
- BIMIの仕様 (表示側視点)
- 自分のロゴを表示させるためのステップ (送信者視点)
- 実際にやってみて苦労した話 -->


## BIMIとは
BIMIとは、**B**rand **I**ndicators for **M**essage **I**dentificationの略で、DMARCベースの認証と暗号化方式を組み合わせることで、送信者を識別できるようにする仕組みです。
送信者が選んだロゴを表示することによって送信者の識別が可能になります。

## 今までのロゴ表示の取り組み

送信者を識別するマークを表示したり、送信者のロゴなどの情報を表示する仕組みは、BIMIが初めてではなく、過去にも、そして現時点でもいろいろな形式のものが試行錯誤、模索されています。

### X-Face ヘッダ

まずは、遡ること30数年。
あー、そういえばこんなのあったなぁ、懐かしい！と感じる方もいるかも知れません。

X-Faceヘッダです。
これは、James Ashton氏によって考案されたもので、メール作成者がヘッダに入れた48x48ドットの白黒イラストが受信者のメーラーで表示されるという仕組みです。
当時は、メールだけではなく、ネットニュースでも利用されていました。
登場は1990年あたりで、僕の周りでは2000年前後によく利用されていました。

実際のX-Faceヘッダはこんな感じです。
```
X-Face: ']LG0eU¥ZOAZuj!aa4#GU(:U#7sS-@y6b(({~0z8.
UUiu¥F#dE¥8(8@4sVnc68WE>OxquYD}Q"jfR8{@&6@dgW&
!DGQ>!YOOd@JZ0>Ik}=%IY`Pc=jv+Y0ZL(DQ)r/J*i
```

このヘッダの付いたメールを開くと、

![X-Faceの表示例](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/245486/aea055b3-267d-f275-9fc5-8765a8734257.png)

このように右上になまずのアイコンが表示されています。
このなまずのアイコンがX-Faceヘッダの内容を表示したものになります。
僕のまわりでは2000年頃から2005年頃までは時々見かけたのですが、それ以降はあまり見かけなくなってしまいました。

### 安心マーク

かなり時が経って、2013年、JIPDECらによって安心マークというものが考案されました。
2013年の参議院議員選挙のときに政党のメーリングリストに利用したのをきっかけに、JIPDECが承認したドメインでかつ、DKIMがpassした場合に「安心マーク」を表示するというしくみで、Yahoo! JapanやNiftyなどで利用されていました。
しかし、送信者も表示する受信側も有料ということもあってか、あまり多くは普及せず、2022年3月にJIPDECの承認する仕組み(ROBINS)が終了したことで、終焉を迎えました。

![安心マーク](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/245486/aba63689-089f-eb90-159b-0325966f883c.png)



### Yahoo! Japan ブランドアイコン

2018年頃からYahoo! JapanがYahoo! mailで独自の規格でブランドアイコンを表示することを始めました。
ロゴを表示してもらいたい団体は、まずYahoo!に申請することになります。
このとき、採用するかどうかはYahoo!の独自の判断で審査が行われます。
審査の内容は非公開ですが、基準は時々変更になるようで、何度か申請していれば通ることもあるようです。

実際のメールの送信者が信頼できるかどうかについては、SPFまたはDKIMが使用されます。
ただし、通常のSPFやDKIMよりは少し厳しい条件になっていて、SPFの場合はヘッダFromがEnvelope Fromと同じかそのサブドメインであること、DKIMの場合は作成者署名であることが求められます。
DMARCのアラインメントのような条件なので、DMARCがパスする環境であれば問題ないのではないかと思われます。

2021年3月にはブランドカラーというのも登場しています。

![yahoomail.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/245486/c2b0e695-3a3f-1d6d-1763-ad23eec895c5.png)


### ドコモメール公式アカウント

2021年5月にはドコモも信頼できる送信者の場合に「公式アカウントマーク」を表示するサービスを始めました。
こちらも審査が必要で、メールの送信者が信頼できるかどうかについてはSPFまたはDMARCを使用するようです。
サービス開始当初はSPFのみでしたが、2022年8月よりDMARCに対応しています。

![docomomail.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/245486/2d06cede-9c53-6403-3a8a-8863bfd6f9cb.png)


## BIMIの登場

### BIMIの登場

日本で安心マークやYahoo! Japanのブランドアイコンなどが進められていた頃、世界ではBIMIという規格が作られていました。
BIMIはYahoo! Japanのブランドアイコンに近く、メールに送信者のロゴを表示する仕組みです。
2016年頃から[M3AAWG](https://www.m3aawg.org/)で議論され、2019年にSeth Blank氏らによって提案されました。
Yahoo! Japanのブランドアイコンとは異なり、送信者はロゴを公開するだけで特定の団体による審査等はありません。
受信側も公開されたロゴを個別に調整することなく利用可能です。
ロゴを表示するかどうかの認証はDMARCなどで行いますので、ロゴが表示されているメールは、DMARCで検証された安全なメールだと言えます。

また、VMCという証明書を用いる事で、ロゴ自体の正当性も担保できるようになっています。

参考: [An Overview of the Design of BIMI](https://datatracker.ietf.org/doc/draft-bkl-bimi-overview/)


| 名称 | 表示されるもの | 審査 | 認証 |
|---|---|---|---|
| 安心マーク | 安心マーク | JIPDECによる審査 | DKIMの作成者署名|
| Yahoo! Japan ブランドアイコン | 送信者が申請したアイコン | Yahoo! Japanによる審査 | SPFまたはDKIM (ただしアラインメントあり)
| ドコモメール公式アカウント | 公式アカウントマーク | ドコモによる審査 | SPFまたはDMARC
| BIMI | 送信者が公開したロゴ | VMC (オプション) | DMARC (ただし少し厳しい)

### Googleが正式対応 (2021/7/13)

2020年頃からテストを繰り返していたGoogleが2021年7月にgmailでBIMIに正式対応しました。
gmailではVMC証明書がなければ、ロゴを表示しない仕組みになっています。

![google.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/245486/408c650f-1649-9a78-052a-995060c6375d.png)


### BIMI対応のメールプロバイダ

2022年10月時点で、下記のようなメールプロバイダがBIMIの対応、もしくは、対応準備中であることを表明しています。
独自規格の安心マークやブランドアイコンなど積極的に取り組んできたYahoo! Japanも世界標準のBIMIに対応すべく準備をしているようです。

![bimimailprovider.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/245486/197dee10-67fb-26fc-2ed3-119dfa96c3b6.png)

👉[BIMI Support by Mailbox Procvider (https://bimigroup.org/bimi-infographic/)](https://bimigroup.org/bimi-infographic/)


### JPドメインのBIMIの普及状況

2022年10月時点での.jpドメインでのBIMIの普及状況です。
2021年7月のgoogleの対応以降に増加していることが読み取れますが、まだまだ知る人ぞ知る状態なので、これを読んでる方は、ぜひ導入を検討してみてはどうでしょうか。

![bimiresearch.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/245486/e00d670b-117d-2926-1725-251799ba183f.png)

*インターネット協会 DMARC普及状況調査より*


### BIMIの情報

BIMIの概要やツールは[BIMI Group](https://bimigroup.org/)のサイトに集約されていますが、仕様などはいくつかのドキュメントにまたがっているので、代表的なもののリンクを載せておきます。

- [Brand Indicators for Message Identification (BIMI)](https://datatracker.ietf.org/doc/html/draft-brand-indicators-for-message-identification-02)

  BIMIの仕様です。RFCのドラフトのステータスです。

- [An Overview of the Design of BIMI](https://datatracker.ietf.org/doc/html/draft-bkl-bimi-overview)

   BIMIの大まかな全体像について書かれています。

- [General Guidance for Implementing Branded Indicators for Message Identification (BIMI)](https://datatracker.ietf.org/doc/html/draft-brotman-ietf-bimi-guidance)

  BIMIの実装方法について詳細に書かれたドキュメントです。最初の頃は受信者用のガイダンスとなっていましたが、現在は一般的な内容とされています。

- [BIMI Reporting](https://datatracker.ietf.org/doc/html/draft-adams-bimi-reporting)

  DMARCレポートに追記されるBIMIの情報についての仕様です。

- [Fetch and Validation of Verified Mark Certificates](https://datatracker.ietf.org/doc/html/draft-fetch-validation-vmc-wchuang)

  VMC証明書の受信方法についての仕様です。

- [VMC Guidelines](http://bimigroup.org/resources/VMC_Guidelines_latest.pdf)

  VMC証明書の仕様です。

- [SVG Tiny Portable/Secure](https://datatracker.ietf.org/doc/html/draft-svg-tiny-ps-abrotman)

  SVG Tiny P/Sの仕様です。