Live data from Hacker News

How blocks are chained in a blockchain

johndcook.com

11–20 of 35 posts

Re: How blocks are chained in a blockchain

#12

Sure but how is this distributed? Does every device hold the chain of blocks?

It depends on the implementation. The naive solution is to have every client hold the full chain. The lightweight solutions come in two flavors, the easy "good enough" solution and the much harder ideal/zero trust solution. The easy solution (light clients) to avoiding carrying the full chain is to simply rely on some set of known/trusted "beacon" servers that you are willing to trust to relay you the chain state and…

has there been any useful application of this outside of bitcoin as currency? Seems like a solid technical idea with lots of woo-woo on top of it.

Re: How blocks are chained in a blockchain

#13

Earlier quoted context omitted.

It depends on the implementation. The naive solution is to have every client hold the full chain. The lightweight solutions come in two flavors, the easy "good enough" solution and the much harder ideal/zero trust solution. The easy solution (light clients) to avoiding carrying the full chain is to simply rely on some set of known/trusted "beacon" servers that you are willing to trust to relay you the chain state and…

has there been any useful application of this outside of bitcoin as currency? Seems like a solid technical idea with lots of woo-woo on top of it.

Which part? Blockchain in general?

Re: How blocks are chained in a blockchain

#14

Earlier quoted context omitted.

has there been any useful application of this outside of bitcoin as currency? Seems like a solid technical idea with lots of woo-woo on top of it.

Which part? Blockchain in general?

Blockchain and smart contracts.

Re: How blocks are chained in a blockchain

#15

Sure but how is this distributed? Does every device hold the chain of blocks?

The partial collision is easy to verify but hard to generate, consensus is defined as "longest chain is the source of truth". If some p2p node can present you a longer chain you switch your source of truth to that one.

Re: How blocks are chained in a blockchain

#16
the joke i like to make:

it's a linked list with an O(exp(n)) append cost and a O(r*exp(n)) rewrite cost where r how many from the tip you wish to rewrite.

other notable: the 32 bit nonce is exhausted very quickly with modern mining systems, so they roll the timestamp forwards and backwards by a limited amount, add, remove and reorder transactions and iirc twiddle some bits in the coinbase (the first transaction the miner is allowed to add to the block to pay for the mining) to twiddle the merkle root.

the implementations of the mining systems are actually pretty cool. the host will compute the first rounds of the compression function for the first 32 bytes, and then hardware acceleration will take over for the open hash for the remainder which includes a host computed merkle hash and 32 bits of nonce + 32 bits of timestamp (with some maybe 8-10 bits of entropy to play with). so the host computes these new merkle hashes and partial sha2 sums, but then farms out the open hash state to the hardware to spin and check on timestamps and nonce values. (although newer stuff may need to compute the merkle hashes in hardware too)

Re: How blocks are chained in a blockchain

#17
post #7
post #4

Earlier quoted context omitted.

"The" blockchain is still "a" blockchain. There are many possible blockchain instantiations and Bitcoin is one of them.

Literally anyone can make up a Blockchain. That's why there's a convoluted mess of crypto.

Good luck getting actors to spend electricity to participate in Nakamoto consensus though

Re: How blocks are chained in a blockchain

#18
post #15

Sure but how is this distributed? Does every device hold the chain of blocks?

The partial collision is easy to verify but hard to generate, consensus is defined as "longest chain is the source of truth". If some p2p node can present you a longer chain you switch your source of truth to that one.

In terms of Bitcoin consensus, it is actually the chain with the most work, not the longest chain.

Re: How blocks are chained in a blockchain

#19

Earlier quoted context omitted.

It depends on the implementation. The naive solution is to have every client hold the full chain. The lightweight solutions come in two flavors, the easy "good enough" solution and the much harder ideal/zero trust solution. The easy solution (light clients) to avoiding carrying the full chain is to simply rely on some set of known/trusted "beacon" servers that you are willing to trust to relay you the chain state and…

has there been any useful application of this outside of bitcoin as currency? Seems like a solid technical idea with lots of woo-woo on top of it.

You could argue the useful application has been that of a time-stamping service, which is what you need to order a transaction history.

Re: How blocks are chained in a blockchain

#20

Earlier quoted context omitted.

Which part? Blockchain in general?

Blockchain and smart contracts.

There's certainly application outside of currencies. Bluesky/atproto for example is built on DIDs (decentralised IDs) and IPLD (the data format/standard of IPFS). Both are very heavily rooted in cryptocurrency tech.

There's a joke in the atproto community that it's a blockchain but without the currency because of this.

Post reply on HN