{
  "slug": "pem-to-jwk",
  "name": "gizza-ai/pem-to-jwk",
  "version": "0.1.0",
  "title": "PEM to JWK Converter — gizza.ai",
  "description": "Convert a PEM-encoded RSA or EC key into a JSON Web Key (JWK), in your browser. Nothing is uploaded.",
  "tags": [
    "pem",
    "jwk",
    "rsa",
    "ec",
    "json web key",
    "crypto",
    "developer"
  ],
  "category": "security",
  "urls": {
    "page": "https://gizza.ai/tools/pem-to-jwk/",
    "markdown": "https://gizza.ai/tools/pem-to-jwk/index.md",
    "descriptor": "https://gizza.ai/tools/pem-to-jwk/tool.json",
    "deep_link_example": "https://gizza.ai/tools/pem-to-jwk/?input=-----BEGIN%20PUBLIC%20KEY-----%0A...%0A-----END%20PUBLIC%20KEY-----"
  },
  "cli": "gizza tool pem-to-jwk 'input=-----BEGIN PUBLIC KEY-----\n...\n-----END PUBLIC KEY-----'",
  "tool": {
    "description": "Convert a PEM-encoded cryptographic key into the equivalent JSON Web Key (JWK, RFC 7517/7518). Supports RSA (PKCS#1, PKCS#8, or SPKI) and EC over the NIST curves P-256, P-384 and P-521 (SEC1, PKCS#8, or SPKI). A public key yields a public JWK ({kty, n, e} or {kty, crv, x, y}); a private key yields a private JWK with the private components (RSA d/p/q/dp/dq/qi, or EC d). All binary members are base64url-encoded per spec. Runs locally — the key never leaves the device.",
    "parameters": {
      "additionalProperties": false,
      "properties": {
        "pem": {
          "description": "The PEM-encoded key, including the -----BEGIN ...----- / -----END ...----- lines. RSA (PKCS#1/PKCS#8/SPKI) or EC over P-256, P-384, P-521 (SEC1/PKCS#8/SPKI), public or private.",
          "type": "string"
        }
      },
      "required": [
        "pem"
      ],
      "type": "object"
    }
  }
}