DKIMチェック:ドメインがメールの署名に使う鍵
DKIMを使うと、ドメインはDNSで公開した鍵でメールに署名できます。受信側は、メッセージがそのドメインから送られ、改ざんされていないことを確認できます。鍵はそれぞれ「セレクター」と呼ばれる名前の下に置かれています。ドメインと、わかればセレクターを入力してください。セレクターを指定しない場合は、よく使われる33個のセレクターを試します。
セレクターは、そのドメインから送られたメールの「DKIM-Signature」ヘッダーにある「s=」の値です。空欄のままにすると、よく使われるセレクターを試します。
セレクターの調べ方
- そのドメインから届いたメールを開き、元のメッセージまたはヘッダーを表示します(Gmailでは、3つの点のアイコンから「メッセージのソースを表示」を選びます)。
- 「DKIM-Signature」ヘッダーを探します。「d=」がドメイン、「s=」がセレクターです(例:s=selector1)。
- ドメインとセレクターを入力して「DKIMを確認」を押します。セレクターがない場合は、default、google、selector1、k1など、よく使われる33個を試します。
各結果の意味
- このドメインはDKIMでメールに署名しています
- 公開鍵が見つかりました。受信側は、メッセージがこのドメインから送られ、途中で改ざんされていないことを確認できます。
- DKIM鍵はありますが、注意点があります
- 鍵が少なくとも1つ見つかりましたが、廃止済み、テスト中、または強度が不十分なものがあります。詳細は各鍵の下に表示されています。
- よく使われるセレクターにDKIM鍵はありません
- これは、ドメインにDKIMがないという証明にはなりません。別のセレクターを使っている可能性があります。そのドメインから届いたメールの「DKIM-Signature: s=」ヘッダーで確認できます。それを「セレクター」に入力して、もう一度確認してください。
- そのセレクターにDKIM鍵はありません
- 書き方を確認してください。セレクターは「DKIM-Signature」ヘッダーの「s=」の値で、ドメインは「d=」の値です。
各検出項目の意味
- 鍵が空です(p=)。このセレクターは廃止されており、もうメールに署名していません。
- 鍵がテストモードです(t=y)。署名の検証に失敗しても対処しないよう、ドメインが受信側に求めています。
- RSA鍵が1024ビット未満です。破られるおそれがあり、多くの受信側は受け付けません。
- RSA鍵が1024ビットです。現在も受け付けられますが、2048ビットが推奨されています。
- 鍵がSHA-1しか許可していません。SHA-1は古いアルゴリズムで、もう安全とはみなされていません。
- 鍵のレコードにエラーがあり、読み取れません。
- 鍵の種類がRSAでもEd25519でもないため、受信側は使用できません。
- 試したどのセレクターにも鍵がありません。
関連ツール
対象の国
どの国のドメインにも使えます。セレクターがない場合は、大手プロバイダー(Google、Microsoft 365、Zoho、Proton、Fastmail、Mailchimpなど)の既定のセレクターと一般的な汎用名、合計33個を試します。鍵は受信側のサーバーと同じ方法(RFC 6376)で読み取ります。対応する鍵はRSAとEd25519です。
読み取るのは、ドメインの公開DNSレコードです。メールアドレスやリンクを入力した場合でも、ブラウザから送信されるのはそのドメインだけです。調べたドメインは保存されません。
よくある質問
DKIMとは何ですか?
DomainKeys Identified Mailの略です。送信側のサーバーが各メールに秘密鍵で署名し、ドメインは公開鍵をDNSで公開します。受信側のサーバーが署名を検証し、一致すれば、そのメールはそのドメインから送られ、途中で変更されていないことになります。
セレクターとは何ですか?
鍵を公開するときの名前で、selector._domainkey.example.comという場所に置かれます。1つのドメインが複数持つことができ、プロバイダーごと、または鍵を変更するたびに1つずつ使われます。各メールの「DKIM-Signature」ヘッダーに「s=」として表示されます。
ドメインがDKIMを使っているのに鍵が見つからないのはなぜですか?
セレクターにはどんな名前でも付けられ、DNSでは一覧を取得できません。よく使われる33個を試しますが、ドメインが別のセレクターを使っている場合は、「セレクター」に入力してください。そのため、「見つからない」という結果は、DKIMがないことの証明にはなりません。
1024ビットと2048ビットとはどういう意味ですか?
RSA鍵のサイズです。長いほど破るのが難しくなります。1024ビットは現在も受け付けられますが、推奨は2048ビットです。1024ビット未満だと、多くの受信側は署名を無視します。
