ca

package
v1.0.5021 Latest Latest
Warning

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

Go to latest
Published: Jan 18, 2025 License: Apache-2.0 Imports: 25 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// get Cipher type
	GetCipherFromName = pkcs8.GetCipherFromName
	// get hash type
	GetHashFromName = pkcs8.GetHashFromName
)
View Source
var (
	ErrKeyMustBePEMEncoded = errors.New("invalid key: Key must be a PEM encoded OpenSSH key")

	ErrPrivateKeyError = errors.New("key is not a valid private key")
	ErrPublicKeyError  = errors.New("key is not a valid public key")
)

Functions

This section is empty.

Types

type CA

type CA struct {

	// 错误
	Errors []error
	// contains filtered or unexported fields
}

*

  • CA *
  • @create 2022-7-22
  • @author deatil

func FromCertificate added in v1.0.5019

func FromCertificate(der []byte) CA

From Certificate

func FromCertificateRequest added in v1.0.5019

func FromCertificateRequest(asn1Data []byte) CA

From Certificate Request

func FromPKCS12Cert added in v1.0.5019

func FromPKCS12Cert(pfxData []byte, password string) CA

From PKCS12 Cert

func FromPrivateKey added in v1.0.5019

func FromPrivateKey(key []byte) CA

From PrivateKey

func FromPrivateKeyWithPassword added in v1.0.5019

func FromPrivateKeyWithPassword(key []byte, password []byte) CA

From PrivateKey With Password

func FromPublicKey added in v1.0.5019

func FromPublicKey(key []byte) CA

From PublicKey

func FromSM2PKCS12Cert added in v1.0.5019

func FromSM2PKCS12Cert(pfxData []byte, password string) CA

From SM2 PKCS12 Cert

func GenerateDSAKey added in v1.0.5020

func GenerateDSAKey(ln string) CA

Generate DSA Key

func GenerateECDSAKey added in v1.0.5020

func GenerateECDSAKey(curve string) CA

Generate ECDSA Key

func GenerateEdDSAKey added in v1.0.5020

func GenerateEdDSAKey() CA

Generate EdDSA Key

func GenerateKey added in v1.0.5019

func GenerateKey(options ...Options) CA

Generate Key

func GenerateKeyWithSeed added in v1.0.5019

func GenerateKeyWithSeed(reader io.Reader, options ...Options) CA

Generate Key with Reader

func GenerateRSAKey added in v1.0.5020

func GenerateRSAKey(bits int) CA

Generate RSA Key

func GenerateSM2Key added in v1.0.5020

func GenerateSM2Key() CA

Generate SM2 Key

func New added in v1.0.1018

func New() CA

构造函数

func NewCA

func NewCA() CA

构造函数

func (CA) AppendError added in v1.0.1026

func (this CA) AppendError(err ...error) CA

添加错误

func (CA) CreateCA

func (this CA) CreateCA() CA

CA 证书

func (CA) CreateCSR

func (this CA) CreateCSR() CA

证书请求

func (CA) CreateCert

func (this CA) CreateCert(ca any) CA

自签名证书

func (CA) CreatePKCS12Cert

func (this CA) CreatePKCS12Cert(caCerts []*x509.Certificate, pwd string) CA

pkcs12 密钥 caCerts 通常保留为空 支持 [rsa | ecdsa | sm2]

func (CA) CreatePKCS12CertTrustStore

func (this CA) CreatePKCS12CertTrustStore(certs []*x509.Certificate, password string) CA

pkcs12 密钥

func (CA) CreatePrivateKey

func (this CA) CreatePrivateKey() CA

私钥

func (CA) CreatePrivateKeyWithPassword added in v1.0.5020

func (this CA) CreatePrivateKeyWithPassword(password []byte, opts ...any) CA

Create PrivateKey PEM With Password

func (CA) CreatePublicKey added in v1.0.5019

func (this CA) CreatePublicKey() CA

Create PublicKey PEM

func (CA) Error

func (this CA) Error() error

获取错误

func (CA) FromCertificate added in v1.0.5019

func (this CA) FromCertificate(der []byte) CA

From Certificate

func (CA) FromCertificateRequest added in v1.0.5019

func (this CA) FromCertificateRequest(asn1Data []byte) CA

From Certificate Request

func (CA) FromPKCS12Cert

