【図解】初めてでも腹落ち!DKIMの仕組みと設定方法

2023年5月11日

昨今、迷惑メールやなりすましメールは年々増えています。その中で、メールのセキュリティへの関心は高まっており複数の「送信ドメイン認証技術」の設定が推奨されるようになってきました。

こちらのブログではSPFについて解説させていただきましたが、今回はSPFと一緒に設定することことでよりセキュリティの今日ができるDKIMについての解説記事です。

SPFと比べて、どういった理屈で認証されているのかという話が少し複雑になるのですが、インターネットなどでわかりやすい解説があまり見つからず、なかなか理解が進まない方もいらっしゃるかもしれません。

そこで今回は、『ブラストエンジン(blastengine)』の開発を行っている弊社のメール技術の専門家に聞いた内容を、今までDKIM署名の概念に触れたことが無い方向けに、わかりやすく解説させていただきます。

2023年10月、Gmailのメール送信者ガイドラインがアップデートされました。2024年2月以降、Gmailアカウントに1日あたり5,000件を超えるメールを送信する送信者は、送信ドメインにSPF・DKIM・DMARCの設定が必要などの記載があります。

より詳しい内容や対策方法は以下の記事で解説していますので参考にしてください。

関連記事:Gmail送信者のガイドライン変更の内容と対応方法を”1から”解説!

Gmail送信者ガイドライン対応バナー

DKIMとは?概要を解説

DKIM(DomainKeys Identified Mail)は、電子メールの送信者認証技術の一つです。

導入することでメールの安全性を受信者に対してアピールすることができ、迷惑メールフォルダ振り分けられてしまったりメールが受信サーバーに弾かれてしまうなどのリスクを下げることができます。

DKIMの背景としての電子メールのセキュリティ課題

電子メールは現代のコミュニケーション手段として非常に便利ですが、同時に以下のようなセキュリティ課題を抱えています。

  • メールスプーフィングの問題
  • フィッシング攻撃の増加
  • 電子メールの信頼性低下

それぞれ解説します。

メールスプーフィングの問題

メールスプーフィングとは、送信者が他人になりすますことで、受信者を騙す行為です。これにより、受信者は誤った情報に基づいて行動する危険性があります。

フィッシング攻撃の増加

フィッシング攻撃は、悪意のある第三者が偽装したメールを送り、個人情報やアカウント情報を盗み出すために用いられます。統計によると、フィッシング攻撃は近年でも増加傾向にあります。

電子メールの信頼性低下

上記の問題により、電子メールの信頼性が低下しています。送信者が正当であるかどうかを確認する方法が不十分であるため、受信者はメールの内容に疑問を持つことが多くなっています。

鍵ペアを用いた署名と検証プロセス

DKIMでは、送信者は秘密鍵でメールに署名し、受信者は公開鍵で署名を検証します。これにより、送信者の正当性とメールの改ざんがないことを確認できます。

以下に署名から認証までのプロセスを解説していきます。わかりやすくするために認証がパスするパターンと失敗するパターンに分けています。

①認証をパスするパターン

下の図のようにhoge.comの管理者である正規のメール送信者から、DKIM署名がなされたメールが届くと受信サーバーがhoge.comのDNSサーバーにある公開鍵を確認します。

DKIM認証passパターン①

公開鍵を得たあとの認証プロセスとしては次の通りです。

公開鍵と署名から得られたハッシュ値と、実際に受け取ったメールから生成したハッシュ値を比べてメールの正当性を確認します。

DKIM認証passパターン①プロセス

これが認証をパスする場合の流れになります。

ここからは更なる理解のために認証をパスしないパターンをについて説明します。DKIMでは正当な送信者からの改ざんを受けていないメールであることが証明されるので、②正当な送信者ではない場合、③改ざんを受けている場合について記載しています。

②認証をパスしないパターン(不正な送信者からのなりすまし)

次の図では不正な送信者が自身の保有する秘密鍵でDKIM署名を行ったうえで、hoge.comを装ったメールを送った場合を想定しています。

この場合でも受信サーバー側はhoge.comのDNSサーバーにある公開鍵を確認することができます。

DKIM認証failパターン①

ここでは署名を行った秘密鍵と公開鍵がペアにならないため、下の図のように複合化に失敗してしまいます。

DKIM認証failパターン①プロセス

これが不正な正当な送信者ではない場合のパターンになります。付け加えると、そもそもDKIM署名がついていない場合。署名がなされていないという理由でメールが弾かれる場合もあります。(DKIM導入のメリットで後述します。)

②認証をパスしないパターン(内容が改ざんされている)

最後はメールが送信された後に改ざんされている場合について説明します。

