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

32 lines
1.0 KiB
Markdown

# certx
证书/私钥工具:PEM 解析校验(证书、公私钥匹配验证)与自签证书生成。
> 迁移自 go-hua/ssl 并更名:原包名 `ssl` 与协议名混淆,实际是 x509 证书操作,
> 故更名 `certx`。
## 用法
```go
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](../examples/certx/main.go)
## 注意
- `CreateCertificate` 生成 RSA 2048 自签证书,仅适合内网/测试或做 CA 签发的种子;
生产对外服务请用正规 CA 证书。
- `ParsePrivateKey` 支持 PKCS#1/PKCS#8/EC 三种 PEM 形态,返回 `any`(断言后使用)。