Update README.md
This commit is contained in:
1 parent
ecf4edb39b
commit
9e86c31b88
1 file changed
+7
-1
@@ -35,6 +35,12 @@ Testnet generator fixes these problems by (1) eliminating the consensus rule tha
|
||||
|
||||
Yes. Every time you visit the website you spin up a new blockchain just for you. It shares a lot of bitcoin's consensus rules too, so you can use it for testing bitcoin apps.
|
||||
|
||||
Also...technically, no, this isn't a blockchain, it just looks and acts like one. In a "real" blockchain, later blocks commit to prior blocks, and each one contains proof that it costed something to produce. That way, the cost of doublespending a transaction grows as the transaction gets "buried" under more blocks, because you have to re-pay to create all of the blocks "on top" of it or no one will accept your doublespend. The "blockchain" in this software doesn't do any of that. It's expected to be used in an environment where the person mining the blocks is the only user, and creating blocks is supposed to be free. In that environment, the miner doesn't need to prove anything to anyone, so later blocks don't need to commit to prior blocks, which means this isn't technically a real blockchain. But it's close enough for what I want to do with it.
|
||||
|
||||
# There's no way this testnet is the same as bitcoin
|
||||
|
||||
It's not, it's missing several important consensus rules. For example: there's no blocksize limit, there's no difficulty or difficulty adjustment, there's no 100-block "waiting period" applied to freshly mined coins, and this blockchain only understands how to validate transactions that exclusively spend segwit v1 utxos (i.e. taproot outputs) -- segwit v0 and legacy utxos are not supported. They're too old-fashioned. There are also *consequences* to the above things, e.g. due to there not being a blocksize limit, fees are always minimized to 1 sat per byte -- you don't need to compete with people to get into a block.
|
||||
It's not, it's missing lots of important consensus rules. For example, there's no blocksize limit, there are no halvings (so coins are theoretically unlimited), there's no proof of work, there's no difficulty adjustment, there's no 100-block "waiting period" applied to freshly mined coins, later blocks don't commit to prior blocks, transactions are not merkelized, there's no concept of "median time past" (so blocks can have any timestamp), and this blockchain only understands how to validate transactions that exclusively spend segwit v1 utxos (i.e. taproot outputs) -- segwit v0 and legacy utxos are not supported. They're too old-fashioned. There are also *consequences* to the above things, e.g. due to there not being a blocksize limit, fees are always low (1 sat per byte) -- you don't need to compete with people to get into a block when there's no blocksize limit.
|
||||
|
||||
# Sounds like you omitted everything that makes bitcoin bitcoin. So what in the world is this thing?
|
||||
|
||||
I didn't omit *everything.* This "blockchain" uses the same transaction format as bitcoin, the same elliptic curve, the same signature format, the same utxo model, and it understands bitcoin script, taproot, and bitcoin's sighash schemes. This means you can create transactions which validly spend utxos in this software with confidence that if you do the same thing on bitcoin, it should work there too, unless you specifically design the transaction to rely on one of the consensus rules that this software omits.
|
||||
Reference in new issue
Block a user