# Register Calidus Key

Updated: 1/18/26&#x20;

***

{% hint style="info" %}
Credit to  <img src="https://earncoinpool.com/images/coin_v3.png" alt="" data-size="line"> [Earn Coin Pool](https://earncoinpool.com/) for documenting the procedure.\
\
Credit to Martin Lang (ATADA)<img src="/files/iXkEvpV0SN7CAO8LZepF" alt="" data-size="line"> and his video here which this guide is based off of.\
<https://www.youtube.com/watch?v=NTDigkYZXEQ>\
\
More information by Martin Lang on Calidus Pool Key here: <https://forum.cardano.org/t/new-calidus-pool-key-for-spos-and-services-interacting-with-pools/143812/>
{% endhint %}

***

There are basically **3** main things we need to do in order to register our Calidus Key on mainnet: <br>

{% stepper %}
{% step %}
Install Cardano-Signer on air gapped machine to generate keys.
{% endstep %}

{% step %}
Generate new Calidus Key files and generate metadata.
{% endstep %}

{% step %}
Use Eternl to Submit transaction for Calidus Registration to the blockchain using signed metadata
{% endstep %}
{% endstepper %}

***

## Before we get started

{% hint style="success" %}
**Good to know:** The commands were tested with cardano-signer 1.34.0.
{% endhint %}

## Step 1 - Copy Cardano-Signer 1.34.0 File to USB

For this guide we will be downloading `cardano-signer-1.34.0_linux-x64.tar.gz`.&#x20;

Using the Cardano-Signer repo we can download the file here:

<https://github.com/gitmachtl/cardano-signer/releases/tag/v1.34.0>

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

{% hint style="info" %}
For other distributions download files can be found here: <https://github.com/gitmachtl/cardano-signer/releases>
{% endhint %}

***

## Step 2 - Copy Cardano-Signer File to Air Gapped Machine

Copy `cardano-signer-1.34.0_linux-x64.tar.gz` file to air gapped machine.

{% hint style="warning" %}
Extract Cardano-Signer somewhere in the PATH (in /usr/local/bin or where cardano-cli is) on your air gapped machine.
{% endhint %}

{% hint style="info" %}
For this guide we copied the .tar.gz file to our `bin` folder
{% endhint %}

## Step 3 - Install Cardano-Signer

{% hint style="danger" %}
**ON Air Gapped Machine**
{% endhint %}

To Install run the following commands:

{% hint style="warning" %}
Adjust path to your `bin` folder or where you put the cardano-signer file
{% endhint %}

<pre><code><strong>cd bin
</strong>tar -xzvf cardano-signer-1.34.0_linux-x64.tar.gz
</code></pre>

To check if successful, run:

```
cardano-signer version
```

***

## Step 4 - Generate Calidus Key

{% hint style="danger" %}
**ON Air Gapped Machine**
{% endhint %}

We will now use `cardano-signer` to generate Calidus Key files; we will generate them in our `$NODE_HOME` folder:&#x20;

{% tabs %}
{% tab title="On Air Gapped Machine" %}
To generate the files, run:

```
cd $NODE_HOME
cardano-signer keygen \
 --path calidus \
 --out-skey my.calidus.skey \
 --out-vkey my.calidus.vkey \
 --out-id my.calidus.id \
 --out-mnemonics my.calidus.mnemonics \
 --json-extended
```

{% endtab %}
{% endtabs %}

## Step 5 - Generate the registration metadata signed by your pool cold key

In order to submit a transaction to the blockchain so indexers can pick up our Calidus Key we need to create metadata that we can submit on-chain with Eternl through an internal transaction.

{% hint style="danger" %}
**ON Air Gapped Machine**
{% endhint %}

{% tabs %}
{% tab title="On Air Gapped Machine" %}
**1)** First let's unlock our cold keys:&#x20;

```
chmod u+rwx $HOME/cold-keys
```

&#x20;

**2)** Generate the registration metadata and sign it

{% hint style="warning" %}
Adjust path and file named if needed to your cold skey\
\
For this example, our cold key is located in our $HOME cold-keys folder.
{% endhint %}

```
cd $NODE_HOME
cardano-signer sign --cip88 \
 --calidus-public-key my.calidus.vkey \
 --secret-key $HOME/cold-keys/node.skey \
 --json \
 --out-file calidus-registration-metadata.json
```

**3)** 📝Copy Metadata to a file on your USB to use later on Eternl in hot environment&#x20;

```
cat calidus-registration-metadata.json
```

📝Copy Metadata to a file on your USB

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

&#x20;

**4)** Lock your cold keys:

```
chmod a-rwx $HOME/cold-keys
```

&#x20;&#x20;
{% endtab %}
{% endtabs %}

***

## Step 6 - Copy mnemonics to use later&#x20;

Before we leave Air-Gapped machine let's copy our mnemonic phrase to use later. We will input this into a hot wallet like Eternl for future use when we want to sign something or vote with our Calidus Key

{% hint style="danger" %}
**ON Air Gapped Machine**
{% endhint %}

```
cd $HOME_NODE
cat my.calidus.mnemonics
```

📝Copy to a file on your USB to use later in hot environment.

<div align="left"><figure><img src="/files/zDpsystfGyUpLUfXzKDt" alt="" width="188"><figcaption></figcaption></figure></div>

