INNER CODE UNIT · Go

GenerateKey

aead/minisign · minisign.go:38

func GenerateKey(random io.Reader) (PublicKey, PrivateKey, error) {
	pub, priv, err := ed25519.GenerateKey(random)
	if err != nil {
		return PublicKey{}, PrivateKey{}, err
	}

	id := blake2b.Sum256(pub[:])
	publicKey := PublicKey{
		id: binary.LittleEndian.Uint64(id[:8]),
	}
	copy(publicKey.bytes[:], pub)

	privateKey := PrivateKey{
		id: publicKey.ID(),
	}
	copy(privateKey.bytes[:], priv)

	return publicKey, privateKey, nil

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…