diff options
| author | Sam Anthony <sam@samanthony.xyz> | 2025-04-16 16:54:57 -0400 |
|---|---|---|
| committer | Sam Anthony <sam@samanthony.xyz> | 2025-04-16 16:54:57 -0400 |
| commit | e8e85bb2103d4679a5a0bca8ee175db0c1199b4f (patch) | |
| tree | c2c2b432441a7ca57edfe22b1e8a0599e26ffeb0 /key | |
| parent | 6ef7e52c52b4229e115c3b276123f33a664519bb (diff) | |
| download | hose-e8e85bb2103d4679a5a0bca8ee175db0c1199b4f.zip | |
key decoding functions
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[:]) -} |