【技術情報】DKIMについて

なりすましメール対策の認証技術「DKIM」について解説します

DKIMとは?

メール送信者のドメインと送信経路からなりすましメールを判別する技術です

DKIM(DomainKeys Identified Mail)とは、メール送信者のドメインと、送信されたメールの一貫性(たとえば送信途中で変更されていないということ)の両方を認証するための仕組みをプロバイダーに提供することによって、正当なメールと偽造されたメールを判断することができる技術です。

そして一度ドメインが認証されると、偽造を発見するために、メールのFromヘッダーにある送信ドメインと比較することが可能になります。

偽造されたメールの場合、そのメールは迷惑メールか詐欺の可能性が高いため、メールの破棄や迷惑メール専用フォルダーに振り分けるなどの対応が可能となります。

なりすましメールを判別するイメージ画像

送信事業者のなりすましメールへの対策の必要性

銀行や公益事業、電子商取引サービスといった、業務用のメールを消費者によく送るような事業者にとって、送信ドメイン認証によって得られる利益は、より大きなものとなります。

なぜなら、利用者をフィッシング詐欺(利用者が信頼する事業者のドメインとメールの内容をまねて偽のサイトへ誘導し、クレジットカードの番号やパスワードなどの情報を取得すること)から保護するからです。

このような事業者にとって、利用者を迷惑メールから守ることは、顧客保護や顧客満足の向上、サポートコストの削減、ブランドイメージの維持につながります。送信ドメイン認証技術の普及により、メールの信頼性がよりいっそう高まり、安心して楽しめるコミュニケーションツールの一つとなるでしょう。

事業者を中心に消費者が迷惑メールから守られるイメージ画像

DKIMはどのように働くか?

送信サーバーでの動き

1. 設定(右図のAの段階)
ドメイン所有者(主に企業やプロバイダーのメールシステム管理チーム)は、すべてのメールに署名するための公開鍵/秘密鍵のペアを作成します(複数のペアも可能)。公開鍵はDNSサーバーで公開され、秘密鍵はDKIMが実装された送信メールサーバーで利用可能になります。これが右図のAの段階です。
2. 署名(右図のBの段階)
利用者がメールを送ったとき、DKIMが実装されたメールシステムが、1で作成された秘密鍵を使用して、メールの全文に対して、電子署名を自動的に作成します。署名はメールのヘッダーの先頭に付けられ、そのメールは送信先のメールサーバーに送られます。これが右図のBの段階です。

受信サーバーでの動き

1. 準備(右図のCの段階)
DKIMが実装された受信メールサーバーは、メールから署名とFromヘッダーまたはSenderヘッダーのドメインを抽出し、そのドメインのDNSサーバーから公開鍵を取得します。これが右図のCの段階です。
2. 認証(右図のDの段階)
メール受信システムは、その署名がペアとなる秘密鍵から作られたかどうかをDNSサーバーの公開鍵を使って認証します。それによって、FromヘッダーまたはSenderヘッダーの送信ドメインから送られたメールであり、そのヘッダーと内容が送信中に変更されていないということが証明されます。これが右図のDの段階です。
3. 配送(右図のEの段階)
メール受信システムは、署名の検証結果に基づいてメールを配送します。その際に、送信ドメインが認証されれば受信箱に、認証されなければ破棄またはフラグをつけるといったローカルポリシーを適用することが可能です。これが右図のEの段階です。
DKIMの働きの図解画像

よくある質問 - DKIMについて

Q1:迷惑メール防止にどのような効果がありますか?

下記のような効果があります。

  • メールを受信する企業やプロバイダーに、DKIMの署名なしのメールが送られてきた場合は、それを破棄または隔離できるようになります。これによって迷惑メールやフィッシング詐欺から守られます。
  • 送信ドメイン認証によって、プロバイダーは、迷惑メール対策ポリシーに適用できる評価データベースを作成できます。さらに、プロバイダー間で情報の共有ができます。たとえば、あるプロバイダーは「www.example.com」ドメインから送られてきた迷惑メールと正当メールの割合を調査し、そのドメインの信頼性や迷惑メールについての情報をまだ持っていない他のプロバイダーに提供できます。
  • 偽造されたFromヘッダーを排除することによって、サーバーレベルの追跡を行うことができます。迷惑メール送信者(スパマー)は追跡されないようにするため、送信メール認証を導入しない企業やプロバイダーにしか迷惑メールを送ることができなくなります。

