Abstract
The recent adoption of blockchain technologies and open permissionless networks suggest the importance of peer-to-peer atomic cross-chain transaction protocols. Users should be able to atomically exchange tokens and assets without depending on centralized intermediaries such as exchanges. Recent peer-to-peer atomic cross-chain swap protocols use hashlocks and timelocks to ensure that participants comply to the protocol. However, an expired timelock could lead to a violation of the all-or-nothing atomicity property. An honest participant who fails to execute a smart contract on time due to a crash failure, denial of service attacks or even network delays might end up losing assets. Although a crashed participant is the only participant who ends up worse off, current proposals are unsuitable for atomic cross-chain transactions in asynchronous environments where crash failures and network delays are the norm. In this paper, we present AC3WN, the first decentralized all-or-nothing atomic cross-chain commitment protocol. The redeem and refund events of the smart contracts that exchange assets are modeled as conflicting events. An open permissionless network of witnesses is used to guarantee that conflicting events could never simultaneously occur and either all smart contracts in an atomic cross-chain transaction are redeemed or all of them are refunded.
- Atomic cross-chain trading. https://en.bitcoin.it/wiki/Atomic cross-chain trading, 2018.Google Scholar
- Bitcoin confirmations. https: //www.buybitcoinworldwide.com/confirmations/, 2018.Google Scholar
- Coinbase. https://coinbase.com, 2018.Google Scholar
- Robinhood. https://robinhood.com/, 2018.Google Scholar
- Solidity --- solidity 0.5.5 documentation. https://solidity.readthedocs.io/en/v0.5.5/, 2018.Google Scholar
- Avg. transaction fee historical chart. https://bitinfocharts.com/comparison/transactionfees-btc-eth.html, 2019.Google Scholar
- Cost of a 51% attack for different cryptocurrencies. https://www.crypto51.app/, 2019.Google Scholar
- P. A. Bernstein, V. Hadzilacos, and N. Goodman. Concurrency control and recovery in database systems. 1987.Google Scholar
- V. Buterin et al. A next-generation smart contract and decentralized application platform. white paper, 2014.Google Scholar
- T. Dickerson, P. Gazzillo, M. Herlihy, and E. Koskinen. Adding concurrency to smart contracts. In Proceedings of the ACM Symposium on Principles of Distributed Computing, pages 303--312. ACM, 2017.Google ScholarDigital Library
- I. Eyal, A. E. Gencer, E. G. Sirer, and R. Van Renesse. Bitcoin-ng: A scalable blockchain protocol. In NSDI, pages 45--59, 2016.Google Scholar
- O. Goldreich. Foundations of cryptography: volume 1, basic tools. Cambridge University Press, Cambridge, 2001.Google ScholarCross Ref
- J. Gray et al. The transaction concept: Virtues and limitations. In VLDB, volume 81, pages 144--154. Citeseer, 1981.Google Scholar
- J. N. Gray. Notes on data base operating systems. In Operating Systems, pages 393--481. Springer, 1978.Google ScholarCross Ref
- T. Haerder and A. Reuter. Principles of transaction-oriented database recovery. ACM computing surveys (CSUR), 15(4):287--317, 1983.Google Scholar
- M. Herlihy. Atomic cross-chain swaps. In Proceedings of the 2018 ACM symposium on principles of distributed computing, pages 245--254, 2018.Google ScholarDigital Library
- M. Herlihy. Blockchains from a distributed computing perspective. Communications of the ACM, 62(2):78--85, 2019.Google ScholarDigital Library
- E. K. Kogias, P. Jovanovic, N. Gailly, I. Khoffi, L. Gasser, and B. Ford. Enhancing bitcoin security and performance with strong consistency via collective signing. In 25th USENIX Security Symposium (USENIX Security 16), pages 279--296, 2016.Google ScholarDigital Library
- L. Luu, V. Narayanan, C. Zheng, K. Baweja, S. Gilbert, and P. Saxena. A secure sharding protocol for open blockchains. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, pages 17--30. ACM, 2016.Google ScholarDigital Library
- S. Maiyya, V. Zakhary, D. Agrawal, and A. E. Abbadi. Database and distributed computing fundamentals for scalable, fault-tolerant, and consistent maintenance of blockchains. PVLDB, 11(12):2098--2101, 2018.Google ScholarDigital Library
- S. Micali. Algorand: the efficient and democratic ledger. CoRR, abs/1607.01341, 2016.Google Scholar
- S. Nakamoto. Bitcoin: A peer-to-peer electronic cash system. 2008.Google Scholar
- T. Nolan. Alt chains and atomic transfers. https://bitcointalk.org/index.php?topic=193281.msg2224949#msg2224949, 2013.Google Scholar
- D. O'Keeffe. Understanding cryptocurrency transaction speeds. https://medium.com/coinmonks/understanding-cryptocurrency-transaction-speeds-f9731fd93cb3, 2018.Google Scholar
- R. Pass and E. Shi. Hybrid consensus: Efficient consensus in the permissionless model. In 31st International Symposium on Distributed Computing (DISC 2017). Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, 2017.Google Scholar
- R. L. Rivest, A. Shamir, and L. Adleman. A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM, 21(2):120--126, 1978.Google ScholarDigital Library
- D. Ryan. Costs of a real world ethereum contract. https://hackernoon.com/costs-of-a-real-world-ethereum-contract-2033511b3214, 2017.Google Scholar
- G. Wood. Ethereum: A secure decentralised generalised transaction ledger. Ethereum project yellow paper, 151:1--32, 2014.Google Scholar
Index Terms
- Atomic commitment across blockchains
Recommendations
The reliability of web services atomic commitment protocols
iiWAS '10: Proceedings of the 12th International Conference on Information Integration and Web-based Applications & ServicesAtomic commitment protocols ensure that a transaction terminates consistently, meaning that it either commits at all sites or aborts at all sites, even if failures occur during the protocol. We can evaluate atomic commitment protocols in many ways ...
The Decentralized Non-Blocking Atomic Commitment Protocol
SPDP '95: Proceedings of the 7th IEEE Symposium on Parallel and Distributeed ProcessingIn a transactional system, an atomic commitment protocol ensures that for any transaction, all data managers agree on the same outcome: commit or abort. A non-blocking atomic commitment protocol enables an outcome to be decided at every correct data ...
Comments