DKIMレコードのチェック

DKIM(DomainKeys Identified Mail)DNSレコードを無料で確認します。メールを暗号的に認証しましょう。

ドメインとセレクタを入力

本日の無料チェックは残り 5 回です。

DKIMとは?

DKIM(DomainKeys Identified Mail)は、RFC 6376で定義されたメール認証方法です。非対称暗号化を使用しており、メールサーバー上の秘密鍵が送信メッセージに署名し、DNSに公開された公開鍵によって受信サーバーがその署名を検証します。署名後にメッセージが改ざんされた場合、署名は無効になります。

SPFとは異なり、DKIMは送信IPだけでなく、メッセージの内容自体(ヘッダーや本文)を認証します。これにより、送信者のIPが変わるメール転送シナリオでも有効性を維持できます。

なぜDKIMが必要なのか?

1メッセージの整合性

メールの本文とヘッダーがサーバーを出てから変更されていないことを証明します。

2転送に強い

署名はメールに埋め込まれており送信IPに依存しないため、中継されても有効性が保たれます。

3DMARCに必須

DMARCは、パス/フェイルの判断基準としてDKIMのアライメントを使用できます。

4到達率の向上

GmailやOutlookなどは、フィルタリングにおいてDKIM署名付きのメールを高く評価します。

DKIMの仕組み — ステップ・バイ・ステップ

1

公開鍵と秘密鍵のペアを生成し、秘密鍵を使用するようにメールサーバーを構成します。

2

公開鍵を `selector._domainkey.yourdomain.com` のDNS TXTレコードとして公開します。

3

メールを送信すると、メールサーバーは選択されたヘッダーと本文をハッシュ化し、そのハッシュを秘密鍵で署名します。

4

署名は `DKIM-Signature` ヘッダーとしてメールに追加されます。

5

受信サーバーは `DKIM-Signature` を読み取り、DNSから公開鍵を取得して署名を復号し、メッセージを再ハッシュして比較します。

6

一致すればメッセージは真正かつ未改ざんです。不一致は、改ざんまたは設定ミスを示します。

DKIM DNSレコード(公開鍵)

selector._domainkey.yourdomain.com のDNS TXTレコード
v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADC...AQAB

主要なフィールド

v=DKIM1— バージョン識別子
k=rsa— 鍵の種類(rsa または ed25519)
p=— Base64でエンコードされた公開鍵
h=— 許容されるハッシュアルゴリズム(sha256)
s=— サービスタイプ(email または *)
t=s— ストリクトモードフラグ

DKIM-Signature ヘッダー(メール内)

送信サーバーによって追加されたメールヘッダー
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
            d=yourdomain.com; s=mail2024;
            h=from:to:subject:date:message-id;
            bh=47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=;
            b=mY93xZ...

署名フィールドの意味

d= (署名ドメイン)
公開鍵を保持するドメイン。DMARCのためにFromドメインと一致する必要があります。
s= (セレクタ)
使用するDNSレコードを指定します。これにより鍵のローテーション(例:s=jan2025, s=feb2025)が可能になります。
h= (署名対象ヘッダー)
ハッシュに含まれるヘッダー。最低限 From, To, Subject, Date が含まれます。
bh= (ボディハッシュ)
正規化されたメッセージ本文のハッシュ。本文の整合性を保証します。
b= (署名)
h=でリストされたヘッダーの実際の暗号署名です。
c= (正規化)
ハッシュ化前にヘッダー/本文をどのように標準化するか(simple または relaxed)。

一般的なDKIMの問題

本文の改変

一部のメーリングリストやウイルス対策スキャナーが本文を変更し、bh=(ボディハッシュ)が壊れることがあります。

DNSレコードの欠落

送信前に、TXTレコードが公開され伝播していることを確認してください。

誤ったセレクタ

署名内の s= は、DNSレコード名のセレクタと一致する必要があります。

鍵の長さが短すぎる

少なくとも2048ビットのRSA鍵を使用してください。1024ビットは安全ではないと見なされ、一部のプロバイダーでは拒否されます。

よくある質問

よくある質問 (FAQ)

DKIMはメールに電子署名を付加する暗号化認証方式です。受信サーバーはこの署名を使用して、メールがドメイン所有者によって承認されたものであること、および配送中に内容が改ざんされていないことを検証します。

DNS内の特定の公開鍵を特定するための文字列です。メールサービスプロバイダー(ESP)の設定画面や、送信済みメールのヘッダーにある「s=」タグで確認できます。

セレクタ名の誤り、DNS浸透の遅延、またはTXTレコードを誤ったドメイン階層に追加したことが主な原因です。

はい、複数のメールサービスを利用する場合は、サービスごとに固有のセレクタを使用して複数のレコードを運用するのが一般的であり、ベストプラクティスです。

有効なDKIM署名は、ISPからの信頼を高めます。良好な送信者レピュテーションの構築に繋がり、メールがスパムフォルダに振り分けられる可能性を低くします。

秘密鍵は送信サーバーでメールの署名に使用され、公開鍵はDNSで公開されます。受信側は公開鍵を使って署名を検証します。