MCPcopy
hub / github.com/caddyserver/certmagic / GenerateKey

Method GenerateKey

crypto.go:339–356  ·  view source on GitHub ↗

GenerateKey generates a new private key according to kg.KeyType.

()

Source from the content-addressed store, hash-verified

337
338// GenerateKey generates a new private key according to kg.KeyType.
339func (kg StandardKeyGenerator) GenerateKey() (crypto.PrivateKey, error) {
340 switch kg.KeyType {
341 case ED25519:
342 _, priv, err := ed25519.GenerateKey(rand.Reader)
343 return priv, err
344 case "", P256:
345 return ecdsa.GenerateKey(elliptic.P256(), rand.Reader)
346 case P384:
347 return ecdsa.GenerateKey(elliptic.P384(), rand.Reader)
348 case RSA2048:
349 return rsa.GenerateKey(rand.Reader, 2048)
350 case RSA4096:
351 return rsa.GenerateKey(rand.Reader, 4096)
352 case RSA8192:
353 return rsa.GenerateKey(rand.Reader, 8192)
354 }
355 return nil, fmt.Errorf("unrecognized or unsupported key type: %s", kg.KeyType)
356}
357
358// DefaultKeyGenerator is the default key source.
359var DefaultKeyGenerator = StandardKeyGenerator{KeyType: P256}

Callers

nothing calls this directly

Calls 1

GenerateKeyMethod · 0.65

Tested by

no test coverage detected