status-go/vendor/github.com
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
..
BurntSushi/toml Create a home submodule for Eth node bridges- Rename StatusBackend to GethStatusBackend 2019-11-27 17:02:09 +01:00
allegro/bigcache
aristanetworks/goarista
beevik/ntp
beorn7/perks use prometheus/client_golang for metrics 2019-11-04 13:18:50 +01:00
btcsuite
cenkalti/backoff/v3 Remove protocol and eth-node submodules (#1835) 2020-02-10 12:22:37 +01:00
cespare/xxhash/v2 Upgrade deps (#1892) 2020-03-09 08:55:58 +01:00
coreos/go-semver
davecgh/go-spew
deckarep/golang-set
edsrzf/mmap-go
elastic/gosigar Add statusUpdate code (#1861) 2020-02-21 15:48:53 +01:00
ethereum/go-ethereum Update go-ethereum to v1.9.5-status.9 (#1898) 2020-03-12 13:05:12 +01:00
fjl/memsize
gballet/go-libpcsclite Remove protocol and eth-node submodules (#1835) 2020-02-10 12:22:37 +01:00
go-playground Move to protobuf for Message type (#1706) 2019-12-05 17:25:34 +01:00
go-stack/stack
gogo/protobuf Add Commands (#1731) 2020-01-10 19:59:01 +01:00
golang Upgrade deps (#1892) 2020-03-09 08:55:58 +01:00
golang-migrate/migrate/v4 Remove protocol and eth-node submodules (#1835) 2020-02-10 12:22:37 +01:00
google/uuid
gorilla/websocket
hashicorp
huin/goupnp
ipfs
jackpal Add statusUpdate code (#1861) 2020-02-21 15:48:53 +01:00
jbenet Add Commands (#1731) 2020-01-10 19:59:01 +01:00
jinzhu/copier
karalabe/usb Remove protocol and eth-node submodules (#1835) 2020-02-10 12:22:37 +01:00
kilic/bls12-381 Feature/key compression (#1990) 2020-06-23 11:47:17 +01:00
koron/go-ssdp Add Commands (#1731) 2020-01-10 19:59:01 +01:00
leodido/go-urn Move to protobuf for Message type (#1706) 2019-12-05 17:25:34 +01:00
lib/pq Upgrade deps (#1892) 2020-03-09 08:55:58 +01:00
libp2p Add Commands (#1731) 2020-01-10 19:59:01 +01:00
lucasb-eyer/go-colorful Remove protocol and eth-node submodules (#1835) 2020-02-10 12:22:37 +01:00
mattn Nimbus node support 2020-01-20 13:15:17 +01:00
matttproud/golang_protobuf_extensions use prometheus/client_golang for metrics 2019-11-04 13:18:50 +01:00
minio
mr-tron/base58
multiformats Feature/key compression (#1990) 2020-06-23 11:47:17 +01:00
mutecomm/go-sqlcipher
okzk/sdnotify
olekukonko/tablewriter
opentracing/opentracing-go
pborman/uuid
pkg/errors Upgrade deps (#1892) 2020-03-09 08:55:58 +01:00
pmezard/go-difflib
prometheus Upgrade deps (#1892) 2020-03-09 08:55:58 +01:00
rjeczalik/notify
rs/cors Add statusUpdate code (#1861) 2020-02-21 15:48:53 +01:00
russolsen/transit
shopspring/decimal
spacemonkeygo/spacelog
spaolacci/murmur3
status-im Upgrade extkeys (#1878) 2020-03-04 09:30:31 +01:00
steakknife
stretchr/testify Upgrade deps (#1892) 2020-03-09 08:55:58 +01:00
syndtr/goleveldb
tsenart/tb Update Whisper and introduce rate limiting (#1673) 2019-11-18 11:22:23 +01:00
tyler-smith/go-bip39
vacp2p/mvds
wealdtech Remove protocol and eth-node submodules (#1835) 2020-02-10 12:22:37 +01:00
whyrusleeping Add Commands (#1731) 2020-01-10 19:59:01 +01:00
wsddn/go-ecdh