{
  "slug": "pem-bundle-splitter",
  "name": "gizza-ai/pem-bundle-splitter",
  "version": "0.1.0",
  "title": "PEM Bundle Splitter — Separate Certificates, Keys, and CSRs — gizza.ai",
  "description": "Split concatenated PEM bundles into ordered, labeled blocks with type summaries, DER byte counts, suggested filenames, and optional SHA-256 fingerprints.",
  "tags": [
    "pem splitter",
    "certificate chain",
    "fullchain pem",
    "private key",
    "csr",
    "sha256 fingerprint",
    "tls certificate",
    "x509"
  ],
  "category": "security",
  "urls": {
    "page": "https://gizza.ai/tools/pem-bundle-splitter/",
    "markdown": "https://gizza.ai/tools/pem-bundle-splitter/index.md",
    "descriptor": "https://gizza.ai/tools/pem-bundle-splitter/tool.json",
    "deep_link_example": "https://gizza.ai/tools/pem-bundle-splitter/?pem=-----BEGIN%20CERTIFICATE-----%0AAQID%0A-----END%20CERTIFICATE-----%0A-----BEGIN%20PRIVATE%20KEY-----%0ACAk%3D%0A-----END%20PRIVATE%20KEY-----&output=report&fingerprints=true"
  },
  "cli": "gizza tool pem-bundle-splitter \"-----BEGIN CERTIFICATE-----\nAQID\n-----END CERTIFICATE-----\n-----BEGIN PRIVATE KEY-----\nCAk=\n-----END PRIVATE KEY-----\"",
  "tool": {
    "description": "Split a multi-block PEM bundle into individual labeled blocks in input order. Reports the PEM label, friendly type, category counts, DER byte length, suggested filename, and optional SHA-256 fingerprint. Supports certificates, private/public keys, CSRs, params, PGP/OpenSSH blocks, and unknown PEM labels.",
    "parameters": {
      "additionalProperties": false,
      "properties": {
        "fingerprints": {
          "default": true,
          "description": "Include a SHA-256 fingerprint of each block's decoded DER bytes.",
          "type": "boolean"
        },
        "output": {
          "default": "report",
          "description": "Output format: readable report, structured JSON, or cleaned individual PEM blocks.",
          "enum": [
            "report",
            "json",
            "pem"
          ],
          "type": "string"
        },
        "pem": {
          "description": "Concatenated PEM bundle text containing one or more -----BEGIN ...----- / -----END ...----- blocks.",
          "type": "string"
        }
      },
      "required": [
        "pem"
      ],
      "type": "object"
    }
  }
}