Skip to main content

Composite template

Example:

{
  "key_gen": {
    "enabled": true,
    "key_type": {
      "allowed_types": [
        "MLDSA-44_RSA2048-Sha256",
        "MLDSA-44_RSA2048-Sha256Pss",
        "MLDSA-44_ECDSA-P256",
        "MLDSA-44_Ed25519",
        "MLDSA-65_RSA3072-Sha512",
        "MLDSA-65_RSA3072-Sha512Pss",
        "MLDSA-65_ECDSA-P256",
        "MLDSA-65_Ed25519",
        "MLDSA-87_ECDSA-P384"
      ]
    }
  },
  "issue_types": [
    "client_authentication"
  ],
  "signature_algorithm": {
    "default_algorithm": "match_issuer",
    "MLDSA-44_RSA2048-Sha256": [
      "MLDSA-44_sha256WithRSA"
    ],
    "MLDSA-44_RSA2048-Sha256Pss": [
      "MLDSA-44_sha256WithRSAPss"
    ],
    "MLDSA-44_ECDSA-P256": [
      "MLDSA-44_sha256WithECDSA"
    ],
    "MLDSA-44_Ed25519": [
      "MLDSA-44_Ed25519-HashedEd25519"
    ],
    "MLDSA-65_RSA3072-Sha512": [
      "MLDSA-65_sha512WithRSA"
    ],
    "MLDSA-65_RSA3072-Sha512Pss": [
      "MLDSA-65_sha512WithRSAPss"
    ],
    "MLDSA-65_ECDSA-P256": [
      "MLDSA-65_sha512WithECDSA"
    ],
    "MLDSA-65_Ed25519": [
      "MLDSA-65_Ed25519-HashedEd25519"
    ],
    "MLDSA-87_ECDSA-P384": [
      "MLDSA-87_sha512WithECDSA"
    ]
  },
  "subject": {
    "attributes": [
      {
        "type": "common_name",
        "include": "optional",
        "encoding": "auto",
        "allowed_source": [
          "csr",
          "fixed_value",
          "user_supplied"
        ]
      },
      {
        "type": "organization_name",
        "include": "optional",
        "encoding": "auto",
        "allowed_source": [
          "csr",
          "fixed_value",
          "user_supplied"
        ]
      },
      {
        "type": "organization_unit",
        "include": "optional",
        "encoding": "auto",
        "allowed_source": [
          "csr",
          "fixed_value",
          "user_supplied"
        ]
      },
      {
        "type": "street_address",
        "include": "optional",
        "encoding": "auto",
        "allowed_source": [
          "csr",
          "fixed_value",
          "user_supplied"
        ]
      },
      {
        "type": "postal_code",
        "include": "optional",
        "encoding": "auto",
        "allowed_source": [
          "csr",
          "fixed_value",
          "user_supplied"
        ]
      },
      {
        "type": "locality",
        "include": "optional",
        "encoding": "auto",
        "allowed_source": [
          "csr",
          "fixed_value",
          "user_supplied"
        ]
      },
      {
        "type": "state",
        "include": "optional",
        "encoding": "auto",
        "allowed_source": [
          "csr",
          "fixed_value",
          "user_supplied"
        ]
      },
      {
        "type": "country",
        "include": "optional",
        "encoding": "auto",
        "allowed_source": [
          "csr",
          "fixed_value",
          "user_supplied"
        ]
      },
      {
        "type": "email",
        "include": "optional",
        "encoding": "auto",
        "allowed_source": [
          "csr",
          "fixed_value",
          "user_supplied"
        ]
      }
    ]
  },
  "extensions": {
    "key_usage": {
      "critical": true,
      "required_usages": {
        "composite": [
          "digital_signature"
        ]
      },
      "optional_usages": {
        "composite": [
          "non_repudiation"
        ]
      }
    },
    "extended_key_usage": {
      "critical": true,
      "include": "optional",
      "required_usages": [
        {
          "oid": "client_authentication",
          "name": "Client Authentication"
        }
      ],
      "optional_usages": [
        {
          "oid": "server_authentication",
          "name": "Server Authentication"
        }
      ]
    }
  },
  "serial_number_size": 20,
  "validity": {
    "min_duration": {
      "value": 1,
      "unit": "DAYS"
    },
    "max_duration": {
      "value": 10,
      "unit": "YEARS"
    },
    "default_duration": {
      "value": 10,
      "unit": "YEARS"
    }
  },
  "is_composite": true
}