2018-12-17 22:12:38 +00:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"crypto/rand"
|
|
|
|
"encoding/base64"
|
2019-01-25 00:24:47 +00:00
|
|
|
"github.com/cbeuw/Cloak/internal/ecdh"
|
2018-12-17 22:12:38 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
var b64 = base64.StdEncoding.EncodeToString
|
|
|
|
|
|
|
|
func generateUID() string {
|
|
|
|
UID := make([]byte, 32)
|
|
|
|
rand.Read(UID)
|
|
|
|
return b64(UID)
|
|
|
|
}
|
|
|
|
|
|
|
|
func generateKeyPair() (string, string) {
|
2019-01-25 00:24:47 +00:00
|
|
|
staticPv, staticPub, _ := ecdh.GenerateKey(rand.Reader)
|
|
|
|
marshPub := ecdh.Marshal(staticPub)
|
2018-12-17 22:12:38 +00:00
|
|
|
marshPv := staticPv.(*[32]byte)[:]
|
|
|
|
return b64(marshPub), b64(marshPv)
|
|
|
|
}
|