Robert Zaremba
be4a965599
codec: Rename codec and marshaler interfaces ( #9226 )
...
* codec: Rename codec and marshaler interfaces, ref: 8413
* codec: remove BinaryBare
* changelog update
* Update comments and documentation
* adding doc string comments
* Update CHANGELOG.md
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
* Update codec/codec.go
Co-authored-by: Marko <marbar3778@yahoo.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Amaury <1293565+amaurym@users.noreply.github.com>
Co-authored-by: Marko <marbar3778@yahoo.com>
2021-04-29 10:46:22 +00:00
Robert Zaremba
7568b6680a
Remove bech32 PubKey support ( #7477 )
...
* Move PubKey bech32 to legacy package and migrate the usage where possible
* update /server
* wip
* move proto json encoding helper functions to internal
* update internal/marshal
* wip
* update sections which needs legacybech32
* update validators output
* fix conflicts
* slashing update
* add more tests and helper function for ANY JSON serialization
* update slashing
* Update function documentation
* Rename code any-marshal helper functions
* Update pubkey unpacking test
* Update test comments
* solve TestDecodeStore
* solve legacytx issues
* all code compiles
* keyring tests
* keyring cleanup
* remove AssertMsg
* fix some tests
* fix add_ledger_test.go
* update cli tests
* debug cli test
* rename clashed bech32 names
* linter fixes
* update tmservice tests
* linter: update legacy deprecated checks
* fix names
* linting
* legacybech32 pubkey type rename
* fix staking client
* fix test compilation
* fix TestGetCmdQuerySigningInfo
* rename NewIfcJSONAnyMarshaler
* keyring: remove duplicated information from multinfo structure
* todo cleanups
* Update Changelog
* remove some legacybech32 from tests
* remove todos
* remove printlnJSON from /server CLI and amino encoding
* remove protocdc.MarshalJSON
* client/show remove duplicated function
* remove protocdc package
* comment update
* remove legacybech32.MustMarshalPubKey from a test
* add todo
* fix TestPublicKeyUnsafe test
* review update
* fix bech32 UnmarshalPubKey
* Use codec.MarshalIfcJSON
* fix linter issues
* merging conflict: fix codec.Unmarshal calls
* cleanups
* Update CHANGELOG.md
Co-authored-by: Aaron Craelius <aaron@regen.network>
* Reword changelog updates
* use pubkey.String for comparison in Test_runAddCmdLedgerWithCustomCoinType
* Update GetCmdQuerySigningInfo example
* cli: update keys add docs
* Add errors AsOf and errors.ErrIO type
* restore multisigPubKeyInfo structure bring it back to multiInfo struct
* Update codec/proto_codec.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* Update crypto/keys/ed25519/ed25519_test.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* Update codec/proto_codec.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* move pubkey any marshaling tests
* Apply suggestions from code review
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* review updates
* adding missing return
* errors: use IsOf instead of AsOf
* keyring: add a correct check for key not found in keyring.Get
* add checkKeyNotFound
* fix linter issues
* fix: keyring key not found check
* fix keyring tests
* fix linting issues
* cli tests
* fix: 'simd keys show <key> -p'
* fix: TestVerifyMultisignature
* rename keyring Bech32... functions to Mk...
* fix RunAddCmd
* Update pubkey display
* wip
* add more tests
* udate keyring output tests
* remove todo from ledger tests
* rename MkKeyOutput
* Changelog update
* solve liner issues
* add link to github issue
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
2021-03-25 14:53:22 +00:00
Marko
fd482a27bf
update ed25519 ( #8690 )
...
* update ed25519
* add changelog and doc.go
* add comment
* add note about tendermint
2021-02-26 10:09:05 +00:00
Robert Zaremba
adbf5a71e6
adr-028 address generation ( #8415 )
...
* Optimize secp256k1 hashing
* Add ADR-028 related functions
* Update ed25519
* fix errors/handle
* fix build
* fix build
* Add tests and update function names
* wip
* Use LengthPrefix for composed addresses
* add tests for NewComposed
* add module hash function
* fix append
* rollback ed25519 ADR-28 update
* rollback ed25519 ADR-28 test
* Adding Module tests and convert tests to test suite
* convert store_key_test.go to test suite
* rollback test check comment
* Rename assert.Panic and add comment
* add note to ed25519 about SDK support with regards to ADR-28
* Update ed25519 TestAddress
* Adding Deprecated notes for ed25519.PrivKey
* Update crypto/keys/ed25519/ed25519.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* Update types/address/hash_test.go
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
* solve linter issues
* linter: remove gocritic
Co-authored-by: Marie Gauthier <marie.gauthier63@gmail.com>
2021-02-15 15:32:51 +00:00
Aaron Craelius
2521964d50
Update gogo proto deps with v1.3.2 security fixes ( #8350 )
...
* Update gogo proto deps with v1.3.2 security fixes
* Regenerate proto files
2021-01-15 19:45:34 +00:00
Marie Gauthier
90e9370bd8
Replace tmcrypto.PubKey by our own cryptotypes.PubKey ( #7419 )
...
* WIP on removing tm pub/privkey
* Fix part of crypto tests
* Add PrivKeyLedgerSecp256K1 proto type
* Use BasePrivKey for ledger priv key type
* Refacto continued
* First round
* x/staking
* Continue porting
* x/* done
* Make build pass
* More conversion
* Remove IntoTmPubKey
* Fix test
* Remove crypto.PubKey in some other places
* Revert ledger changes
* Fix comment
* Remove useless function
* Add To/FromTmPublicKey
* Add migrate tests
* Fix test
* Fix another test
* Rename tm conversion functions
* Less code
* Rename BasePrivKey to LedgerPrivKey
* Add changelog
* Rename functions
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2020-11-09 16:01:43 +00:00
Robert Zaremba
bd9af94174
Use embedded lib key type in sdk pub keys instead of bytes. ( #7672 )
...
* Remove duplicate print message on keys add command (#7654 )
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* ed25519: use stdlib/crypto types
* use standard package testing
* use crypto/ed25519 instead of golang.org/x/crypto/ed25519
In Go 1.13 the new crypto/ed25519 package implements the Ed25519 signature scheme.
This functionality was previously provided by the golang.org/x/crypto/ed25519 package,
which becomes a wrapper for crypto/ed25519 when used with Go 1.13+.
* use standard package testing for secp256k1 tests
* secp256k1: add cross packages signature checks
* ed25519: rollback the _test package name
* rename underlyingSecp256k1 to btcSecp256k1
* package update
Co-authored-by: Denis Fadeev <denis@fadeev.org>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-10-28 10:24:41 +00:00
Marie Gauthier
91ca8ad3c1
Migrate BaseAccount PubKey to use Any ( #7268 )
...
* WIP on BaseAccount protobuf pub_key
* WIP on BaseAccount.PubKey
* WIP on BaseAccount pub key
* Update PubKey
* Update Account
* Docs
* WIP on protobuf keys
* Use Type() and Bytes() in sr25519 pub key Equals
* Add tests
* Add few more tests
* Update other pub/priv key types Equals
* Fix PrivKey's Sign method
* Rename variables in tests
* Fix infinite recursive calls
* Use tm ed25519 keys
* Add Sign and VerifySignature tests
* Remove ed25519 and sr25519 references
* proto linting
* Add proto crypto file
* Implement some of the new multisig proto type methods
* Add tests for MultisigThresholdPubKey
* Add tests for pubkey pb/amino conversion functions
* Move crypto types.go and register new proto pubkeys
* Add missing pointer ref
* Address review comments
* panic in MultisigThresholdPubKey VerifySignature
* Fix compile errors
* Remove pk conversion in ante handler
* Use internal crypto.PubKey in multisig
* Add tests for MultisigThresholdPubKey VerifyMultisignature
* Only keep LegacyAminoMultisigThresholdPubKey and move to proto keys to v1
* Remove conversion functions and introduce internal PubKey type
* Override Amino marshaling for proto pubkeys
* Merge master
* Make proto-gen
* Start removal of old PubKeyMultisigThreshold references
* Fix tests
* Fix solomachine
* Fix ante handler tests
* Pull latest go-amino
* Remove ed25519
* Remove old secp256k1 PubKey and PrivKey
* Uncomment test case
* Fix linting issues
* More linting
* Revert tests keys values
* Add Amino overrides to proto keys
* Add pubkey test
* Fix tests
* Use threshold isntead of K
* Standardize Type
* Revert standardize types commit
* Fix build
* Fix lint
* Fix lint
* Add comment
* Register crypto.PubKey
* Add empty key in BuildSimTx
* Simplify proto names
* Unpack interfaces for signing desc
* Fix IBC tests?
* Format proto
* Use secp256k1 in ibc
* Fixed merge issues
* Uncomment tests
* Update x/ibc/testing/solomachine.go
* UnpackInterfaces for solomachine types
* Remove old multisig
* Add amino marshal for multisig
* Fix lint
* Correctly register amino
* One test left!
* Remove old struct
* Fix test
* Fix test
* Unpack into tmcrypto
* Remove old threshold pubkey tests
* Fix register amino
* Fix lint
* Use sdk crypto PubKey in multisig UnpackInterfaces
* Potential fix?
* Register LegacyAminoPubKey
* Register our own PubKey
* Register tmcrypto PubKey
* Register both PubKeys
* Register interfaces in test
* Refactor fiels
* Add comments
* Remove old cosmos-sdk/crypto/keys reference
* Use anil's suggestion
* Add norace back
* Use our own ed25519
* Fix pubkey types
* Fix network tests
* Fix more tests
* Make ibc work?
* Use TM pubkey in NewValidator
* Fix lint
* Put interface in tpyes
* rerun CI
* Better name register
* Remove stray code
* Add ed25519 tests
* Check nil
* Correct interface impl assert
* rerun CI
* Add fix for Bech32
* Address comments
* FIx lint
* Add tests for solomachine unpack interfaces
* Fix query tx by hash
* Better name in amino register
* Fix lint
* Add back ed25519 test (fixes #7352 )
* go mod tidy
* Fix merge issues
* Sort import
* Add test for backwards-compatibility
* Fix tests
* Fix merge issue
* Update client/context.go
Co-authored-by: Cory <cjlevinson@gmail.com>
* Update types/address.go
Co-authored-by: Cory <cjlevinson@gmail.com>
* Address feedback
* Add comment
* Fix BaseAccount SetPubKey and address further comments
* Lint
* Remove unnecessary use of copy in getPubKeyFromString
* Update comment
Co-authored-by: Aaron Craelius <aaronc@users.noreply.github.com>
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: colin axnér <25233464+colin-axner@users.noreply.github.com>
Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-09-25 08:41:16 +00:00
SaReN
23a9f46aad
Update tm pubkey references ( #7102 )
...
* Update pubkey references
* Update ledger_mock
* Migrate encoding from tm
* Update pubkey prefix
* revert ed25519 to tendermint key
* random account revert
* Revert ed25519 references
* revert secp key name
* test revert
* remove ed25519
* Update x/staking/types/validator.go
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Revert "remove ed25519"
This reverts commit 66d2e1d061aeae81c4c0a3daf718536b09dda19e.
* remove ed25519 & sr25519
* Apply suggestions from code review
* remove codec
Co-authored-by: Marko Baricevic <marbar3778@yahoo.com>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
2020-08-28 16:02:38 +00:00
SaReN
443e0c1f89
Migrate Tendermint PubKey types to the SDK ( #7047 )
...
* Move crypto packages from tm
* Revert refactor changes
* Fix lint
* Move to crypto/keys
* Update to tm 0.34-rc3
* Update benchmark tests
* Fix tests
* Update to tm master
Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-08-18 13:53:40 +00:00