goxifrat/cmd/main.go
2021-03-08 19:07:24 +01:00

55 lines
1,009 B
Go

package main
import (
"crypto/rand"
"fmt"
"git.giftfish.de/ston1th/goxifrat"
)
func main() {
ka, err := goxifrat.NewKeyAgreement(rand.Reader)
if err != nil {
fmt.Println(err)
}
kb, err := goxifrat.NewKeyAgreement(rand.Reader)
if err != nil {
fmt.Println(err)
}
i, err := ka.InitPhase(rand.Reader)
if err != nil {
fmt.Println(err)
}
sb, a, err := kb.SharedSecret(i)
if err != nil {
fmt.Println(err)
}
sa, _, err := ka.SharedSecret(a)
if err != nil {
fmt.Println(err)
}
fmt.Println("sa", sa)
fmt.Println("sb", sb)
/*
h, err := randomArray(rand.Reader)
if err != nil {
fmt.Println(err)
}
hash := encode(h)
priv, err := goxifrat.GenerateKey(rand.Reader)
if err != nil {
fmt.Println(err)
}
s, err := priv.Sign(rand.Reader, hash)
if err != nil {
fmt.Println(err)
}
fmt.Println(len(s), s)
s, err = priv.Sign(rand.Reader, hash)
if err != nil {
fmt.Println(err)
}
fmt.Println(s)
fmt.Println(goxifrat.Verify(&priv.PublicKey, hash, s))
*/
}