Skip to content

DKIM 構文

DKIM の構文は RFC 6376 によって定義されており、DKIM-Signature ヘッダーフィールド、公開鍵 DNS レコード、および署名と検証アルゴリズムの形式とルールを指定しています。

DKIM-Signature ヘッダーフィールドは、DKIM 署名に関する情報を提供する一連のタグ-値ペアで構成されており、セミコロンで区切られています。タグは大文字と小文字を区別せず、以下の意味を持ちます:

タグ説明
vDKIM のバージョン。現在のバージョンは 1 です。
aハッシュと署名を生成するために使用されるアルゴリズム。サポートされているアルゴリズムは rsa-sha1 と rsa-sha256 です。
bbase64 でエンコードされた署名データ。
bhbase64 でエンコードされたメールコンテンツのハッシュ。
cハッシュ化の前にメールヘッダーと本文を正規化するために使用される正規化アルゴリズム。サポートされているアルゴリズムは simple と relaxed です。
d署名エンティティのドメイン。
h署名に含まれるヘッダーフィールドのリスト。コロンで区切られています。
i署名エージェントの識別子で、署名ドメイン内のサブドメインまたはユーザーである可能性があります。
l署名されたメール本文の長さ(バイト単位)。省略された場合、全体の本文が署名されます。
q公開鍵を取得するために使用されるクエリメソッド。サポートされているメソッドは dns/txt で、これは公開鍵が DNS の TXT レコードに格納されていることを意味します。
s検証に使用する公開鍵を識別するセレクター。
t署名が作成された時刻のタイムスタンプ。1970年1月1日00:00:00 UTCからの秒数で表されます。
x署名の有効期限。1970年1月1日00:00:00 UTCからの秒数で表されます。省略された場合、署名は期限切れになりません。
z署名された元のヘッダーフィールド。base64 でエンコードされています。このタグはオプションであり、デバッグ目的でのみ使用されます。

公開鍵 DNS レコードの例は次のとおりです:

セレクター:

dkimkey._domainkey.example.com.

値:

"v=DKIM1; h=sha256; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCfjgu4wJ4hm7T3cjhYfyX3WfZwLGNqJtU2Ol1i8sT1o3F1FbZI4P7FqQW7MkMfsHnY6f7loG+RwkZsKdowq+8Gg9G2xRF1YJynBKLpdX4eR4Q2m5F3LjMfQSSMmN1CRrSeyRGNVQqjxweG5lJfR0GZsT7hnrccllH+oL1HhQIDAQ"

関連トピック