溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

DKIM Selector的原理及用法是什么

發布時間:2021-12-23 09:05:40 來源:億速云 閱讀:165 作者:柒染 欄目:網絡安全

DKIM Selector的原理及用法是什么,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

DKIM selector 是什么?

DKIM selector,又名 DKIM 選擇子或 DKIM 選擇器,是一個被郵件發送服務器用來確定私有密鑰來對郵件簽名的字符串。在郵件接收服務器上,它被用來在 DNS 中獲取公有密鑰來驗證郵件的完整性。

每創建一個私有/公有密鑰對時,將會產生一個 { selector, 私有密鑰, 公有密鑰 } 元組,其中 selector 被用來獲取私有密鑰和公有密鑰。

如何選擇 DKIM selector?

當用戶為郵件發送服務(例如 SendGrid)創建一個私有/公有密鑰對時,需要指定一個 DKIM selector,該 DKIM selector 可以是任何字符串。

為什么需要多個 DKIM selectors?

基于以下的理由,需要有多個私有/公有密鑰對:

DKIM key rotation,下面將會解釋;

在單一的域名上為多個郵件發送服務設置 DKIM;每個服務可以有自己單獨的 selector,這樣每個服務的簽名/驗證不會干擾其他服務。

每當一封郵件發送/驗證的時候,只有一對密鑰會被用到。這時候 DKIM selector 就會派上用場:該 DKIM selector 被簽名服務器用來在密鑰對中獲取私有密鑰,驗證服務器則用同一個 DKIM selector 來獲取公有密鑰。

DKIM selector 在 DKIM 驗證中如何工作?

一旦簽名服務器確定了 DKIM selector,該服務器就用它來找到對應的密鑰,來計算簽名。一旦簽名計算完畢,該 DKIM selector 被插入到郵件頭部的 s=標簽中,然后發送該郵件。

例如,假定選擇的 selector 是 s1,該標簽就是 s=s1。再次提醒一下,該 selector 可以是任何字符串,像 thisismyselector1234,只要它指向一個有效的私有/公有密鑰對就可以了。

這是一個實際的 DKIM 簽名頭域例子:

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dmarcly.com; h=content-transfer-encoding:content-type:from:mime-version:subject: x-feedback-id:to; s=s1; bh=jCC0oQBCKfJ10bCI3PCG52Zwowyeh2haGJPACkWN9F4=; b=GzLBVZ0M1hMt1Y7hVT+ajaNrswTv+/FFVMrcaixD70hpTJwAmNwZUKJIzLslSC+iWHby 9gm+yfx6Z1qnXIL6qgBPnlZD4zwyK4D3Umd1je82jniuD7RJWYDqJH0zL+EevCDdoVZGmT IlxzZB6v95bws6539z/5qee+Xmu5KYe4Y=

上述 DKIM 簽名所用的 DKIM selector 是 s=s1。

當郵件抵達接收服務器時,服務器檢查郵件頭域來找到 s=標簽。如果該標簽存在,服務器從中抽取 selector,然后在 DNS 的以下位置尋找公有密鑰:

s1._domainkey.example.com

如果公有密鑰被找到,服務器用它來檢查郵件的完整性。如果檢查通過,DKIM 驗證成功,否則失敗。

如果無法找到公有密鑰,DKIM 驗證失敗。

DKIM key rotation 是什么?

DKIM 已經證明是用來驗證郵件完整性的有效手段。但是 DKIM 也有自身的弱點。如果保存 DKIM 的私有密鑰的系統被入侵的話,安全性將大打折扣。因此,為了最小化被破解的風險,應該定期改變 DKIM 密鑰對。這叫 DKIM key rotation (DKIM 密鑰輪換)。

每次密鑰輪換的時候,一個新的 {selector, 私有密鑰, 公有密鑰} 元組將被產生。然后公有密鑰將被發布在 DNS 中,你需要重新配置郵件發送服務器來使用新的私有密鑰。完成以后,該服務器將會使用新的私有密鑰來對所有即將被發送的郵件簽名。

原來的密鑰應當繼續保存7天,然后就可以安全地移除。原因是在郵件發送以后和到達接受服務器之間可能會有延遲。如果在接受服務器上有臨時錯誤的話,這樣的延遲可能長達幾天。為了讓 DKIM 驗證通過,接收服務器必須能夠在 DNS 中找到對應的公有密鑰。

只有當你運行自己的郵件發送服務器的時候,你才需要手工做 DKIM 密鑰輪換。如果你使用類似 SendGrid, Office 365, 或者 GSuite 等服務來發送郵件的話,你無需做任何事 -- DKIM 密鑰輪換是自動完成的。

DKIM selector VS DKIM 記錄

如果你在類似 SendGrid 的郵件發送服務中設置 DKIM 的話,它將會為你創建 CNAME 類型的 DKIM 記錄。下面是一條 CNAME 類型的 DKIM 記錄:

s1.domainkey.u5022280.wl431.sendgrid.net

你需要在 DNS 中發布類似的記錄,使得接收服務器可以訪問。留意上面記錄中的 s1部分:這是 DKIM selector,被接收服務器用來獲取公有密鑰,然后將其用來驗證 DKIM 簽名。

如何用 DKIM selector 來檢查 DKIM 記錄

如果你需要檢查某個域名上的 selector 是否有 DKIM 記錄,可以用這個 免費 DKIM 記錄檢查器.

輸入需要檢查的域名和 selector 即可。

看完上述內容,你們掌握DKIM Selector的原理及用法是什么的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女