code: func NewCertAndKey(caCert *x509.Certificate, caKey crypto.Signer, config *certutil.Config) (*x509.Certificate, crypto.Signer, error) {
  	key, err := NewPrivateKey()
  	if err != nil {
  		return nil, nil, errors.Wrap(err, "unable to create private key")
  	}
  
  	cert, err := NewSignedCert(config, key, caCert, caKey)
  	if err != nil {
  		return nil, nil, errors.Wrap(err, "unable to sign certificate")
  	}
  
  	return cert, key, nil
  }
docs: // NewCertAndKey creates new certificate and key by passing the certificate authority certificate and key