func newCertificateAuthority() (*rsa.PrivateKey, *x509.Certificate, error) { key, err := certutil.NewPrivateKey() if err != nil { return nil, nil, fmt.Errorf("unable to create private key [%v]", err) } config := certutil.Config{ CommonName: "kubernetes", } cert, err := certutil.NewSelfSignedCACert(config, key) if err != nil { return nil, nil, fmt.Errorf("unable to create self-signed certificate [%v]", err) } return key, cert, nil }
func NewCA(name string) (*KeyPair, error) { key, err := certutil.NewPrivateKey() if err != nil { return nil, fmt.Errorf("unable to create a private key for a new CA: %v", err) } config := certutil.Config{ CommonName: name, } cert, err := certutil.NewSelfSignedCACert(config, key) if err != nil { return nil, fmt.Errorf("unable to create a self-signed certificate for a new CA: %v", err) } return &KeyPair{ Key: key, Cert: cert, }, nil }