This tool verifies Web Key Directory (WKD) configuration for email addresses, checking both direct and advanced discovery methods. It validates policy files, CORS headers, key availability, and proper key association with the email address.

At least one Method is required to be set up for the WKD to work.

More Information

Direct Method Unknown

Policy Available:Unknown
Policy CORS Valid:Unknown
Key Location:Unknown
Key Available:Unknown
Key CORS Valid:Unknown
Key Type:Unknown
Fingerprint:Unknown
Email in Key:Unknown

Advanced Method Unknown

Policy Available:Unknown
Policy CORS Valid:Unknown
Key Location:Unknown
Key Available:Unknown
Key CORS Valid:Unknown
Key Type:Unknown
Fingerprint:Unknown
Email in Key:Unknown

Overall Status Unknown

Valid: Unknown

Usage

To use this web-tool just put the email address you want to check into the input field and press the “Check WKD Status” button. The results will be displayed below the form.

This tool is powered by the wkd-checker NPM library that I developed. You can also use the NPM library directly to run locally and more privately.

CLI

1
npx wkd-checker test@example.com

Node.js Library

1
npm install wkd-checker
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
const wkd = require('wkd-checker');

const email = 'test@example.com';

wkd.checkKey(email)
    .then(result => {
        console.log('WKD Result:', result);
        console.log('Advanced:', result.advanced.valid);
        console.log('Direct:', result.direct.valid);
    })

API

  • Endpoint: POST https://miarecki.eu/api/wkd
  • Content-Type: application/json or application/x-www-form-urlencoded
  • Request Body:
    • JSON: { "email": "user@example.com" }
    • Form: email=user@example.com

Example JSON Output (for both CLI, library, and API)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
  "advanced": {
    "policyAvailable": false,
    "policyCorsValid": false,
    "key_location": "https://openpgpkey.miarecki.eu/.well-known/openpgpkey/miarecki.eu/hu/u5u31zhdn1tyua7kdr4xmbd7k3h733b7?l=jonatan",
    "key_available": false,
    "keyCorsValid": false,
    "keyType": "Invalid",
    "keyTypeValid": false,
    "fingerprint": null,
    "emailInKey": false,
    "valid": false
  },
  "direct": {
    "policyAvailable": true,
    "policyCorsValid": true,
    "key_location": "https://miarecki.eu/.well-known/openpgpkey/hu/u5u31zhdn1tyua7kdr4xmbd7k3h733b7?l=jonatan",
    "key_available": true,
    "keyCorsValid": true,
    "keyType": "BinaryKey",
    "keyTypeValid": true,
    "fingerprint": "18EECCF319422F31D717796880B1C14A34B7634A",
    "emailInKey": true,
    "valid": true
  }
}