Abstract
Blockchains such as the bitcoin blockchain depend on reaching a global consensus on the distributed ledger; therefore, they suffer from well-known scalability problems. This paper proposes an algorithm that avoids double-spending in the short term with just O(√n) messages instead of O(n); each node receiving money off-chain performs the due diligence of consulting k√n random nodes to check if any of them is aware of double-spending. Two nodes receiving double-spent money will in this way consult at least one common node with very high probability, because of the ‘birthday paradox’, and any common honest node consulted will detect the fraud. Since the velocity of money in the real world has coins circulating through at most a few wallets per day, the size of the due diligence communication is small in the short term. This ‘k-root-n’ algorithm is suitable for an environment with synchronous or asynchronous (but with fairly low latency) communication and with Byzantine faults. The presented k-root-n algorithm should be practical to avoid double-spending with arbitrarily high probability, while feasibly coping with the throughput of all world commerce. It is resistant to Sybil attacks even beyond 50% of nodes. In the long term, the k-root-n algorithm is less efficient. Therefore, it should preferably be used as a complement, and not a replacement, to a global distributed ledger technology.
Highlights
In blockchains such as bitcoin, all n nodes reach Nakamoto consensus [1] on each block of transactions, thereby creating a scalability problem [2,3,4] that notoriously limits the entire bitcoin network to a few transactions per second while consuming massive power [5]
This ‘k-root-n’ algorithm is suitable for an environment with synchronous or asynchronous communication and with Byzantine faults
Bitcoin transactions suffer from a lag time of 15 min to several hours before being included in a block on the bitcoin blockchain [9]
Summary
In blockchains such as bitcoin, all n nodes reach Nakamoto consensus [1] on each block of transactions, thereby creating a scalability problem [2,3,4] that notoriously limits the entire bitcoin network to a few transactions per second while consuming massive power [5]. In the particular case of bitcoin, by 6 a.m. all the transactions from the previous day would typically have achieved six-block verification and may be considered final In this case, the role of our algorithm is to allow fast and safe transactions in the 30 h say from Sunday midnight to Tuesday 6 a. The proposed algorithm, which is called ‘k n’ or ‘k-root-n’, avoids double-spending in the short to medium term, while there is no global ledger consensus with an arbitrarily high probability of detecting double-spending, requiring just O( n) messages per transaction This is based on the assumption that specific money balances only circulate through O(constant) wallets in 24 h. The algorithm only involves O( n) nodes and messages per transaction; we typically choose 10 n
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.