# Re-generate or Generate More Keys

## Use Wagyu Key Gen with Existing Mnemonic

You can use the 24-word secret recovery phrase to create additional validator keys; or to re-generate your deposit\_data and keystore files in the event you lost access to these files.  You can use the Wagyu Key Generator software for this purpose.  It doesn't matter what tool you originally used to generate your keys; different tools should all adhere to the same standards.

Follow the same procedure in [Generate Keys](/staking-ethereum/solo-staking-32-eth/generate-keys.md) to install the Wagyu Ken Generation software if you haven't already installed it.  The usual precautions apply: it is best to use an "air-gapped" computer during the procedure.  If an air-gapped computer is not available, ensure you disconnect from the internet by turning off all networking options (unplugging Ethernet, switching off Wi-Fi, etc.) while handling your secret recovery phrase and generating your keys.

On the Welcome screen, instead of choosing to "Create New Secret Recovery Phrase", choose **Use Existing Secret Recovery Phrase** instead. &#x20;

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

Then to the question "How would you like to use your existing secret recovery phrase", choose **Generate existing or new validator keys**.&#x20;

<figure><img src="/files/nrOFxWq1RZ9RAftB6aAd" alt="" width="563"><figcaption></figcaption></figure>

On the next screen, enter your 24-word secret recovery phrase.  Once your secret recovery phrase is verified, the **Create Keys** screen will show.

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

This is where things can get a little confusing.  Read the following carefully.

## Specifying the Keys to Generate or Re-generate

You are asked to enter **Number of New Keys** and **Amount of Existing (starting index)**. &#x20;

Think of it this way.  When a 24-word secret recovery phrase was initially generated for you, a whole chain of "keys" were already pre-cut and arranged in a pre-determined sequence, starting from index #0, #1, #2, and so on.  All that Wagyu Key Gen software (or any other key generation software) is doing, is to **select** the item(s) from this key chain, and **output** the corresponding keystore file(s) for you.

<div data-full-width="true"><figure><img src="/files/c7dq7o8122sHgu7x2Z85" alt=""><figcaption><p>All keys are pre-cut and arranged in a pre-determined sequence derived from the 24-word mnemonic</p></figcaption></figure></div>

Assume you had initially generated **one** key.  This would have been the **first** item in the chain, which has an index **#0**.  The corresponding keystore file is named:&#x20;

* keystore-m\_12381\_3600\_<mark style="background-color:green;">**0**</mark>\_0\_0-xxxxxxxxxx.json

where the `m_12381_3600` portion is the "derivation path" of the keys and is standard for all Ethereum addresses.  The following digit "0" (highlight in green) is the index number of the key, in this case, this is the first key with index **#0**.

The trailing `xxxxxxxxxx` portion is a Unix timestamp which is a code that represents the time when the file was generated.

The subsequent keys have indices #1, #2, #3, and so on, and their keystore files have standard names, respectively:

* keystore-m\_12381\_3600\_<mark style="background-color:green;">**1**</mark>\_0\_0-xxxxxxxxxx.json
* keystore-m\_12381\_3600\_<mark style="background-color:green;">**2**</mark>\_0\_0-xxxxxxxxxx.json
* keystore-m\_12381\_3600\_<mark style="background-color:green;">**3**</mark>\_0\_0-xxxxxxxxxx.json

Now this is how you specify the **Number of New Keys** and **Amount of Existing (starting index)**.  These terms are a little misleading.  Instead, think of the "number of new keys" as *"how many"* to generate, and "amount of existing (starting index)" as *"from where"* to start. &#x20;

Assume you had previously generated **one** key (#0):

<table data-header-hidden><thead><tr><th width="346"></th><th align="center"></th><th align="center"></th></tr></thead><tbody><tr><td></td><td align="center"><strong>No. of New Keys</strong><br><strong>("how many")</strong></td><td align="center"><strong>Starting Index</strong><br><strong>("from where")</strong></td></tr><tr><td><em>Re-generate</em> the first key (#0)</td><td align="center">1</td><td align="center">0</td></tr><tr><td>Generate one new key (#1)</td><td align="center">1</td><td align="center">1</td></tr><tr><td>Generate two new keys (#1, #2)</td><td align="center">2</td><td align="center">1</td></tr></tbody></table>

In other words, "regenerate the first key" means generate 1 key, starting from index #0.  "Generate one new key" means generate 1 key, starting from index #1, and so on.

In this way, you can confidently generate, or re-generate, any one or more keys from the key set and obtain the corresponding keystore file(s).

You can open up the keystore file using a text editor, to check its **pubkey** value.

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

If you are re-generating a key, it is important to check that the keystore file you obtained has the same **pubkey** that matches with your existing validator.  Otherwise it won't work.

{% hint style="info" %}
**You will get one keystore file per each key, but only one deposit\_data file.**

If you are generating or re-generating multiple keys, you will get one keystore file per each key you ask for, but you will only get one deposit\_data file for all the keys generated in a single operation.  Think ahead how you would like to use the deposit\_data file.  At the Staking Launchpad site where you will upload the deposit\_data file, you will be expected to make all the deposits for all the keys contained in the deposit\_data.&#x20;
{% endhint %}

## Completing the Process

Once you have specified the Number of New Keys and the Starting Index, proceed to supply a password for the keystore file(s), and a Withdrawal Address for the newly generated keys, as per the instructions in [Generate Keys - Step 3](/staking-ethereum/solo-staking-32-eth/generate-keys.md#step-3-creating-your-keys).

Follow the prompts to re-enter the password, and choose the download folder.  Finally, click **Create** to create the keystore file(s) and deposit\_data file.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ava.do/staking-ethereum/solo-staking-32-eth/generate-keys/re-generate-or-generate-more-keys.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
