本頁內容

郵件與網域

檢查 DKIM

API · Pro

涵蓋範圍: 適用於任何國家的網域。沒有選取器時,我們會試試各大供應商的預設選取器(Google、Microsoft 365、Zoho、Proton、Fastmail、Mailchimp 等)和常見的通用名稱,共 33 個。我們會像收件伺服器一樣讀取金鑰(RFC 6376):支援 RSA 和 Ed25519。

開啟工具
本頁內容

用途

檢查網域的 DKIM 金鑰:輸入選取器,或讓我們試試最常見的選取器,並查看每把金鑰的類型、位元長度,以及是否處於測試中或已停用。

使用要求

任何 NoCall 帳號都可以閱讀這些指南。部分工具需要 Pro,各指南會註明。

DKIM 讓網域能用發布在 DNS 中的金鑰簽署郵件,收件端便能確認郵件確實來自該網域,且未遭竄改。每把金鑰都位於一個稱為「選取器」的名稱之下。請輸入網域;如果知道選取器,也一併輸入。沒有選取器時,我們會試試 33 個常見的選取器。

使用步驟

  1. 打開該網域寄出的郵件,顯示原始郵件或郵件標頭(在 Gmail 中:點選三個點圖示,再選「顯示原始郵件」)。

  2. 找到「DKIM-Signature」標頭:「d=」是網域,「s=」是選取器,例如 s=selector1。

  3. 輸入網域和選取器,然後按下「檢查 DKIM」。沒有選取器時,我們會試試 33 個常見的選取器,例如 default、google、selector1 或 k1。

虛構範例

說明

此範例為虛構內容,並非真實查詢。請勿撥打電話或開啟其中的連結。

虛構範例
selector1._domainkey.example.com

理解結果

這個網域使用 DKIM 簽署郵件: 我們找到了它的公開金鑰:收件端可以確認它的郵件來自這個網域,且在傳送途中未遭竄改。

有 DKIM 金鑰,但有警告: 我們找到至少一把金鑰,但有些已停用、處於測試中或強度太弱。詳細資訊列在每把金鑰下方。

常見的選取器中沒有 DKIM 金鑰: 這不代表該網域沒有 DKIM:它可能使用其他選取器。你可以在它寄給你的郵件中,從「DKIM-Signature: s=」標頭找到選取器。請在「選取器」中輸入,再檢查一次。

這個選取器沒有 DKIM 金鑰: 請檢查拼寫:選取器是「DKIM-Signature」標頭的「s=」值,網域則是它的「d=」值。

金鑰是空白的(p=):這個選取器已停用,不再用來簽署郵件。

金鑰處於測試模式(t=y):網域要求收件端在簽章驗證失敗時不要採取行動。

RSA 金鑰短於 1024 位元:可能被破解,許多收件端也不接受。

RSA 金鑰為 1024 位元:仍可接受,但建議使用 2048 位元。

金鑰只允許 SHA-1,這種舊演算法已不再被視為安全。

金鑰記錄有錯誤,無法讀取。

金鑰類型不是 RSA 或 Ed25519,因此收件端無法使用。

限制

注意

這不代表該網域沒有 DKIM:它可能使用其他選取器。你可以在它寄給你的郵件中,從「DKIM-Signature: s=」標頭找到選取器。請在「選取器」中輸入,再檢查一次。

我們讀取的是該網域的公開 DNS 記錄。如果你輸入電子郵件地址或連結,只有其中的網域會離開你的瀏覽器。你查詢的網域不會被儲存。

疑難排解

這看起來不像公開的網域。請試試類似 example.com 的網域。

選取器只能包含字母、數字、連字號、底線和句點。

DNS 沒有及時回應。請過幾秒再試。

你連續做了很多次檢查。請等一分鐘後再試。

透過 API 使用

注意

需要 API 金鑰和點數。每次完成的呼叫扣 1 點,即使沒有資料也一樣。有效的 Pro 帳戶每個 UTC 曆月包含 20 點,由所有 API 路由共用並優先扣用;當月未使用的點數不會累積到下個月。在帳戶頁面購買的點數不需 Pro 即可使用,且永不過期。

說明

錯誤一律不扣點:401 invalid_api_key(缺少金鑰或金鑰無效)、403 pro_required(沒有 Pro 點數,也沒有購買的點數)、422 輸入無效、429 quota_exceeded(點數用完)、rate_limit_exceeded 或 ai_busy(sms-check 的 AI 已達負載上限)、503 tool_warming(資料仍在準備中)或 tool 或供應商無法使用。收到 429 或 503 後,請等 Retry-After 標頭中的秒數過後再重試。

