> For the complete documentation index, see [llms.txt](https://docs.jibchain.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.jibchain.net/withdrawal/set-new-withdrawal-credential.md).

# Set new withdrawal credential

How to set new withdrawal credential

> <mark style="color:yellow;">For a validator key that is not set a</mark> <mark style="color:yellow;"></mark><mark style="color:yellow;">`--eth1_withdrawal_address`</mark>

1. Open folder `deposit-cli` that used to generate validator keys&#x20;

<figure><img src="/files/7pOujnFjCgY6i3QxZeV8" alt=""><figcaption><p>deposit-cli that consist of <code>validator_keys-test</code> folder</p></figcaption></figure>

2. Use command to generate bls to change execution change

```sh
./deposit.sh generate-bls-to-execution-change
```

<figure><img src="/files/KF8poGzKElzSJuPwLAE6" alt=""><figcaption></figcaption></figure>

* Enter for select English language
* Enter the network
  * Enter: `jib`
* Enter your mnemonic separated by spaces (" ")
  * Example: `worry uncover treat tonight input soon worth code benefit hotel hungry stamp subway neck join trap flat music argue air menu quantum volcano connect`
* Enter the index position for the keys to start generating withdrawal credentials&#x20;
  * Enter: `0`
* Enter a list of the **validator index** number(s) of your validator(s) as identified on the beacon chain. Split multiple items with whitespaces or commas.
  * Check your validator index from: <https://dora.jibchain.net>
  * Example: `500` (1 Validator).
  * If you have more than 1 validator use commas to split. Example: `500, 501, 502` (3 Validators)
* Enter a list of the old BLS withdrawal credentials of your validator(s)

  * Open `deposit-data.json` file. and copy the old withdrawal credential

  <figure><img src="/files/xIn9CgxjdXEkLDMh0x1l" alt=""><figcaption><p>Old withdrawal credentials should be start with <code>00</code> </p></figcaption></figure>

  * Example: `0098b66b3d28ae0694d1c25e58d0636c3e2a0fe306e57d067aae98de2171820f`
* Enter the 20-byte execution address for the new withdrawal credentials. (Your wallet)
  * Example: `0x53D1644eExxxxxxxxxxxxxxx3f99B90bf34b93`
  * **Note that you CANNOT change it once you have set it on the chain.**
* Repeat your execution address for confirmation and Ensure that you have control over this address.
  * Example: `0x53D1644eExxxxxxxxxxxxxxx3f99B90bf34b93`
* Success! Your SignedBLSToExecutionChange JSON file can be found at: `deposit-cli/bls_to_execution_changes`
* Check your bls\_to\_execution\_changes files

```
ls ./bls_to_execution_changes
```

<figure><img src="/files/fEa0rBgevq3lof1cclAl" alt=""><figcaption></figcaption></figure>

* Broadcast BLS signature to consensus client using Docker

```sh
docker run -ti -v ./bls_to_execution_changes:/bls_dir gcr.io/prysmaticlabs/prysm/cmd/prysmctl:latest validator withdraw -beacon-node-host=https://metrabyte-cl.jibchain.net/ --path=/bls_dir --accept-terms-of-use --confirm
```

* Done!