DKIM認証failパターン②

ここではDKIM署名自体はhoge.comとペアになる秘密鍵で行われたものになるので、複合化することができます。しかし、メールの内容が改ざんを受けて異なるものになっているので、複合化して得られたハッシュ値と、実際のメールのハッシュ値も異なるものになります。

DKIM認証failパターン②プロセス

このようにして、改ざんを受けている場合の検知が可能になります。

以上がDKIM認証が動作する理屈となります。さらに細かい技術的な説明は専門のウェブサイトにお願いして、ここからはDKIMを導入することで得られるメリットについて解説していきます。

DKIMの導入メリット

DKIMを導入するメリットは様々あります。最大のメリットはメール送信者の信頼性があがることでメールの配信成功率が上がることです。

送信者の信頼性

DKIMを導入することで、以下のような信頼性の強化が図られます。

  • メール受信者の安心感向上
  • 送信者の信用度向上

DKIMによる送信者認証があることで、受信者は送信者が正当であることを確認でき、安心してメールを開くことができます。

GmailでDKIMがpass

Gmailでは上の図のようにDKIMが成功しているかを確認することも可能です。

また、DKIMを導入した企業や組織は、企業や組織全体のセキュリティ対策にきちんと配慮をしているということが明示的になり、送信者としての信用度が向上し、顧客や取引先からの信頼も得られます。

受信ボックス到達率の改善

DKIMを導入することで、メール受信サーバー側で安全なメールであることが確認しやすくなり、DKIMが導入されたメールは、スパムと誤認されにくくなり、配信成功率が向上します。

また同様に、迷惑メールボックスに入ってしまう確率も下がるため、メールが届いていることをよりユーザーにはっきりと認知させることができ、開封やリンクのクリック率にも好影響が期待できます。

(もちろん正当な送信者からの配信でのみ上記のメリットを受けることができます。)

スパム対策への貢献

DKIMの導入は、インターネット全体のスパム対策にも貢献します。

DKIMを使用したメールは、スパムメールとして識別されにくくなり、正当なメールがスパムフィルターによって誤ってフィルタリングされるリスクが減少します。同時に、不正な送信者を特定しやすくなり、迅速に排除することができます。

多くの企業や組織がDKIMを導入することで、インターネット全体のスパム対策が向上します。これにより、スパムメールが減少し、全体のメール環境が改善されることが期待されます。

DKIMの設定方法

ここからは実際にDKIMを設定する方法について、概要をご紹介させていただきます。DKIMの実装は環境に依存する部分もあり、詳細な設定はほかの記事に譲らせていただきます。

ブラストエンジン(blastengine)を使っている場合のDKIM署名に関しては管理画面にも設定方法を記載しているので、サインアップしてご確認ください。(blastengineの設定でわからないことがありましたらいつでもお問い合わせください。)

設定手順

今回は大まかな手順を説明します。実際の導入にあたってはOpenDKIMなどを利用するとスムーズになります。OpenDKIMはDKIM署名と検証を行うオープンソースのソフトウェアです。

①ソフトウェアの設定

OpenDKIMなどのサービスを使い、鍵ペアの作成とレコードの生成を行います。

②DNSにDKIMレコードを追加

生成したDKIMレコードをDNSサーバーに公開して受信サーバー側が参照できる状態にします。

③設定確認

DKIMレコードが正しく設定されているかは、検証ツール(例:DKIMCore)を利用して確認することが可能です。こちらにセレクター(ドメイン内で複数の公開鍵を運用するための識別子)とドメイン名を入れると、そのレコードが有効かどうかを結果として表示してもらうことができます。

④テストメールの送信

OpenDKIMなどのソフトウェアを使うことでDKIM署名を行った状態でメールを送信することができるので、最終的にはGmailなどに実際にメールを送ってみて、2-1. 送信者の信頼性で掲載した画像のようにDKIM認証がpassの状態になっているかを見て、実際に認証が成功しているかを確認する必要もあります。

メール配信ツールを利用している場合のDKIM設定

先ほどの設定方法は自社でのメール配信における設定方法でしたが、メール配信ツールを使っている場合はツールのドメインでDKIM署名を行うといったケースもあります。

メールの作成者のドメインで署名を行うものを作成者署名と呼ぶのに対して、メール配信サービスのドメインでの署名は第三者署名と呼ばれています。第三者署名より作成者署名のほうがメールの信頼性はより高まります

第三者署名

メール配信サービスからメールを配信する際に自動的にされているDKIM署名が、第三者署名にあたります。

ユーザーが自社のDNSサーバーにテキストレコードを入れるなどの設定をしなくても良い反面、本当に作成者のドメインから送られているのかを証明することができず、認証の強度が弱まってしまいます。

作成者署名

作成者署名は、メール配信ツール側に設定を行うことで、ツールからのメール配信においても、自社ドメインのDNSサーバーでDKIM署名の認証を行うことができる方式です。

サービスにもよりますが、「ブラストエンジン(blastengine)」のようなメール配信システムでも管理画面から設定することが可能です。作成者署名であれば作成者のドメインの管理者から送られていることが確認できるため、送信者の信頼性を高め、メールの認証性が向上します。

作成者署名の設定方法

メール配信ツールで作成者署名を設定する場合は、配信ツールのドキュメントやヘルプセンターを参照し、指示に従って設定を行ってください。

DKIMと他のメール認証技術

以前のブログでも紹介したように、DKIMの他にもメールの正当性を証明する方法はいくつかあり、組み合わせて活用することで価値を発揮していきます。

ここではそれぞれの認証方法の違いに着目して、簡単な解説をさせていただきます。

DKIMとSPFの違い

DKIMもSPFもどちらも送信認証の技術であることには変わりはありません。しかし、認証方法が異なるためその違いを解説します。

SPFの概要

SPF(Sender Policy Framework)は、送信者のドメインが許可されたメールサーバーから送信されていることを確認するためのメール認証技術です。

SPFは、DNSに登録されたレコードに基づいて、送信元のIPアドレスを検証し、メール送信元の正当性をチェックします。

詳細は以下のブログでも紹介しているので参考にしてください。

SPF認証が必要な理由と設定方法

DKIMはメールが送信元ドメインの所有者によって作成されたもので改ざんを受けていないことを証明するのに対して、SPFは送信元ドメインの所有者が許可したIPからメールが送信されていることを証明しており、それぞれ異なる観点からメールの正当性を検証していることになっています。

DKIMとSPFを併用した場合のメリット

「DKIM/SPFは両方設定しなければいけないのか?」

という質問はよくいただくのですが、端的に答えるとすると片方だけしか設定していない場合、「頭隠して尻隠さず」くらいのレベルになると考えています。(※とは言え頭だけでも隠した方がいいとは思います。)

DKIMとSPFを併用することにより、以下のメリットが得られます。

  1. 送信者認証の強化: SPFだけではメールが改ざんを受けている可能性を捨てきれず、DKIMでメール内容の改ざん検出を行うことで、認証が確実なものにすることができます。また、DKIMのみの場合、悪意のある送信者がDKIM署名のないなりすましメールを送った場合、受信サーバー側はDKIMレコードの有無を確認する訳ではないため、毎回確認されるSPFがないと正当性が判別できなくなってしまいます。
  2. 電子メールの信頼性向上: DKIMとSPFの両方の認証が成功することで、受信者はメールの信頼性が高いと判断でき、迷惑メールボックスに入らなくなったり、メールサーバーからブロックを受けることが少なくなることが期待できます。

DMARCとの違い

DMARCもメールのなりすましメールなどを防ぐことを目的とした、セキュリティ技術の一つです。DMARCはそれ単体で機能するものではなく、DKIMやSPFを補助するものです。

DMARCの概要

DMARC(Domain-based Message Authentication, Reporting & Conformance)は、DKIMとSPFの結果に基づいて、メールの認証ポリシーを定義する技術です。

DMARCは、DKIMやSPFの検証結果を組み合わせて、送信ドメインが設定したポリシー(メールを止めるor送信される)に従ってメールが送信されているかどうかを判断します。また、DMARCは認証結果の報告機能も提供し、ドメイン所有者がメール送信の状況を把握しやすくなります。

DKIM、SPF、DMARCの統合運用

DKIM、SPF、DMARCを統合して運用することで、最も強力なメール認証を実現できます。具体的なメリットは以下の通りです。

  1. 強固な送信者認証: DKIM、SPF、DMARCの組み合わせにより、送信者の正当性がより正確に検証され、不正なメール送信が防止されます。
  2. DKIMの弱点に対する補完:DKIMはSPFと違い、秘密鍵が秘匿されていることによって成立しているため、攻撃によって漏洩したり、クラックされてしまうなどのリスクも孕んでいます。DMARCによってSPFの認証結果を参照されることで、そういった事象が起きてもSPFが防波堤の役割を果たして不正なメール送信を防ぐことができます。
  3. レポート機能:DMARCでは認証が失敗したメールの送信元などを記録することができます。これによって例えば、何かの設定変更によって自社サーバーのDKIMやSPFの設定が不正な状態になっていたとしても気づくことができるようになります。

