Files
zogo/certx
4566704 f120ab24ed feat(certx): go-hua/ssl 迁入并更名 certx(证书/私钥工具)
- 原包名 ssl 与协议名混淆, 实为 x509 证书解析校验与自签生成, 更名 certx
- 附测试、examples/certx 例程与包 README
2026-09-20 12:37:10 +08:00
..

certx

证书/私钥工具:PEM 解析校验(证书、公私钥匹配验证)与自签证书生成。

迁移自 go-hua/ssl 并更名:原包名 ssl 与协议名混淆,实际是 x509 证书操作, 故更名 certx。

用法

import "git.zeroonesoft.cn/golib/zogo/certx"

// 自签证书(返回证书 PEM 与私钥 PEM)
certPEM, keyPEM, err := certx.CreateCertificate(
    "localhost",                 // CommonName
    []string{"localhost", "example.com"}, // SAN DNS 列表
)

// 解析校验
cert, err := certx.ParseCertificate(certPEM)
key, err := certx.ParsePrivateKey(keyPEM)
err = certx.VerifyPrivateKey(cert, keyPEM) // 证书与私钥是否配对

完整可运行例程:examples/certx/main.go

注意

  • CreateCertificate 生成 RSA 2048 自签证书,仅适合内网/测试或做 CA 签发的种子; 生产对外服务请用正规 CA 证书。
  • ParsePrivateKey 支持 PKCS#1/PKCS#8/EC 三种 PEM 形态,返回 any(断言后使用)。