[ DKIM ]

解釋DKIM時間戳與過期時間

當延遲訊息驗證失敗時,單獨的簽署者時間、接收時間和過期時間。

由EmailAuth研究團隊提供

[ 重點 ]

  • t 和 x 是絕對 Unix 紀元時間戳記;當兩者都出現時,x 必須大於 t。
  • 在診斷過期之前,比較可靠的首次收貨和稍後重新檢查的時間。
  • DNS TTL、金鑰保留和簽章過期是單獨的操作控制。
在此頁面上

延遲的訊息可能會導致與時間相關的失敗 DKIM 即使沒有人更改其內容也進行檢查。在輪換金鑰或指責網關之前診斷簽章的時間欄位和驗證者的決定。訊息日期標頭、簽名建立時間和接收者到達時間描述了不同的事件。

正確讀出 t 和 x

在一個 DKIM-Signature header 中,t 是簽章建立時間戳,x 是絕對過期時間戳,兩者皆表示為自 UTC Unix 紀元以來的秒數。 RFC 6376第 3.5 節正式將這兩個標籤標記為「建議」。他們可能缺席,但該津貼不應與可選要求水平混淆。 x 值不是加到目前時間的持續時間。當兩者都存在時,x 必須大於 t。缺少t表示創建時間未知;缺少 x 表示該標籤未指定簽名到期時間。 DNS TTL是一個不同的概念,並且不設定x。 DNS DKIM金鑰記錄中的 t 標記是一組標誌,而不是此簽章時間戳記。

RFC 6376第 3.5 節 允許實現忽略具有未來時間戳記的簽名。當驗證過期時,它還允許簽名被視為無效。為了進行比較,如果可靠可用,則驗證時間應為驗證者的管理域首次收到訊息的時間,否則為當前時間。這就留下了事件記錄必須與通用拒絕規則區分開來的實施選擇。

建立一個三時鐘時間線

捕獲準確的簽名和原始接收者證據。將 t 和 x 轉換為可讀的 UTC,同時保留原始整數。記錄簽署者的時脈、驗證管理域的首次可靠接收時間、診斷複檢時間。新增相關的隊列延遲。不要使用不受信任的日期標頭作為系統何時收到訊息的證據。

說明性場景:簽名於 10:00 UTC 創建,並於 12:00 UTC 到期。訊息於 11:50 到達接收方,但在 12:15 再次檢查。具有可靠首收資訊的驗證者可以使用 11:50;稍後的獨立工具可能只有當前時間。不同的結果本身並不會顯示損壞的內容。此範例描述了協議的時間區別,而不是關於特定提供者的承諾。

區分時鐘偏差和緊密窗口

如果新發出的簽名看起來來自未來,請檢查簽署者的時鐘同步和時間戳記產生。如果這些值合理,但郵件定期在 x 之後到達,請檢查排隊、重試路由和所選的有效間隔。 RFC 6376沒有規定通用的理想壽命。使用您的實際交付要求和支援的簽署者設定來設定一項。

短暫的過期並不是完整的重播防禦。 RFC 6376第 3.5 節 明確表示 x 不適用於此目的。它也不能取代金鑰保護或濫用監控。刪除舊的公鑰可能會導致獨立於 x 的延遲驗證變得不可能,因此請將過期策略與金鑰保留相協調。

測試修復並保留區別

修正時鐘或策略配置後,透過慢速和正常路徑發送新的受控訊息。驗證它們的時間戳記和接收器結果。保留證據顯示先前的故障是否與時間、金鑰可用性、 正文哈希 或簽名驗證。不要在現有簽名訊息上編輯 t 或 x:這些值已被簽名覆蓋,更改它們不是修復。

工作紀元範例

合成值t=1794132000和x=1794139200對應於 2026 年 11 月 8 日 10:00 UTC 和 12:00 UTC。它們的差異是 7,200 秒或兩個小時,但 x 本身仍然是絕對時間戳。 11:50 的可靠第一筆收據是在到期之前;之後將在 12:15 進行獨立複檢。驗證者選擇的參考時間和允許的過期處理解釋了可能的差異。相較之下,當兩個標籤都存在時, x=t違反了所需的順序。這些值說明了算術和協定規則,而不是執行的郵件測試。

保留緊湊的調查記錄

