> For the complete documentation index, see [llms.txt](https://docs.getlynx.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.getlynx.io/lynx-administration/migrating-legacy-infiniloop-coins.md).

# Migrating Legacy InfiniLoop Coins

With [Lynx Core v27.1.0](https://github.com/getlynx/Lynx/releases/tag/v27.1.0), InfiniLoop joined the Lynx storage network as the eleventh chain brought online via the blockchain recycling strategy. The entire legacy InfiniLoop transaction history is preserved on the new network, which means coins held on the legacy chain carry over — you just need to move your keys from the old wallet software into the new one.

The process takes about ten minutes of hands-on time, plus however long the new node takes to sync.

> ### ⚠️ Follow These Steps in Order — This Matters
>
> **Do not import your keys or enable staking until the new node has fully synced.** The order of the steps below is not a suggestion.
>
> If you import your wallet and restart with staking enabled before the sync is finished, your node will attempt to stake against a chain it hasn't caught up on. This behaves badly on the network and **can get your IP address banned from the legacy InfiniLoop network for 24 hours** — leaving you unable to complete the sync from that machine until the ban expires (or until you resume from a different IP address).
>
> Let the node finish syncing first (Step 5). Only then import your keys (Step 6) and re-enable staking (Step 7). Doing it in this order avoids the problem entirely.

### Before You Begin

* You'll need access to your legacy InfiniLoop wallet (the old software, with your coins in it)
* You'll need a machine to run the new InfiniLoop node — the [Spark installer](https://github.com/getlynx/Lynx/tree/main/contrib/installer) supports the same platforms as the rest of the Lynx network
* Set aside time for the new node to download and verify the blockchain before your keys can be imported

### Step 1 — Export Your Keys from the Old Wallet

With your legacy InfiniLoop node running, open a terminal on the same machine.

{% tabs %}
{% tab title="Unencrypted Wallet (default)" %}
Now export your keys:

```
infiniloop-cli dumpwallet /root/keys.txt
```

{% endtab %}

{% tab title="Encrypted Wallet" %}
**If your wallet is encrypted:** you must unlock it before it will let you export your keys. Run the following, replacing `<pp>` with your wallet passphrase:

```
infiniloop-cli walletpassphrase "<pp>" 3600
```

The `3600` is how many seconds the wallet stays unlocked (one hour) — plenty of time to finish the export. For example, if your passphrase is `flurb`, you would run:

```
infiniloop-cli walletpassphrase "flurb" 3600
```

Now export your keys:

```
infiniloop-cli dumpwallet /root/keys.txt
```

{% endtab %}
{% endtabs %}

This writes all of your private keys to a plain text file.

⚠️ **Treat this file like cash.** Anyone who gets a copy of it can take your coins. Keep it on the local machine only, never email or upload it, and delete it once the migration is complete.

### Step 2 — Shut Down the Legacy Wallet

Stop the old InfiniLoop software completely before continuing.

### Step 3 — Make a Safety Copy of Your Old Wallet File

Copy the `wallet.dat` file from your legacy InfiniLoop data directory to a safe location:

```
cp ~/.infiniloop/wallet.dat /root/
```

You shouldn't need it again, but keep it until you've confirmed your balance on the new network.

### Step 4 — Install and Start the New InfiniLoop Node

Use the [Spark installer](https://github.com/getlynx/Lynx/tree/main/contrib/installer) with a fresh data directory. Before starting the node, **disable staking** by adding this line to your configuration file:

```
disablestaking=1
```

Then start the node.

### Step 5 — Let the Node Fully Sync

The node needs to download and verify the entire blockchain before your keys can be imported. This can take a while. You can check progress with:

```
infiniloop-cli getblockchaininfo
```

You're ready to continue when the block height growth rate transitions from no time between blocks to approximately 5 minutes between blocks.

⚠️ **Do not proceed to Step 6 until you see this.** Importing your keys and enabling staking before the sync completes is exactly what triggers the network ban described at the top of this guide. Be patient here — this is the single most important step to get right.

### Step 6 — Import Your Keys

**First, confirm the node is fully synced** (see Step 5). Only continue once the block rate has settled to roughly one block every 5 minutes.

Once fully synced, run:

```
infiniloop-cli importwallet /root/keys.txt
```

The node will scan the chain for your transactions. When it finishes, your balance should appear.

### Step 7 — Turn Staking Back On

Set the `disablestaking=1` line from your configuration file to `disablestaking=0` and restart the node. Your migrated coins are now staking on the new network.

### Cleaning Up

Once you've confirmed your full balance on the new network:

* Delete the exported key file: `rm /root/keys.txt`
* You may keep or delete the backup `wallet.dat` copy at your discretion — if you keep it, store it somewhere secure

### Need Help?

If you run into any trouble along the way, reach out to the development team on the **Lynx Discord** and we'll walk you through it. For more on the blockchain recycling strategy and the InfiniLoop transition, visit <https://docs.getlynx.io/>.
