トップ > 用語解説 > ネットワーク関係 > 電子メール関係 > DKIM (DomainKeys Identified Mail)
DKIM (DomainKeys Identified Mail)は、電子メールにおける送信ドメイン認証技術の一つで、 メールを送信する際に送信元が電子署名を行い、受信者がそれを検証することで、送信者のなりすましやメールの改ざんを検知できるようにします。 送信ドメイン認証技術は、送信元のIPアドレスを利用するものと、電子署名を利用するものとに大きくわかれますが、 DKIMは電子署名を利用し、その電子署名の検証に必要となる公開鍵は送信元ドメインのDNSサーバで公開されます。 受信者は受け取ったメール中の署名者に関する情報からドメインを特定し、そのDNSサーバへ問い合わせることで公開鍵を取得します。 電子署名の作成は、送信者自身が必ずしも行う必要は無く、他にメール送信者の利用するメール中継サーバ(MTA)、送信メールサーバ(MSA)、 あるいは信頼した第三者が行うことが可能です。このような特徴を利用して、 例えば電子署名の作成をメールサーバで行うように設定を行い、 エンドユーザーのメールに対して透過的にDKIMを用いた署名を付加することなどができます。
なりすましは、メールの差出人アドレスが偽装されるメール攻撃のことです。 なりすましメールは、なりすましの被害を受けている組織またはドメインから送信されたかのように表示されます。 メールの内容が変更されている場合と、メールの差出人アドレスが不正に変更されている場合は、DKIM によって検出されます。
同じ送信ドメイン認証技術でも送信元のIPアドレスを利用するSPF (Sender Policy Framework)と、 DKIMとを組み合わせたDMARC (Domain-based Message Authentication, Reporting and Conformance)と呼ばれるメール認証技術の導入に伴い、 DKIMの普及が進んでいます。
DKIMでは、送信側のドメインを管理する権威DNSサーバーを使用して、署名に利用する公開鍵を公開します。 公開鍵は、FQDN(Fully Qualified Domain Name:完全修飾ドメイン名)に対するTXTレコードとしてDNSに登録します。 鍵の長さは、512ビットから2048ビットをサポートしています。 RFCでは2048ビットより大きな鍵を利用する場合もあるとされていますが、 実際にはDNSプロトコルの512バイトにうまく収まる最も長い鍵として2048ビットまでが現実的であると説明されています。 また、1024ビットより短い鍵では、オフラインでの解読行為に対して脆弱である場合があります。