# Generate a new set of cryptographic keys

"<mark style="color:red;">**Old machine**</mark>" is the machine that has the **original** set of cryptographic keys that were generated. "<mark style="color:orange;">**New machine**</mark>" is the device you want the new set of cryptographic keys on.

### Step 1) Generate a passcode from your <mark style="color:red;">Old machine</mark>

Choose the operating system that is running on your old machine.

{% tabs %}
{% tab title="MacOS/Linux" %}
{% hint style="warning" %}
Make sure to replace `<REPLACE_client>` with your client atSign
{% endhint %}

```
~/.local/bin/at_activate otp -a @<REPLACE_client>
```

{% endtab %}

{% tab title="Windows" %}

#### 1.1 Open the Windows installer program and click "Manage Keys"

<figure><img src="/files/4KE0h9rQ1nwhpNB3EB1q" alt=""><figcaption></figcaption></figure>

#### 1.2 Enter the atSign you wish to manage and click "Next"

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

#### 1.3 Click "New OTP"

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

#### 1.4 Wait a few seconds for the OTP to appear then proceed to Step 2 on the <mark style="color:orange;">New machine</mark>

<figure><img src="/files/Xvkjo49a8MNsQ2TlB2JG" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

### Step 2) Make an authorization request on your <mark style="color:orange;">New machine</mark>

Choose the operating system that is running on your new machine.

{% tabs %}
{% tab title="Running MacOS/Linux" %}
{% hint style="warning" %}
Make sure to replace the appropriate values:\
`<REPLACE_client>` with your client atSign\
`<client_device_name>` with a unique name for the device\
`<PASSCODE>` with the passcode from **Step 1**
{% endhint %}

```
~/.local/bin/at_activate enroll -a @<REPLACE_client> \
  -s <PASSCODE> \
  -p noports \
  -k ~/.atsign/keys/@<REPLACE_client>_key.atKeys \
  -d <client_device_name> \
  -n "sshnp:rw,sshrvd:rw"
```

{% endtab %}

{% tab title="Running Windows" %}

#### 2.1 Open the Windows Installer and click "Generate Keys"

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

#### 2.2 Enter the atSign you wish to transfer and click "Next"

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

#### 2.3 Enter the OTP then press "Generate"

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

#### 2.4 Proceed to Step 3. Once the request has been approved in Step 3, you should see this screen

<figure><img src="/files/nuPm5ayh3pcFqGesFtJ2" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

### Step 3) Approve the request on your <mark style="color:red;">Old machine</mark>

Choose the operating system that is running on your old machine.

{% tabs %}
{% tab title="MacOS/Linux" %}
{% hint style="warning" %}
Make sure to replace `<client_device_name>` with the device name from **Step 2**
{% endhint %}

```
~/.local/bin/at_activate approve -a @<REPLACE_client> \
  --arx noports \
  --drx <client_device_name>
```

{% endtab %}

{% tab title="Windows" %}
{% hint style="info" %}
If you aren't already on the "Manage Keys" screen, follow **Steps 1.1 and 1.2** above.
{% endhint %}

#### 3.1 Once step 2 is complete press refresh and the new request will appear

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

#### 3.2 Approve or Deny the request

* If the request looks incorrect, then press "Deny" to deny it, and start the process again.
* If the request looks correct, then press "Approve" to approve it.

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

#### 3.3 Once the request is approved, it should disappear from the installer, the new machine's enrollment should complete in a few seconds.

<figure><img src="/files/jA2UzxaGTQtmSPP6ZmGI" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}


---

# 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.noports.com/installation-faq/reuse-your-client-atsign-on-another-machine/generate-a-new-set-of-cryptographic-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.
