This solution paper
is a sequel to my earlier post on reddit Bitcoin-SV: are terabyte blocks feasible?
, I recommend reading that article first as it deals with requirements scoping & feasibility before continuing this paper.
Would greatly appreciate feedback and criticism on the above from SV devs. I recently noticed a tweet from @shadders333
where he announced a potential solution for block propagation will be announced in the CoinGeek scaling conference. It is purely co-incidental I was interested in this problem for the past few days, and I have no clue about the solution they intend to share. Would love to hear first-hand thoughts from you guys.
Edit: Added a new section to the paper on how it compares with Graphene. Copying the same here as well.
Comparison with Graphene:
Graphene uses techniques such as Bloom filters and invertible bloom lookup tables (IBLTs) to compress blocks with better efficiency when compared to Compact Blocks (BIP-152). Graphene works on a probabilistic model for IBLT decoding, and there is a small chance of failure, in that event the sender must resend the IBLT with double the number of cells, the authors did some empirical testing and found this doubling was sufficient for the very few that actually failed. It seems the Graphene sizes are linearly proportional to the mempool sizes. But practically speaking, we need to take another factor "mempool divergence" into account, as network grows and mempools become larger the divergence increases, and in practice decoding failures will raise. One proposal to counter this is to request blocks from multiple (2/3) peers and merging them together, this decreases the probability of IBLT decoding errors at the cost of additional resources. There is also an open attack vector called the poison block attack where a malicious miner could mine a block with transactions that are held private, this will lead to a inevitable decode failure. Although this attack seems fatal to Graphene’s adoption, there is likely hope that game theoretical PoW underpinnings may come to the rescue.
Graphene distills the block propagation problem into the classical set reconciliation problem (Set theory; order of elements is irrelevant), it builds on the previous academic literature on Set reconciliation which also involved Bloom filters & IBLTs. It discards the concomitant time information of transactions and defaults to implicit ordering, typically canonical (ID sorting). But it supports supplemental order information to be included. If topological ordering of transactions is needed, additional ordering information has to be included at the cost of increasing the size of the block. It complements well with implicit ordering techniques like CTOR(Canonical Transaction ordering), although it deviates from Nakamoto style chronological ordering of transactions within a block.
Whereas Ultra compression (this paper) has a novel approach which leverages the concomitant time information of transactions to its advantage and achieves a much better compression factor. It does not approach the problem as merely that of Set reconciliation and instead by improves efficiency by encoding relative time sequence of transactions into a block.
The primary advantages are as below:
- High compression factor, considerably smaller blocks compared to Graphene.
- Not a probabilistic algorithm, and hence no decoding failures and hence no need for complex recovery mechanisms.
- Mempool divergences are pre-addressed and hence corresponding problems do not arise, the efficiency of packing/unpacking does not get worse as network and mempools grow.
- No serious attack vectors like the poison block attack (at-least not known yet)
- Allows highly concurrent packing and unpacking
- Allows Merkle sub-tree computations concurrently while unpacking
- Highly scalable due to above, Tera-byte blocks & beyond.
- Places a higher memory load on the system, needed for maintaining additional data structures like maps of seqNo<->transactionIDs
- Packing & Unpacking needed at every hop, passive relaying is not possible. Although the high parallelism ensures very low latency.
In my subsequent post, I will cover a more comprehensive distributed system architecture for a Node that covers the following:
- Parallel Transaction Verification
- Parallel Block processing (under topological ordering)
- Mempool sharding(Intra node)
- UTxO set sharding
- Parallel Merkle subtree computation
Cryptology ePrint Archive: Report 2018/302 Date: submitted by
2018-03-29 Author(s): Rafael Pass, Elaine Shi
In this position paper, we initiate a systematic treatment of reaching consensus in a permissionless network. We prove several simple but hopefully insightful lower bounds that demonstrate exactly why reaching consensus in a permissionless setting is fundamentally more difficult than the classical, permissioned setting. We then present a simplified proof of Nakamoto's blockchain which we recommend for pedagogical purposes. Finally, we survey recent results including how to avoid well-known painpoints in permissionless consensus, and how to apply core ideas behind blockchains to solve consensus in the classical, permissioned setting and meanwhile achieve new properties that are not attained by classical approaches.
 Lightning network. https://lightning.network/
 Marcin Andrychowicz and Stefan Dziembowski. Pow-based distributed cryptography with no trusted setup. In CRYPTO, pages 379–399, 2015.
 Hagit Attiya, Cynthia Dwork, Nancy Lynch, and Larry Stockmeyer. Bounds on the time to reach agreement in the presence of timing uncertainty. J. ACM, 41(1):122–152, 1994.
 Simon Barber, Xavier Boyen, Elaine Shi, and Ersin Uzun. Bitter to betterhow to make bitcoin a better currency. In Financial cryptography and data security, pages 399–414. Springer, 2012.
 Iddo Bentov and Ranjit Kumaresan. How to Use Bitcoin to Design Fair Protocols. In CRYPTO, 2014.
 Miguel Castro and Barbara Liskov. Practical byzantine fault tolerance. In OSDI, 1999.
 T-H. Hubert Chan, Naomi Ephraim, Antonio Marcedone, Andrew Morgan, Rafael Pass, and Elaine Shi. Blockchain with varying number of players. Manuscript, 2017.
 Jing Chen and Silvio Micali. Algorand: The efficient and democratic ledger. https://arxiv.org/abs/1607.01341
 Sophia Yakoubov Conner Fromknecht, Dragos Velicanu. A decentralized public key infrastructure with identity retention. Cryptology ePrint Archive, Report 2014/803, 2014. http://eprint.iacr.org/2014/803
 Kyle Croman, Christian Decker, Ittay Eyal, Adem Efe Gencer, Ari Juels, Ahmed Kosba, Andrew Miller, Prateek Saxena, Elaine Shi, Emin Gun Sirer, Dawn Song, and Roger Wattenhofer. On scaling decentralized blockchains (a position paper). In Bitcoin Workshop, 2016.
 Phil Daian, Rafael Pass, and Elaine Shi. Snow white: Robustly reconfigurable consensus and applications to provably secure proofs of stake. Cryptology ePrint Archive, Report 2016/919, 2016.
 Danny Dolev and H. Raymond Strong. Authenticated algorithms for byzantine agreement. Siam Journal on Computing - SIAMCOMP, 12(4):656–666, 1983.
 Cynthia Dwork, Nancy Lynch, and Larry Stockmeyer. Consensus in the presence of partial synchrony. J. ACM, 1988.
 Cynthia Dwork and Moni Naor. Pricing via processing or combatting junk mail. In CRYPTO, 1992.
 Ittay Eyal and Emin Gun Sirer. Majority is not enough: Bitcoin mining is vulnerable. In FC, 2014.
 Michael J. Fischer, Nancy A. Lynch, and Michael Merritt. Easy impossibility proofs for distributed consensus problems. In PODC, 1985.
 Juan A. Garay, Aggelos Kiayias, and Nikos Leonardos. The bitcoin backbone protocol with chains of variable difficulty. Cryptology ePrint Archive, 2016/1048.
 Juan A. Garay, Aggelos Kiayias, and Nikos Leonardos. The bitcoin backbone protocol: Analysis and applications. In Eurocrypt, 2015.
 Jonathan Katz, Andrew Miller, and Elaine Shi. Pseudonymous secure computation from timelock puzzles. IACR Cryptology ePrint Archive, 2014:857, 2014.
 Aggelos Kiayias, Alexander Russell, Bernardo David, and Roman Oliynykov. Ouroboros: A provably secure proof-of-stake blockchain protocol. In Crypto, 2017.
 Leslie Lamport. The weak byzantine generals problem. J. ACM, 30(3):668–676, 1983.
 Leslie Lamport. Fast paxos. Distributed Computing, 19(2):79–103, 2006.
 Litecoin - Open source P2P digital currency. http://litecoin.org/
 Andreas Loibl. Namecoin. namecoin.info
 Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system. 2008.
 Rafael Pass and abhi shelat. Micropayments for peer-to-peer currencies. In ACM CCS, 2015.
 Rafael Pass, Lior Seeman, and Abhi Shelat. Analysis of the blockchain protocol in asynchronous networks. In Eurocrypt, 2017.
 Rafael Pass and Elaine Shi. Fruitchains: A fair blockchain. In PODC, 2017.
 Rafael Pass and Elaine Shi. Hybrid consensus: Efficient consensus in the permissionless model. In DISC, 2017.
 Rafael Pass and Elaine Shi. The sleepy model of consensus. In Asiacrypt, 2017.
 Rafael Pass and Elaine Shi. Thunderella: Blockchains with optimistic instant confirmation. In Eurocrypt, 2018.
 Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp, and Scott Shenker. A scalable content-addressable network. SIGCOMM Comput. Commun. Rev., 31(4):161–172, August 2001.
 Antony Rowstron and Peter Druschel. Pastry: Scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In Middleware, pages 329–350, 2001.
 Yonatan Sompolinsky and Aviv Zohar. Secure high-rate transaction processing in bitcoin. In Financial Cryptography, 2015.
 Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, and Hari Balakrishnan. Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications. In SIGCOMM, 2001.
 Gavin Wood. Ethereum: A secure decentralized transaction ledger. http://gavwood.com/paper.pdf
