diff options
Diffstat (limited to 'key')
| -rw-r--r-- | key/box.go | 15 | ||||
| -rw-r--r-- | key/sig.go | 15 |
2 files changed, 18 insertions, 12 deletions
@@ -60,18 +60,21 @@ func loadBoxKey(filename string) ([32]byte, error) { } // Decode key. + return decodeBoxKey(buf) +} + +func (bpk1 BoxPublicKey) Compare(bpk2 BoxPublicKey) int { + return bytes.Compare(bpk1[:], bpk2[:]) +} + +func decodeBoxKey(buf []byte) ([32]byte, error) { var key [32]byte if hex.DecodedLen(len(buf)) != len(key) { - return [32]byte{}, fmt.Errorf("malformed key: expected %d bytes; got %d", + return [32]byte{}, fmt.Errorf("malformed box key: expected %d bytes; got %d", len(key), hex.DecodedLen(len(buf))) } if _, err := hex.Decode(key[:], buf); err != nil { return [32]byte{}, err } - return key, nil } - -func (bpk1 BoxPublicKey) Compare(bpk2 BoxPublicKey) int { - return bytes.Compare(bpk1[:], bpk2[:]) -} @@ -37,18 +37,21 @@ func LoadSigPublicKey() (SigPublicKey, error) { } // Decode key. + return decodeSigPublicKey(buf) +} + +func (spk1 SigPublicKey) Compare(spk2 SigPublicKey) int { + return bytes.Compare(spk1[:], spk2[:]) +} + +func decodeSigPublicKey(buf []byte) (SigPublicKey, error) { var key SigPublicKey if hex.DecodedLen(len(buf)) != len(key) { - return SigPublicKey{}, fmt.Errorf("malformed key: expected %d bytes; got %d", + return SigPublicKey{}, fmt.Errorf("malformed signature verification key: expected %d bytes; got %d", len(key), hex.DecodedLen(len(buf))) } if _, err := hex.Decode(key[:], buf); err != nil { return SigPublicKey{}, err } - return key, nil } - -func (spk1 SigPublicKey) Compare(spk2 SigPublicKey) int { - return bytes.Compare(spk1[:], spk2[:]) -} |