status-go/vendor
Samuel Hawksby-Robinson c8f9dad554
Feature/key compression (#1990)
## What has changed?

I've introduced to the public binding functionality that will compress and decompress public keys of a variety of encoding and key types. This functionality supports all major byte encoding formats and the following EC public key types:

- `secp256k1` pks
- `bls12-381 g1` pks
- `bls12-381 g2` pks

## Why make the change?

We want shorter public (chat) keys and we want to be future proof and encoding agnostic. See the issue here https://github.com/status-im/status-go/issues/1937

---

* Added basic signature for compresspk and uncompresspk

* Added basic encoding information

* make vendor

* formatted imports for the linter

* Reformatted imports hoping linter likes it

* This linter is capricious

* Added check that the secp256k1 key is valid

* Added test for valid key

* Added multiformat/go-varint dep

* Added public key type handling

* Added key decompression with key type handling

* Added handling for '0x' type indentifying

* Added more robust testing

* Less lint for the linting gods

* make vendor for bls12_381

* Added bls12-381 compression tests

* Added decompress key expected results

* Refactor of typed and untyped keys in tests

* Lint god appeasment

* Refactor of sample public keys

* Implemented bls12-381 decompression

* gofmt

* Renamed decode/encode funcs to be more descriptive

* Added binary bindings for key de/compression

* Refactor of func parameters

gomobile is a bit tempermental using raw bytes as a parameter, so I've decided to use string only inputs and outputs

* gofmt

* Added function documentation

* Moved multiformat de/compression into api/multiformat ns

* Moved multiformat de/compression into api/multiformat ns

* Changed compress to serialize on API
2020-06-23 11:47:17 +01:00
..
github.com Feature/key compression (#1990) 2020-06-23 11:47:17 +01:00
go.opencensus.io Upgrade geth to 1.9.5 and Whisper (#1617) 2019-10-04 17:21:24 +02:00
go.uber.org Upgrade zap to v1.13.0 (#1694) 2019-11-25 21:16:00 +01:00
golang.org/x Upgrade deps (#1892) 2020-03-09 08:55:58 +01:00
gopkg.in Upgrade deps (#1892) 2020-03-09 08:55:58 +01:00
honnef.co/go/tools Upgrade zap to v1.13.0 (#1694) 2019-11-25 21:16:00 +01:00
modules.txt Feature/key compression (#1990) 2020-06-23 11:47:17 +01:00