cert

package
v0.11.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 17, 2023 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// PrivateKeyBlockType is a possible value for pem.Block.Type.
	PrivateKeyBlockType = "PRIVATE KEY"
	// PublicKeyBlockType is a possible value for pem.Block.Type.
	PublicKeyBlockType = "PUBLIC KEY"
	// CertificateBlockType is a possible value for pem.Block.Type.
	CertificateBlockType = "CERTIFICATE"
	// RSAPrivateKeyBlockType is a possible value for pem.Block.Type.
	RSAPrivateKeyBlockType = "RSA PRIVATE KEY"
)

Variables

This section is empty.

Functions

func EncodeCertPEM

func EncodeCertPEM(cert *x509.Certificate) []byte

EncodeCertPEM returns PEM-encoded certificate data

func NewPrivateKey

func NewPrivateKey(keyType x509.PublicKeyAlgorithm) (crypto.Signer, error)

NewPrivateKey creates an RSA private key

func PathForCert

func PathForCert(pkiPath, name string) string

func PathForKey

func PathForKey(pkiPath, name string) string

func PathForPublicKey

func PathForPublicKey(pkiPath, name string) string

Types

type AltNames

type AltNames struct {
	DNSNames map[string]string
	IPs      map[string]net.IP
}

AltNames contains the domain names and IP addresses that will be added to the API Server's x509 certificate SubAltNames field. The values will be passed directly to the x509.Certificate object.

type AuthorityCertificateGenerator

type AuthorityCertificateGenerator struct {
	// contains filtered or unexported fields
}

func (AuthorityCertificateGenerator) Generate

type CertificateDescriptor

type CertificateDescriptor struct {
	CommonName   string
	DNSNames     []string
	Organization []string
	Year         time.Duration
	AltNames     AltNames
	Usages       []x509.ExtKeyUsage
}

CertificateDescriptor contains the basic fields required for creating a certificate

type CertificateFileManger

type CertificateFileManger struct {
	// contains filtered or unexported fields
}

CertificateFileManger Asymmetric encryption, like ca.crt and ca.key

func NewCertificateFileManger

func NewCertificateFileManger(certPath string, certName string) CertificateFileManger

func (CertificateFileManger) Read

func (c CertificateFileManger) Read() (cert *x509.Certificate, key crypto.Signer, err error)

func (CertificateFileManger) Write

type CertificateGenerator

type CertificateGenerator interface {
	Generate() (*x509.Certificate, crypto.Signer, error)
}

func NewAuthorityCertificateGenerator

func NewAuthorityCertificateGenerator(config CertificateDescriptor) CertificateGenerator

func NewCommonCertificateGenerator

func NewCommonCertificateGenerator(config CertificateDescriptor, caCert *x509.Certificate, caKey crypto.Signer) (CertificateGenerator, error)

type CommonCertificateGenerator

type CommonCertificateGenerator struct {
	// contains filtered or unexported fields
}

func (CommonCertificateGenerator) Generate

type KeyPairFileGenerator

type KeyPairFileGenerator struct {
	// contains filtered or unexported fields
}

KeyPairFileGenerator write symmetric encryption key, like: sa.key and sa.pub

func NewKeyPairFileGenerator

func NewKeyPairFileGenerator(certPath string, certName string) KeyPairFileGenerator

func (KeyPairFileGenerator) GenerateAll

func (k KeyPairFileGenerator) GenerateAll() error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL