Unity 4.0.1 - Session Keys
Firekeeper
What's Changed
All about smart wallets! Create session keys, add and remove admins - enable endless upgrading and signless possibilities for ALL types of EOAs.
- [Native] Exposed
sdk.wallet.CreateSessionKey
- you are now able to easily grant another wallet access to your smart account, with many restrictions possible. - [Native] Exposed
sdk.wallet.AddAdmin
- you can now add new admins to your smart wallet. - [Native] Exposed
sdk.wallet.RemoveAdmin
- you can now remove admins from your smart wallet. - [Native] You can now pass
smartWalletAccountOverride
optional parameter tosdk.wallet.Connect
to connect to a Smart Wallet you are not necessarily the admin signer of. - [Native] Fixed a bug where asking for a signature would get the smart wallet stuck in force deployment mode.
What this means
This may be a small patch, but it unlocks quite literally endless possibilities.
Example Scenarios
- Connect a user to a smart wallet using their Metamask wallet as EOA. Create a session key for a signless wallet like LocalWallet, EmbeddedWallet or your backend wallet - the user now only has to sign once to perform that transaction, and you can connect the new signer to the user's Smart Wallet to interact with contracts on their behalf.
- Connect a user to a smart wallet using a guest wallet as EOA, not asking for commitment from the get go - such as a LocalWallet or EmbeddedWallet EOA. You can then go through an upgrade path where the user can claim the generated smart account with all its assets. Simply add the Metamask account as that smart wallet's admin!
- You might've heard of thirdweb Engine, and you want to execute your transactions using it. Simply create a session key for your backend wallet to execute transactions on your user's behalf. The built in scoping as well as your server acting as a middleman, makes for a great flow!