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]

Read more

Summary

Introduction

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

Overview of k n Random Double-Spending Detection
Simple illustration of of node from
A Fraudulent
Due diligence for a for potential transaction
An Example of Detection of Double-Spending Using the k-Root-n Algorithm
Algorithm Correctness
Algorithm Message Space Complexity
Sybil Attack
Variations on the Algorithm for Further Research
Nodes Versus Wallets
Forced Validation
Findings
10. Conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call