Broadcast Exit Message

Verify and broadcast exit messages

Verifying the Exit Message

To verify the exit message using the ethdo CLI, follow the steps below as mentioned in their documentation

  1. Install Ethdo Binary: Ensure you have the ethdo binary installed by following the instructions here.

  2. Create exit json file: Use the /exit/message API to retrieve the exit message and save it as a JSON file (e.g., exit_1234567.json)

  3. Execute the following command to verify the exit message, replacing the JSON file name and the ETH Beacon RPC URL as necessary:

./ethdo exit verify --signed-operation=exit_1234567.json --connection=<ETH-BEACON-RPC-URL>
  1. If the signature is valid, the CLI will output Verified. If invalid, an error message will be displayed, such as: Invalid signature: failed to deserialize signature: err blsSignatureDeserialize

By following these steps, you can effectively verify the exit message and its signature using the ethdo CLI.

Broadcasting the Exit Message

The following cURL command can be used to broadcast the EXIT message on the beacon chain

curl --location '<ETH-BEACON-RPC-URL>/eth/v1/beacon/pool/voluntary_exits' \
--header 'Content-Type: application/json' \
--data '{
    "message": {
        "epoch": "0",
        "validator_index": "<VALIDATOR_INDEX>"
    },
    "signature": "<SIGNATURE>"
}'

Replace the request body with the data received from the /exit/message API. A null response with status code 200 would mean that the validator has been exited successfully.

Additionally, you can check the status of the validator using the following cURL command, and it should've gone from active_ongoing to active_exiting.

Last updated