網域在某個選取器下的 DKIM 金鑰;未提供選取器時,則查詢約 33 個常見選取器:每把金鑰的類型(rsa 或 ed25519)、位元長度,以及是否處於測試中或已撤銷。none_found 不能證明網域沒有 DKIM:它可能使用其他選取器。不儲存任何內容。

將 JSON 主體傳送到該 tool 專屬的路由,或加上 tool 欄位後傳送到 POST /v2/tools。兩種路由回傳的結果相同。

端點
POST https://api.nocall.io/v2/dkim-check
POST https://api.nocall.io/v2/tools  {"tool":"dkim-check","domain":"example.com","selector":"s1"}

參數

名稱類型必填說明
domainstring (1–320)是網域,或會從中取出網域的電子郵件地址或連結,最多 320 個字元。僅限公開名稱:IP 位址、單一標籤名稱和特殊用途名稱(.local、.internal、.test…)會傳回 422。
selectorstring (1–120)否選取器:DKIM-Signature 標頭中的 s= 標籤,最多 120 個字元。未提供時,會嘗試約 33 個常見選取器。
bash
REQUEST_ID="$(uuidgen)" && [ -n "$REQUEST_ID" ] &&
curl --request POST 'https://api.nocall.io/v2/dkim-check' \
  --header "Authorization: Bearer $NOCALL_API_KEY" \
  --header 'Content-Type: application/json' \
  --header "Idempotency-Key: $REQUEST_ID" \
  --data '{"domain":"example.com","selector":"s1"}'

回應範例(200)

這是 API 參考文件中的範例。查詢使用虛構號碼,彙總資料和 AI 回答只呈現結果的結構,並非即時資料。

JSON
{
  "data": {
    "tool": "dkim-check",
    "result": {
      "domain": "example.com",
      "domainAscii": "example.com",
      "selectorGiven": true,
      "selectorsTried": 1,
      "keys": [
        {
          "selector": "s1",
          "keyType": "rsa",
          "keyBits": 2048,
          "testing": false,
          "revoked": false,
          "valid": true,
          "signals": []
        }
      ],
      "signals": [],
      "attention": false
    }
  },
  "meta": {
    "requestId": "req_example",
    "unitsCharged": 1,
    "usage": {
      "periodStart": "2026-10-01",
      "unitLimit": 20,
      "unitsUsed": 3,
      "unitsRemaining": 17
    }
  }
}

結果欄位(data.result)

欄位類型說明
domainstringUnicode 形式的網域。
domainAsciistring同一個網域的 ASCII 形式(punycode),即 DNS 所見的形式。
selectorGivenboolean是否提供了選取器;若未提供,則改為嘗試常見選取器。
selectorsTriedinteger查詢過的選取器數量。
keysarray<object>每個發布金鑰的選取器:selector、keyType(rsa 或 ed25519)、keyBits(ed25519 為 256)、testing(t=y)、revoked(空白的 p=)、valid,以及它的訊號(revoked_key、testing_mode、weak_key、short_key、sha1_only、syntax_error 或 unknown_key_type)。
signalsarray<"none_found">none_found:在提供的選取器或任何常見選取器中都沒有金鑰(仍可能在使用其他選取器)。
attentionboolean結果是否值得進一步查看:找不到金鑰,或有金鑰無效、已撤銷、處於測試中或強度太弱。

常見問題

什麼是 DKIM?

DomainKeys Identified Mail:寄件伺服器用私密金鑰簽署每封郵件,網域則在 DNS 中發布公開金鑰。收件伺服器會驗證簽章:如果相符,就表示郵件來自該網域,且在傳送途中未遭更改。

什麼是選取器?

金鑰發布時所用的名稱,位置在 selector._domainkey.example.com。一個網域可以有好幾個,例如每個供應商一個,或每次更換金鑰時各一個。它會以「s=」出現在每封郵件的「DKIM-Signature」標頭中。

網域明明使用 DKIM,為什麼找不到金鑰?

選取器可以取任何名稱,而 DNS 無法列出它們。我們會試試 33 個常見的選取器;如果網域使用其他選取器,請在「選取器」中輸入。所以「找不到」並不能證明沒有 DKIM。

1024 和 2048 位元是什麼意思?

這是 RSA 金鑰的長度:越長就越難破解。1024 位元仍可接受,但建議使用 2048 位元。低於 1024 位元時,許多收件端會忽略簽章。