From 2e95c9cc2b28517d024a7556bae32dbd34f1c510 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sun, 23 Oct 2016 16:56:08 +0200 Subject: Encapsulate Base64 encoder/decoder --- pub.go | 24 +++--------------------- 1 file changed, 3 insertions(+), 21 deletions(-) (limited to 'pub.go') diff --git a/pub.go b/pub.go index 2745c6f..43b48f0 100644 --- a/pub.go +++ b/pub.go @@ -1,12 +1,6 @@ package main -import ( - "bytes" - "encoding/base64" - "encoding/binary" - - "golang.org/x/crypto/ed25519" -) +import "golang.org/x/crypto/ed25519" type PubKey struct { PKAlg [2]byte @@ -14,17 +8,5 @@ type PubKey struct { PubKey [ed25519.PublicKeySize]byte } -func (v *PubKey) Unmarshal(b []byte) error { - buf := bytes.NewBuffer(b) - dec := base64.NewDecoder(base64.StdEncoding, buf) - err := binary.Read(dec, binary.BigEndian, v) - return err -} - -func (v *PubKey) Marshal() ([]byte, error) { - buf := new(bytes.Buffer) - enc := base64.NewEncoder(base64.StdEncoding, buf) - err := binary.Write(enc, binary.BigEndian, v) - enc.Close() - return buf.Bytes(), err -} +func (v *PubKey) Unmarshal(b []byte) error { return DecodeBase64(v, b) } +func (v *PubKey) Marshal() ([]byte, error) { return EncodeBase64(v) } -- cgit v1.2.3