mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2024-12-25 04:47:18 +00:00
f52a214cce
* initial commit * fixing some types and renaming file * initial map function commit and moving to a v1 folder * adding in remaining mapper functions and comments for types and initial commit on unit tests * adding readme * fixing unit tests and errors caught * fixed a few missed properties and names * updating error handling to be more descriptive * Update validator/keymanager/remote-web3signer/client_test.go Co-authored-by: Raul Jordan <raul@prysmaticlabs.com> * Update validator/keymanager/remote-web3signer/keymanager.go Co-authored-by: Raul Jordan <raul@prysmaticlabs.com> * Update validator/keymanager/remote-web3signer/v1/custom_mappers.go Co-authored-by: Raul Jordan <raul@prysmaticlabs.com> * Update validator/keymanager/remote-web3signer/v1/custom_mappers.go Co-authored-by: Raul Jordan <raul@prysmaticlabs.com> * fixing comments * fixing comments * adding more error checks * Update validator/keymanager/remote-web3signer/client.go * fmt and bazel build * fixing unit tests * lint needed Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
56 lines
2.2 KiB
Markdown
56 lines
2.2 KiB
Markdown
# Web3Signer
|
|
|
|
Web3Signer is a popular remote signer tool by Consensys to allow users to store validation keys outside the validation
|
|
client and signed without the vc knowing the private keys. Web3Signer Specs are found by
|
|
searching `Consensys' Web3Signer API specification`
|
|
|
|
issue: https://github.com/prysmaticlabs/prysm/issues/9994
|
|
|
|
## Support
|
|
|
|
WIP
|
|
|
|
## Features
|
|
|
|
### CLI
|
|
|
|
WIP
|
|
|
|
### API
|
|
|
|
- Get Public keys: returns all public keys currently stored with web3signer excluding newly added keys if reload keys
|
|
was not run.
|
|
- Sign: Signs a message with a given public key. There are several types of messages that can be signed ( web3signer
|
|
type to prysm type):
|
|
- BLOCK <- *validatorpb.SignRequest_Block
|
|
- ATTESTATION <- *validatorpb.SignRequest_AttestationData
|
|
- AGGREGATE_AND_PROOF <- *validatorpb.SignRequest_AggregateAttestationAndProof
|
|
- AGGREGATION_SLOT <- *validatorpb.SignRequest_Slot
|
|
- BLOCK_V2 <- *validatorpb.SignRequest_BlockV2
|
|
- BLOCK_V3 <- *validatorpb.SignRequest_BlockV3
|
|
- DEPOSIT <- not supported
|
|
- RANDAO_REVEAL <- *validatorpb.SignRequest_Epoch
|
|
- VOLUNTARY_EXIT <- *validatorpb.SignRequest_Exit
|
|
- SYNC_COMMITTEE_MESSAGE <- *validatorpb.SignRequest_SyncMessageBlockRoot
|
|
- SYNC_COMMITTEE_SELECTION_PROOF <- *validatorpb.SignRequest_SyncAggregatorSelectionData
|
|
- SYNC_COMMITTEE_CONTRIBUTION_AND_PROOF <- *validatorpb.SignRequest_ContributionAndProof
|
|
- Reload Keys: reloads all public keys from the web3signer.
|
|
- Get Server Status: returns OK if the web3signer is ok.
|
|
|
|
## Files Added and Files Changed
|
|
|
|
- Files Added:
|
|
- validator/keymanager/remote-web3signer package
|
|
|
|
- Files Modified:
|
|
- modified: cmd/validator/flags/flags.go
|
|
- modified: validator/accounts/accounts_backup.go
|
|
- modified: validator/accounts/accounts_list.go
|
|
- modified: validator/accounts/iface/wallet.go
|
|
- modified: validator/accounts/userprompt/prompt.go
|
|
- modified: validator/accounts/wallet/wallet.go
|
|
- modified: validator/accounts/wallet_create.go
|
|
- modified: validator/client/runner.go
|
|
- modified: validator/client/validator.go
|
|
- modified: validator/keymanager/remote-web3signer/keymanager.go
|
|
- modified: validator/keymanager/types.go |