All about thin blocks in XT _ btc bitcoin price chart 5 years

All about thin blocks in XT _ btc bitcoin price chart 5 years

Welcome to /r/btc! Home of free and open bitcoin discussion, bitcoin news, and exclusive AMA (ask me anything) interviews from top bitcoin industry leaders!

Bitcoin is the currency of the internet. A distributed, worldwide, decentralized digital money. Unlike traditional currencies such as dollars, bitcoins are issued and managed without the need for any central authority whatsoever.

There is no government, company, or bank in charge of bitcoin. As such, it is more resistant to wild inflation and corrupt banks. With bitcoin, you can be your own bank. Read the original bitcoin whitepaper by satoshi nakamoto.

See a list of past amas here. If you are interested in having your own AMA, please message the mods and let us know. Join the new bitcoin mining pool with 105% block reward, 0% fees

Learn more about bitcoin

bitcoin price chart 5 years

Bitcoin links

• bitcoin.Com

• bitcoin forum

• bitcoin voting

• bitcoin podcasts

• bitcoin price charts

• bitcoin tools

• bitcoin slack channel

Bitcoin news

• bitcoin.Com

• 8btc.Com

• coingeek.Com

Noteworthy services

• purse.Io (amazon savings)

• foldapp (20% starbucks savings)

• open bazaar marketplace

• yours social network

• coin dance stats

• coinsalad charts

• bitcoin cash

• accept bitcoin cash

Bitcoin brokers, exchanges trading

• buy bitcoin w/credit cards

• GDAX (coinbase)

• kraken

• bitstamp

• whaleclub trading

• local bitcoin cash

• more exchanges

Bitcoin wallets

• bitcoin.Com wallet

• blockchain

• breadwallet

• bitpay

• keepkey

• trezor

• more wallets

Blockchain explorers, visualizers others

• bitcoin.Com explorer

• blockchair.Com explorer

• blockchain.Info explorer

• blockexplorer.Com

• TX highway visualizer

• cashdrop visualizer

bitcoin price chart 5 years

• johoe mempool stats

Payment gateways

• rocketr

• bitpay

• gourl

• coinify

• coingate

Bitcoin tipping on reddit

• tippr

• chaintip

• fairlay

Bitcoin full nodes

• bitcoin ABC

• bitcoin unlimited

• parity bitcoin

• bitcoin XT

• bcoin

• bitprim

• bitcrust

Rules to remember

• remember asking for votes and other forms of vote manipulation is strictly prohibited.

• no begging for bitcoin. Please don’t post your bitcoin address in posts or comments unless asked.

• no referral links or URL shortening services are allowed.

• no doxing. Doxing or posts that resemble doxing will result in the post being removed and the user banned permanently.

• scams, spam, duplicates, user stalking, excessive profanity blatant user or mod abuse will result in removal of posts and in some cases the user will be banned.

• it’s recommended that heavy altcoin discussion be posted in its respective subreddit or places like /r/cryptocurrency.Bitcoin price chart 5 years

Misc links

• /r/btc wiki page

• public moderator logs

• flair based posts

• related bitcoin subs

• fork reddit theme on github

• switch to night mode

Hi /btc/. I’m a developer by profession and I occasionally contribute to bitcoin XT. I want to talk about thin blocks in bitcoin XT.

One of mike hearn’s last contributions to XT was to prototype thin blocks. The last month or two I’ve been working on completing what he started and our code has been merged into bitcoin XT and will be included in the next release.

So what’s the big deal with thin blocks? The theory is that if you’ve been connected to the bitcoin network for a while, then you have seen all the transactions that are going to be added to the next block. You thus already have the block data. Then when the next block is announced you only need to get some metadata, including a list of transactions in the block and then rebuild the block by fetching the transaction data from your own mempool.Bitcoin price chart 5 years this is not a new idea, in fact most miners are connected to a relay network which works in this fashion.

Thin blocks may not be the theoretically best method to relay blocks. But the thing is, the building blocks are already there! It’s trivial to implement, it works with existing nodes and is arguably better than what we have.

These are the building blocks for thin blocks used in bitcoin XT

Inventory filter – all nodes the bitcoin network track what transactions they have sent and received from each other. So they have a – not perfect – but a pretty good idea of which transactions a node has in their mempool and what transactions they are missing.

Bloom filters – this is a transaction matching filter. It’s what your SPV wallet uses! You add the id’s of the transactions you want data for into the filter.Bitcoin price chart 5 years for privacy your SPV wallet probably adds some junk in there as well to obfuscate what transactions you’re really interested in. Then you request a block. Block metadata + any transaction data that matches your filter is returned. The transaction data is sent to you only if the inventory filter shows that you have not received the transaction data before!

This is how it thin blocks is implemented

When we connect to a node, or a node connects to us, we check for bloom filter support. If it supports bloom filter, we send it an empty bloom filter. An empty bloom filter matches all the transactions in a block. From now on when we request a block from that node, instead of sending us a full block, it sends us a merkleblock followed by the transaction data only for transaction that are not in it’s inventory filter for us.Bitcoin price chart 5 years that’s basically it.

There are of course devils in the details. A node may send us a transaction we already have or it may not send us a transaction we’re missing. But the normal flow is described above and the exceptions are handled.

Also as a bonus, since we have left over bandwidth, I added parallel downloading of thin blocks. We can request the same block from multiple peers (configurable!). This way nodes are racing to provide us the block and a single node won’t stall the download.

Some common misconceptions

Thin blocks need an extra round trip to request transactions

Thanks to the inventory filter there is no extra round trip needed. We don’t have to tell the other nodes what transactions we’re missing.

Thin blocks are broken because bloom filters can be disabled in bitcoin core

We only connect to nodes that support bloom filters (disconnect outgoing connections that don’t).Bitcoin price chart 5 years

Xtreme thinblocks is better!

It’s pretty much the same thing. From my understanding the main difference is that it has smaller data structures at the cost of having to extend the network protocol.

Help us test thin blocks before next release! Get bitcoin XT from our git repo and add this to your bitcoin.Conf: use-thin-blocks=1

Debug=thin

Debug=relayperf

If you want to save as much bandwidth as possible, set thin-blocks-max-parallel=1

Use-thin-blocks=2

Or keep it the default thin-blocks-max-parallel=3 to receive blocks faster and more reliable. Setting use-thin-blocks=2 makes it avoid full blocks from nodes that don’t support bloom filters and wait instead for a thin block.

Thanks!

• 26 comments

• share

• save

• hide

• report