Check Bitcoin addresses, lookup transactions & monitor wallet balances with our block explorer & BTC address finder. No signup required, free to use! Lookup your bitcoin address / wallet Bitcoin Invoice + Search Search tips: Multiple addresses can be searched at once by seperating with whitespace; Xpub can be searched to get complete wallet balance; To create invoice search your receiving ... Buying crypto like Bitcoin and Ether is as easy as verifying your identity, adding a payment and clicking "Buy". Sign up for our Wallet today. Create Wallet. Trade Crypto at the Exchange. Integrated with the Blockchain Wallet, our Exchange is a one-stop shop where you can deposit funds and place trades seamlessly in minutes. Get Started . Dive Deeper. Buy Crypto. Bitcoin $ USD. Your Email ... Once you've sent a bitcoin payment from CoinJar to an external bitcoin address, that transfer's details (amount sent, sending/receiving bitcoin address, as well as the date of transfer) can be found on the blockchain. This information is then publicly available, and given its own transaction ID-or TXID. At times, the . trending; Bitcoin Cash Address Lookup Bitcoin . Bitcoin Cash Address Lookup ... Satoshi Nakamoto Bitcoin Address - Bitcoin Cash Circle Satoshi Nakamoto Bitcoin Address Bitcoin Fund Investment Bitcoin Copper Round With the rapid rise in the number of bitcoin scams, there are easy ways to check if a bitcoin address has been reported as being used by scammers, such as in fake bitcoin giveaways. You can also ...
The #Bitcoin White Paper (By Satoshi Nakamoto) Narrated by The #Cryptocurrency Portal on Friday May 31st, 2019 #Bitcoin: A Peer-to-Peer Electronic Cash System For those that are better audio ... Is Satoshi Nakamoto moving some of his Bitcoin? An early 2009 Bitcoin address started moving 50 BTC. Is it Satoshi, or is it not? Also, Shopify, the biggest e-commerce platform in the world, adds ... 00:53 Market Update 01:25 ETH vs Lightning Network 03:05 Ethereum Addresses Surge (40 million) 04:36 USDT 3rd place market cap 05:41 Did Satoshi Nakomoto Cre... Nothing is known about the mysterious Founder of Bitcoin, and the last communication Satoshi Nakamoto had with the world was in two thousand eleven. Since then, there have been many theories about ... The leading crypto’s drop coincided with news that one of the first few thousand Bitcoin addresses just made its first transaction. The address involved is from February 2009 — and the 50 ...