Commit Graph

286 Commits

Author SHA1 Message Date
Anil Kumar Kammari
64b6bb5270
rename RegisterCodec to RegisterLegacyAminoCodec (#7243)
* rename RegisterCodec to RegisterLegacyAminoCodec

* Add changelog

* gofmt

* rename codec.New() to codec.NewLegacyAmino()

* Add change log

* Update CHANGELOG.md

Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>

* Fix

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
2020-09-07 14:47:12 +00:00
PaddyMc
f652ba4288
Add key recover test (#7183)
Add missing tests, see #7049.

Closes: #7179
2020-08-28 17:29:32 +01: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
puneet2019
a93329e98f
fix keys add interactive (#7049)
* fixed interactive mode key add.

key addition of interactive mode failed while being asked to generate new seed.

* fixed interactive mode key addition

key addition of interactive mode failed while being asked to generate new seed.

* Update client/keys/add.go

Co-authored-by: Alessio Treglia <quadrispro@ubuntu.com>

* Update add.go

* Update client/keys/add.go

Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: SaReN <sahithnarahari@gmail.com>
Co-authored-by: Alessio Treglia <quadrispro@ubuntu.com>
Co-authored-by: Anil Kumar Kammari <anil@vitwit.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2020-08-27 13:36:19 +00:00
Marko
8de96d16f9
tendermint: update to rc3 (#6892)
* modify light imports

* change abci.header to tmproto.header

* use rc

* rc

* fix import

* Merge PR #6893: fix key imports

* fix rc2

* tendermint: update 3 (#6899)

* tendermint: update 4 (#6919)

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>

* tendermint: update 5 (#6923)

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>

* bump to latest master

* tendermint: update (#6972)

Co-authored-by: Aleksandr Bezobchuk <aleks.bezobchuk@gmail.com>
Co-authored-by: Cory Levinson <cjlevinson@gmail.com>

* Update x/ibc/07-tendermint/types/test_utils.go

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>

* address comment

* go mod

* bring back things

* fix test

* update tm proto files

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Aleksandr Bezobchuk <aleks.bezobchuk@gmail.com>
Co-authored-by: Cory Levinson <cjlevinson@gmail.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
2020-08-14 13:58:53 -04:00
Federico Kunze
308c879b11
custom testnet cmd signing algorithms (#7012)
* custom testnet cmd signing algorithms

* update testutil network Config

* keyring options

* fix test

* typo
2020-08-12 08:34:10 +00:00
dauTT
20c80cfd44
Rename *codec.Codec to *codec.LegacyAmino (#6991)
* Rename *codec.Codec to *codec.LegacyAmino

* Implement requested changes

Co-authored-by: Aaron Craelius <aaron@regen.network>
2020-08-10 19:41:21 +00:00
SaReN
919e906866
Minor Code Cleanup - gRPC queries (#6862)
* add missing RegisterQueryService

* Update generated proto files

* Update grpc tests for auth,bank

* Make format

* fix godoc

* Address suggestions

* Update godoc
2020-07-28 12:53:35 +00:00
Alessio Treglia
e0a81d2cca
crypto: move ledger code to its own subfolder (#6817)
crypto -> crypto/ledger:
- crypto.LedgerShowAddress -> ledger.ShowAddress
- crypto.NewPrivKeyLedgerSecp256k1 - > ledger.NewPrivKeySecp256k1
- crypto.NewPrivKeyLedgerSecp256k1Unsafe -> ledger.NewPrivKeySecp256k1Unsafe

Closes: #6780
2020-07-22 18:51:12 +02:00
Jonathan Gimeno
54141887b5
Add home default to other commands. (#6789)
* Add home default to other commands.

* add defaultNodeHome to rest of commands

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2020-07-20 15:12:33 +00:00
Alessio Treglia
255ed06eb4
testutil: add ApplyMockIODiscardOutErr, simplify existing functions (#6665) 2020-07-10 08:55:48 +02:00
Alessio Treglia
a940214a49
testutil cleanup and reorg (#6658)
Prepare migrating testing auxiliary functions from tests
to testutil.

Remove local duplicates on testutil.WriteToNewTempFile().

Always favor testutil.NewTestCaseDir() over ioutil.TempDir().

Add test cases for the testing auxiliary functions.
2020-07-09 14:21:20 +02:00
Alexander Bezobchuk
de7885a594
keys: CLI Remove Viper (#6613)
* init commit

* Update ListKeysCmd

* updates

* updates

* test updates

* fix tests

* keys: Fix Test_runAddCmdLedgerWithCustomCoinType

* keys: Fix Test_runAddCmdLedger

* keys: Fix Test_runAddCmdBasic

* keys: Fix root tests

* keys: Fix Test_runMigrateCmd

* keys: Fix Test_runListCmd

* keys: Fix remaining tests
2020-07-06 19:50:09 +00:00
Alessio Treglia
b832e103b1
client/keys: make add command's output parseable (#6603)
client/input/input.go: GetConfirmation() should communicate
with the user via the io.Writer instance passed in as
argument.

client/keys/add.go: replace cmd.PrintErrln() calls with
fmt.Fprintln(cmd.ErrOrStderr(), ...) because of cobra's
PrintErr* functions broken behaviour. For more information
please see https://github.com/spf13/cobra/pull/894

Closes: #6601
Thanks: @noandrea for pointing this out.
2020-07-05 13:22:49 +02:00
Alexander Bezobchuk
d5049413ef
Merge PR #6525: x/bank: Refactor CLI & Tests 2020-06-30 16:59:21 -04:00
Federico Kunze
0215b5c6cd
client: fix signing algorithm (#6405)
* crypto/keyring: fix signing algorithm

* client: tests

* minor fixes

* changelog

* address @alexanderbez comments

* Update crypto/keyring/keyring.go

* Update crypto/keyring/signing_algorithms.go

* Update crypto/keyring/keyring.go

* Update crypto/keyring/signing_algorithms.go

Co-authored-by: Alessio Treglia <alessio@tendermint.com>

* fix test

Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2020-06-11 14:30:42 +00:00
Aaron Craelius
81d647e505
Move codec.RegisterCrypto and codec.Cdc to new packages (#6330)
* Move codec.Cdc to legacy_global.Cdc

* Update CHANGELOG.md

* Updates

* nit

* Fix imports

* Updates

* Use cosmos multisig instead of tendermint multisig everywhere

* Fix tests

* Rename legacy_global -> legacy

* Add doc.go

* Linting, move all RegisterCrypto calls to crypto/codec

* Update crypto/codec/amino.go

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
2020-06-04 10:38:24 +00:00
SaReN
bf8809ef98
Update x/auth to use Any (#6165)
* Migrate keeper codec to use marshaler

* Migrate AccountI to types

* Did go imports

* Fix tests for x/auth

* Cleanup std/codec

* Sort imports

* Fix legacy codec

* Add godoc for RegisterInterfaces

* Add RegisterInterfaces to std

* Fix typo

* Fixed merge changes

* Eliminate vesting import in auth

* Fix lint issues

* Fix tests

* Addressed comments

* Rename interfaces in RegisterInterfaces

* Removed codec.proto from std

* Minor code cleanup

Co-authored-by: Aaron Craelius <aaron@regen.network>
2020-05-20 19:21:00 +00:00
Marko
4173ea5eba
types: add bech32 (#6200)
* bring over bech32 from tendermint

* fix spacing

* address comment

* change to fmt.Errorf

* space dem comments

* remove err cheks
2020-05-12 16:53:30 +00:00
dependabot-preview[bot]
f37308778a
build(deps): bump github.com/spf13/viper from 1.6.3 to 1.7.0 (#6183)
* build(deps): bump github.com/spf13/viper from 1.6.3 to 1.7.0

Bumps [github.com/spf13/viper](https://github.com/spf13/viper) from 1.6.3 to 1.7.0.
- [Release notes](https://github.com/spf13/viper/releases)
- [Commits](https://github.com/spf13/viper/compare/v1.6.3...v1.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* refresh go.sum

* run make format

Co-authored-by: Alessio Treglia <alessio@tendermint.com>
2020-05-11 10:22:36 +02:00
Adam Bozanich
4e328d75db
client/keys/parse: honor config changes (#6172)
`keys parse` uses the global configuration before
before client applications have had a chance to
apply their settings.

This change adds a `GetSealedConfig()` helper
that waits for the config to be sealed before
returning it.

fixes #5091
addresses #5283
2020-05-08 10:30:55 +02:00
Alessio Treglia
2879c0702c
x/ibc: fix missing return statement (#6099)
* enable the wsl linter

Fix various wsl-related warnings.

x/ibc/04-channel/keeper/handshake.go: fix missing return statement in ChanOpenTry().

* goimports -w files

* remove unknown linter references

* run make format

* Revert "run make format"

This reverts commit f810b62b9e4993f08506663d4e5f2ec2228a9863.

* run make format
2020-04-29 22:36:34 -04:00
Sorawit Suriyakarn
80247dd86f
Merge PR #6038: Use CoinType from config as the default coin type 2020-04-21 11:22:44 -04:00
Alessio Treglia
aeee097b2f
spring cleanup (#5991)
* Make format

* Fix golangci-lint warnings

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
2020-04-14 19:13:15 +00:00
Alessio Treglia
e8cedf243f
fix all bits broken by viper API changes (#5982)
github.com/spf13/viper's recent releases introduced a semantic
change in some public API such as viper.IsSet(), which have
broken some of our flags checks. Instead of checking whether
users have changed a flag's default value we should rely on such
defaults and adjust runtime behaviour accordingly. In order to do
so, it's important that we pick sane defaults for all our flags.

The --pruning flag and configuration option now allow for a
fake custom strategy. When users elect custom, then the
pruning-{keep,snapshot}-every options are interpreted and
parsed; else they're ignored.
Zero is pruning-{keep,snapshot}-every default value. When
users choose to set a custom pruning strategy they are
signalling that they want more fine-grainted control, therefore
it's legitimate to expect them to know what they are doing and
enter valid values for both options.

Ref #5964
2020-04-14 17:24:27 +02:00
Alessio Treglia
a1feca39c2
Enter the new keyring interface (#5904)
crypto/keyring:

`Keybase` interface gives way to its successor: `Keyring`. `LegacyKeybase`
interface is added in order to guarantee limited backward compatibility with
the old `Keybase` interface for the sole purpose of migrating keys across
the new keyring backends.

The package no longer depends on the `github.com/types.Config`
singleton.

`SupportedAlgos` and `SupportedLedgerAlgos` methods have been removed.
The keyring just fails when trying to perform an action with an unsupported
algorithm.

crypto/ subdirs reorganization:

`crypto/keys/hd` was moved to `crypto/hd`, which now groups together
all HD wallets related types and utilities.

client/input:

* Removal of unnecessary `GetCheckPassword`, `PrintPrefixed` functions.
* `GetConfirmation`'s signature changed to take in a io.Writer for better integration
  with `cobra.Command` types.

client/context:

* In-memory keyring is allocated in the context when `--gen-only` flag is passed
  in. `GetFromFields` does no longer silently allocate a keyring, it takes one as
  argument.

Co-authored with @jgimeno

Co-authored-by: Jonathan Gimeno <jgimeno@gmail.com>
2020-04-08 11:38:28 +02:00
Alessio Treglia
2a7a408d35
crypto/keyring: deprecate old keybase (#5889)
Remove the Update method from the Keybase interface.

Remove redundant lazy keybase implementation altogether.

Created LegacyKeybase interface to restrict capabilities to
only those required by keys commands that deal with
legacy keybase such as update and migrate.

Rename keyring.New() -> keyring.NewLegacy().

Rename client/keys.NewKeyBaseFromDir -> NewLegacyKeyBaseFromDir.

crypto/keyiring.NewInMemory() now returns a in-memory keyring.
BackendMemory is added yet not exposed via command line
--keyring-backend flag. keys add uses it when --dry-run flag
is on.
2020-03-30 20:30:50 +02:00
Alessio Treglia
db76afe840
crypto/keyring: change addrKey to store chain-agnostic addresses (#5858)
Keyrings store keys by name and hexbytes representation
of address. This turns keyring internal storage more
chain-agnostic and types.Config independent.

Obsolete Keybase internal state representation is not affected.
2020-03-30 16:54:01 +02:00
Federico Kunze
9cce836c08
crypto/keys: move keybase and keyring to crypto/keyring/ dir (#5866)
* crypto/keys: move keybase and keyring to crypto/keyring/ dir

* Update client/keys/root.go

* Update crypto/keyring/errors.go

* Update crypto/keyring/keybase.go

* Update crypto/keyring/options.go

* format

* changelog

* fix build

* format

* lint
2020-03-25 15:20:36 +00:00
Alessio Treglia
206a511fa9
Use cosmos' fork of github.com/bartekn/go-bip39 (#5867)
Thanks @fedekunze for pointing this out.
2020-03-25 00:46:10 +01:00
Marko
d657513741
lint: various linting fixs (#5825)
* lint: various linting fixs

Signed-off-by: Marko Baricevic <marbar3778@yahoo.com>

* more linting

* more linting fixes

* more errchecking

* comment out errcheck for now

* undo error check

* address some comments

* remore require error

* change delete to batch delete

Co-authored-by: Alexander Bezobchuk <alexanderbez@users.noreply.github.com>
2020-03-20 19:24:18 +00:00
Alessio Treglia
230a1e8ba3
crypto/keys: improve documentation (#5833)
* crypto/keys: improve documentation

Remove out of date crypto/keys README.md file.

Populate client keys commands help screen with
more information regarding keyring backends.

* Fix formatting

* Fix lint warning
2020-03-19 16:58:14 +00:00
Alessio Treglia
9bd603ae88
crypto: cleanup, more testing
crypto.LedgerShowAddress() is a ledger specific function
and should takes acc address prefix instead of depending
on a sdk.Config singleton.

crypto/keys/mintkey:
- decryptPrivKey() return error instead of os.Exit()ing.
- encryptPrivKey() should panic instead of os.Exit() when
  bcrypt.GenerateFromPassword() call fails so that the
  caller is given a chance to recover().

crypto/keys:
- SignWithLedger() does not need to be method of
  baseKeybase. Method receiver is unused.
- ledgerInfo objecta may be pointers, type switch
  should handle both to avoid panics.
- keyringKeybase should not provide Update() at all.

More test cases are added to increase package crypto
and subpackages overall coverage.
2020-03-02 11:09:52 +00:00
Alessio Treglia
d7fd5b6a42
Replace defer with testing.T.Cleanup() (#5732) 2020-03-02 00:16:23 +00:00
Alessio Treglia
d0ff973386 Merge PR #5562: Remove KeyringServiceName from the sdk.Config struct 2020-01-23 13:47:11 -05:00
Alessio Treglia
415eab7a56
Create new generic keyring constructor: NewKeyring (#5547)
Remove other convenience constructors:
 * Remove NewKeyBaseFromHomeFlag
 * Remove NewKeyringFromDir
 * Remove NewKeyringFromHomeFlag
2020-01-22 17:54:56 +00:00
Alexander Bezobchuk
c92a7389ff
Merge PR #5526: Fix migrate command 2020-01-15 12:29:36 -05:00
Sunny Aggarwal
f367087731 Merge PR #5439: Keybase: Multiple Signature Algorithms 2020-01-14 10:40:10 -05:00
Alexander Bezobchuk
869531ca92
Merge PR #5495: Replace Redundant Bech32 PubKey Functions 2020-01-09 09:04:28 -05:00
Austin Abell
d7b0f4b9b4 apply options on newly added keyring types (#5404) 2019-12-13 11:21:49 +00:00
Austin Abell
0e28da23e7 Interchangable PrivKey implementations in keybase (#5278)
Allow for the keybase to be configured to override the implementation
of the key that is saved to the keybase.

Closes: #4941
2019-12-12 21:52:24 +00:00
Alessio Treglia
394860068d
keyring's encrypted file backend integration (#5355)
Client commands accept a new `--keyring-backend` option through which users can specify which backend should be used by the new key store:
- os: use OS default credentials storage (default).
- file: use encrypted file-based store.
- test: use password-less key store (highly insecure).
2019-12-11 09:45:26 +00:00
Alessio Treglia
0300a6f6d7
Small non-breaking UX changes to keys {list,delete} commands (#5366)
Add --list-names flag to keys command for short listing.

Make keys delete accept multiple key names at once.

Usage example:
 gaiacli keys list -n | xargs gaiacli keys delete
2019-12-05 16:07:29 +01:00
Alessio Treglia
b9cb3e105d Merge PR #5345: Add dev docs for COSMOS_SDK_TEST_KEYRING 2019-11-30 09:32:08 -05:00
Alessio Treglia
d4c831e63a Drop on-disk keybase in favor of keyring (#5180)
* Switch keys commands to keyring

* Replace NewKeybase with NewKeyring

* Fix delete test

* Purge dead code

* Override COSMOS_SDK_TEST_KEYRING envvar to switch to a test keyring

* s/unningOnServer/unningUnattended/

C'ing @tnachen

* Add deprecated warning, output looks like the following:

```
$ gaiacli keys update --help
Command "update" is deprecated, it takes no effect with the new keyring
based backend and is provided only for backward compatibility with the
legacy LevelDB based backend.
Refer to your operating system's manual to learn how to change your
keyring's password.

Change the password used to protect private key

Usage:
  gaiacli keys update <name> [flags]

Flags:
  -h, --help   help for update

Global Flags:
      --chain-id string   Chain ID of tendermint node
  -e, --encoding string   Binary encoding (hex|b64|btc) (default "hex")
      --home string       directory for config and data (default "/home/alessio/.gaiacli")
  -o, --output string     Output format (text|json) (default "text")
      --trace             print out full stack trace on errors
```

* Update multisign command

* Modify server.GenerateSaveCoinKey()

* GenerateSaveCoinKey more modifications

* Update docs

* Update upgrade module
2019-11-14 15:17:21 +01:00
Alexander Bezobchuk
ede9aaed3b
Revert "Mege PR #5092: changed bench32prefixes" (#5283)
This reverts commit 5a310fabbd.
2019-11-06 10:18:48 -07:00
Elvin
5a310fabbd Mege PR #5092: changed bench32prefixes 2019-11-06 07:18:32 -07:00
Marko
b9490f2d93 Merge PR #5203: Add more linters 2019-10-17 09:47:35 -04:00
Marko
9f3789157e Merge PR #5192: golangcI-lint updates & set static version to 1.19 2019-10-14 11:43:19 -04:00
Alessio Treglia
ee404e96ab Merge PR #5164: Handle New{,Test}Keyring errors 2019-10-09 14:53:54 -04:00
Alessio Treglia
3e6562ce45 Merge PR #5097: Add keys migrate command
Add new command to assist users migrate their keys from the legacy
on-disk keybase to the new OS keyring-based implementation.

Ref #4754
2019-09-30 11:49:12 -04:00
Marko
6684cdf3e5 Merge PR #5048: Fix linters and add golint 2019-09-16 13:11:17 -04:00
tyldar
a131570cdc Merge PR #4961: Switched keys prefixes to the config ones 2019-08-28 10:37:05 -04:00
Marko
3a4f1fc4d4 Merge PR #4881: Linting Galore 2019-08-19 12:06:27 -04:00
yys
adf6ddd4a8 Merge PR #4716: Fix ledger custom coin type support bug 2019-07-29 11:01:53 -07:00
Federico Kunze
e85a734a57 update x/genaccounts to match module spec (#4759) 2019-07-22 16:26:42 +01:00
Alessio Treglia
7b5e6cee07
Remove client/input.{Buffer,Override}Stdin() functions (#4602)
Cobra's new release made them redundant.

Thanks: Juan Leni <juan.leni@zondax.ch> for the original patch.
2019-06-22 11:24:59 +02:00
Marko
4ffabb65a5 lint add deadcode unused (#4606)
Added deadcode and unused linters to the repo, it
helped find some unused code.

Ref #4589
2019-06-21 17:18:01 +02:00
Alessio Treglia
1fcac93d57
switch GetConfirmation()'s default to no (#4575)
client/input.GetConfirmation() returns true if and only if the
user's input is confirmative.

The function is used in places where fat-fingering may cause
financial loss, e.g. gaiacli tx send command. Thus it seems
wiser to provide a conservative default in order to protect
users from accidental mistyping.

Closes: #4564
2019-06-18 11:46:51 +02:00
Alexander Bezobchuk
dc84c99dee Revert "Generalize auth/types.StdSignature (#4507)" (#4512)
This reverts commit a32d5a46d7.
2019-06-08 11:04:52 +01:00
Alessio Treglia
a32d5a46d7
Generalize auth/types.StdSignature (#4507)
New Signature interface available in the top level types package.
auth.StdSignature implements such interface. User defined auth
module can now define their own custom signature types.

Work carried out in the context of the following issues:
- #4488
- #4487
2019-06-07 14:21:35 +01:00
frog power 4000
5f9c3fdf88 Merge PR #4451: Client and Module Modularization 2019-06-05 19:26:16 -04:00
Alessio Treglia
e9810ac25c Merge PR #4433: Adopt YAML as human-readable text output 2019-05-31 09:14:34 -04:00
Alessio Treglia
85ebf5f72e
Implement private keys export/import symmetric functionalities (#4436)
Add Keybase's ExportPrivKey()/ImportPrivKey() API calls to export/import
ASCII-armored private keys. Relevant keys subcommands are provided as well.

Closes: #2020
2019-05-30 16:44:28 +01:00
frog power 4000
73e5ef7c13 reduce module interdependancy, /client refactor (#4415)
* abstract staking BuildCreateValidatorMsg, genutil defines its own flags

* client/ refactor

* staking move keys from keeper to types
2019-05-28 09:44:04 +01:00
Alessio Treglia
71d71f2206
Remove gaia (#4347)
Gaia is removed from cosmos-sdk repository.

Few changes were required to make sure no packages depend on gaia subpackages.

CI config is amended accordingly.

Unnecessary targets are removed from Makefile.

Simulations run through a lightweight version of gaia renamed to simapp.

Closes: #4104
2019-05-18 10:42:24 +02:00
zxh0
db4c82bad2 Merge PR #4355: Improve multisig key table format output 2019-05-17 10:15:45 -04:00
Alessio Treglia
4e70a37c6b Merge PR #4228: gaiakeyutil -> gaiacli keys parse 2019-05-02 09:34:02 -04:00
Juan Leni
1306a25e42 Adding support for Ledger Cosmos App v1.5 (#4227)
This PR adds support for the latest version of the Cosmos App (v.1.5).
The app is not been released yet by Ledger but the PR is backwards compatible.
We can later remove backwards compatibility and enforce v1.5 only.

When creating a new account, `gaiacli` now shows the account/index and address in the device and requires user confirmation.

Related PRs:
https://github.com/cosmos/ledger-cosmos-go/pull/3
https://github.com/cosmos/ledger-cosmos-go/pull/4
https://github.com/cosmos/ledger-cosmos-go/pull/5
https://github.com/cosmos/ledger-cosmos-go/pull/6

Changes in the app can be found here:
https://github.com/LedgerHQ/ledger-app-cosmos/pull/5
2019-04-30 09:58:21 +01:00
Frank Yang
5344e8d768 Merge PR #4220: Empty mnemonic should return error during key recovery 2019-04-29 12:49:35 -04:00
Alessio Treglia
3c88ddc2f5 Merge PR #4083: Replace gaiad --assert-invariants-blockly with --inv-check-period
* Remove old broken flag
* Support --inv-check-period which asserts invariants every nth period
2019-04-10 19:33:50 -04:00
Alessio Treglia
85021d4ca9
No packages must depend on cmd/gaia/ (#4048)
Preparation work for moving gaia out of the SDK.
2019-04-04 15:36:39 +01:00
Alexander Bezobchuk
bf17e1b020
Merge PR #4029: Update Tendermint to v0.31.3 2019-04-03 09:03:21 -04:00
Alessio Treglia
cdf2b7a7c5
gometalinter -> golangci-lint migration (#3933)
{,scripts/}Makefile:
- Remove gometalinter, install golangci-lint.
- Remove distinction between tools and devtools.
  Just tools is enough.
- test_lint -> lint
  Migrating away from underscore separated names.
- Remove unnecessary targets.
- Drop tendermint/lint. Incompatbile with golangci-lint
  and no longer necessary anyway.
- Fix misleading message in go-mod-cache.
- New ci-target to avoid download tools twice.
- Run tests with -mod=readonly.

Port tools/gometalinter.json to .golangci.yml
Update CircleCI config accordingly.

Closes: #3896
2019-03-19 17:52:43 +01:00
Frank Yang
54ac1d2fe8 Merge PR #3841: Add indent to JSON of gaiacli key [add|show|list]
* Add indent to JSON of `gaiacli key list`

* Add `-o json --indent` to `keys [add|show|list]`

* Add change log.

* Move entry from CHANGELOG.md to PENDING.md

* Update PENDING.md

Add indent to JSON of `gaiacli key [add|show|list]`

Co-Authored-By: yangyanqing <yangyanqing.cn@gmail.com>
2019-03-13 10:36:52 -07:00
Frank Yang
38796c1036 Merge PR #3859: Add newline to echo of gaiacli keys ...
`gaiacli keys add a123 --multisig a1,a2,a3 --multisig-threshold 2`
`gaiacli keys add temp --recover` with incorrect mnemonic
2019-03-12 16:10:57 +01:00
Frank Yang
4e38c79b2d Merge PR #3840: Modify magic string "json" to OutputFormatJSON 2019-03-09 13:00:08 -08:00
Alexander Bezobchuk
47a44fb580 Merge PR #3748: Multisig Display UX Improvements 2019-03-01 13:29:33 -08:00
Jack Zampolin
250dc9807b
Merge PR #3731: Fix keys add --interactive regression 2019-02-25 11:19:57 -08:00
Juan Leni
3eb0acda88 Merge PR #3670: CLI support for showing bech32 addresses in Ledger devices 2019-02-25 12:34:39 +01:00
Alexander Bezobchuk
e39debd359 Merge PR #3674: Remove password/keybase from REST Client 2019-02-19 10:15:39 -08:00
Juan Leni
6967de1073 Merge PR #3676: Refactored prefixes as constants
* Refactored prefixes as constants
* Fixing test
2019-02-18 22:35:08 +01:00
Alessio Treglia
1aa6c197ff Merge PR #3580: Code cleanup of client types 2019-02-14 08:53:36 -08:00
Alessio Treglia
fe548c0829 Merge PR #3593: hide dbKeybase's constructor 2019-02-11 17:18:58 -08:00
Juan Leni
94dccf3842 Merge PR #3586: Fix keybase storage of ledger accounts 2019-02-11 09:02:47 -08:00
Alessio Treglia
e7e3c32204 Merge PR #3553: Code cleanup, take #1
* add a bunch of tests, add DONTCOVER text tag

- Also fix flaky test (closes: #3559). Don't test values
  returned by queries since there's no way to query a
  specific height via REST.

* GetTempDir -> NewTestCaseDir
2019-02-08 22:45:41 +01:00
Juan Leni
b5fdb83830 Merge PR #3517: Increasing test coverage in keys/client package 2019-02-08 12:45:23 -08:00
Juan Leni
ba63eb1801 Merge PR #3557: Removing pkg/errors when not necessary 2019-02-08 11:37:46 -08:00
Alessio Treglia
dff6d0e462 Merge PR #3551: Code cleanup, small coverage boost 2019-02-07 14:38:45 -08:00
Alexander Bezobchuk
17c84ab34a Merge PR #3524: fix keys add flow to show seed by default 2019-02-06 14:20:36 -08:00
Alessio Treglia
9a57ce0214 Merge PR #3514: don't lock keybase on lcd startup 2019-02-06 11:23:49 -08:00
Juan Leni
f5ada58780 Merge PR #3461: GaiaCLI - refactor/fix --account and --index 2019-02-05 08:22:56 -08:00
Alessio Treglia
26cb0a125a Multi-signature workflow support (#3264)
- New keys add --multisig flag to store multisig keys
  locally.
- New multisign command to generate multisig
  signatures.
- New sign --multisig flag to enable multisig mode.
- Add multisig transactions support in ante handler.
- gaiad add-genesis-account can now take both account
  addresses and key names.

Closes: #3198
2019-01-16 09:30:57 -08:00
Jack Zampolin
0e26a39f6f
Support adding offline pubkeys to gaiacli keys (#3224) 2019-01-08 08:49:03 -08:00
Santatic
904778e102 Merge PR #3098: Fix typo 2018-12-13 12:16:55 +01:00
Jack Zampolin
70ce6f28f2
Merge branch 'develop' into jack/fix-empty-return 2018-12-11 08:40:08 -08:00
Alessio Treglia
24a1670cf0 Run make format 2018-12-10 14:27:25 +00:00
Jack Zampolin
b558e50eb2 Fix quoted json return 2018-12-07 17:33:52 -08:00
Jack Zampolin
07b0ad3c9e Merge PR #2987: Add shorthand flag to address output on gaiacli keys show and update docs
* Add shorthand flag to address output on gaiacli keys show

* Update docs and add PENDING

* Update client/keys/show.go

Co-Authored-By: jackzampolin <jack.zampolin@gmail.com>

* pk -> p
2018-12-04 17:38:43 +01:00
Alessio Treglia
535822ca68 R4R: add command asks for encryption password once too many (#2970)
* add command asks for encryption password once too many

* keep additional explanatory text
2018-11-30 15:00:53 -08:00
Alessio Treglia
956c2229bf Merge PR #2965: add --force to keys delete for unattended execution
* add --force to keys delete for unattended execution

Skip password check when --force is on and delete
keys unconditionally.

Closes: #2961

* Forcibly cleanup keys on fixtures initialization
2018-11-30 21:36:55 +01:00
Alessio Treglia
c3965f5509 Remove inconsistent gaiacli keys new/add dualism (#2904)
* Remove inconsistent gaiacli keys new/add dualism
2018-11-29 12:59:41 -08:00
Alessio Treglia
a6bc60e4c6 Merge PR #2923: Prompt user for confirmation when deleting ledger and offline keys
* Force password to 'yes' when deleting ledger-offline keys
* Improve UX, better docs on removing offline/ledger keys
* Ask for confirmation on offline/ledger keys deletion
2018-11-29 21:55:23 +01:00
Jack Zampolin
9676ce7d48
Expose LCD router, allowing devs to register custom routes from their modules (#2836)
* Fixes #1081
2018-11-16 14:21:36 -08:00
Alessio Treglia
3657ff4ada Merge PR #2656: Revert read-only leveldb database
* Revert read-only leveldb database

Waiting on a fix for syndtr/goleveldb#240.

* Update client/keys/utils.go
2018-11-02 00:29:21 +01:00
Alessio Treglia
ebca085fab
Merge pull request #2593 from cosmos/bez/fix-keys-new-perm
Fix DB Write Permissions for gaia keys new
2018-10-24 19:43:31 -07:00
Aleksandr Bezobchuk
507438bf7b Additional cleanup 2018-10-24 16:45:55 -04:00
Aleksandr Bezobchuk
23f62f7761 Fix db write perm 2018-10-24 16:34:30 -04:00
Christopher Goes
234262160e 'make format' 2018-10-24 15:37:06 +02:00
Christopher Goes
c577831261
Merge PR #2554: Make gaiacli keys show multisig-ready 2018-10-24 15:24:12 +02:00
HaoyangLiu
9ee9e28439 Merge PR #2462: Add swagger-ui for gov, stake and slashing 2018-10-24 15:19:48 +02:00
Alessio Treglia
6664cd5afd
Fix stupid mistake 2018-10-23 12:43:36 -07:00
Alessio Treglia
cd49e978f9
Make "multi" const 2018-10-23 11:46:43 -07:00
Alessio Treglia
6ace08b505
Remove shorthand 2018-10-23 11:44:47 -07:00
Alexander Bezobchuk
450873d080
Update client/keys/utils.go
Co-Authored-By: alessio <quadrispro@ubuntu.com>
2018-10-23 10:47:20 -07:00
Alessio Treglia
230c69b438
Validate threshold rather than letting it panic 2018-10-22 17:13:36 -07:00
Alessio Treglia
44a6c21ad9
Add tests 2018-10-22 14:43:57 -07:00
Alessio Treglia
add15b5b28
Merge review comments/changes 2018-10-22 14:29:27 -07:00
Alessio Treglia
8d24465845
Run make format 2018-10-22 13:37:28 -07:00
Alessio Treglia
322a029ab5
Make gaiacli keys show multisig-ready 2018-10-22 12:00:57 -07:00
Cong Zhao
6c623b203e #1255 make keybase opened with readonly option to support better parallelization between gaiacli 2018-10-20 20:26:15 +08:00
Federico Kunze
ad355d6c69 Merge PR #2444: Standardize REST error responses 2018-10-19 18:55:20 +02:00
Ethan Buchman
1ee8deed2b Merge PR #2090: Improve crypto/keys and add keys mnemonic and keys new commands
* crypto/keys/hd: use btcec to remove dep on tendermint

* crypto/keys/bcrypt: improve comment about fork

* crypto/keys/bip39 -> crypto/keys/bip39/fundraiser

* crypto/keys/bip39: bring in fork of tyler-smith

* crypto/keys/hd: update dep

* crypto/keys: update deps

* crypto/keys: move mintkey.go into new crypto/keys/mintkey

* crypto/keys/hd: NewParamsFromPath

* crypto/keys: keybase.Derive takes a bip39 passphrase too

* crypto/keys/hd: BIP44Params.DerivationPath

* gaiacli keys: add commands new and mnemonic

* fix lints

* minor fixes from review

* update Gopkg.toml

* add tendermint fork of golang.org/x/crypto
* pin some transitive deps

* crypto/keys/bcrypt: remove

* remove in favour of fork of golang.org/x/crypto/bcrypt at github.com/tendermint/crypto/bcrypt

* crypto/keys/bip39: remove completely

* use fork cosmos/go-bip39 instead

* Gopkg.toml: dont use master

* Pull in changes from my PR

* fixes from review

* enforce min len for --unsafe-entropy

* lint fix

* feedback from review

* fix dep
2018-10-17 13:37:58 -04:00
Christopher Goes
71a80bf176 'make format' 2018-10-09 06:38:58 +02:00
HaoyangLiu
3bcbcd08b9 create adequate error for key managerment 2018-10-06 11:59:12 +08:00
HaoyangLiu
6d645f20fa Refactor keys handler according to code reviewers 2018-10-05 07:19:52 +08:00
HaoyangLiu
1acab69326 Fix test_lint failure and test_cover failure 2018-10-04 21:15:29 +08:00
HaoyangLiu
8e1bfee6ca Add swagger-ui for key management 2018-10-04 20:36:24 +08:00
Alexander Bezobchuk
611e287375 Merge PR #2401: Remove remnants of gocyclo 2018-09-25 13:45:04 -04:00
Alessio Treglia
a65c6eba00 Merge PR #2389: Remove dependency on tendermint/tmlibs 2018-09-24 23:06:38 +08:00
Dev Ojha
6b55093c75 Merge PR #2324: rename wire to codec
* rename wire to codec

* fix formatting and cli

* fix the docs
2018-09-13 14:17:32 -04:00
Jia Chenhui
55b7c6adf1 Merge PR #2304: client/keys: remove excess code and uniform code style 2018-09-12 15:14:29 +08:00
Alexander Bezobchuk
2d92803b9f Merge PR #2040: Refactor Validator Account Types/Bech32 Prefixing
* Add new account bech32 prefixes with godocs

* Restructure spacing of existing account code

* Update account godocs

* More account godoc updates + new tm pub/addr helpers

* Update validator type to use new account types/bech32 prefixes

* Fix account documentation errors

* Update Bech32 prefix for consensus nodes

* Update Bech32 spec doc

* Fix account type tests

* Add missing account consensus functions, clear up godocs, and fix tests

* Add to TestRandBech32PubkeyConsistency check

* Update initialization of validator public keys

* Update query signing info command

* Implement new ConsAddress type with associated unit tests

* [WIP] Update stake and slashing parameters

* Update all calls to MustBech32ifyValPub

* [WIP] Validator operator API updates

* [WIP] Fix and update unit tests

* Fix gov logs (helping to debug failing tests)

* Fix gov tally

* Fix all broken x/ unit tests

* Update gaia app genesis address logic

* Fix linting errors

* Fix broken LCD tests

* Fix broken CLI tests

* Implement command to get validator address and pubkey from key name

* Add support for getting validator key information via REST endpoint

* Update PENDING log

* Update docs

* Revert GaiaGenTx.PubKey bech32 prefix

* Fix broken docs and cli tests

* Update genesis to use correct Bech32 (cons) prefix for pubkeys

* Update docs and unit tests to reflect new cosmos account bech32 prefix

* minor formatting
2018-08-31 00:06:44 -04:00
Christopher Goes
879f78cfc0 Rename revoke(d) to jail(ed) 2018-08-22 17:56:13 +02:00
Matthew Slipper
0c0d282a0c Add plaintext flags to show keys; default print response to true; helptext updates
Closes #1970
Closes #1971
Closes #1967
Closes #1969
2018-08-21 15:36:53 -07:00
Alexander Bezobchuk
12c2c236c2 Merge PR #1741: CoreContext Refactor 2018-08-06 20:11:30 +02:00
Fabian Weber
e400e83c43 fix key import creating random account 2018-07-12 19:44:31 +02:00
ValarDragon
fc4c563e29 keys: Keybase.Update no longer asks for newpass if oldpass is incorrect
Achieved by refactoring the parameter newpass as follows:

* (newpass string) -> (getNewpass func() (string, error))

Closes #1629
2018-07-10 20:00:22 -07:00
Christopher Goes
5a56c3f03d
Merge PR #1575: ready-for-review: sdk.AccAddress natively bech32 2018-07-10 04:18:23 +02:00
ValarDragon
99e91dd276 Add nolints on remaining functions 2018-07-09 16:16:43 -07:00
Sunny Aggarwal
25d976feb4 works? 2018-07-09 01:47:38 -07:00
sunnya97
7ac220beb6 asdf 2018-07-09 00:59:51 -07:00
Sunny Aggarwal
50ed0fa1ae asdf 2018-07-09 00:35:28 -07:00
ValarDragon
0b10430d65 gaiacli, keys: Improve error message when deleting non-existant key 2018-07-05 18:03:41 -07:00
Fabian Weber
5998378773 added error check 2018-07-04 16:39:16 +02:00
Fabian Weber
2c697c982b added sunnys changes 2018-07-04 10:48:47 +02:00
Fabian
a118229fcb Fabo/Switch key creation REST output to bech32 address (#1522)
* switch new key output to bech32
* changelog
* fixed tests
* Update LCD TestKeys failure message
2018-07-03 21:31:15 +02:00
Ethan Buchman
f78f30c67a update for tm v0.22.0. tmlibs->tendermint/libs 2018-07-02 16:34:06 -04:00
Dev Ojha
fc3dd56281 Merge PR #1477: gaiacli: Make recovery allow new keys
* gaiacli: Make recovery allow new keys
* Move create key to a temporary method, restore create fundraiser key
2018-06-30 00:47:09 +02:00
Christopher Goes
59aadf42aa
Ledger integration (#931)
Merges the keybase and Ledger code from go-crypto (which is no more) into the SDK
Adds support for Ledger into gaiacli
Cherry-picks updated error handling from #1158
2018-06-29 02:54:47 +02:00