import ( "crypto/x509" "encoding/pem" "fmt" ) func main() { pemCert := ` -----BEGIN CERTIFICATE----- MIIC9TCCAd2gAwIBAgIRAJNfWwypOMPE7M/Ubdmgng0wDQYJKoZIhvcNAQELBQAw FjEUMBIGA1UEAxMLRGV2ZWxvcGVyMB4XDTIwMDUyNjE5MTMxN1oXDTIxMDUyNjE5 MTMxN1owFjEUMBIGA1UEAxMLRGV2ZWxvcGVyMIIBIjANBgkqhkiG9w0BAQEFAAOC AQ8AMIIBCgKCAQEAvI8s5cdZckKkX6xsWy/FMD5q72n7qA39opmpbvQv8wy/Eghu jRLU5ua9TvxJA7EWivKQmpijezI2sCT0HzKZzGH+s+uRlkQkMCYn+guTRh1rXuFK 9z2K2KrMds5NqP0diP4KZs1gBym/kKDDsI6TbVZmPFf4KIk3iBSOIjiQ+4zlgbn7 r1h+dB+iVMhCjoZrbVLrjDuVicPc9k0C7BCGur/5Ggd/CdSyzy1Gi97sHt0N15tb 1bH3M+mNF/a97qlOmBfg2oL52LtLRqXzVJ39FiLSdfNnMopv+5RR9L2Z96moxr4S WTd1V9DK9QO87UH4Lz+e6K2/gwIDAQABoz0wOzAJBgNVHRMEAjAAMAsGA1UdDwQE AwIF4DATBgNVHSUEDDAKBggrBgEFBQcDAjAMBgNVHRMBAf8EAjAAMB0GA1UdDgQW BBRTxnXmGhfLU8h0OJ1NJA24eexqazAfBgNVHSMEGDAWgBRTxnXmGhfLU8h0OJ1N JA24eexqazANBgkqhkiG9w0BAQsFAAOCAQEAQ6WjnIvJnC/qRuKacvN1agOFUzBA 6ISMAzXXLSEZPYA5imS1uruzTLd+uFhdZQF/nJ6M+u0FDvhtfNkuJfWkIFjAXGlS ySt9SrO8lbPG+Oq2V7Ib2s8edK7GrnonQjUJTaWc7fnoG8exvO82jd/L3QJPHOp9 y0LCHfUgXX6Wvq9lFGEd7rzQ0ym2DoeKVKKluzsvsJLGTmhFm5pPDfpFm1Cq9DC0 I9MawgBkFf/Pv/dOvfHJxEkK2zWh8Ljqwxzgp5gUms5RUEhpKHbSR+a79+lTXKJT gOtBgfHBY8odLpQwiGMZt1uDdQ4n/xT7fG5KX3Rn+6/EcwvqyB0Ayw== -----END CERTIFICATE----- ` block, _ := pem.Decode([]byte(pemCert)) cert, _ := x509.ParseCertificate(block.Bytes) certPool := x509.NewCertPool() certPool.AddCert(cert) fmt.Println(certPool) }In this example, we first define a PEM-encoded X.509 certificate and use the `pem.Decode` function to extract the certificate's raw bytes. We then parse the certificate using the `x509.ParseCertificate` function and add it to a new `x509.CertPool` using the `AddCert` method. The resulting `CertPool` can then be used to authenticate digital signatures or verify the identity of a public key holder. The `crypto.x509` package is part of Go's standard library.