DKIM(DomainKeys Identified Mail)
DKIM(Domain Keys Identified Mail)とは、配信メールに電子署名を行うことで、受信側でメールの配信元のなりすましや改ざんを検知できるようにする、メールの配信元ドメイン認証の仕組みです。このページでは、DKIMの概要について説明します。
DKIMの仕組み
DKIM(Domain Keys Identified Mail)では、配信元のメールサーバーからメールを配信する際に、メールに電子署名が行われます。DKIMの電子署名を設定するには、あらかじめメールの配信元ドメインのDNSサーバーにDKIMレコードを登録します。DKIMの電子署名には、配信元ドメインの秘密鍵をもとに暗号化されたメールの本文とヘッダーの情報(ハッシュ値)が含まれます。また、ハッシュ値の生成に使用されたヘッダーの名前も含まれます。DKIMの電子署名が行われると、受信者側のメールサーバーにメールが配信されます。
受信者側のメールサーバーでは、メールに付与されているDKIMの電子署名をもとに、配信元ドメインのDNSサーバーに問い合わせを行い、公開鍵が取得されます。次に、公開鍵をもとにハッシュ値の復号が行われます。その後、復号されたハッシュ値内のメールの本文とヘッダーの情報と、受信したメールの本文とヘッダーの情報が照合されます。情報が一致すると、正当なメールサーバーから配信されたメールであると判断され、DKIM認証が成功します。
DKIMレコードの詳細
DKIMレコードの例
k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDBMuSsLsy
k:使用されたアルゴリズム
p:公開鍵
DKIMの電子署名の例
DKIM-Signature:
v=1; a=rsa-sha256; d=example.com;s=selec1; c=relaxed/relaxed; h=from:to:subject:date; bh=MHIzKDU2Nzf3MDEyNzR1Njc5OTAyMjM0MUY3ODlqBLP=;
b=hyjCnOfAKDdLZdKIc9G1q7LoDWlEniSbzc+yuU2zGrtruF00ldcFVoG4WTHNiYwG
v:DKIMの電子署名のバージョン
a:ハッシュ値の生成に使用されたアルゴリズム
c:ヘッダーと本文の正規化方式
s:セレクター
d:電子署名に使用されたドメイン
h:電子署名が行われたヘッダー
bh:メールの本文のハッシュ値
b:電子署名が行われたヘッダーのハッシュ値
DKIMのメリット
DKIMを設定することによる主なメリットは、以下のとおりです。
- メールサービスにおける配信元ドメインの信頼性の向上、迷惑メール(スパム)として判定される可能性の低減
- メールの到達率の向上
- フィッシング詐欺、スプーフィング攻撃からのメールの保護
配信元ドメインのDKIMレコードの設定方法に関する詳細については、
こちらをご参照ください。