{% hint style="info" %}
Other information we can look at in our $HOME\_NODE folder:\
\
`cat my.calidus.id`\
or

`cat my.calidus.vkey`

or

`cat my.calidus.skey`
{% endhint %}

***

## Step 7 - Submit Internal Transaction on Eternl

Now we can use any Eternl wallet that we own to submit an internal transaction with the metadata we copied from [Step 5](#step-5-generate-the-registration-metadata-signed-by-your-pool-cold-key).<br>

***

{% stepper %}
{% step %}

### Open Eternl and copy your receive address from the Receive tab

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

{% endstep %}

{% step %}

### Go to send tab and paste your receive address

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

{% endstep %}

{% step %}

### Make sure under settings that you are in Pro Mode

<figure><img src="/files/2eDpaJQl8kX8Qr7XvXVE" alt=""><figcaption></figcaption></figure>

{% endstep %}

{% step %}

### Select the pencil icon to add custom metadata

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

{% endstep %}

{% step %}

### Select Basic Conversions

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

{% endstep %}

{% step %}

### 📝Paste your Metadata

✅Paste your metadata from [Step 5](#step-5-generate-the-registration-metadata-signed-by-your-pool-cold-key) and then click close.

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

{% endstep %}

{% step %}

### Add ADA to send to yourself

For this example, we sent 2 ADA to ourselves

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

{% endstep %}

{% step %}

### Sign and Submit Transaction

Double check that it is an internal transfer with `Meta` and then sign and submit.

<figure><img src="/files/glPCRLthQQ9LWQosNpov" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

***

### Step 8 - Verify your Calidus Key is active

You can use [adastat](https://adastat.net/) to verify that your Calidus Key is registered, go to [adastat](https://adastat.net/) and search for your pool and go to your pool page. You should now see your Calidus Key 🥳

<figure><img src="/files/UOeTP3dK34MMv2P1qHyH" alt=""><figcaption><p>Calidus Key on adastat.net</p></figcaption></figure>

#### Congratulations you did it! You Now have a Calidus Key

***

> ## 🤔 Now that you registered your Calidus Key, how can you use your Calidus Key to vote?
>
> Now that we have our Calidus Key registered, we can use our mnemonic to create a new wallet in Eternl just for our Calidus Key. This wallet then can be used for things like voting on Ekklesia ballots. Steps below 👇

## Create Calidus Key Wallet using mnemonic

Now that we have our Calidus Key registered, we can use our mnemonic to create a new wallet in Eternl just for our Calidus Key. This wallet then can be used for things like voting on Ekklesia ballots.

***

{% stepper %}
{% step %}

### Click on your current wallet

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

{% endstep %}

{% step %}

### Click on Add Wallet

The "Switch Between Wallets" overlay should pop-up, select `Add wallet`

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

{% endstep %}

{% step %}

### Select "Enter a Seed-Phrase"

<figure><img src="/files/1Man4L3keLBMePa5pCXf" alt=""><figcaption></figcaption></figure>

{% endstep %}

{% step %}

### Click 24-word phrase

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

{% endstep %}

{% step %}

### Enter mnemonic

Enter your mnemonic from [Step 6](#step-6-copy-mnemonics-to-use-later) above

<div align="left"><figure><img src="/files/tnJ2cVQA1ewVN84butnV" alt="" width="375"><figcaption></figcaption></figure></div>

{% endstep %}

{% step %}

### Name Your New Wallet

We recommend using a name so you can remember this is your Calidus Key only wallet.

<figure><img src="/files/0UqHlAX8YPjzVATQMdjn" alt=""><figcaption></figcaption></figure>

{% endstep %}

{% step %}

### Add Spending Password

&#x20;📝Make sure to write this down and keep it safe 😉

<div align="left"><figure><img src="/files/lPtCXjtcKlz4VYeoXQEU" alt="" width="563"><figcaption></figcaption></figure></div>

{% endstep %}

{% step %}

### Fund Your New Wallet&#x20;

Fund your wallet with very small amount of ADA, maybe 10 ADA, to cover any possible transactions that might be needed

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

{% endstep %}
{% endstepper %}

{% hint style="danger" %}
Remember if you think this Calidus Key wallet has been compromised you can always use the steps above to generate a new Calidus Key and submit the registration on-chain with an internal transaction.<br>
{% endhint %}

***

## Congratulations you did it!&#x20;

***

## Contributors&#x20;

Thanks to the following pools for helping to put together these guides. Please consider delegating to their pools to support them.  Are you a pool? Consider buying them a coffee

![](https://img.cexplorer.io/7/e/1/9/f/pool16cdtqyk0fvxzfkhjg3esjcuty4tnlpds5lj0lkmqmwdjyzaj7p8.png)  [Earn Coin Pool - Ticker: ECP](https://cexplorer.io/pool/pool16cdtqyk0fvxzfkhjg3esjcuty4tnlpds5lj0lkmqmwdjyzaj7p8)

![xSPO Alliance Logo](/files/padJ7At3xT4SVIbnghK3) [xSPO Alliance](http://xspo-alliance.org/discord)


---

# 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://ecp.gitbook.io/how-to-guides-for-coincashew-method-cardano-spos/maintenance-and-daily-operations/how-to-guides-for-spos-using-coincashew-method/register-calidus-key.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.
