You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current way of deploying the UniversalProfile - KM - URD requires the user to call claimOwnership(...) on the KM at the end of the process.
Another way of taking the full responsibility for deploying is to set permission for the key of the lsp-factory, then the key of the lsp-factory will claimOwnership and then remove itself (permissions).
Enhancement
This process can be enhanced by requesting a signature from the user to deploy; this signature will be executed by the lsp-factory through executeRelayCall(...) and it contains a payload to claimOwnership(..).
This signature could be determined beforehand as non of the parameters is depending on the potential owner of the UP.
This means that the address that will sign this message, will not affect any parameter of this signed message.
A signed message is constructed of :
chainId (independent from the signer)
Address of KM (independent from the signer, the KM address depends on the address of the UP)
nonce (independent from the signer because any number at the beginning will work fine)
calldata (independent from the signer, it will always be 0xfunctionSelectorForClaimOwnership)
So we have 3 fields already determined: chainId, nonce and calldata.
We just need the address of the UP and the address of the KM, that could be determined by precomputing using UniversalFacotry or any create2 factory contract that the lsp-factory could use.
This method could lower the gas cost of setting the UniversalProfile - KM - URD for the user with a little bit of extra complexity 😄 .
The text was updated successfully, but these errors were encountered:
What this issue is about?
claimOwnership(...)
on the KM at the end of the process.Another way of taking the full responsibility for deploying is to set permission for the key of the lsp-factory, then the key of the lsp-factory will claimOwnership and then remove itself (permissions).
Enhancement
executeRelayCall(...)
and it contains a payload toclaimOwnership(..)
.This signature could be determined beforehand as non of the parameters is depending on the potential owner of the UP.
This means that the address that will sign this message, will not affect any parameter of this signed message.
A signed message is constructed of :
0xfunctionSelectorForClaimOwnership
)So we have 3 fields already determined:
chainId
,nonce
andcalldata
.We just need the address of the UP and the address of the KM, that could be determined by precomputing using
UniversalFacotry
or any create2 factory contract that the lsp-factory could use.This method could lower the gas cost of setting the UniversalProfile - KM - URD for the user with a little bit of extra complexity 😄 .
The text was updated successfully, but these errors were encountered: