# PemToCertificate()

Parses a PEM-encoded certificate string into a Java X509Certificate object.

**Requires Extension:** [Crypto Extension](https://download.lucee.org/#17AB52DE-B300-A94B-E058FC978BE4542D)

```
PemToCertificate( pem=string );
```

**Returns:** any

# Arguments

| Argument | Type | Required | Description | Default |
|----------|------|----------|-------------|---------|
| pem | string | Yes | PEM-encoded certificate string |  |

# Examples

```cfml
// Convert a PEM-encoded certificate string into a Java X509Certificate object
// Useful when you need to pass the certificate to Java APIs
keyPair = GenerateKeyPair( "RSA-2048" );
certPem = GenerateSelfSignedCertificate(
	keyPair = keyPair,
	subject = "CN=localhost"
);

certObj = PemToCertificate( certPem );
// certObj is a java.security.cert.X509Certificate

// Convert back to PEM with CertificateToPem()
pem = CertificateToPem( certObj );
// pem starts with "-----BEGIN CERTIFICATE-----"
```







# Categories

[Cryptography](../../categories/crypto.md)

# See Also

[CertificateInfo()](certificateinfo.md), [CertificateToPem()](certificatetopem.md)