@@ -31,37 +31,54 @@ The schema of the `cluster-definition.json` is defined as:
3131``` json
3232{
3333 "name" : " best cluster" , // Optional cosmetic identifier
34+ "uuid" : " 1234-abcdef-1234-abcdef" , // Random unique identifier.
3435 "creator" : {
3536 "address" : " 0x123..abfc" , //ETH1 address of the creator
3637 "config_signature" : " 0x123654...abcedf" // EIP712 Signature of config_hash using creator privkey
3738 },
38- "operators" : [
39+ "version" : " v1.8.0" , // Schema version
40+ "num_validators" : 1 , // Number of distributed validators to be created in cluster-lock.json
41+ "threshold" : 3 , // Optional threshold required for signature reconstruction
42+ "dkg_algorithm" : " default" , // Optional DKG algorithm for key generation
43+ "fork_version" : " 0x01017000" , // Chain/Network identifier
44+ "config_hash" : " 0xabcfde...acbfed" , // Hash of the static (non-changing) fields
45+ "timestamp" : " 2025-01-01T12:00:00+00:00" , // Creation timestamp
46+ "operators" : [
3947 {
4048 "address" : " 0x123..abfc" , // ETH1 address of the operator
4149 "enr" : " enr://abcdef...12345" , // Charon node ENR
42- "config_signature" : " 0x123456...abcdef" , // EIP712 Signature of config_hash by ETH1 address priv key
43- "enr_signature" : " 0x123654...abcedf" // EIP712 Signature of ENR by ETH1 address priv key
50+ "enr_signature" : " 0x123654...abcedf" , // EIP712 Signature of ENR by ETH1 address priv key
51+ "config_signature" : " 0x123456...abcdef" // EIP712 Signature of config_hash by ETH1 address priv key
52+ },
53+ {
54+ "address" : " 0x123..abfc" ,
55+ "enr" : " enr://abcdef...12345" ,
56+ "enr_signature" : " 0x123654...abcedf" ,
57+ "config_signature" : " 0x123456...abcdef"
58+ },
59+ {
60+ "address" : " 0x123..abfc" ,
61+ "enr" : " enr://abcdef...12345" ,
62+ "enr_signature" : " 0x123654...abcedf" ,
63+ "config_signature" : " 0x123456...abcdef"
64+ },
65+ {
66+ "address" : " 0x123..abfc" ,
67+ "enr" : " enr://abcdef...12345" ,
68+ "enr_signature" : " 0x123654...abcedf" ,
69+ "config_signature" : " 0x123456...abcdef"
4470 }
4571 ],
46- "uuid" : " 1234-abcdef-1234-abcdef" , // Random unique identifier.
47- "version" : " v1.2.0" , // Schema version
48- "timestamp" : " 2022-01-01T12:00:00+00:00" , // Creation timestamp
49- "num_validators" : 2 , // Number of distributed validators to be created in cluster-lock.json
50- "threshold" : 3 , // Optional threshold required for signature reconstruction
72+ "definition_hash" : " 0xabcdef...abcedef" , // Final hash of all fields
5173 "validators" : [
52- {
53- "fee_recipient_address" : " 0x123..abfc" , // ETH1 fee_recipient address of validator
54- "withdrawal_address" : " 0x123..abfc" // ETH1 withdrawal address of validator
55- },
5674 {
5775 "fee_recipient_address" : " 0x123..abfc" , // ETH1 fee_recipient address of validator
5876 "withdrawal_address" : " 0x123..abfc" // ETH1 withdrawal address of validator
5977 }
6078 ],
61- "dkg_algorithm" : " foo_dkg_v1" , // Optional DKG algorithm for key generation
62- "fork_version" : " 0x00112233" , // Chain/Network identifier
63- "config_hash" : " 0xabcfde...acbfed" , // Hash of the static (non-changing) fields
64- "definition_hash" : " 0xabcdef...abcedef" // Final hash of all fields
79+ "deposit_amounts" : [
80+ " 32000000000"
81+ ]
6582}
6683```
6784
@@ -88,11 +105,34 @@ The `cluster-lock.json` has the following schema:
88105 {
89106 "distributed_public_key" : " 0x123..abfc" , // DV root pubkey
90107 "public_shares" : [ " abc...fed" , " cfd...bfe" ], // Length equal to cluster_definition.operators
91- "fee_recipient" : " 0x123..abfc" // Defaults to withdrawal address if not set, can be edited manually
108+ "partial_deposit_data" : [
109+ {
110+ "pubkey" : " 0x123..abfc" ,
111+ "withdrawal_credentials" : " 0x123..abfc" ,
112+ "amount" : " 32000000000" ,
113+ "signature" : " 0x123456...abcdef" ,
114+ "deposit_data_root" : " 0x123456...abcdef"
115+ }
116+ ],
117+ "builder_registration" : {
118+ "message" : {
119+ "fee_recipient" : " 0x123456...abcdef" ,
120+ "gas_limit" : 30000000 ,
121+ "timestamp" : 1696000704 ,
122+ "pubkey" : " 0x123456...abcdef"
123+ },
124+ "signature" : " 0x123456...abcdef"
125+ }
92126 }
93127 ],
94- "lock_hash" : " abcdef...abcedef" , // Config_hash plus distributed_validators
95- "signature_aggregate" : " abcdef...abcedef" // BLS aggregate signature of the lock hash signed by each DV pubkey.
128+ "signature_aggregate" : " abcdef...abcedef" , // BLS aggregate signature of the lock hash signed by each DV pubkey.
129+ "lock_hash" : " abcdef...abcedef" , // definition_hash plus distributed_validators
130+ "node_signatures" : [
131+ " 0x123456...abcdef" ,
132+ " 0x123456...abcdef" ,
133+ " 0x123456...abcdef" ,
134+ " 0x123456...abcdef"
135+ ]
96136}
97137```
98138
0 commit comments