func (this CA) FromPKCS12Cert(pfxData []byte, password string) CA

pkcs12

func (CA) FromPrivateKey

func (this CA) FromPrivateKey(key []byte) CA

From PrivateKey

func (CA) FromPrivateKeyWithPassword added in v1.0.5019

func (this CA) FromPrivateKeyWithPassword(key []byte, password []byte) CA

From PrivateKey With Password

func (CA) FromPublicKey

func (this CA) FromPublicKey(key []byte) CA

From PublicKey

func (CA) FromSM2PKCS12Cert

func (this CA) FromSM2PKCS12Cert(pfxData []byte, password string) CA

From SM2 PKCS12 Cert

func (CA) GenerateDSAKey added in v1.0.5020

func (this CA) GenerateDSAKey(ln string) CA

Generate DSA key params: [ L1024N160 | L2048N224 | L2048N256 | L3072N256 ]

func (CA) GenerateECDSAKey added in v1.0.2015

func (this CA) GenerateECDSAKey(curve string) CA

Generate ECDSA key params: [P521 | P384 | P256 | P224]

func (CA) GenerateEdDSAKey

func (this CA) GenerateEdDSAKey() CA

Generate EdDSA key

func (CA) GenerateKey added in v1.0.5019

func (this CA) GenerateKey() CA

Generate Key

func (CA) GenerateKeyWithSeed added in v1.0.5019

func (this CA) GenerateKeyWithSeed(reader io.Reader) CA

Generate Key with Reader

func (CA) GenerateRSAKey added in v1.0.2015

func (this CA) GenerateRSAKey(bits int) CA

Generate RSA key params: [512 | 1024 | 2048 | 4096]

func (CA) GenerateSM2Key

func (this CA) GenerateSM2Key() CA

Generate SM2 key

func (CA) GetBits added in v1.0.5019

func (this CA) GetBits() int

get Options Bits

func (CA) GetCert

func (this CA) GetCert() any

获取 cert

func (CA) GetCertRequest

func (this CA) GetCertRequest() any

获取 certRequest

func (CA) GetCurve added in v1.0.5019

func (this CA) GetCurve() elliptic.Curve

get Options Curve

func (CA) GetErrors added in v1.0.1026

func (this CA) GetErrors() []error

获取错误

func (CA) GetKeyData

func (this CA) GetKeyData() []byte

获取 keyData

func (CA) GetOptions added in v1.0.5019

func (this CA) GetOptions() Options

get Options

func (CA) GetParameterSizes added in v1.0.5019

func (this CA) GetParameterSizes() dsa.ParameterSizes

get DSA ParameterSizes

func (CA) GetPrivateKey

func (this CA) GetPrivateKey() crypto.PrivateKey

获取 PrivateKey

func (CA) GetPrivateKeyType added in v1.0.5019

func (this CA) GetPrivateKeyType() PublicKeyType

get PrivateKey Type

func (CA) GetPublicKey

func (this CA) GetPublicKey() crypto.PublicKey

获取 publicKey

func (CA) GetPublicKeyType added in v1.0.5019

func (this CA) GetPublicKeyType() PublicKeyType

get PublicKey Type

func (CA) MakeCA

func (this CA) MakeCA(
	subject pkix.Name,
	expire int,
	signAlgName string,
) CA

生成 CA 证书

func (CA) MakeCSR

func (this CA) MakeCSR(
	country []string,
	organization []string,
	organizationalUnit []string,
	locality []string,
	province []string,
	streetAddress []string,
	postalCode []string,
	commonName string,
) CA

生成证书请求

func (CA) MakeCert

func (this CA) MakeCert(
	subject pkix.Name,
	expire int,
	dns []string,
	ip []net.IP,
	signAlgName string,
) CA

生成自签名证书

func (CA) MakeSM2CA

func (this CA) MakeSM2CA(
	subject *pkix.Name,
	expire int,
	signAlgName string,
) CA

生成 CA 证书

func (CA) MakeSM2CSR

func (this CA) MakeSM2CSR(
	country []string,
	organization []string,
	organizationalUnit []string,
	locality []string,
	province []string,
	streetAddress []string,
	postalCode []string,
	commonName string,
) CA

生成证书请求

func (CA) MakeSM2Cert