Q2:偽造メールまたはフィッシング詐欺にどのような効果がありますか?

メール受信者をフィッシング詐欺から保護する効果があります。たとえば、フィッシング詐欺の影響を大きく受ける企業(銀行など)は DKIMを導入し、送信するメールすべてに署名をします。
そのうえで、そのドメインから送られてきたにもかかわらず署名がないまたは不適切なメールを破棄するよう、メール受信側の企業やプロバイダーに周知します。
そして、メール受信側が、署名がないまたは不適切なメールを破棄するフィルターを追加すれば、不正なメールが受信箱に届かなくなるため、顧客などをフィッシング詐欺から保護することができます。

Q3:スパマー(迷惑メール送信者)がメールをDKIMで署名してしまうのでは?

それはむしろ望ましいことです。
もしスパマーがメールをDKIMで署名すれば、これまでに述べた方法によってスパマーのメールを破棄、隔離することが、より簡単にできるようになります。「このメールは本当にFromヘッダーのドメインからきたものか?」という不確かさが解消されれば、迷惑メール対策はより行いやすくなります。

Q4:DKIMは何を認証するのでしょうか?

DKIMは、メール利用者を保護し、可能な限り最善な環境を提供するために、FromヘッダーとSenderヘッダーのドメインを調べます。マイクロソフトのOutlookのようなデスクトップ用メールソフトは、ヘッダーを確認するようなユーザーインターフェースを持っています。したがって、メール利用者に対して、こうしたドメイン認証に基づいた信頼性を提供するためには、すべてのメールシステムをDKIMに対応させていくべきだと考えます。

Q5:なぜメール全体を署名するのでしょうか?

DKIMは、メールが送信されてから受信されるまでの通信経路上で変更されていないことを受信メールサーバーが検証できるように、メール全体を署名します。ヘッダーと内容に署名すれば、信頼できるメールの一部を再利用して、利用者をだまそうとする不正行為を防げます。

よくある質問 - DKIM導入にあたって

Q1:DKIMは各メールを暗号化するのでしょうか?

DKIMは実際のメールは暗号化しません。ヘッダーの先頭に電子署名をするだけです。

Q2:DKIMでは、どのような公開鍵/秘密鍵技術が使われているのでしょうか?

現在DKIMでは、RSAの公開鍵/秘密鍵技術を使用しています。

Q3:DKIMに必要な公開鍵/秘密鍵は誰が作成するのでしょうか?

ドメイン所有者または代理人、サービスプロバイダーが、DKIMを導入するために必要な公開鍵/秘密鍵のペアを作成する必要があります。

Q4:DKIMはどのように取り消したり変更したりするのでしょうか?

DKIMはDNSサーバーで公開された公開鍵を同時に複数持てます。これによって企業やプロバイダーは、管理している複数のメールサーバーに対して異なる鍵を使用することができ、簡単に取り消したり、変更したり、有効期限を設定したりできます。ドメイン所有者は公開鍵を取り消し、いつでも新しいペアで署名できます。

Q5:DKIMはメーリングリストにも効果がありますか?

内容の変更やヘッダーの追加・修正のないメーリングリストはDKIMと共存でき、変更の必要もありません。メールの内容やヘッダーを変更するメーリングリストは、独自の秘密鍵でメールを再度署名し、Fromヘッダーに設定されたドメインに対する正しい送信者であることを明確にする必要があります。

Q6:誰がDKIMを実装するのでしょうか?

通常DKIMは、メール送受信システムを管理する企業内のチーム、インターネットサービスプロバイダー、メールサービスプロバイダーによって実装され、利用可能となります。MTAベンダーがDKIMへのサポートを追加すれば、DKIMの実装もより簡単になります。

Q7:DKIMを導入する方法を知りたい

メールサーバーにDKIMを導入する具体的な方法については、以下のサイトをご参照ください。

またYahoo!メールでは、ISPなどのメールサービス提供事業者様やメーラーを開発する開発者様向けに、送信ドメイン認証検証結果ステータス表示レファレンスガイドを提供しています。

DKIMを導入して、Yahoo!メールのブランドアイコン表示の取り組みに参加しませんか?

Yahoo!メールではなりすましメール対策として、DKIMを導入されている企業様のブランドアイコンを表示する取り組みを行っています。ブランドアイコンが表示されることで、送信元が保証された安心・安全なメールであることがお客様に一目で伝わります。
取り組みへの参加はこちらからお申込みください。

ブランドアイコン 企業様向けお申し込みページ