Commit Graph

544 Commits

Author SHA1 Message Date
Raul Jordan
86b2bd5edd
Implement Accounts-V2 Backup for Direct Keymanager (#6936)
* progress on export feature
* Merge branch 'master' into impl-export
* rename func
* imports
* confs
* export single works
* impl export
* Merge branch 'master' into impl-export
* cleanup exports code
* rename to backup
* rename to backup
* Merge branch 'master' into impl-export
* full test for backup
* Merge branch 'impl-export' of github.com:prysmaticlabs/prysm into impl-export
* gazelle fix
* terence feedback
* merge confs
* Merge branch 'master' into impl-export
* refactor into single select accounts function
* gaz
* Merge refs/heads/master into impl-export
* victor's feedback
* validate yes or no
* confs
* close the zip file in defer
* Merge refs/heads/master into impl-export
* Merge refs/heads/master into impl-export
2020-08-11 23:15:06 +00:00
Raul Jordan
11c9699129
Allow Importing One-Off, Private Keys Into Accounts-v2 (#6929)
* import privkey done
* rem print
* tidy
* Merge refs/heads/master into import-priv-key
* Merge refs/heads/master into import-priv-key
* Merge branch 'master' into import-priv-key
* tests pass
* Merge refs/heads/master into import-priv-key
* Merge refs/heads/master into import-priv-key
* resolve confs
* Merge refs/heads/master into import-priv-key
* confs
* Merge refs/heads/master into import-priv-key
* better feedback mechanism
2020-08-11 16:32:05 +00:00
Ivan Martinez
ea9bb88d13
Accounts-V2: Add command to delete accounts (#6941)
* Add accounts-v2 delete
* Merge branch 'master' of github.com:prysmaticlabs/prysm into add-delete-command
* Gaz
* Add confirmation
* Fix build
* Fix test
* Merge branch 'master' into add-delete-command
* Add more cases for exit
* Merge branch 'master' of github.com:prysmaticlabs/prysm into add-delete-command
* Fix usage
* Fix logs
* Change to DeleteAccounts
* Remove flag
* Fix comment
2020-08-11 03:54:37 +00:00
Ivan Martinez
8b9138a76a
Accounts V2: Log and UX cleanup (#6955)
* Clena up password entry for importing
* Merge branch 'master' of github.com:prysmaticlabs/prysm into accounts-v2-cleanup
* Fix password entry
* Clean
* Merge branch 'master' of github.com:prysmaticlabs/prysm into accounts-v2-cleanup
* Change color
* Merge branch 'master' of github.com:prysmaticlabs/prysm into accounts-v2-cleanup
* Fix
* Merge branch 'master' of github.com:prysmaticlabs/prysm into accounts-v2-cleanup
* Fix
* Merge branch 'master' of github.com:prysmaticlabs/prysm into accounts-v2-cleanup
* Cleanup
* Clean go.mod
* Fix
2020-08-10 22:35:30 +00:00
terence tsao
ceb11f432e
Proposer: log graffiti (#6954)
* Proposer: log graffiti
* Merge refs/heads/master into log-graffiti
2020-08-10 19:17:59 +00:00
Raul Jordan
cbc27e0f2e
Refactor Wallet Password Handling, Preventing Wallet Corruption (#6933)
* wallet should no longer deal with account passwords
* ensure tests are fixed
* Merge branch 'master' into corrupted-pass
* move mnemonic logic into right place
* rem fmts
* add fileutil
* gazelle
* imports
* move seed logic to derived
* fix tests
* imports
* gaz
* Merge refs/heads/master into corrupted-pass
* merge confs
* Merge refs/heads/master into corrupted-pass
* ivan's feedback
* Merge branch 'corrupted-pass' of github.com:prysmaticlabs/prysm into corrupted-pass
* gaz
* fix shared test
* Merge refs/heads/master into corrupted-pass
* resolve conflicts
* fix test build
2020-08-10 18:54:40 +00:00
Raul Jordan
a7f4293eb3
Resolve Accounts-v2 Feedback (#6953)
* Radek feedback
* Merge refs/heads/master into final-accounts-feedback
* Apply suggestions from code review
* Merge refs/heads/master into final-accounts-feedback
* Merge refs/heads/master into final-accounts-feedback
2020-08-10 18:14:10 +00:00
Shay Zluf
335d31688f
Wallet file lock (#6952)
* Wallet file lock

* lock wallet config file only in validator instance

* runtime fixes

* added test

* radek feedback

* fix test
2020-08-10 12:48:41 -05:00
rkapka
1f21e196b6
Fix multiple anti-patterns from DeepSource analysis (#6951)
* Merge variable declaration and assignment
* Use result of type assertion to simplify cases
* Replace call to bytes.Compare with bytes.Equal
* Drop unnecessary use of the blank identifier
* Replace x.Sub(time.Now()) with time.Until(x)
* Function literal can be simplified
* Use a single append to concatenate two slices
* Replace time.Now().Sub(x) with time.Since(x)
* Omit comparison with boolean constant
* Omit redundant nil check on slices
* Nested if can be replaced with else-if
* Function call can be replaced with helper function
* Omit redundant control flow
* Use plain channel send or receive
* Simplify returning boolean expression
* Merge branch 'origin-master' into fix-antipatterns
* Merge branch 'master' into fix-antipatterns
2020-08-10 16:16:45 +00:00
terence tsao
6d5b7b0439
Validator/node: update warn log to error (#6945) 2020-08-09 17:27:23 -07:00
Raul Jordan
10f38662e5
Standardize File Permissions in Accounts-V2 (#6934)
* standardize file permissions
* Gaz
* no petname
* Merge refs/heads/master into file-perms
2020-08-07 22:14:07 +00:00
Ivan Martinez
6351d187ef
Accounts V2: Remove unused passwords-dir and deprecate flag (#6916)
* Remove passwords dir
* Deprecate flag
* Merge branch 'master' of github.com:prysmaticlabs/prysm into remove-passwords-dir
* Properly deprecate flag
* Merge branch 'master' into remove-passwords-dir
* Merge refs/heads/master into remove-passwords-dir
* Merge refs/heads/master into remove-passwords-dir
2020-08-07 00:02:30 +00:00
Raul Jordan
2502b812fc
Sort by Derivation Path in File Name When Importing (#6918)
* add sort by derivation in file name

* Update validator/accounts/v2/accounts_import_test.go

Co-authored-by: Ivan Martinez <ivanthegreatdev@gmail.com>

* imports

* fixed var

Co-authored-by: Ivan Martinez <ivanthegreatdev@gmail.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-08-06 18:40:49 -05:00
terence tsao
ceee7489dd
Update SignRequest for key manager (#6917)
* Proto: update sign request fields

* Validator client: aggregate signing

* Validator client: proposal signing

* Validator client: attestation signing

* Validator client: update generic sign

* Proto: use ranges

Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-08-06 18:18:38 -05:00
Raul Jordan
6b4e4bcf96
Fail Immediately if Importing Accounts from Empty Directory (#6915)
* fail on import from empty directory
* Merge refs/heads/master into fail-on-empty-dir
2020-08-06 22:40:14 +00:00
Raul Jordan
96fcb3a927
Fix Pubkey Not Specified Issues in External Keystore Imports (#6914)
* utilize pubkey from privkey if missing pubkey field in keystore
* change tool as well
* Merge refs/heads/master into strange-keystore
* Merge refs/heads/master into strange-keystore
2020-08-06 21:56:25 +00:00
Raul Jordan
ac82308e03
Allow for Different Language Mnemonic Recovery (#6913)
* allow for different language mnemonics

* imports
2020-08-06 15:33:28 -05:00
rkapka
1d679c9533
Manual code cleanup (#6906)
* replace fmt.Sprintf with String()

* remove unconditional loop termination

* reapply `break` statements

* replace for loop if statement
2020-08-06 11:29:00 -05:00
Nishant Das
5b75f4e6be
add feature config support (#6904) 2020-08-06 20:49:41 +08:00
Raul Jordan
ec21316efd
Tool for Decrypting/Encrypting EIP-2335 Keystores (#6900)
* begin keystore tool

* add bazel

* keystores tool

* fully decrypt

* implement encrypt

* complete encrypt and decrypt implementations

* finalize tool

* gaz

* fix viz

* help

Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-08-06 00:26:52 -05:00
rkapka
e492343ffd
Code quality issues - Remove unused code (#6864)
* remove unused code

* gofmt

* remove junk file

* bring back metrics-related functions

* bring back keymanager's code
2020-08-05 13:59:46 +02:00
Raul Jordan
ac0237e9cf
Return Err in Wallet.HasDir function (#6878)
* fix panic in has dir
* Merge branch 'master' of github.com:prysmaticlabs/prysm
* return err
2020-08-05 02:07:41 +00:00
Ivan Martinez
c860553306
Handle empty local slashing protection data (#6877)
* Add handlers for empty protection data
* Remove copy
* Merge refs/heads/master into fix-isnewattslashable
* Add regression tests
* Merge refs/heads/master into fix-isnewattslashable
* Merge branch 'fix-isnewattslashable' of github.com:prysmaticlabs/prysm into fix-isnewattslashable
* Fix
* Add debug log
2020-08-05 01:03:40 +00:00
Raul Jordan
1f9d155f0e
Fix Panic in Wallet HasDir() (#6857)
* fix panic in has dir
* Merge refs/heads/master into has-dir-panic
* Merge refs/heads/master into has-dir-panic
* Merge refs/heads/master into has-dir-panic
* Merge refs/heads/master into has-dir-panic
* Merge refs/heads/master into has-dir-panic
2020-08-04 23:23:15 +00:00
Preston Van Loon
bc883aab9e
Return an error when wallet is nil rather than panic (#6875) 2020-08-04 15:53:34 -07:00
Raul Jordan
6af950f001
Add Back Displaying Deposit Data + Misc Bugs (#6856)
* show deposit data tx
* display
* improve logic for derived
* further improve experience
* imports
* gaz
2020-08-03 20:17:34 +00:00
Raul Jordan
700d82236b
Fix Critical Account Keystores Bugs (#6854)
* no need for pass in new account create
* disallow duplicates
* deduplicate and test
* gaz
* fix up broken tests
* unit test for no duplicates
* Merge branch 'master' into fix-account-create
* fix import
* Merge refs/heads/master into fix-account-create
* Merge branch 'fix-account-create' of github.com:prysmaticlabs/prysm into fix-account-create
2020-08-03 18:58:04 +00:00
Raul Jordan
593d3daf84
Better Password Input Experience (#6849)
* more sane passwords
2020-08-03 17:05:30 +00:00
Raul Jordan
eef0d058ec
Refactor Direct Keymanager to One-Shot Decrypt (#6823) 2020-08-02 13:02:04 -07:00
terence tsao
c7c1c660ab
Load config after Configure config (#6821)
* Node: load config after configure
* Merge refs/heads/master into load-config
2020-08-01 00:46:55 +00:00
terence tsao
eb0ad0669f
Fix empty wallet check (#6819) 2020-07-31 17:08:40 -07:00
Raul Jordan
4dfe02d919
Fix Accounts List Show Deposit Data When Coming From Eth2.0 Deposit CLI (#6811)
* amend accounts list when coming from launchpad
* Merge refs/heads/master into fix-accounts-list
* Merge refs/heads/master into fix-accounts-list
* Merge refs/heads/master into fix-accounts-list
* Merge refs/heads/master into fix-accounts-list
* Merge refs/heads/master into fix-accounts-list
2020-07-31 22:08:13 +00:00
Preston Van Loon
821f2ec029
Accounts V2: Allow user to override password-dir set in the wallet config (#6817)
* Accounts V2: Log a warning when a user specifies --password-dir when it has already been set.
* Override wallet config, as user intended
* gofmt
* Merge refs/heads/master into av2-flag-improvement
2020-07-31 21:20:56 +00:00
Preston Van Loon
dbd2d9a0bb
Accounts V2: improve progressbar feedback (#6814)
* Accounts V2: improve progressbar feedback
* gofmt
* Merge refs/heads/master into pb-improvements
2020-07-31 20:46:03 +00:00
Preston Van Loon
3f983e2a96
Accounts V2: Allow for user to specify single file rather than directory for keystore import (#6813)
* Fix public key formatting
* Accounts V2: Allow for user to specify single file rather than directory
* Merge branch 'master' into fix-pubkey-formatting
* Merge refs/heads/master into fix-pubkey-formatting
2020-07-31 20:17:39 +00:00
Preston Van Loon
bf82683d4f
Fix public key formatting (#6809)
* Fix public key formatting
2020-07-31 19:23:08 +00:00
terence tsao
f7c8ae5aa6
Config flag: onyx (#6789)
* Config/flags: add onyx back
* Sync with master
* Merge refs/heads/master into onyx
* Merge refs/heads/master into onyx
* onyx flag
* Merge refs/heads/master into onyx
* Merge refs/heads/master into onyx
2020-07-31 01:23:37 +00:00
Raul Jordan
18f8578d73
Derived Keymanager Has No Need to Store Accounts to Disk (#6790)
* tests pass
* Merge branch 'master' into derive-no-store
* Merge refs/heads/master into derive-no-store
* gaz
* Merge branch 'derive-no-store' of github.com:prysmaticlabs/prysm into derive-no-store
* Merge refs/heads/master into derive-no-store
2020-07-30 23:23:18 +00:00
Raul Jordan
b2ae4243fd
Concurrent Decryption of Direct Keymanager Accounts With Progress Bar (#6788)
* progress bar add

* Update validator/keymanager/v2/direct/direct.go

Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>

* Update validator/keymanager/v2/direct/direct.go

Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>

* fix test

Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-07-30 17:54:15 -05:00
terence tsao
a116502c76
Accounts v2 as default (#6784)
* Featureconfig: invert accounts v2
* Test: fixing validator node
* Test: Fixed node test
* Merge refs/heads/master into account-v2-default
* Merge refs/heads/master into account-v2-default
* Merge refs/heads/master into account-v2-default
* Merge refs/heads/master into account-v2-default
* Merge refs/heads/master into account-v2-default
* Merge refs/heads/master into account-v2-default
2020-07-30 21:00:02 +00:00
Raul Jordan
bd7046c790
Improve Speed of Accounts Import (#6785)
* improve speed of import
* better format
* imports
* Merge branch 'master' into fast-import
* Merge refs/heads/master into fast-import
* Merge refs/heads/master into fast-import
* Merge refs/heads/master into fast-import
* Merge refs/heads/master into fast-import
2020-07-30 19:42:16 +00:00
Ivan Martinez
48bfffbb3e
Accounts-V2: Cleanup password entry and disable export (#6778)
* Cleanup prompts
* Merge branch 'master' of github.com:prysmaticlabs/prysm into cleanup-accounts-v2
* Fix
* add todo
* Merge branch 'master' of github.com:prysmaticlabs/prysm into cleanup-accounts-v2
* Clean
* Merge refs/heads/master into cleanup-accounts-v2
* Merge refs/heads/master into cleanup-accounts-v2
* Change with error
* Merge branch 'cleanup-accounts-v2' of github.com:prysmaticlabs/prysm into cleanup-accounts-v2
* Merge refs/heads/master into cleanup-accounts-v2
* cleanup and remove deposit tx file
* display deposit data
2020-07-30 15:30:19 +00:00
terence tsao
bcea2c1b22
Config/flag: medalla as default (#6770)
* config: use medalla as default

* Tests: align with medalla spec

* Config/flag: deprecate medalla feature flag

* Update shared/featureconfig/flags.go

* Spectest: set genesis forkversion to 0,0,0,0

* Config: set medalla as defat in Configure

* Extra space

* Shard: use copy

* Revert a p2p fork test

* Update default medalla for tools

* Use medalla config for e2e

* Fix E2E

Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: Ivan Martinez <ivanthegreatdev@gmail.com>
2020-07-30 08:45:00 -05:00
Raul Jordan
bde18f0329
Resolve Remaining Accounts Bugs (#6769)
* fix cases
* fix up imports
* ask until successful
* fixed imports flow
* fully utilize progress bar
* tidy
* grpc
* add round trip test fix
* properly use seeds
* update deps
* update deps
* tidy
* rem print
* fix bazel tests
* rem extraneous log
* gaz
* go mod tidy
* grpc version
* fix deps
* Merge branch 'master' into empty-or-nonexistent
* deps
* tidy
* option show bytes
* Merge refs/heads/master into empty-or-nonexistent
2020-07-29 23:54:23 +00:00
Raul Jordan
e5f3a30226
Allow Relative Imports in Accounts-v2 (#6758)
* add abs imports tests

* relative imports now work

* misc

Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-07-29 11:33:28 +03:00
Ivan Martinez
fac5e19a17
Accounts-V2: Replace promptui with shared/promptutil (#6759)
* Add promptutil to shared/promptutil
* fixes
* comment
* Implement promptutil into accounts-v2
* gaz
* Merge branch 'master' of github.com:prysmaticlabs/prysm into implement-promptutil
* Apply suggestions from code review
* gofmt and fix all scanned input
* Merge refs/heads/master into implement-promptutil
2020-07-29 04:55:26 +00:00
Fabrice Cheng
cbd731152e
Return INVALID validator status if the BLS signature is invalid (#6576)
* return INVALID status if BLS signature is invalid

* add unit tests for VerifyDepositSignature function

* fix lint

* lint fix

* gazelle run run

* update ethereumapis dependencies in go module

* tidy go mod

* update VerifyDepositSignature function to use the proper way of generating sig

* update tests

* update gazelle

* add ValidatorStatus test

* update to Warn

* reorder impot

* merge verifyDepositDataSigningRoot with VerifyDepositSignature

* refactor one last time

* align with specs for computing Domain

* add warn error logs
2020-07-28 23:19:07 -05:00
Raul Jordan
9d08ba49de
Accounts Revamp Fixes: "Overall" Wallet Improvements (#6736)
* change default wallet dir path to not be hidden

* gaz + pass wallet dir

* gaz + move const to flags

* move to flags

* move to flags

* use filepath join in order to create a valid dir name

* add wallet dir

* return err no wallet found issues

* fix up edit remote

* all tests passing

* fix test

* create or open wallet

* ivan feedback

* enter password for account with pubkey

* Update validator/accounts/v2/accounts_create.go

Co-authored-by: Ivan Martinez <ivanthegreatdev@gmail.com>

* works

* preston feedback

* nothing to export

* fmt

* test for create or open

* gaz

Co-authored-by: shayzluf <thezluf@gmail.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: Ivan Martinez <ivanthegreatdev@gmail.com>
2020-07-28 20:20:13 -05:00
Ivan Martinez
3a609f44b9
Accounts-V2: Minor fixes for logging (#6751)
* Fixes for accounts-v2
* Merge branch 'master' into fixes
* Undo wallet changes
* Merge branch 'fixes' of github.com:prysmaticlabs/prysm into fixes
* Merge refs/heads/master into fixes
2020-07-28 22:58:11 +00:00
Ivan Martinez
ee1adddd24
Accounts V2: Fix issues reported by rkapka (#6725)
* Fix accounts v2 runtime
* Accounts V2: Fix issues found by rkapka
* Add to help
* Merge refs/heads/master into fix-v2-runtime
* Merge refs/heads/master into fix-v2-runtime
* Merge refs/heads/master into fix-v2-runtime
* Merge refs/heads/master into fix-v2-runtime
* Fixes
* add back error
* Make new wallet error cleaner
* Fix text
* Fix log
* Add case for normal error
* Update validator/flags/flags.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Merge branch 'master' of github.com:prysmaticlabs/prysm into fix-v2-runtime
* Merge refs/heads/master into fix-v2-runtime
* Fix comment
* Merge refs/heads/master into fix-v2-runtime
* fix comment
* Fix test
* Merge branch 'master' into fix-v2-runtime
* Merge refs/heads/master into fix-v2-runtime
* Merge refs/heads/master into fix-v2-runtime
* Merge refs/heads/master into fix-v2-runtime
* Merge refs/heads/master into fix-v2-runtime
2020-07-28 19:23:53 +00:00