Documentation
¶
Index ¶
- func DecryptKeyBytes(pemKeyEncrypted []byte, pw []byte) ([]byte, error)
- func EnsureKey(keyFile string) (crypto.PublicKey, crypto.PrivateKey, bool, error)
- func GetExtensionValue(cert *x509.Certificate, oid asn1.ObjectIdentifier) (string, error)
- func GetPEMBlock(pemKey []byte) (*pem.Block, error)
- func HashPublicKey(key crypto.PublicKey) ([]byte, error)
- func IsEncryptedPEMKey(pemKey []byte) (bool, error)
- func LoadKey(keyFile string) (crypto.PrivateKey, error)
- func MakeCSR(privateKey crypto.Signer, subjectName string) ([]byte, error)
- func NewKeyPair() (crypto.PublicKey, crypto.PrivateKey, error)
- func NewKeyPairWithHash() (crypto.PublicKey, crypto.PrivateKey, []byte, error)
- func PEMEncodeKey(key crypto.PrivateKey) ([]byte, error)
- func ParseCSR(csrPEM []byte) (*x509.CertificateRequest, error)
- func ParseKeyPEM(pemKey []byte) (crypto.PrivateKey, error)
- func WriteKey(keyPath string, key crypto.PrivateKey) error
- func WritePasswordEncryptedKey(keyPath string, key crypto.PrivateKey, password []byte) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetExtensionValue ¶
func GetExtensionValue(cert *x509.Certificate, oid asn1.ObjectIdentifier) (string, error)
func IsEncryptedPEMKey ¶
func NewKeyPair ¶
func NewKeyPair() (crypto.PublicKey, crypto.PrivateKey, error)
func NewKeyPairWithHash ¶
func PEMEncodeKey ¶
func PEMEncodeKey(key crypto.PrivateKey) ([]byte, error)
func ParseKeyPEM ¶
func ParseKeyPEM(pemKey []byte) (crypto.PrivateKey, error)
func WritePasswordEncryptedKey ¶
func WritePasswordEncryptedKey(keyPath string, key crypto.PrivateKey, password []byte) error
this copies functionality from sigstore's cosign to encrypt the private key using functionality from secure systems lab, which relies on golang crypto's secretbox and scrypt. see: https://github.com/sigstore/cosign/blob/77f71e0d7470e31ed4ed5653fe5a7c8e3b283606/pkg/cosign/keys.go#L158 https://github.com/secure-systems-lab/go-securesystemslib/blob/7dd9eabdaf9ea98ba33653cdfbdec7057bd662fd/encrypted/encrypted.go#L158
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.