client-go: Index | Files

package keyutil

import ""

Package keyutil contains utilities for managing public/private key pairs.


Package Files



const (
    // ECPrivateKeyBlockType is a possible value for pem.Block.Type.
    ECPrivateKeyBlockType = "EC PRIVATE KEY"
    // RSAPrivateKeyBlockType is a possible value for pem.Block.Type.
    RSAPrivateKeyBlockType = "RSA PRIVATE KEY"
    // PrivateKeyBlockType is a possible value for pem.Block.Type.
    PrivateKeyBlockType = "PRIVATE KEY"
    // PublicKeyBlockType is a possible value for pem.Block.Type.
    PublicKeyBlockType = "PUBLIC KEY"

func LoadOrGenerateKeyFile Uses

func LoadOrGenerateKeyFile(keyPath string) (data []byte, wasGenerated bool, err error)

LoadOrGenerateKeyFile looks for a key in the file at the given path. If it can't find one, it will generate a new key and store it there.

func MakeEllipticPrivateKeyPEM Uses

func MakeEllipticPrivateKeyPEM() ([]byte, error)

MakeEllipticPrivateKeyPEM creates an ECDSA private key

func MarshalPrivateKeyToPEM Uses

func MarshalPrivateKeyToPEM(privateKey crypto.PrivateKey) ([]byte, error)

MarshalPrivateKeyToPEM converts a known private key type of RSA or ECDSA to a PEM encoded block or returns an error.

func ParsePrivateKeyPEM Uses

func ParsePrivateKeyPEM(keyData []byte) (interface{}, error)

ParsePrivateKeyPEM returns a private key parsed from a PEM block in the supplied data. Recognizes PEM blocks for "EC PRIVATE KEY", "RSA PRIVATE KEY", or "PRIVATE KEY"

func ParsePublicKeysPEM Uses

func ParsePublicKeysPEM(keyData []byte) ([]interface{}, error)

ParsePublicKeysPEM is a helper function for reading an array of rsa.PublicKey or ecdsa.PublicKey from a PEM-encoded byte array. Reads public keys from both public and private key files.

func PrivateKeyFromFile Uses

func PrivateKeyFromFile(file string) (interface{}, error)

PrivateKeyFromFile returns the private key in rsa.PrivateKey or ecdsa.PrivateKey format from a given PEM-encoded file. Returns an error if the file could not be read or if the private key could not be parsed.

func PublicKeysFromFile Uses

func PublicKeysFromFile(file string) ([]interface{}, error)

PublicKeysFromFile returns the public keys in rsa.PublicKey or ecdsa.PublicKey format from a given PEM-encoded file. Reads public keys from both public and private key files.

func WriteKey Uses

func WriteKey(keyPath string, data []byte) error

WriteKey writes the pem-encoded key data to keyPath. The key file will be created with file mode 0600. If the key file already exists, it will be overwritten. The parent directory of the keyPath will be created as needed with file mode 0755.

Package keyutil imports 11 packages (graph) and is imported by 114 packages. Updated 2019-03-26. Refresh now. Tools for package owners.