repositorypackage
0.0.0-20220217070728-bcff5f33afd0
Repository: https://github.com/takumakei/go-cert4now.git
Documentation: pkg.go.dev
# Packages
No description provided by the author
# README
Certificate for now
Purpose
Easily generate a certificate for the time being, usable on a TLS-enabled server.
Example
Generating a self signed certificate, then saving it into file.
cert, _ := cert4now.Generate()
cert4now.WritePrivateKeyFile("cert.key", cert, 0600)
cert4now.WriteCertificateFile("cert.crt", cert, 0644)
Generating a root CA, an intermediate CA and a leaf certificate.
rootCA, _ := cert4now.Generate(
cert4now.CommonName("My Root CA"),
cert4now.AddDate(20, 0, 0),
cert4now.KeyUsage(x509.KeyUsageDigitalSignature|x509.KeyUsageCertSign|x509.KeyUsageCRLSign),
cert4now.ExtKeyUsage(),
cert4now.IsCA(true),
)
ca, _ := cert4now.Generate(
cert4now.Authority(rootCA),
cert4now.CommonName("My CA"),
cert4now.AddDate(20, 0, 0),
cert4now.KeyUsage(x509.KeyUsageDigitalSignature|x509.KeyUsageCertSign|x509.KeyUsageCRLSign),
cert4now.ExtKeyUsage(),
cert4now.IsCA(true),
)
cert, _ := cert4now.Generate(
cert4now.Authority(ca),
cert4now.CommonName("www.example.com"),
cert4now.IsCA(false),
)