// Generate key pair for onion service auth // SPDX-License-Identifier: MPL-2.0 // Copyright © 2024 Balakrishnan Balasubramanian package main import ( "crypto/ecdh" "crypto/rand" "encoding/base32" "fmt" ) func main() { key, err := ecdh.X25519().GenerateKey(rand.Reader) if err != nil { panic(err) } fmt.Printf("private key : %s\n", base32.StdEncoding.EncodeToString(key.Bytes())[:52]) fmt.Printf("public descriptor : descriptor:x25519:%s\n", base32.StdEncoding.EncodeToString(key.PublicKey().Bytes())[:52]) }