6 ms·
> People here were joking about putting time on the blockchain, and, well, NIST is already doing it. It's not a blockchain, but a single writer Merkle DAG. No
by throwaway89201 3y ago
> People here were joking about putting time on the blockchain, and, well, NIST is already doing it.
It's not a blockchain, but a single writer Merkle DAG. No consensus necessary. Much like a git repository with a single author.
- waterheater 3y ago>It's not a blockchain, but a single writer Merkle DAG. Hmm. Just because something's a Merkle DAG doesn't make it useable on the Internet. A single-writer blockchain, perhaps?
- SV_BubbleTime 3y agoOh… so you are calling a database a “block chain”.
- r3trohack3r 3y agoA blockchain is a chain of blocks. Do you have another definition? Colloquially, it often refers to a consensus algorithm paired with a chain of blocks. Bitcoin’s innovation wasn’t a blockchain, it was a proof-of-work backed consensus algorithm that allowed a group of adversarial peers to agree on the state of a shared blockchain datastructure.
- waterheater 3y agoAccording to the dictionary [1], a blockchain is "a digital database containing information (such as records of financial transactions) that can be simultaneously used and shared within a large decentralized, publicly accessible network" The distinction here might be with a decentralized network. [1] https://www.merriam-webster.com/dictionary/blockchain https://www.merriam-webster.com/dictionary/blockchain
- ipaddr 3y agoMerriam is incorrect
- pests 3y agoEvery word in that definition seems to fit, no?
- tidenly 3y ago"decentralized" isnt necessary to a block chain. However when people say "block chain" in everyday use, they're usually talking about that type. It's a case where the everyday use of a word is different to the actual technical meaning.
- pests 3y ago> It's a case where the everyday use of a word is different to the actual technical meaning. Which can change. There also is centralized proof-of-work blockchains. Clouds were offering them awhile back and IBM had some offering.
- pests 3y agoA blockchain used to be a chain of blocks. It's more now. You kinda defined it - consensus algoithm, shared datastructure. What is colloquially even susposed to mean here? That the common usage doesn't match the definition? Maybe definitions change over time....
- kortilla 3y agoSo a linked list is a blockchain?
- r3trohack3r 3y agoIf you have a chained hash of the data in the linked list, yes!
- r3trohack3r 3y agoPeople keep saying Merkle DAGs when someone calls a linear chain of recursively hashed data blocks a blockchain. I don’t understand. My understanding of the Merkle Tree is that it’s a recursive hash, but the leaf nodes are the data, each layer up the tree is the hash of the child nodes. In a merkle tree, only the leaf nodes store (or reference) data, everything else is just a hash. Is there another merkle structure I don’t know about? https://en.wikipedia.org/wiki/Merkle_tree https://en.wikipedia.org/wiki/Merkle_tree If the nodes with hashes contain data, it’s not a merkle tree.
- tedunangst 3y agoI think this is isomorphic to an unbalanced tree where every node has one non leaf child and one leaf child.
- r3trohack3r 3y agoSeems like claiming that a linked list isn't actually a linked list it’s an unbalanced tree where every node has one child node. I mean, you’re not wrong but it’s still a linked list. I’d be careful muddying up your mental models this way though - they’re distinct data structures for distinct purposes. You would likely not want to use a merkle tree for an append only log, and likely would not want to use a blockchain for verifying file integrity. For example, BitTorrent, IPFS, and Storj use merkle trees to verify and discover blocks on the DHT, you would not want to use a blockchain for this. And Scuttlebutt uses a blockchain as an append only log that is gossip friendly, you would not want to use a merkle tree for this.
- r3trohack3r 3y agoSince posting this, I've discovered that IPFS has something it calls Merkle-DAGs. A Block-Chain is a chain of blocks where there is one valid previous block and one valid next block. A Block-Tree is a chain of blocks where there is one single valid previous block, and multiple valid next blocks. A Block-DAG is a chain of blocks where there are multiple valid next blocks and multiple valid previous blocks, with the constraint that you can not form cycles. They are analogues to linked-lists, trees, and directed-acyclic-graphs but with chained hashes. From the Merkle-DAG article on the IPFS page: > Merkle DAGs are similar to Merkle trees, but there are no balance requirements, and every node can carry a payload. In DAGs, several branches can re-converge or, in other words, a node can have several parents. What's interesting here is that a Merkle Tree is a valid Merkle DAG, since a node can _optionally_ include a data payload. So a blockchain, a blocktree, and a blockdag are all also Merkle-DAGs. Merkle-DAG is a kind of unifying structure that can be used to model all of them. It's really quite clever. https://docs.ipfs.tech/concepts/merkle-dag/ https://docs.ipfs.tech/concepts/merkle-dag/ This appears to have been coined in 2014: https://github.com/jbenet/random-ideas/issues/20 https://github.com/jbenet/random-ideas/issues/20 However the term blockchain dates back to at least 2008. A blockchain might be a Merkle-DAG but a Merkle-DAG is not a blockchain.
- zzo38computer 3y agoIf each block contains the hash of the previous block, then I think that it is a blockchain (regardless of if there is multiple authors or only a single author). A git repository is a blockchain, too.
- zeusk 3y agoWould you know! So Linus is the real father of blockchain?
- CobrastanJorji 3y agoWikipedia suggests that David Chaum first proposed what was basically a blockchain in 1982. He even had a crypto startup way before they were cool, with "eCash" in 1995.
- rdl 3y agoBlind signatures are totally different from hash chains.
- waterheater 3y agoAccording to a news article, the first blockchain application is an application released in 1992 called AbsoluteProof by the company Surety [1]. [1] https://www.vice.com/en/article/j5nzx4/what-was-the-first-blockchain https://www.vice.com/en/article/j5nzx4/what-was-the-first-bl...
- fanf2 3y agoYay, thank you, I was racking my brains trying to remember Surety as an example in response to https://news.ycombinator.com/item?id=37782446 https://news.ycombinator.com/item?id=37782446
- 1vuio0pswjnm7 3y ago"As Ethereum's cofounder Vitalik Buterin joked on Twitter, if someone wanted to compromise Surety's blockchain they could "make fake newspapers with a different chain of hashes and circulate them more widely." Given that the New York Times has an average daily print circulation of about 570,000 copies, this would probably be the stunt of the century." What if the hash is published in multiple newspapers.
- m3kw9 3y agoOk but then anyone in control can change the entire tree, why need this Merkle tree?
- thelastparadise 3y ago> No consensus necessary. Much like a git repository with a single author. But shouldn't we want decentralized consensus for this? What if NIST's key(s) were to get compromised, or the org were to disband or become corrupt/dysfunctional?