4 ms·
I would like to see that couple pages of text that describe the Bitcoin consensus rules in such a detail that you could do a clean room implementation of a Bitc
by bhaak 8y ago
I would like to see that couple pages of text that describe the Bitcoin consensus rules in such a detail that you could do a clean room implementation of a Bitcoin client.
Hint: They don't exist. That's because the specification of the consensus rules are in the reference implementation of Bitcoin and every other implementation has to implement the same behavior as the C++ client, including any possible programming mistakes.
So you only know if your re-implementation works "correctly" if you download and run it against an opaque binary from an untrusted(?) source.
Whatever you do, you need to anchor your trust somewhere. You should always be aware where you anchor it and what trade-offs there are.
- keymone 8y agoit is true that bitcoin has a reference specification, but only a small subset of that code is actual consensus code, but the rest of your message is just bs. knowing consensus rules is the easy bit - code is open source, there are multiple implementations, there is community, there are users, merchants, exchanges - they all agree what consensus rules are. but what's most important - I CAN VALIDATE FULL BITCOIN BLOCKCHAIN IN REASONABLE AMOUNT OF TIME AND VERIFY THAT I FOLLOW THE CORRECT CHAIN. you seem to have forgotten what this thread is about. it's a short one - i'm sure you can track back and read it again, carefully. edit: clarification.
- bhaak 8y agoHow do you know you got the right source code? If you have multiple implementations that disagree how do you decide which one is the right one if there are also 2 competing blockchains available? You said "You only need to know consensus rules. You can use any software, you can build it yourself, you can order an audit, you can write software yourself." and that's plain wrong. You need to ensure you got the right consensus rules. This is not as easy as you put it.
- aeternus 8y agoYou actually do not need to know the consensus rules to determine the PoW chain with the most work. Simply by understanding the hash function and difficulty, you can calculate the total work of any PoW blockchain. This provides some amount of trust that is very difficult to subvert. You only need to know the consensus rules if you want to be a miner on the chain.
- keymone 8y agoi make a choice and i VALIDATE THE FUCKING BLOCKCHAIN what is so hard to grasp about this?