TY - GEN
T1 - Scalable blockchain based smart contract execution
AU - Gao, Zhimin
AU - Xu, Lei
AU - Chen, Lin
AU - Shah, Nolan
AU - Lu, Yang
AU - Shi, Weidong
N1 - Publisher Copyright:
© 2017 IEEE.
PY - 2017/7/2
Y1 - 2017/7/2
N2 - Blockchain, or distributed ledger, provides a way to build various decentralized systems without relying on any single trusted party. This is especially attractive for smart contracts, that different parties do not need to trust each other to have a contract, and the distributed ledger can guarantee correct execution of the contract. Most existing distributed ledger based smart contract systems process smart contracts in a serial manner, i.e., all users have to run a contract before its result can be accepted by the system. Although this approach is easy to implement and manage, it is not scalable and greatly limits the system's capability of handling a large number of smart contracts. In order to address this problem, we propose a scalable smart contract execution scheme that can run multiple smart contract in parallel to improve throughput of the system. Our scheme relies on two key techniques: a fair contract partition algorithm leveraging integer linear programming to partition a set of smart contracts into multiple subsets, and a random assignment protocol assigning subsets randomly to a subgroup of users. We prove that, our scheme is secure as long as more than 50\% of the computational power is possessed by honest nodes. We then conduct experiments with data from existing smart contract system to evaluate the efficiency of our scheme. The results demonstrate that our approach is scalable and much more efficient than the existing smart contract platform.
AB - Blockchain, or distributed ledger, provides a way to build various decentralized systems without relying on any single trusted party. This is especially attractive for smart contracts, that different parties do not need to trust each other to have a contract, and the distributed ledger can guarantee correct execution of the contract. Most existing distributed ledger based smart contract systems process smart contracts in a serial manner, i.e., all users have to run a contract before its result can be accepted by the system. Although this approach is easy to implement and manage, it is not scalable and greatly limits the system's capability of handling a large number of smart contracts. In order to address this problem, we propose a scalable smart contract execution scheme that can run multiple smart contract in parallel to improve throughput of the system. Our scheme relies on two key techniques: a fair contract partition algorithm leveraging integer linear programming to partition a set of smart contracts into multiple subsets, and a random assignment protocol assigning subsets randomly to a subgroup of users. We prove that, our scheme is secure as long as more than 50\% of the computational power is possessed by honest nodes. We then conduct experiments with data from existing smart contract system to evaluate the efficiency of our scheme. The results demonstrate that our approach is scalable and much more efficient than the existing smart contract platform.
KW - Blockchain
KW - Scalability
KW - Smart contract
UR - http://www.scopus.com/inward/record.url?scp=85048356681&partnerID=8YFLogxK
U2 - 10.1109/ICPADS.2017.00054
DO - 10.1109/ICPADS.2017.00054
M3 - Conference contribution
AN - SCOPUS:85048356681
T3 - Proceedings of the International Conference on Parallel and Distributed Systems - ICPADS
SP - 352
EP - 359
BT - Proceedings - 2017 IEEE 23rd International Conference on Parallel and Distributed Systems, ICPADS 2017
PB - IEEE Computer Society
T2 - 23rd IEEE International Conference on Parallel and Distributed Systems, ICPADS 2017
Y2 - 15 December 2017 through 17 December 2017
ER -