Earlier quoted context omitted.
Why would the that be the protocol's responsibility?
Maybe not 'responsibility', but I guess it'd be nice to have some kind of proxy protocol so that seeders can proxy requests for people with annoying ISPs.. or they could just use a VPN like everyone else =P
BitTorrent v2
531–540 of 576 posts
Re: BitTorrent v2
#532Re: BitTorrent v2
#533Earlier quoted context omitted.
I pretty strongly believe that "blockchain" is a misnomer given how much the structure relies on Merkle Trees. Forks aren't some aberration in the data structure, but a direct exploration of branches in the Merkle Tree. Most blockchain algorithms, Proof of Work especially, are just very rigorous "rebase operations" in git terms.
Blocks are not organized into merkle trees in Bitcoin. Full nodes pick the longest (PoW wise) valid chain and discards any other competing chains and their blocks. There are some alternative cryptosystem designs that do take blocks in "losing chains" into consideration using a DAG structure, like GHOST and its successor SPECTRE (by Aviv Zohar et. al). Ethereum also has a concept of "uncle blocks", which are rewarded…
That's pretty much the definition of "rebase" and again, that's a functionality of the algorithm on top of the data structure (Proof of Work) not the data structure. The raw data structure is still a merkle tree even if in practice the algorithm suggests to people there is only one rebased trunk. But even that isn't entirely true in practice because there are still multiple rebased "branches" among the Bitcoin forks such as Bitcoin Classic, Bitcoin Gold, etc. All of those are branches that share the same conceptual merkle tree. Even if they aren't "Bitcoin" that's more of an algorithmic and political distinction at that point, not a technical one by means of data structure. It's not the data structure that makes it a chain, it's the algorithm and the politics, hence why I think blockchain is a misnomer for the data structure itself.
Re: BitTorrent v2
#534Earlier quoted context omitted.
It’s great to live a in developed world during the peace time. Sometimes you have to transfer money in and out of the country at war with it’s currency in free fall and capital controls in place. At times like that “normal” ways take about 30% of the sum as transactional overhead, while bitcoin doesn’t. Sometimes “normal“ ways just don’t work normally. Sometimes your government is actively working against your abilit…
Does this hypothetical situation you describe exist anywhere outside of the hypothetical situation posited by a character in a Neal Stephenson novel? Seriously in reality the specifics of any sort of wild situation like the one you describe matter. Which countries? Which currency? Which kind of illegal behavior? And (I ask out of ignorance) in this scenario you describe why would whatever group managing whatever bitc…
I heard there was a similar problem in Egypt, no idea if and how it was solved.
Re: BitTorrent v2
#535hmm, looks like still no support for data streaming :(
Nothing stops you from downloading pieces in a specific order that allows for streaming. It's the client that determines order, not the bittorrent protocol.
Re: BitTorrent v2
#536Earlier quoted context omitted.
Blocks are not organized into merkle trees in Bitcoin. Full nodes pick the longest (PoW wise) valid chain and discards any other competing chains and their blocks. There are some alternative cryptosystem designs that do take blocks in "losing chains" into consideration using a DAG structure, like GHOST and its successor SPECTRE (by Aviv Zohar et. al). Ethereum also has a concept of "uncle blocks", which are rewarded…
> Blocks are not organized into merkle trees in Bitcoin. Full nodes pick the longest (PoW wise) valid chain and discards any other competing chains and their blocks. That's pretty much the definition of "rebase" and again, that's a functionality of the algorithm on top of the data structure (Proof of Work) not the data structure. The raw data structure is still a merkle tree even if in practice the algorithm suggests…
A merkle tree is a very specific type of hash tree, which Bitcoin only uses for transactions and not for blocks. Merkle proofs are used to prove that a txid exists within the root hash committed in the header block. What would be the reason to organize blocks into a merkle tree? What would that let you prove?
See this SE question for more information on how Bitcoin uses merkle trees: https://bitcoin.stackexchange.com/questions/69018/merkle-roo...
> here are still multiple rebased "branches" among the Bitcoin forks such as Bitcoin Classic, Bitcoin Gold, etc. All of those are branches that share...
Bitcoin, BCash and BGold each have incompatible rule sets; A full node will only accept chains that are valid according to its own local set of rules (embedded in it software), so chains of different coins will not even be considered for chain selection, regardless of the proof-of-work backing them. They just don't exists from the full node's PoV. Validity of blocks/transactions comes first, everything else is second.
Re: BitTorrent v2
#537Earlier quoted context omitted.
This is silly. Are you actually saying that bittorrent was hyped so much that constituting half the internet was a letdown? And that Perl didn't live up to its hype because it's only common today, and not as universal as it once was?
> This is silly. Are you actually saying that bittorrent was hyped so much that constituting half the internet was a letdown? My point is that it was a fad, it's barely used anymore and it was 50% in 2009 , now its usage is much, much lower. I've seen a lot of statistics of streaming services being 20-30% of the internet each (Netflix, Youtube), so I'd be amazed if BitTorrent is more than 10% 2020 (and that's a very…
Re: BitTorrent v2
#538Earlier quoted context omitted.
Blocks are not organized into merkle trees in Bitcoin. Full nodes pick the longest (PoW wise) valid chain and discards any other competing chains and their blocks. There are some alternative cryptosystem designs that do take blocks in "losing chains" into consideration using a DAG structure, like GHOST and its successor SPECTRE (by Aviv Zohar et. al). Ethereum also has a concept of "uncle blocks", which are rewarded…
> Blocks are not organized into merkle trees in Bitcoin. Full nodes pick the longest (PoW wise) valid chain and discards any other competing chains and their blocks. That's pretty much the definition of "rebase" and again, that's a functionality of the algorithm on top of the data structure (Proof of Work) not the data structure. The raw data structure is still a merkle tree even if in practice the algorithm suggests…
Re: BitTorrent v2
#539Since we're on this topic, what's your torrent client of choice HN? I plainly use BitTorrent nowadays
uTorrent seems to have some efficiency problems, and in my experience it can't even do 1 Gbps with a cross-over cable between two peers, let alone across the Internet...
Re: BitTorrent v2
#540Earlier quoted context omitted.
Merkle trees are everywhere in Bitcoin (full node or otherwise). The block header has the merkle root of all transactions that are a part of that block. The witness merkle root is stored in the coinbase transaction (if the miner is segwit enabled). And proof of work is done for the block header, which includes all these merkle roots.
They are used in Bitcoin since day one in the full node implementation, but full nodes don't benefit from the merkle tree structure in any way. The first client that did benefit from it was bitcoinj, which was released several years after Satoshi birthed Bitcoin. If light SPV clients weren't a consideration, we could just concatenate all txids together and use the hash of that in the block header instead of a merkle…
does bitcoin core ever verify merkle inclusion proofs? (I assume not, it only verifies that the merkle root matches the set of txids. but maybe I'm missing some other ways its being used?)
i don't think anything verifies them
shesek: they don't even ever receive any
though they were an essential part of BIP37 [related to light SPV clients]
shesek, for a full node theres no real difference between receiving a merkle tree and a hash of a list
yeah, for a full-blocks-only bitcoin like protocol, the "merkle root" stored in the block header could just be a flat hash of all txids