MCPcopy Create free account
hub / github.com/belak/gitdir / ParseEd25519PrivateKey

Function ParseEd25519PrivateKey

models/private_key.go:28–42  ·  view source on GitHub ↗

ParseEd25519PrivateKey parses an ed25519 private key.

(data []byte)

Source from the content-addressed store, hash-verified

26
27// ParseEd25519PrivateKey parses an ed25519 private key.
28func ParseEd25519PrivateKey(data []byte) (PrivateKey, error) {
29 privateKey, err := gossh.ParseRawPrivateKey(data)
30 if err != nil {
31 return nil, err
32 }
33
34 // Try loading as an external key, fall back to internal key. This *should*
35 // fix issues with incompatible versions.
36 ed25519Key, ok := privateKey.(ed25519.PrivateKey)
37 if !ok {
38 return nil, errors.New("not an ed25519 key")
39 }
40
41 return &ed25519PrivateKey{ed25519Key}, nil
42}
43
44// GenerateEd25519PrivateKey generates a new ed25519 private key.
45func GenerateEd25519PrivateKey() (PrivateKey, error) {

Callers 1

loadAdminConfigMethod · 0.92

Calls

no outgoing calls

Tested by

no test coverage detected