]> Sergey Matveev's repositories - vors.git/blobdiff - cmd/keygen/main.go
Tarballs
[vors.git] / cmd / keygen / main.go
index 03c3b6368e06a1cb723fe19d13f599201d24708b5360339902bc5de16c65cfa0..d14f1f821fb91632ada403bc044835b220f6cf8ff2c17fe4d48a6ad7c96e0e3c 100644 (file)
@@ -2,7 +2,7 @@ package main
 
 import (
        "crypto/rand"
-       "encoding/hex"
+       "encoding/base64"
        "flag"
        "fmt"
        "io"
@@ -10,11 +10,22 @@ import (
        "os"
 
        "github.com/flynn/noise"
+       vors "go.stargrave.org/vors/internal"
 )
 
 func main() {
-       pub := flag.Bool("pub", false, "Print hexadecimal public key")
+       pub := flag.Bool("pub", false, "print Base64 public key")
+       version := flag.Bool("version", false, "print version")
+       warranty := flag.Bool("warranty", false, "print warranty information")
        flag.Parse()
+       if *warranty {
+               fmt.Println(vors.Warranty)
+               return
+       }
+       if *version {
+               fmt.Println(vors.GetVersion())
+               return
+       }
        if *pub {
                data, err := io.ReadAll(os.Stdin)
                if err != nil {
@@ -23,7 +34,7 @@ func main() {
                if len(data) != 2*32 {
                        log.Fatal("wrong length")
                }
-               fmt.Printf("%s\n", hex.EncodeToString(data[32:]))
+               fmt.Printf("%s\n", base64.RawURLEncoding.EncodeToString(data[32:]))
                return
        }
        kp, err := noise.DH25519.GenerateKeypair(rand.Reader)