首页|Cheap and secure metatransactions on the blockchain using hash-based authorisation and preferred batchers

Cheap and secure metatransactions on the blockchain using hash-based authorisation and preferred batchers

扫码查看
Smart contracts are self-executing programs running in the blockchain allowing for decentralised storage and execution without a middleman.On-chain execution is expensive,with miners charging fees for distributed execution according to a cost model defined in the protocol.In particular,transactions have a high fixed cost.We present MultiCall,a transaction-batching interpreter for Ethereum that reduces the cost of smart contract executions by gathering multiple users'transactions into a batch.Our current implementation of MultiCall in-cludes the following features:the ability to emulate Ethereum calls and create transactions,both from MultiCall itself and using an identity unique to the user;the ability to cheaply pay Ether to other MultiCall users;and the ability to authorise emulated transactions on behalf of multiple users in a single transaction using hash-based authorisation rather than more expensive signatures.This improves upon a previous version of MultiCall.Our experiments show that MultiCall provides a saving between 57%and 99%of the fixed transaction cost compared with the standard approach of sending Ethereum transactions directly.Besides,we also show how to prevent an economic attack exploiting the metatransaction feature,describe a generic protocol for hash-based authorisation of metatransactions,and analyse how to minimise its off-chain computational and storage cost.

EthereumDomain-specific languageInterpreterGas optimisation

William Hughes、Tobias Magnusson、Alejandro Russo、Gerardo Schneider

展开 >

Dept.of Computer Science and Engineering,University of Gothenburg,41296,Gothenburg,Sweden

Dept. of Computer Science and Engineering,Chalmers University,41296,Gothenburg,Sweden

Swedish Research Council(Vetenskapsr?-det)

2019-04951

2023

区块链研究(英文)

区块链研究(英文)

EI
ISSN:
年,卷(期):2023.(2)
  • 58