func (this CA) MakeSM2Cert(
	subject *pkix.Name,
	expire int,
	dns []string,
	ip []net.IP,
	signAlgName string,
) CA

生成自签名证书

func (CA) OnError

func (this CA) OnError(fn func([]error)) CA

引出错误信息

func (CA) ParsePKCS8PrivateKeyFromPEM added in v1.0.5019

func (this CA) ParsePKCS8PrivateKeyFromPEM(key []byte) (crypto.PrivateKey, error)

Parse PKCS8 PrivateKey From PEM

func (CA) ParsePKCS8PrivateKeyFromPEMWithPassword added in v1.0.5019

func (this CA) ParsePKCS8PrivateKeyFromPEMWithPassword(key []byte, password []byte) (crypto.PrivateKey, error)

Parse PKCS8 PrivateKey From PEM With Password

func (CA) ParsePKCS8PublicKeyFromPEM added in v1.0.5019

func (this CA) ParsePKCS8PublicKeyFromPEM(key []byte) (crypto.PublicKey, error)

Parse PKCS8 PublicKey From PEM

func (CA) SM2Verify

func (this CA) SM2Verify(rootPEM string, certPEM string, opts cryptobin_x509.VerifyOptions) (bool, error)

SM2 验证

func (CA) SetCurve added in v1.0.5019

func (this CA) SetCurve(curve string) CA

set Curve type params: [ P521 | P384 | P256 | P224 ]

func (CA) SetGenerateType added in v1.0.5019

func (this CA) SetGenerateType(typ string) CA

set Generate public key type params: [ RSA | DSA | ECDSA | EdDSA | SM2 ]

func (CA) SetParameterSizes added in v1.0.5019

func (this CA) SetParameterSizes(ln string) CA

With DSA ParameterSizes params: [ L1024N160 | L2048N224 | L2048N256 | L3072N256 ]

func (CA) SetPublicKeyType added in v1.0.5019

func (this CA) SetPublicKeyType(keyType string) CA

public key type params: [ RSA | DSA | ECDSA | EdDSA | SM2 ]

func (CA) ToKeyBytes

func (this CA) ToKeyBytes() []byte

私钥/公钥/cert

func (CA) ToKeyString

func (this CA) ToKeyString() string

私钥/公钥/cert

func (CA) UpdateCert

func (this CA) UpdateCert(fn func(*x509.Certificate) *x509.Certificate) CA

更新 Cert 数据

func (CA) UpdateCertRequest

func (this CA) UpdateCertRequest(fn func(*x509.CertificateRequest) *x509.CertificateRequest) CA

更新证书请求数据

func (CA) UpdateSM2Cert

func (this CA) UpdateSM2Cert(fn func(*x509.Certificate) *x509.Certificate) CA

更新 Cert 数据

func (CA) UpdateSM2CertRequest

func (this CA) UpdateSM2CertRequest(fn func(*x509.CertificateRequest) *x509.CertificateRequest) CA

更新证书请求数据

func (CA) Verify

func (this CA) Verify(rootPEM string, certPEM string, opts x509.VerifyOptions) (bool, error)

验证

func (CA) WithBits added in v1.0.5019

func (this CA) WithBits(bits int) CA

RSA private key bit size

func (CA) WithCert

func (this CA) WithCert(cert any) CA

设置 cert 可用 [*x509.Certificate | *sm2X509.Certificate]

func (CA) WithCertRequest

func (this CA) WithCertRequest(cert any) CA

设置 certRequest 可用 [*x509.CertificateRequest | *sm2X509.CertificateRequest]

func (CA) WithCurve added in v1.0.5019

func (this CA) WithCurve(curve elliptic.Curve) CA

With Curve type

func (CA) WithErrors added in v1.0.1026

func (this CA) WithErrors(errs []error) CA

设置错误

func (CA) WithKeyData

func (this CA) WithKeyData(data []byte) CA

设置 keyData

func (CA) WithOptions added in v1.0.5019

func (this CA) WithOptions(options Options) CA

With options

func (CA) WithParameterSizes added in v1.0.5019

func (this CA) WithParameterSizes(sizes dsa.ParameterSizes) CA

With DSA ParameterSizes

func (CA) WithPrivateKey

func (this CA) WithPrivateKey(key crypto.PrivateKey) CA

设置 PrivateKey

func (CA) WithPublicKey

