Skip to main content

Controllers

What are the controllers of the Universal Profile?

Each Universal Profile within an extension holds a separate private key to send transactions on behalf of the user, e.g., controlling it. Such controllers can be exported, added, or removed. The controllers can be found within the Controllers window of the extension:

Controller Window

After the initial creation, there can be up to 3 controllers:

  • The Universal Profile Browser Extension (used for profile interactions)
  • The Universal Receiver (used to write asset updates on the profile)
  • The Universal Profile Recovery (used as a backup for the profile)
Controller Names

The names of the controllers can vary, depending on the time of your Universal Profile setup. The controller of the extension will either be named UP Extension or have the name of it's blockchain address. The recovery controller can either be named UP Recovery, Create and manage your UP, or recovery-up<number>. Every controller can be renamed locally in your extension at any time.

Controller Name Change

What happens during imports and recovery?

If you import or recover your Universal Profile, it will result in the addition of another UP Extension controller. Each extension controller has individual permissions. Adding a new controller is done automatically using a transaction, either coming from the 2FA recovery service or sending a transaction from a previously added controller with sufficient permissions. If you never set up 2FA, please ensure that you reveal the private key of an original extension within the Settings screen. This backup file will guarantee access to the profile later on.

danger

Please do not reinstall or reset your extension if you do not have either of the following safeguards:

Otherwise, you will not be able to access your profile, including LYX and assets, as no new controller can be added without a transaction from one of the existing ones. Not having access to a working controller will cause endless import screens, waiting for a recovery transaction that can never be signed.

How can I add 2FA recovery to an existing Universal Profile?

To check the 2FA recovery status and add 2FA, please visit the dashboard on my.universalprofile.cloud. The Universal Profile card will show the current 2FA recovery status at the top right corner. If 2FA has not been added yet, continue by clicking the Add Recovery button.

2FA Recovery Dashboard

warning

Each extension has its own controller, and each controller has its own private key. Any controller is sufficient for recovering your Universal Profile as long as it has the right permissions.

After the recovery process, you will see in the extension the private key corresponsing to the current controller. The initial controller which was in your first browser extension is not carried over during the recovery process. Therefore, before performing recovery please make sure to back up your private key, otherwise any funds associated with the initial controller will be lost.

info

The 2FA recovery feature is only available for Universal Profiles directly created on universalprofile.cloud and that can still be accessed within a Universal Profile Browser Extension. If you lost access before adding 2FA recovery, you can only recover the Universal Profile by using File Backup.

Dashboard Refresh

If the dashboard is not showing the recovery indicators or Add Recovery button, please refresh or disconnect and log-in again using your Universal Profile Browser Extension.

Can I use a regular wallet to control my Universal Profile?

As a developer, you can connect a regular wallet to the network where the Universal Profile was deployed and manually add its EOA as a controller. You will then have to send all transactions through the Key Manager of the Universal Profile to execute them as your persona. However, we recommend directly using the Universal Profile Extension to interact with dApps on LUKSO.

Can I use an existing EOA to control my Universal Profile?

You can add any new or existing Externally Owned Account as a controller to your deployed Universal Profile of a specific chain. This also includes already existing keys from wallets. However, please remember that your previous assets and token remain on the EOA address.

What are the default permissions of the controllers?

If you want to reset the controller permissions to their initial state, you can set the permissions to the default values described in the following pictures:

Show default permissions of the Universal Profile Extension

Default Permissions of the Universal Profile Extension

Show default permissions of the Universal Receiver

Default Permissions of the Universal Receiver

Show default permissions of the Universal Profile Recovery

Default Permissions of the Universal Profile Recovery

Can I add a Ledger account as a controller of my profile?

Yes, you can add blockchain accounts or hardware wallets (like Ledger or Trezor) for recovery using the Wallet Recovery Setup.

How can I remove controllers and permissions?

To remove permissions, use the extension to view all controllers with permissions on the profile. You can toggle off permissions individually. Controllers can not be removed completely via the extension. Controllers without permissions will continue to show but with a No control label.

Upcoming Feature

The team is currently working on a feature request to completely remove old controllers, not only their individual permissions.

Changing Permissions

Be cautious when modifying permissions, as this might restrict access for recovery methods or extensions. For reference, you can look at the default permissions of all the different controllers.