starknet-plugin-account icon indicating copy to clipboard operation
starknet-plugin-account copied to clipboard

Execution plugin, Better Multicall

Open CremaFR opened this issue 2 years ago • 0 comments

This PR shows an implementation of execution plugins based on tarrence chainable branch. And an example of plugin call BetterMulticall taken from @Th0rgal

This PR allow the plugins to be chained using the signature field of the transaction using the following format: [(pluginClassHash, PluginArgumentLength, Args*), ...]

The signature of a transaction (and it's validation) are modified to link the plugin used with the transation by signing the following hash: hash_chain(ElemLength, *pluginIdList, transactionHash).
This prevent a malicious actor to remove from the signature field plugins and changing the way the account will execute/validate the transaction. This effectively allows validation plugins to be chained. Thanks to @lucasLvy for the idea

CremaFR avatar Nov 18 '22 19:11 CremaFR