DKIM(DomainKeys Identified Mail)について
2024-07-01
メール認証技術の一つであるDKIM(DomainKeys Identified Mail)について説明します。
DKIMは、メールの送信元のドメインを確認し、メールの内容が改ざんされていないことを証明するための認証技術です。DKIMを使用することで、受信者はメールが正当な送信元からのものであり、途中で改ざんされていないことを確認できます。
DKIMの基本的な仕組み
1.メール作成:
・メールが送信されると、メールの本文やヘッダーからハッシュ値(固定長の文字列)が生成されます。
・送信者のメールサーバーは、このハッシュ値を送信者の秘密鍵で署名します。この署名がDKIM署名です。
2.DNSに公開鍵を登録:
・送信者のドメイン(例:example.com)のDNS((Domain Name System))には、公開鍵が登録されています。
・受信者のメールサーバーは、この公開鍵を使って署名を検証します。
3.メール送信:
・署名付きのメールが送信されます。このメールには、DKIM署名が含まれています。
4.メール受信:
・受信者のメールサーバーは、送信者のドメインのDNSから公開鍵を取得します。
・この公開鍵を使って、DKIM署名を検証し、メールの改ざんがないことを確認します。
+————-+
| 送信者 |
| example.com |
+————-+
|
| 1. メール作成
|
+————-+
| メールサーバー|
+————-+
|
| 2. ハッシュ値生成と署名
| 3. DNSに公開鍵を登録
|
+————-+
| DNS |
| (公開鍵) |
+————-+
|
| 4. 署名付きメール送信
|
+————-+
| 受信者 |
| receiver.com|
+————-+
|
| 5. 署名検証
|
+————-+
| メールサーバー|
+————-+
|
| 6. 受信者の確認
|
+————-+
| 受信者 |
| receiver.com|
+————-+
DKIMの利点
メールの改ざん防止:
DKIMにより、送信後のメールの内容が改ざんされていないことを確認できます。これにより、途中で内容が変更されるリスクを減少させます。
送信元の信頼性向上:
DKIM署名を使用することで、受信者はメールが正当な送信元から送信されたものであると信頼できます。これにより、スパムやフィッシングメールのリスクが軽減されます。
メールの配信率向上:
DKIM署名付きのメールは、受信者のメールサーバーによって信頼性が高いと判断されやすくなります。これにより、メールが迷惑メールフォルダに振り分けられるリスクが低くなり、受信箱に届きやすくなります。
具体的な例
秘密鍵と公開鍵の生成:
ドメイン所有者は、秘密鍵と公開鍵のペアを生成します。秘密鍵はメールサーバーに保存され、公開鍵はDNSに登録されます。
メール送信時の署名:
メールを送信する際、メールサーバーは秘密鍵を使用してメールのヘッダーや本文の一部に基づいてデジタル署名を生成し、メールヘッダーに追加します。
DNSに公開鍵を登録:
ドメインのDNS設定に公開鍵を追加します。これは、TXTレコードとして登録されます。
メール受信時の検証:
受信者のメールサーバーは、メールのヘッダーに含まれるDKIM署名を確認し、DNSから公開鍵を取得して署名の検証を行います。署名が有効であれば、メールは信頼できるものと判断されます。
DKIM設定の確認方法
DKIMの確認を行う場合はGmail宛にメールを送信し、Gmailで受信したメールを開き、メニューから「メッセージのソースを表示」をクリックし、DKIM欄が「PASS」となっているかをご確認ください。
まとめ
DKIMは、メールの送信元ドメインの信頼性を確認し、メールの内容が改ざんされていないことを証明するための重要な認証技術です。正しく設定することで、メールの信頼性が向上し、スパムやフィッシングのリスクを軽減し、メールの受信率を向上させることができます。