20 lines
441 B
Go
20 lines
441 B
Go
|
// Generate key pair for onion service auth
|
||
|
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])
|
||
|
}
|