func (this CA) WithPublicKey(key crypto.PublicKey) CA

设置 publicKey

func (CA) WithPublicKeyType added in v1.0.5019

func (this CA) WithPublicKeyType(keyType PublicKeyType) CA

public key type

type CACertificate

type CACertificate = x509.Certificate

证书

type CACertificateRequest

type CACertificateRequest = x509.CertificateRequest

证书请求

type CAExtKeyUsage

type CAExtKeyUsage = x509.ExtKeyUsage

ExtKeyUsage

type CAKeyUsage

type CAKeyUsage = x509.KeyUsage

KeyUsage

type CAPkixAlgorithmIdentifier

type CAPkixAlgorithmIdentifier = pkix.AlgorithmIdentifier

AlgorithmIdentifier

type CAPkixAttributeTypeAndValue

type CAPkixAttributeTypeAndValue = pkix.AttributeTypeAndValue

AttributeTypeAndValue 数据

type CAPkixAttributeTypeAndValueSET

type CAPkixAttributeTypeAndValueSET = pkix.AttributeTypeAndValueSET

AttributeTypeAndValueSET

type CAPkixCertificateList

type CAPkixCertificateList = pkix.CertificateList

CertificateList

type CAPkixExtension

type CAPkixExtension = pkix.Extension

Extension

type CAPkixName

type CAPkixName = pkix.Name

Subject 数据

type CAPkixRDNSequence

type CAPkixRDNSequence = pkix.RDNSequence

RDNSequence

type CAPkixRevokedCertificate

type CAPkixRevokedCertificate = pkix.RevokedCertificate

RevokedCertificate

type CAPkixTBSCertificateList

type CAPkixTBSCertificateList = pkix.TBSCertificateList

TBSCertificateList

type CAPublicKeyAlgorithm

type CAPublicKeyAlgorithm = x509.PublicKeyAlgorithm

PublicKeyAlgorithm

type CASignatureAlgorithm

type CASignatureAlgorithm = x509.SignatureAlgorithm

SignatureAlgorithm

type CAVerifyOptions

type CAVerifyOptions = x509.VerifyOptions

配置别名

type Options added in v1.0.5019

type Options struct {
	// public key type
	PublicKeyType PublicKeyType

	// DSA ParameterSizes
	ParameterSizes dsa.ParameterSizes

	// ecc curve
	Curve elliptic.Curve

	// generates RSA private key bit size
	Bits int
}

Options

type Opts added in v1.0.5020

type Opts = pkcs8.Opts

options

type PBKDF2Opts added in v1.0.5020

type PBKDF2Opts = pkcs8.PBKDF2Opts

PBKDF2 options

type PublicKeyType added in v1.0.5019

type PublicKeyType uint

public key type

const (
	KeyTypeUnknown PublicKeyType = iota
	KeyTypeRSA
	KeyTypeDSA
	KeyTypeECDSA
	KeyTypeEdDSA
	KeyTypeSM2
)

func (PublicKeyType) String added in v1.0.5019

func (typ PublicKeyType) String() string

type SM2CACertificate added in v1.0.2015

type SM2CACertificate = cryptobin_x509.Certificate

SM2 证书

type SM2CACertificateRequest added in v1.0.2015

type SM2CACertificateRequest = cryptobin_x509.CertificateRequest

SM2 证书请求

type SM2CAExtKeyUsage added in v1.0.2015

type SM2CAExtKeyUsage = cryptobin_x509.ExtKeyUsage

ExtKeyUsage

type SM2CAKeyUsage added in v1.0.2015

type SM2CAKeyUsage = cryptobin_x509.KeyUsage

KeyUsage

type SM2CAPublicKeyAlgorithm added in v1.0.2015

type SM2CAPublicKeyAlgorithm = cryptobin_x509.PublicKeyAlgorithm

PublicKeyAlgorithm

type SM2CASignatureAlgorithm added in v1.0.2015

type SM2CASignatureAlgorithm = cryptobin_x509.SignatureAlgorithm

SignatureAlgorithm

type SM2CAVerifyOptions added in v1.0.2015

type SM2CAVerifyOptions = cryptobin_x509.VerifyOptions

配置别名

type ScryptOpts added in v1.0.5020

type ScryptOpts = pkcs8.ScryptOpts

Scrypt options

Jump to

Keyboard shortcuts

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