使用此建議的工作表來查看正在審查的路線。它是一種規劃輔助工具,而不是已執行測試的證據。

  • 簽章:原始 t 和 x 值、它們的 UTC 轉換、d 和 選擇器.
  • 時間表:簽名者時鐘,首先可靠的收據,然後重新檢查,帶有時區。
  • 發現:未來時間戳記、過期簽章、不可用金鑰或其他驗證失敗。
  • 修復:支援時鐘或生命週期變更以及新發送的正常和延遲路徑測試的結果。

[ 外帶 ]

t 和 x 是絕對 Unix 紀元時間戳記;當兩者都出現時,x 必須大於 t。在診斷過期之前,比較可靠的首次收貨和稍後重新檢查的時間。 DNS TTL、金鑰保留和簽章過期是單獨的操作控制。

[ 按角色 ]

這對您意味著什麼

選擇您的角色以執行後續實際步驟。

IT/郵件管理員

保留 UTC 時間線

單獨的簽名者創建、首次收據並稍後重新檢查。

後續步驟

  1. 保留原始紀元值。
  2. 檢查時鐘同步。

CISO / SecOps

將新鮮度與濫用控制分開

過期不會確定收件人意圖或阻止所有重播。

後續步驟

  1. 保留濫用監控。
  2. 協調密鑰保留。

創辦人/非技術人員

延遲商業郵件的帳戶

選擇承認合法排隊的計時策略。

後續步驟

  1. 在測試中包括延遲發票。
  2. 指定時鐘服務所有者。

[ 常見問題解答 ]

常見問題

xa 是 t 之後的秒數嗎?

不。它是絕對的 Unix 紀元時間戳記。如果兩個標籤都存在,則 x 必須超過 t。

RFC 6376 §3.5

缺少x是什麼意思?

此簽名標籤沒有指定過期時間。其他驗證和接收者策略檢查仍然適用。

RFC 6376 §3.5

未來會導致失敗嗎?

實作可能會忽略時間戳在未來的簽名。檢查簽署者時鐘和接收者行為。

RFC 6376 §3.5

哪個收貨時間很重要?

RFC 6376建議在驗證者的管理域(否則為當前時間)進行可靠的首次接收。

RFC 6376 §3.5

DNS TTL 是否設定簽章生命週期?

不。 TTL 涉及DNS快取; x 涉及簽名的可選過期時間。

RFC 6376 §3.5

我們可以更改延遲訊息上的 x 嗎?

更改簽名標頭會使原始簽名無效。正確配置並測試新訊息。

RFC 6376 §3.7

短 x 會停止重播嗎?

它不是一種完整的重播防禦,並且明確地不打算作為RFC 6376中的重播防禦。

RFC 6376 §3.5

有效期限應該多長?

在受支援的簽署者行為中使用觀察到的排隊和交付要求;這裡沒有規定普遍的壽命。

RFC 6376 §3.5

[ 來源 ]

來源

  1. RFC 6376域金鑰識別郵件簽名

    部分 §3.5 · §3.6.1 · §3.7 · §5.2 · §6.1.1 · §8.6

  2. RFC 9989基於網域的訊息驗證報告和一致性

    部分 簡介 · §4.4 · §5.3.5

  3. RFC 8601驗證結果

    部分 §1.2 · §7.1

[ 詞彙表 ]

詞彙表

簽名時間戳(t)
可選的DKIM-Signature創建時間,以自 Unix 紀元以來的秒數表示。

RFC 6376 §3.5

簽名過期 (x)
可選的絕對時間,在此之後驗證者可以認為簽名無效。

RFC 6376 §3.5

第一張收據
當訊息首次進入驗證者的管理網域時,用於可靠可用時的過期比較。

RFC 6376 §3.5

時鐘偏差
系統時鐘之間的差異可能會影響基於時間的簽名檢查。

RFC 6376 §3.5

DKIM選擇器
s 值與簽章域一起使用來尋找公用驗證金鑰。

RFC 6376 §3.5

企業出處

為什麼頂級金融機構和政府 退役了他們的電子郵件安全儀表板。

傳統的電子郵件驗證平台會向您出售儀表板並要求您的工程師來完成這項工作。在高風險環境中,手動監督意味著延遲執行、配置漂移和不受監控的影子域。

EmailAuth是代理電子郵件來源平台。 我們的代理人強制執行 p=reject,保持第三方寄件者一致並將您的網域移至完整狀態 RFC 9989 合規性、新的DMARC標準,以及人機互動審核能力。

政府 大型企業 一級金融機構

SaaS · 專用租賃 · 氣隙本地部署 · BYOK 加密

知識庫