Alejandro Mery
1 year ago
1 changed files with 30 additions and 0 deletions
@ -0,0 +1,30 @@ |
|||||||
|
package wireguard |
||||||
|
|
||||||
|
import ( |
||||||
|
"encoding/base64" |
||||||
|
) |
||||||
|
|
||||||
|
// BinaryKey is a binary blob
|
||||||
|
type BinaryKey []byte |
||||||
|
|
||||||
|
func (k BinaryKey) String() string { |
||||||
|
return base64.StdEncoding.EncodeToString(k) |
||||||
|
} |
||||||
|
|
||||||
|
// IsZero tells if the key hasn't been set
|
||||||
|
func (k BinaryKey) IsZero() bool { |
||||||
|
return len(k) == 0 |
||||||
|
} |
||||||
|
|
||||||
|
// BinaryKeyFromBase64 decodes a base64-based string into
|
||||||
|
// a [BinaryKey]
|
||||||
|
func BinaryKeyFromBase64(data string) (BinaryKey, error) { |
||||||
|
b, err := base64.StdEncoding.DecodeString(data) |
||||||
|
return BinaryKey(b), err |
||||||
|
} |
||||||
|
|
||||||
|
// KeyPair holds a Key pair
|
||||||
|
type KeyPair struct { |
||||||
|
PrivateKey BinaryKey |
||||||
|
PublicKey BinaryKey |
||||||
|
} |
Loading…
Reference in new issue