総じて、DKIM、SPF、DMARCを統合運用することで、電子メールの信頼性やセキュリティが大幅に向上し、スパムやフィッシング攻撃のリスクが軽減されます。これにより、企業や個人は安心して電子メールを利用することができるようになります。

Gmail送信者ガイドラインへの対応

本記事の冒頭でもご紹介したように2023年10月、Gmailのメール送信者ガイドラインがアップデートされました。

2024年2月以降、Gmailアカウントに1日あたり5,000件を超えるメールを送信する送信者は、送信ドメインにSPF・DKIM・DMARCの設定が必要などの記載があります。

Gmail送信者ガイドラインとは

本ガイドラインの変更内容は大きく分けると以下の3点になります。

  • 送信メールを認証すること
  • 未承諾のメールまたは迷惑メールを送信しないこと
  • 受信者がメールの配信登録を容易に解除できるようにすること

つまり、送信元の正当性を正しく認証した上で、ユーザーが迷惑がらないようにメールを送信することがメール送信者には求められています。

このあガイドラインの要件を満たせていないメールは迷惑メールに割り振られてしまったり、受信を拒否されることがあります。

その他Gmail送信者のガイドラインの詳細については以下の記事で解説していますので併せてご確認ください。

【2024/1/19最新】Gmail送信者のガイドライン変更の内容と対応方法を”1から”解説!

API連携・SMTPリレーサービス「ブラストエンジン(blastengine)」の活用

blastengineのアイキャッチ画像

SPFやDKIMなどGmail送信者ガイドライン対応しており、API連携・SMTPリレーが可能なメール配信システムです。

ブラストエンジンは、SMTPリレーサーバーを使用して、簡単に大量のメールを高速配信することが可能です。さらに、メールサーバーを必要とせず、API経由でメールを送信する仕組みも提供しています。

ブラストエンジンは、サーバーの運用やメンテナンスを行っているため、常に高いIPレピュテーションを維持しながら、安全にメールを送ることができます

以下のような課題がある場合は、ブラストエンジンの利用を検討してみることをおすすめします。

  • 自社のIPアドレスやドメインがブラックリストに登録されていて、メールが届かない場合
  • 国内キャリアにメールが届かず、対応方法がわからない場合
  • 自社でメールサーバーを管理・運用したくない場合

また、ブラストエンジンは各メールプロバイダーや携帯キャリアのドメインに最適化されており、大規模なネットワークを経由してメール配信を行うことで、日本国内での到達率を圧倒的に高めています。

利用料金は月額3,000円からとコストパフォーマンスにも優れており、メールだけでなく、日本語での電話サポートにも対応しています。

メールアドレスの入力のみで無料トライアルが可能ですので、まずは気軽にお試しください。

シェア1位のメール配信システム「ブラストメール」の活用

ブラストメールのアイキャッチ画像

SPFやDKIMなどGmail送信者ガイドライン対応(standardプラン以上)しており、シンプルで使いやすいメール一斉配信システムです。

ブラストメールは、13年連続で顧客導入シェア1位を獲得している信頼性の高いメール配信システムです。ブラストエンジンとは異なり、メルマガなどのメール一斉送信に利用することができます。

このメール配信システムの特徴は、使いやすさとコストパフォーマンスの高さです。さまざまな業種や官公庁でも利用されており、定番のメール配信システムとして広く知られています。

迷惑メール対策機能はもちろん、セグメント配信や効果測定、HTMLメールエディタなど、基本的な機能がすべて揃っています。最も安いプランでも、月額4,000円以下で導入することができます。

シンプルで安価なため、初めてメール配信システムを利用してみたい方にもおすすめです。無料トライアルも用意されているので、まずは試してみることをお勧めします。

まとめ

DKIMは、電子メールの送信者認証と改ざん防止を目的とした有効な技術です。

適切な設定と運用により、スパムやフィッシングメールを防止し、メール通信の信頼性を向上させることができます。さらに、SPFとDMARCと組み合わせることで、メール認証の効果を最大限に発揮し、より安全なメール環境を実現することができます。

今回はDKIMの設定方法に関しては詳しく触れていませんが、いずれ別のブログなどでご紹介できればと思います。もしすぐに導入したいという方がいらっしゃいましたら、是非「ブラストエンジン(blastengine)」を使って簡単にDKIMの導入することをご検討ください。電話やメールでのサポートに加えて、無料のトライアルも提供しております。

以上。長くなってしまいましたが、これを読んだ皆様がDKIMの仕組みと必要性について理解をふかめることができれば幸いです。

Gmail送信者ガイドライン対応バナー

まずは無料でAPI連携、SMTPリレーを試してみませんか?

クレジットカード登録などの支払い情報登録は必要ありません

無料トライアルプランを試す
問い合わせはこちら