Search…
⌃K

Key Distributer CLI

The SSV Key Distributor CLI tool is a command-line interface that splits a validator key to a predefined threshold of KeyShares.

Installation

Executable
yarn
  1. 1.
    Navigate to the SSV Github releases section
  2. 2.
    Download the native executable for your operating system:
    • ssv-keys-lin - for Ubuntu Linux
    • ssv-keys-mac - for MacOS
    • ssv-keys.exe - for Windows
  3. 3.
    Run file via terminal
git clone https://github.com/bloxapp/ssv-keys.git
cd ssv-keys
install yarn
yarn install

key-shares Arguments

You can use key-shares --help to see all arguments. Note that if there are missing arguments that the CLI needs, it will ask you for them.
Argument
Type
Description
-keystore
string
The validator keystore file path
-password
string
The keystore file encryption password
–operators-keys
base64
Operators public keys
-operators-ids
int
Operators unique identifier on the ssv.network
–ssv-token-amount (optional)
int
Amount of SSV tokens to be deposited as payment in Wei(see validator funding)
output-folder
string
Target folder path to output the key shares file
Run
Executable
yarn
Run Executable file through terminal ./ssv-keys
yarn cli key-shares –keystore <KEYSTORE_FILE_FILE> –password <FILE_PASSWORD> –operators-keys <OPERATOR1_KEY, OPERATOR2_KEY, OPERATOR3_KEY, OPERATOR4_KEY> –operator-ids <OPERATOR1_ID,OPERATOR2_ID, OPERATOR3_ID, OPERATOR4_ID> –ssv-token-amount <AMOUNT_IN_WEI<> –output-folder <TARGET_FILE_PATH>
Output
A json file will be generated consisting of input operators (operatorPublicKey, Ids) their corresponding KeyShares sets (sharesPublicKey & sharesEncrypted) and transaction payload in parsed and RAW formats
keyshares.json File content:
data - Distributed validator data in raw format (not smart contract compatible)
payload - Distributed validator data in a transaction compatible format
readable - Parsed JSON for manual use
raw - comma separated string of the full transaction payload
Example:
{
"version": "v2",
"data": {
"validatorPublicKey": "0x7c8f35694ed6b59c231ed382127b0ad6551b062111d6f26e6c56dd18528515e9fbbb0dbe774045fdddcbf989aaf3042",
"operators": [
{
"id": 1,
"publicKey": "LS0tLS1CRUdJTiBSU0EgUFVCTElDIEtFWS0tLS0tCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBMVg2MUFXY001QUNLaGN5MTlUaEIKby9HMWlhN1ByOVUralJ5aWY5ZjAyRG9sd091V2ZLLzdSVUlhOEhEbHBvQlVERDkwRTVQUGdJSy9sTXB4RytXbwpwQ2N5bTBpWk9UT0JzNDE5bEh3TzA4bXFja1JsZEg5WExmbmY2UThqWFR5Ym1yYzdWNmwyNVprcTl4U0owbHR1CndmTnVTSzNCZnFtNkQxOUY0aTVCbmVaSWhjRVJTYlFLWDFxbWNqYnZFL2cyQko4TzhaZUgrd0RzTHJiNnZXQVIKY3BYWG1uelE3Vlp6ZklHTGVLVU1CTTh6SW0rcXI4RGZ4SEhSeVU1QTE3cFU4cy9MNUp5RXE1RGJjc2Q2dHlnbQp5UE9BYUNzWldVREI3UGhLOHpUWU9WYi9MM1lnSTU4bjFXek5IM0s5cmFreUppTmUxTE9GVVZzQTFDUnhtQ2YzCmlRSURBUUFCCi0tLS0tRU5EIFJTQSBQVUJMSUMgS0VZLS0tLS0K"
},
{
"id": 2,
"publicKey": "LS0tLS1CRUdJTiBSU0EgUFVCTElDIEtFWS0tLS0tCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBeUtVWTVEUmZZREljengzcjhVY0UKTlpFMFdIQXFuV2FIRjZYRlUydVdObjVOVE94Zkt4ZmZaLzkyeVE1citQVkJPRmQrcHhILzI2QXJVT3dNL1lBRQpRbDZ0VzBtc1FqdUtIU1Q4aUtvTDRTNUt0aDNoeTBqeFRHR1ZZaWdjWG1vRURjd2YxaG8wdWRxRmlEN3dFWXN1CmZHa2E2U1ZQNnBab1NMaU9HZFRKUWVzVDI5WEVCdDZnblhMaFB1MER2K0xsQUJJQ1pqWEFTZWtpSFVKUHRjYlgKRjZFL0lScGpkWHVNSmUyOXZDcmZudXhWWk93a1ptdzJXdGljYlNDOVJpSFRYWUQ1dnVGakZXRHNZMERHUDhzOAoyc1haVHdsNWl4dEhlUWM2N1lLRFN6YU1MNnY1VUVZblhUTzZzNHFVSWVnTXJwZjd3S0xGVWxqRTMwbnNIaVBUCjBRSURBUUFCCi0tLS0tRU5EIFJTQSBQVUJMSUMgS0VZLS0tLS0K"
},
{
"id": 4,
"publicKey": "LS0tLS1CRUdJTiBSU0EgUFVCTElDIEtFWS0tLS0tCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBdXZleUpUMURwM21mQ3FRTUora2YKZHdhV0d1bkRURUFaWmNTOHdtUTJBcjU1bE5venl5cHRwb1lGSTgxaW1RSmpwdVV0akR2am15RDRQSmt1SzFXRQovZG9TSzFraWlTSEYvZFBaeE5ZT2swMlRiTGIvTXBjMG12VE1nZmRsVDBoTlVOWDZIMnJzZzNlc2NEOStENEdDCmxtZGpCdmdxUDQydXdDbFlQUVhuN3Z6OWlOOEpXdEFtd1JkQ25USkZ6M2tYSEFPVGMyMjJGYXp4ZGJVNEVPYkIKVmJNejd2UXRmMWtNSGtacEh5UXNpL3F0WmhQaThtTlNQTWpMTDBtcmc4Ly9xVjIyeEVPNENmSHFKZkZOWEhKVwpEbU85M2h2QXE2dDFZOGN5UVZkSGZ2WEp5VzRxR29MY25HZzV1S2ZSYWVCSSt1aXFSeExOL2dtTnA2RzdpZVNkCkl3SURBUUFCCi0tLS0tRU5EIFJTQSBQVUJMSUMgS0VZLS0tLS0K"
},
{
"id": 4,
"publicKey": "LS0tLS1CRUdJTiBSU0EgUFVCTElDIEtFWS0tLS0tCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBNWVUNUwwV0h6ZTdyTWZPb2xtVHMKdWtIQ2E4K3dtbUw2OTFJQ1RpREE1UkJ1TkxqSVQ2WkE0YzMxcVRIY3FBVHl5eVkwLzk3R3lKZ2doYnlFR2RoZQovalh6aWVTOXJ2RytJVGF1QjhMVlhkekxGYVQxWEZWeFlnN2x2TlB4OURPL1ZoRkhkWWxnT3I2d0RtV3FjRGo3ClhWUWFOWEFtRng3NjVQNTlXNXZzVGRXVWFHRWxXSm93SkZKdnc2UlRISkZ1TVhjSzZVaWJ0cUZMSmJwOW5kdUgKQjlLSzNWcmYrZmtJOWRBZ2txRDFHOElxQ0tKMVl3bjUyeGxxbTRCNitOOGZUZE1MS1JucWpFZmRzV1dwMFVzMQpLTW9vSXcyc3BoaXAzUFpNYnJaaU0wNjJ2ZUo0U3ovYjBObWdPTnhTd0JJTnNxcG54QjhFUVQxSTNjNklqNXhhCm5RSURBUUFCCi0tLS0tRU5EIFJTQSBQVUJMSUMgS0VZLS0tLS0K"
}
],
"shares": {
"publicKeys": [
"0xb854d1aaddcec272b64f508a99c343d42ebc4c603cb03f2ca5d72760b689fd99b94963e2012f260ba655efc8110b6611",
"0x8ae4adf378c5e1f852f85b9c3dbfec10cf1e15cb1ae5e7587d1a2219a5699e0a4eb8a2420f8e689fdf3da23244ff70aa",
"0xb988ba768eb9c272f854c8e3083bff05794fb40c760196186245bb06ea2839811734e619385d500ee53579b0703ee967",
"0xb988ba768eb9c272f854c8e3083bff05794fb40c760196186245bb06ea2839811734e619385d500ee53579b0703ee967"
],
"encryptedKeys": [
"oenRG7Q0Z7dbXNgKhAEU+XgCCON4ra5s9ZuDKKx9qUFupOsSti1BmorILcZZBTlrHIdOoEwXysqrtI6NYt7s4nk3OMriqLyzdK8j7JFDiHGfcsgWR6ubNacjeE+9Qy3K1uFGaMdUnoRonvOzKJQBhDsheh3BZ+wEgS6J5T8enNfdIiTxr9yxY6uq3+QA0MreKG7yYVWJd/7b46BGbiqkvgp/IrXawYjo2uCTNjQNZKdoaq7Cmm49apTgrV8n/oMjfXUioCZ//03O2TFIRgHGR+gE2JIqNxEsDBAK04T6zP/g5sMKMqhrOKsQ45PUk0xQeOauiVTTsavOFS2mUuZlWg==",
"qcv7OnNOI507on1mWvbDWjAqY+NoSwbEGfyv6oS0RhWSugL46JNbqy8G7b8lVr7Ft7SRe5EgLnI85KOWe/v6iRRRE1SwrZv0aZiVsegbxkYm3A3hnuUtqPXyhWOGSEBvRwLsa+UbP/ywicmFjtny7LC0mGv5OaVrxjf0jG72mVO/AE7hTYSfiQaGhTm4YY8e2GS0Wa9jda0JHrgRDXhaG9u4aG42Tog2hCJqD5iwAn343qz4nIUSOrZdP+yojpgODiIKUL6LpG9U3L2jzLG46DHXzWzPTDxWuTX8waVMxwvDkJETsUKp8taFfg9qt/n2PRVoEQ+a1OcddpiTBzgR9g==",
"EtN6QgapXsXCfdIzb1MAqqXBm0VVctOJ801FtguzYvTS6DCLHexq3oMi2bCesyzLKrp8JdBu8S8+pYlFXeuM5yAfVC+EMlXz/Sz8kQl7SSxI4pNNDsd4sfVrcujPc+/Y+TmbBq3MoBTdrxYiWQXm8z3a4DEcBSpd+jDn+wKNJLvQDPJ60Aoyhqe7aqqLSAupiBDfDCXJ+ygepO8HyqglHv+8M02f722a6RdZlt2Kpwr/mvMa+12//LCJLczJ54FRP96ohGGsCPvLoIOIqQX938YXkVfqL52fGOTWkBLnVEyqGF9d8Tv06J0jja1yZWsAymTdNHcEw0b7lzOt7wDCRA==",
"d1P5FZnqzimDUduXVCEKMWCLdpcXbkQ7RleTfIjZPjDND2pACQld/z5eZA9hFIAl/1SkaIRDSrYKRo0zD86J6NbHdhT7JvmGerEUEC490OCHmDv+dYUdqDUiIJueH24arG/nIxDGxfhStGfGLzZFYIbkHoN3herfFGqi30ZBNiuqDtrL6Fnw4VC4FUlDd4ZICvAkNvFHY1ba3VWU05j/yFia5ZTZKeNkZACAlsNllS+yRIrsHn2nlCIZFH1WaU7EUvqJB5euL6b+VBlzlZPI1GBgTpPSVjXcgFbKAeDHr/ZeE0QN+DGafg3T8tNaBhLDdQ1mvyjM3mCE4kLUJ90DHA=="
]
}
},
"payload": {
"readable": {
"validatorPublicKey": "0x8c8f35694ed6b59c2f31ed382127b0ad6551b062111d6f26e6c56dd18520515e9fbbb0dbe774045fdddcbf089aaf3042",
"operatorIds": "1,2,4,4",
"sharePublicKeys": [
"0xb854d1aaddcec272b64f508a99c343d42ebc4c603cb03f2ca5d72760b689fd99b94963e2012f260ba655efc8110b6611",
"0x8ae4adf378c5e1f852f85b9c3dbfec10cf1e15cb1ae5e7587d1a2219a5699e0a4eb8a2420f8e689fdf3da23244ff70aa",
"0xb988ba768eb9c272f854c8e3083bff05794fb40c760196186245bb06ea2839811734e619385d500ee53579b0703ee967",
"0xb988ba768eb9c272f854c8e3083bff05794fb40c760196186245bb06ea2839811734e619385d500ee53579b0703ee967"
],
"sharePrivateKey": [
"0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001586f656e52473751305a376462584e674b684145552b586743434f4e3472613573395a75444b4b783971554675704f7353746931426d6f72494c635a5a42546c724849644f6f457758797371727449364e59743773346e6b334f4d7269714c797a644b386a374a46446948476663736757523675624e61636a65452b395179334b31754647614d64556e6f526f6e764f7a4b4a514268447368656833425a2b77456753364a355438656e4e6664496954787239797859367571332b5141304d72654b4737795956574a642f3762343642476269716b7667702f4972586177596a6f327543544e6a514e5a4b646f617137436d6d3439617054677256386e2f6f4d6a665855696f435a2f2f30334f3254464952674847522b6745324a49714e7845734442414b303454367a502f6735734d4b4d7168724f4b7351343550556b307851654f6175695654547361764f4653326d55755a6c57673d3d0000000000000000",
"0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000158716376374f6e4e4f493530376f6e316d57766244576a4171592b4e6f5377624547667976366f53305268575375674c34364a4e62717938473762386c5672374674375352653545674c6e4938354b4f57652f76366952525245315377725a7630615a695673656762786b596d334133686e7555747150587968574f475345427652774c73612b5562502f797769636d466a746e79374c43306d4776354f615672786a66306a4737326d564f2f41453768545953666951614768546d3459593865324753305761396a6461304a48726752445868614739753461473432546f673268434a7144356977416e333433717a346e4955534f725a64502b796f6a70674f4469494b554c364c70473955334c326a7a4c4734364448587a577a5054447857755458387761564d787776446b4a455473554b703874614666673971742f6e325052566f45512b61314f636464706954427a675239673d3d0000000000000000",
"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000015845744e3651676170587358436664497a62314d41717158426d30565663744f4a383031467467757a597654533644434c48657871336f4d693262436573797a4c4b7270384a6442753853382b70596c465865754d3579416656432b454d6c587a2f537a386b516c375353784934704e4e447364347366567263756a50632b2f592b546d624271334d6f425464727859695751586d387a336134444563425370642b6a446e2b774b4e4a4c765144504a3630416f79687165376171714c53417570694244664443584a2b796765704f38487971676c48762b384d303266373232613652645a6c74324b7077722f6d764d612b31322f2f4c434a4c637a4a353446525039366f684747734350764c6f494f4971515839333859586b5666714c353266474f54576b424c6e564579714746396438547630364a306a6a6131795a577341796d54644e486345773062376c7a4f743777444352413d3d0000000000000000",
"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000015864315035465a6e717a696d44556475585643454b4d57434c64706358626b5137526c655466496a5a506a444e4432704143516c642f7a35655a4139684649416c2f31536b614952445372594b526f307a4438364a364e6248646854374a766d476572455545433439304f43486d44762b6459556471445569494a75654832346172472f6e4978444778666853744766474c7a5a465949626b486f4e33686572664647716933305a424e6975714474724c36466e773456433446556c4464345a494376416b4e764648593162613356575530356a2f79466961355a545a4b654e6b5a4143416c734e6c6c532b7952497273486e326e6c43495a46483157615537455576714a423565754c36622b56426c7a6c5a50493147426754705053566a58636746624b41654448722f5a654530514e2b4447616667335438744e6142684c446451316d76796a4d336d4345346b4c554a39304448413d3d0000000000000000"
],
"ssvAmount": "1232223123"
},
"raw": "0x8c8f35694ed6b59c2f31ed382127b0ad6551b062111d6f26e6c56dd18520515e9fbbb0dbe774045fdddcbf089aaf3042,1,2,4,4,0xb854d1aaddcec272b64f508a99c343d42ebc4c603cb03f2ca5d72760b689fd99b94963e2012f260ba655efc8110b6611,0x8ae4adf378c5e1f852f85b9c3dbfec10cf1e15cb1ae5e7587d1a2219a5699e0a4eb8a2420f8e689fdf3da23244ff70aa,0xb988ba768eb9c272f854c8e3083bff05794fb40c760196186245bb06ea2839811734e619385d500ee53579b0703ee967,0xb988ba768eb9c272f854c8e3083bff05794fb40c760196186245bb06ea2839811734e619385d500ee53579b0703ee967,0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000001586f656e52473751305a376462584e674b684145552b586743434f4e3472613573395a75444b4b783971554675704f7353746931426d6f72494c635a5a42546c724849644f6f457758797371727449364e59743773346e6b334f4d7269714c797a644b386a374a46446948476663736757523675624e61636a65452b395179334b31754647614d64556e6f526f6e764f7a4b4a514268447368656833425a2b77456753364a355438656e4e6664496954787239797859367571332b5141304d72654b4737795956574a642f3762343642476269716b7667702f4972586177596a6f327543544e6a514e5a4b646f617137436d6d3439617054677256386e2f6f4d6a665855696f435a2f2f30334f3254464952674847522b6745324a49714e7845734442414b303454367a502f6735734d4b4d7168724f4b7351343550556b307851654f6175695654547361764f4653326d55755a6c57673d3d0000000000000000,0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000158716376374f6e4e4f493530376f6e316d57766244576a4171592b4e6f5377624547667976366f53305268575375674c34364a4e62717938473762386c5672374674375352653545674c6e4938354b4f57652f76366952525245315377725a7630615a695673656762786b596d334133686e7555747150587968574f475345427652774c73612b5562502f797769636d466a746e79374c43306d4776354f615672786a66306a4737326d564f2f41453768545953666951614768546d3459593865324753305761396a6461304a48726752445868614739753461473432546f673268434a7144356977416e333433717a346e4955534f725a64502b796f6a70674f4469494b554c364c70473955334c326a7a4c4734364448587a577a5054447857755458387761564d787776446b4a455473554b703874614666673971742f6e325052566f45512b61314f636464706954427a675239673d3d0000000000000000,0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000015845744e3651676170587358436664497a62314d41717158426d30565663744f4a383031467467757a597654533644434c48657871336f4d693262436573797a4c4b7270384a6442753853382b70596c465865754d3579416656432b454d6c587a2f537a386b516c375353784934704e4e447364347366567263756a50632b2f592b546d624271334d6f425464727859695751586d387a336134444563425370642b6a446e2b774b4e4a4c765144504a3630416f79687165376171714c53417570694244664443584a2b796765704f38487971676c48762b384d303266373232613652645a6c74324b7077722f6d764d612b31322f2f4c434a4c637a4a353446525039366f684747734350764c6f494f4971515839333859586b5666714c353266474f54576b424c6e564579714746396438547630364a306a6a6131795a577341796d54644e486345773062376c7a4f743777444352413d3d0000000000000000,0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000015864315035465a6e717a696d44556475585643454b4d57434c64706358626b5137526c655466496a5a506a444e4432704143516c642f7a35655a4139684649416c2f31536b614952445372594b526f307a4438364a364e6248646854374a766d476572455545433439304f43486d44762b6459556471445569494a75654832346172472f6e4978444778666853744766474c7a5a465949626b486f4e33686572664647716933305a424e6975714474724c36466e773456433446556c4464345a494376416b4e764648593162613356575530356a2f79466961355a545a4b654e6b5a4143416c734e6c6c532b7952497273486e326e6c43495a46483157615537455576714a423565754c36622b56426c7a6c5a50493147426754705053566a58636746624b41654448722f5a654530514e2b4447616667335438744e6142684c446451316d76796a4d336d4345346b4c554a39304448413d3d0000000000000000,1232223123"
},
"createdAt": "2022-08-15T13:10:26.246Z"
}