Documentation ¶
Index ¶
- Variables
- func AddCipher(oid asn1.ObjectIdentifier, cipher func() Cipher)
- func AddKey(name string, key func() Key)
- func DecodeData(encodedData, password []byte) ([]byte, error)
- func DecryptedPrivateKeyInfo(data []byte) ([]byte, error)
- func EncodeData(data []byte, password string, cipher ...Cipher) ([]byte, error)
- func EncryptedPrivateKeyInfo(algorithm asn1.ObjectIdentifier, data []byte) ([]byte, error)
- func GetStructName(name any) string
- func MarshalPKCS8PrivateKey(privateKey crypto.PrivateKey) ([]byte, error)
- func ParsePKCS8PrivateKey(pkData []byte) (privateKey crypto.PrivateKey, err error)
- type Cipher
- type CipherBlockCBC
- func (this CipherBlockCBC) Decrypt(password, params, ciphertext []byte) ([]byte, error)
- func (this CipherBlockCBC) Encrypt(password, plaintext []byte) ([]byte, []byte, error)
- func (this CipherBlockCBC) KeySize() int
- func (this CipherBlockCBC) OID() asn1.ObjectIdentifier
- func (this CipherBlockCBC) WithSaltSize(saltSize int) CipherBlockCBC
- type JCEKS
- func (this *JCEKS) AddPrivateKey(alias string, privateKey crypto.PrivateKey, password string, certs [][]byte, ...) error
- func (this *JCEKS) AddSecretKey(alias string, secretKey []byte, password string, cipher ...Cipher) error
- func (this *JCEKS) AddTrustedCert(alias string, cert []byte, cipher ...Cipher) error
- func (this *JCEKS) GetCert(alias string) (*x509.Certificate, error)
- func (this *JCEKS) GetCertBytes(alias string) ([]byte, error)
- func (this *JCEKS) GetPrivateKeyAndCerts(alias string, password string) (key crypto.PrivateKey, certs []*x509.Certificate, err error)
- func (this *JCEKS) GetPrivateKeyAndCertsBytes(alias string, password string) (key crypto.PrivateKey, certs [][]byte, err error)
- func (this *JCEKS) GetSecretKey(alias string, password string) (key []byte, err error)
- func (this *JCEKS) ListCerts() []string
- func (this *JCEKS) ListPrivateKeys() []string
- func (this *JCEKS) ListSecretKeys() []string
- func (this *JCEKS) Marshal(password string) ([]byte, error)
- func (this *JCEKS) Parse(r io.Reader, password string) error
- func (this *JCEKS) String() string
- type JKS
- func (this *JKS) AddEncodedPrivateKey(alias string, encodedKey []byte, certChain [][]byte) error
- func (this *JKS) AddPrivateKey(alias string, privateKey crypto.PrivateKey, password string, ...) error
- func (this *JKS) AddTrustedCert(alias string, cert []byte) error
- func (this *JKS) GetCert(alias string) (*x509.Certificate, error)
- func (this *JKS) GetCertBytes(alias string) ([]byte, error)
- func (this *JKS) GetCertChain(alias string) ([]*x509.Certificate, error)
- func (this *JKS) GetCertChainBytes(alias string) ([][]byte, error)
- func (this *JKS) GetCreateDate(alias string) (time.Time, error)
- func (this *JKS) GetEncodedKey(alias string) ([]byte, error)
- func (this *JKS) GetPrivateKey(alias string, password string) (crypto.PrivateKey, error)
- func (this *JKS) ListCerts() []string
- func (this *JKS) ListPrivateKeys() []string
- func (this *JKS) Marshal(password string) ([]byte, error)
- func (this *JKS) Parse(r io.Reader, password string) error
- func (this *JKS) String() string
- type Key
- type KeyDSA
- type KeyEcdsa
- type KeyEdDSA
- type KeyRsa
- type KeySM2
Constants ¶
This section is empty.
Variables ¶
var CipherMD5And3DES = CipherBlockCBC{ // contains filtered or unexported fields }
var CipherSHA1And3DES = CipherBlockCBC{ // contains filtered or unexported fields }
var DefaultCipher = CipherMD5And3DES
默认配置
var LoadFromBytes = LoadJceksFromBytes
var LoadFromReader = LoadJceksFromReader
别名
var NewJceksEncode = NewJCEKS
var NewJksEncode = NewJKS
编码
Functions ¶
func EncodeData ¶
加密数据
func EncryptedPrivateKeyInfo ¶
func EncryptedPrivateKeyInfo(algorithm asn1.ObjectIdentifier, data []byte) ([]byte, error)
加密数据
func MarshalPKCS8PrivateKey ¶
func MarshalPKCS8PrivateKey(privateKey crypto.PrivateKey) ([]byte, error)
从注册的 key 列表编码证书
func ParsePKCS8PrivateKey ¶
func ParsePKCS8PrivateKey(pkData []byte) (privateKey crypto.PrivateKey, err error)
从注册的 key 列表解析证书
Types ¶
type Cipher ¶
type Cipher interface { // oid OID() asn1.ObjectIdentifier // 值大小 KeySize() int // 加密, 返回: [加密后数据, 参数, error] Encrypt(key, plaintext []byte) ([]byte, []byte, error) // 解密 Decrypt(key, params, ciphertext []byte) ([]byte, error) }
加密接口
type CipherBlockCBC ¶
type CipherBlockCBC struct {
// contains filtered or unexported fields
}
cbc 模式加密
func (CipherBlockCBC) Decrypt ¶
func (this CipherBlockCBC) Decrypt(password, params, ciphertext []byte) ([]byte, error)
解密
func (CipherBlockCBC) Encrypt ¶
func (this CipherBlockCBC) Encrypt(password, plaintext []byte) ([]byte, []byte, error)
加密
func (CipherBlockCBC) WithSaltSize ¶
func (this CipherBlockCBC) WithSaltSize(saltSize int) CipherBlockCBC
设置 saltSize
type JCEKS ¶ added in v1.0.1036
type JCEKS struct {
// contains filtered or unexported fields
}
编码
func LoadJceksFromBytes ¶
LoadJceksFromBytes loads the key store from the bytes data.
func LoadJceksFromReader ¶
LoadJceksFromReader loads the key store from the specified file.
func (*JCEKS) AddPrivateKey ¶ added in v1.0.1036
func (this *JCEKS) AddPrivateKey( alias string, privateKey crypto.PrivateKey, password string, certs [][]byte, cipher ...Cipher, ) error
添加私钥
func (*JCEKS) AddSecretKey ¶ added in v1.0.1036
func (this *JCEKS) AddSecretKey( alias string, secretKey []byte, password string, cipher ...Cipher, ) error
添加密钥
func (*JCEKS) AddTrustedCert ¶ added in v1.0.1036
添加证书
func (*JCEKS) GetCert ¶ added in v1.0.1036
func (this *JCEKS) GetCert(alias string) (*x509.Certificate, error)
GetCert
func (*JCEKS) GetCertBytes ¶ added in v1.0.1036
GetCertBytes
func (*JCEKS) GetPrivateKeyAndCerts ¶ added in v1.0.1036
func (this *JCEKS) GetPrivateKeyAndCerts(alias string, password string) ( key crypto.PrivateKey, certs []*x509.Certificate, err error, )
GetPrivateKeyAndCerts
func (*JCEKS) GetPrivateKeyAndCertsBytes ¶ added in v1.0.1036
func (this *JCEKS) GetPrivateKeyAndCertsBytes(alias string, password string) ( key crypto.PrivateKey, certs [][]byte, err error, )
GetPrivateKeyAndCertsBytes
func (*JCEKS) GetSecretKey ¶ added in v1.0.1036
GetSecretKey
func (*JCEKS) ListPrivateKeys ¶ added in v1.0.1036
ListPrivateKeys
func (*JCEKS) ListSecretKeys ¶ added in v1.0.1036
ListSecretKeys lists the names of the SecretKey stored in the key store.
type JKS ¶ added in v1.0.1036
type JKS struct {
// contains filtered or unexported fields
}
Jks
func LoadJksFromBytes ¶
LoadFromBytes loads the key store from the bytes data.
func LoadJksFromReader ¶
LoadJksFromReader loads the key store from the specified file.
func (*JKS) AddEncodedPrivateKey ¶ added in v1.0.1036
添加私钥
func (*JKS) AddPrivateKey ¶ added in v1.0.1036
func (this *JKS) AddPrivateKey( alias string, privateKey crypto.PrivateKey, password string, certChain [][]byte, ) error
添加私钥
func (*JKS) AddTrustedCert ¶ added in v1.0.1036
添加密钥
func (*JKS) GetCert ¶ added in v1.0.1036
func (this *JKS) GetCert(alias string) (*x509.Certificate, error)
GetCert
func (*JKS) GetCertBytes ¶ added in v1.0.1036
GetCertBytes
func (*JKS) GetCertChain ¶ added in v1.0.1036
func (this *JKS) GetCertChain(alias string) ([]*x509.Certificate, error)
GetCertChain
func (*JKS) GetCertChainBytes ¶ added in v1.0.1036
GetCertChainBytes
func (*JKS) GetCreateDate ¶ added in v1.0.1036
GetCreateDate
func (*JKS) GetEncodedKey ¶ added in v1.0.1036
GetEncodedKey
func (*JKS) GetPrivateKey ¶ added in v1.0.1036
GetPrivateKey
func (*JKS) ListPrivateKeys ¶ added in v1.0.1036
ListPrivateKeys
type Key ¶
type Key interface { // 包装 PKCS8 证书 MarshalPKCS8PrivateKey(privateKey crypto.PrivateKey) (pkData []byte, err error) // 解析 PKCS8 证书 ParsePKCS8PrivateKey(pkData []byte) (crypto.PrivateKey, error) }
Key 接口
type KeyDSA ¶
type KeyDSA struct{}
DSA
func (KeyDSA) MarshalPKCS8PrivateKey ¶
func (this KeyDSA) MarshalPKCS8PrivateKey(privateKey crypto.PrivateKey) ([]byte, error)
包装
func (KeyDSA) ParsePKCS8PrivateKey ¶
func (this KeyDSA) ParsePKCS8PrivateKey(pkData []byte) (crypto.PrivateKey, error)
解析
type KeyEcdsa ¶
type KeyEcdsa struct{}
Ecdsa
func (KeyEcdsa) MarshalPKCS8PrivateKey ¶
func (this KeyEcdsa) MarshalPKCS8PrivateKey(privateKey crypto.PrivateKey) ([]byte, error)
包装
func (KeyEcdsa) ParsePKCS8PrivateKey ¶
func (this KeyEcdsa) ParsePKCS8PrivateKey(pkData []byte) (crypto.PrivateKey, error)
解析
type KeyEdDSA ¶
type KeyEdDSA struct{}
EdDSA
func (KeyEdDSA) MarshalPKCS8PrivateKey ¶
func (this KeyEdDSA) MarshalPKCS8PrivateKey(privateKey crypto.PrivateKey) ([]byte, error)
包装
func (KeyEdDSA) ParsePKCS8PrivateKey ¶
func (this KeyEdDSA) ParsePKCS8PrivateKey(pkData []byte) (crypto.PrivateKey, error)
解析
type KeyRsa ¶
type KeyRsa struct{}
rsa
func (KeyRsa) MarshalPKCS8PrivateKey ¶
func (this KeyRsa) MarshalPKCS8PrivateKey(privateKey crypto.PrivateKey) ([]byte, error)
包装
func (KeyRsa) ParsePKCS8PrivateKey ¶
func (this KeyRsa) ParsePKCS8PrivateKey(pkData []byte) (crypto.PrivateKey, error)
解析
type KeySM2 ¶
type KeySM2 struct{}
SM2
func (KeySM2) MarshalPKCS8PrivateKey ¶
func (this KeySM2) MarshalPKCS8PrivateKey(privateKey crypto.PrivateKey) ([]byte, error)
包装
func (KeySM2) ParsePKCS8PrivateKey ¶
func (this KeySM2) ParsePKCS8PrivateKey(pkData []byte) (crypto.PrivateKey, error)
解析
Source Files ¶
- binary.go
- cipher.go
- cipher_blockcbc.go
- cipher_key.go
- cipher_setting.go
- consts.go
- jceks.go
- jceks_decode.go
- jceks_encode.go
- jceks_entry.go
- jceks_interface.go
- jceks_utils.go
- jks.go
- jks_decode.go
- jks_encode.go
- jks_encryptkey.go
- jks_utils.go
- key.go
- key_dsa.go
- key_ecdsa.go
- key_eddsa.go
- key_rsa.go
- key_setting.go
- key_sm2.go