Articles on: Getting Started

How to Rekey an Algorand Account with Pera Web Wallet?

How to Rekey an Algorand Account with Pera Web Wallet?

Background info

Securing your Algorand assets is crucial, and rekeying is an effective way to do it. With this unique feature available on the Algorand Blockchain, you can assign a new private key to an account without transferring or removing your assets. In this article, we'll guide you through how to use the rekeying feature in Pera Wallet. Here are the key points to keep in mind:

Rekeying is a powerful tool to enhance the security of your Algorand assets.
You can use rekeying to assign a new private key to an account that you believe has been compromised.
To use the rekeying feature in Pera Wallet, you must have both the account you want to rekey and the new account added to the wallet.
After completing the rekeying process, make sure to keep both the rekeyed (from) account and the rekey (to) account in your wallet.

How to rekey an Algorand account?

To rekey an account with Pera Web, you must have both the account you want to rekey and the new account added to Pera Web. You can add these accounts using the 25 word passphrase or import from Pera Mobile.

Select the account to be rekeyed (the account that will no longer be authorized to sign transactions) and from the three dots, select “Rekey Account”:

Read the information in the modal and confirm.

Select the account to rekey to (ie. the account that will be signing all future transactions), and click “Finalize Rekeying” to execute the rekey process.

When the rekey is complete you will see a success message at the top of the screen, and on the home screen, the accounts will update accordingly to show the rekeyed state:

After the rekeying process - make sure you keep both the rekeyed (from) account and the rekey (to) account in your wallet - you will need to have both accounts in the same wallet in order to sign transactions from your original account

How rekeyed accounts work

Most functionality is available as normal as long as both the rekeyed account and the new account are present in your wallet. If you are connected to dApps with an account that you have now rekeyed, you can continue to use the dApp and sign transactions with the rekeyed account providing the account it was rekeyed to is in your wallet too. If you try to sign a transaction with a rekeyed account without its authorized account in your wallet too, the transaction will fail.

Some functionality is restricted:
You cannot remove an account which has other accounts rekeyed to it, unless the rekeyed accounts are removed first
When importing, you must import the rekeyed account along with the delegate account, or import the delegate account first, then the rekeyed account

How does rekeying relate to Ledger accounts?

A traditional use case for the rekey functionality is when a user has funds in a “regular” account and they then purchase a ledger device to be used with this account. In this case, the user will rekey their “regular” account to one of the preloaded Ledger accounts, meaning the “regular” account’s keys are nullified and the Ledger controls all transactions going forward - but conveniently, the user does not need to move any assets.

Currently, Pera Web only supports the rekeying between regular accounts and Pera Mobile only supports rekeying regular accounts to a Ledger account. However, soon both the mobile and web wallets will support rekeying to any hardware or software account.

What exactly is a rekey transaction?

A rekey transaction can occur inside any transaction as long as the “rekeyTo” parameter is set in the payload. You can read more about it here:

Can rekey be reversed?

Yes, you can undo a rekey simply by rekeying back to the original account (from Account B to Account A). However, this is currently not supported on Pera Wallet. We are working on adding undo rekey functionality, this will be available soon.

Updated on: 02/03/2023

Was this article helpful?

Share your feedback


Thank you!