When will testnet version 3 kick the bucket?

19 replies 363 views
HumbleBullFull Member
Posts: 54 · Reputation: 378
#1Mar 5, 2017, 12:54 PM
Right now, we've got two Bitcoin testnet versions rolling: version 3 and the new version 4. My question is pretty straightforward. When is version 3 going to phase out? What’s the process behind it? I have a hunch it’ll be linked to a core update where only version 4 will be supported, but what if that happens and some folks stick with version 3? If you ask me why they’d do that, it’s simple: there’s cash involved with version 3. Since it holds some market value, a lot of users might not want it to disappear.
4 Reply Quote Share
coin777Senior Member
Posts: 143 · Reputation: 970
#2Mar 5, 2017, 06:28 PM
When users will stop using it (which may be never, if there is strong enough community to maintain it, as an altcoin). By dropping the support for it, in the next versions of Bitcoin Core. Which means, that any new bugfixes and improvements simply won't happen on testnet3 anymore. It will be left as it is, without any changes. If some people will agree to become a new developers, then it may have a chance to live as an altcoin. But most likely it will die, because some people believe, that if something is not supported by Bitcoin Core, then it is not Bitcoin (which is not true, but if enough people believe in that, then the network will die quickly). Yes. And if they will encounter blockstorms, or other attacks, then they will have nobody to blame, because if you use outdated network, then you are responsible for keeping it alive, if you want to use it. The same would happen, if someone would decide to run Satoshi prenet version, with 20-bit difficulty blocks. Of course, you can use it, everything is decentralized, and so on, but if you will see, that your client blindly follows the longest chain (instead of the heaviest chain, with the most chainwork), then you can only blame yourself, because your node enforces those outdated rules (not to mention OP_TRUE OP_RETURN bug, Value Overflow Incident, and other issues).
2 Reply Quote Share
whale777Full Member
Posts: 125 · Reputation: 470
#3Mar 7, 2017, 12:14 PM
As a result of people who no longer want to give up their testnet3 killing the reason for testnet; free distribution - a once a while reset can help reduce the importance of having to stay on old version for monetary gains. However, testnet3 will not die, it's been around for 13 years, the BTC client will have to support both Testnet3 and testnet4.
5 Reply Quote Share
sage777Full Member
Posts: 102 · Reputation: 305
#4Mar 7, 2017, 02:51 PM
https://github.com/bitcoin/bitcoin/pull/29775/files#diff-c534c365a32e58168519cb10607734c54323b7f79049dd9a0a3dfbdfd649b31c See? Removing support is planned. And you can confirm it, by reading the comments in the discussion between developers. If someone else would want to develop testnet3, as an altcoin, then sure, go on. But it would be removed from Bitcoin Core in the future.
2 Reply Quote Share
greglaserFull Member
Posts: 180 · Reputation: 542
#5Mar 7, 2017, 03:35 PM
When something is wrong with Testnet 1, Testnet 2, developers will reset testnet and create a new testnet iteration. Bitcoin Testnet Has the TestNet ever been reset? If something is seriously misused with Testnet 3, Testnet 4, we will have Testnet 5.
2 Reply Quote Share
max_atlasSenior Member
Posts: 132 · Reputation: 834
#6Mar 7, 2017, 07:50 PM
Has there been any announcement already for the version 4? If not well that is how it will start but it will not immediately be used by everyone. There will probably a time where the two versions will coexist at the same time with a few using the version 4 while others still using version 3 until eventually more and more people use version 4 and almost no one is using version 3 then that is when it will die already. There will definitely still some benefits from using the version 3 but will it outweigh the risks it involves by continuing to use that instead of the consensually used by most version 4? There will be new incentives by using version 4 and many might choose to change to that immediately.
5 Reply Quote Share
im_apeHero Member
Posts: 629 · Reputation: 3824
#7Mar 7, 2017, 08:47 PM
The low block reward which means high cost of mining for no reward + the currently ongoing attack where blocks are being mined every second + the fact that the chain & UTXO set and even blockheaders file have gotten massive for a test network could result in its death. TestNet3 is not some separated altcoin to need specific bug fixes. It is pretty much MainNet with only 1 difference (as far as I can remember: 20 minute min diff fallback) when it comes to its consensus rules. Which means any changes, bug fixes, etc. that is done to bitcoin core affecting the MainNet will affect all other networks including TestNet3. https://mempool.space/testnet4 The network has been active for a while and already 47k blocks mined on it.
4 Reply Quote Share
LuckyCoinLegendary
Posts: 832 · Reputation: 4795
#8Mar 7, 2017, 09:43 PM
It is not possible to completely halt the operation of the network, but you can make enough people get off of it by doing what you said. But where will always be running old versions of nodes and not upgrading, so while the majority of nodes will be using the latest versions, a small few will stay behind for one reason or another. I would disagree on the altcoin classification though.
3 Reply Quote Share
hash_bossLegendary
Posts: 1166 · Reputation: 5261
#9Mar 7, 2017, 11:26 PM
But it's worth to mention that, 1. Bitcoin Core isn't the only full node software which support testnet3 network. 2. People could continue using older version of Bitcoin Core which support testnet3. It's not how open-source software works. You can't force the developer to keep supporting certain feature, especially if you don't pay or sponsor them specifically for that reason.
4 Reply Quote Share
coin777Senior Member
Posts: 143 · Reputation: 970
#10Mar 8, 2017, 06:07 AM
I don't think so. Timewarp protection is tested only in testnet4, and is not moved into testnet3. And future soft-forks also won't be ported. Which means, that if you have for example testnet3 in v28, and it will be removed in v29, then a few years later, you may have Bitcoin Core v40, while using testnet3 will require going back to v28. Of course, it is possible to get the latest master, modify the code, and use it on testnet3. But: even if you do that now, then you basically fork yourself, by splitting the chain into those, who enforce ASIC-mined block, during difficulty adjustment, and between the old nodes, who don't have this rule. Testnet4 will have test cases, which will be present only there, and then ported into mainnet. And you won't get for example anchor support in testnet3. So, the end result of testnet3, would be just like a lot of different altcoins, which were created before Segwit, or before Taproot, and which simply didn't activate any new rules, even if they could. To stay compatible, you need some group of developers. If you have none, then you can just stick with old versions, which will get more and more outdated over time, and where more and more attacks will be possible. Why? Each test network creates its own chain, and is altcoin "by definition". If you want to have a test network, which would not be an altcoin, then it would need to follow the mainnet. For example: if you would have a testnet client, which would allow you to put some regtest-difficulty blocks on mainnet, if nothing is produced for 20 minutes, and then your block would always be reorged, then you would have a testnet, consisting of just some stale blocks with low difficulty. And then, you can really say: "start from block 123,456, mine something on top of that, test things, and then move on, just by downloading next blocks, and destroy all of your test coins in that way". So, do you want to touch non-altcoin testnet? Then for example sign some mainnet coins, test your things, and then destroy test coins, when they will move on-chain. This is the simplest non-altcoin testnet I can think of. If you have non-mainnet coins, then you have an altcoin, no matter if you like it or not. You have new coins, created from scratch. And an alternative history, an alternative coin ownership, and altered consensus rules. This is the definition of the altcoin.
0 Reply Quote Share
LuckyCoinLegendary
Posts: 832 · Reputation: 4795
#11Mar 10, 2017, 06:11 AM
Practically speaking, there are not enough changes made in (either) testnet to make it deviate sufficiently from mainnet to the point where people's software have to be rewritten. If somebody picks up testnet3 and starts adding stuff to it by means of publishing a new client, and people pick up on it, then that would be generally accepted as an altcoin, but the way we're going now, it's just going to be abandoned. [Ironically just like most altcoin projects.]
1 Reply Quote Share
sage777Full Member
Posts: 102 · Reputation: 305
#12Mar 10, 2017, 10:34 AM
We already had enough disruption in testnet4, to activate UASF, and use new timewarp rules: https://github.com/bitcoin/bitcoin/issues/30786 So, the differences are big enough, to split the chain. And if you apply testnet4 rules on testnet3, you will probably land on a different chain. Even in testnet4, I landed on a different chain, just by mining blocks 20 hours in the future. The new ASIC block will resolve those issues, but it is easy to trigger CPU-based chainsplit.
2 Reply Quote Share
HumbleBullFull Member
Posts: 54 · Reputation: 378
#13Mar 10, 2017, 02:51 PM
thanks for your answers, i really enjoy the topic. Some important points to recap are the fact that the depreciation of Testnet 3 is in process, and the developers are in charge of this move. And if the users want to keep it alive they will have to run older versions of the Bitcoin Core. But i don't think T3 will stay alive, maybe some users try it, but when they realize how they can't send their coins to other users then they will realize the waste of time and waste of resources.
4 Reply Quote Share
im_lynxHero Member
Posts: 515 · Reputation: 2161
#14Mar 10, 2017, 05:24 PM
Well, this is the problem, that there are stupids that assign tBTC some value and establish a "market" for it. Testnet coins are not supposed to have a value. You kill the concept of an important testing playground almost identical to Mainnet by assigning some arbitrary value! Please, don't do and support this! I'm not addressing you in particular. Ideally, anybody should've access to just enough tBTC and be able to do some testing (via faucets e.g.). If you're unfamiliar with a particular software or hardware wallet, play with it with tBTC. Practice anything, practice recovery without fear of loosing value. Would recommend it to everybody. I don't know much about Testnet1 and Testnet2 and what exactly killed them. I just find it silly how much hashpower by single mining entities is thrown at Testnet3 and now also at Testnet4 already. I don't have high hopes for the longevity of Testnet4. Open for surprises...
3 Reply Quote Share
im_apeHero Member
Posts: 629 · Reputation: 3824
#15Mar 12, 2017, 08:56 PM
I think it's just a matter of supply and demand. Of course there are a couple of reasons for tbtc gaining value (like the altcoins that used it for their airdrops) but the main reason is the supply and demand. When I think about it, I see that over time it became increasingly harder to acquire tbtc. The block reward fell significantly due to it being farther ahead in halving cycles and hashrate grew (ASIC attacks) making it expensive to mine blocks. On top of that some faucets shut down, ran dry or gave out very tiny amounts (eg. 1000 satoshi). That creates a shortage so when a market is formed, the price can remain higher than it should be (eg 3000 sat per tbtc). Otherwise if there were an abundance of it in circulation, it would have dumped the price to below 1 satoshi very quickly therefore would have killed that market quickly.
2 Reply Quote Share
HyperCipherFull Member
Posts: 220 · Reputation: 780
#16Mar 12, 2017, 10:18 PM
In my personal opinion, when the majority of developers have migrated to Signet? Plus who would continue testing their projects in Version 3 if they there are reliability issues. I didn't do any actual research on it, but a friend told be that it was attacked, and the attacker produced years worth of blocks with merely a small amount of resources?
0 Reply Quote Share
LuckyCoinLegendary
Posts: 832 · Reputation: 4795
#17Mar 13, 2017, 04:15 AM
Most tools out there still offer just mainnet and testnet options, so the migration is not going as fast as some people would like. That is called a 'griefing attack' and it was described by Jameson Lopp in one of his blog posts on his website. Basically taking advantage of the fact that you can 'pre-mine' (I think that's the correct term) a bunch of blocks ahead of time, before their respective timestamps have arrived.
2 Reply Quote Share
coin777Senior Member
Posts: 143 · Reputation: 970
#18Mar 13, 2017, 09:34 AM
Signet doesn't have decentralized mining. Only specific people can test mining, so only specific people will mine signet blocks. Everyone else will stick with testnet, just because of mining. For example, today I use testnet4, mainly because I can mine blocks there, so I can test some features, which are available, only if you are a miner. 1. Those, who want to test fee-based block rewards. No other network than testnet3 has low enough basic block reward for that kind of tests. 2. CPU miners, who don't want to be stuck, after reaching difficulty adjustment (in testnet4, it is required to mine at least one ASIC block per each difficulty adjustment). This is called "timewarp attack", and people are experimenting with testnet4 rules, to fix it. And when around 90% of blocks are mined by CPUs in testnet4, then we can clearly see, if timewarp protection is working correctly or not. Not only that. First, you mine blocks with future timestamps, and then, you mine some, with past timestamps. So, the time to mine 2016 blocks, is then decided by the miner, who can lower the difficulty, as much as desired. And because testnet has an option to reset the difficulty after 20 minutes, then it can be used to make the attack even stronger, than it would be on the mainnet. Edit: If signet would be so good, then it wouldn't need that: https://delvingbitcoin.org/t/proof-of-work-based-signet-faucet/937
2 Reply Quote Share
stack51Hero Member
Posts: 541 · Reputation: 3218
#19Mar 13, 2017, 11:46 AM
Depends on how you define "death", testnet3 is already dead to me. When you have stupid people wanting to buy tens of thousands of testnet coins. So the fact that no regular developer with a regular PC can mine on the blockchain makes it dead to me, people hammering it with top of the line gears made it unusable, even the stupid themselves can't use it now because even if you are using an S21s on it, your are still subject to infinite block reorgs caused by the other stupid people. In fact, the irony with testnet3 is that block subsidy is now 0.00152 given that we are in block 3007923, so we are 142,077 blocks away from another halving, and yet, those spammers keep hammering the network, which is good so that they would stay away from testnet4, we are now at block 47853, while the first block was mined on 2024-05-04 so the average blocktime is roughly 4.5 mins which is great compared to the testnet3 average blocktime which is 2.5 mins, in fact it's even a lot less than than if you would just take the last 4-5 years data and ignore the early stages when people didn't screw the testnet.
0 Reply Quote Share
HyperCipherFull Member
Posts: 220 · Reputation: 780
#20Mar 13, 2017, 03:26 PM
Plus was Jameson Lopp's "time-warp attack" in that same situation when Ordinals developers were testing their projects in testnet 3? There were some people saying that the disruption was caused by an "Ordinals hater" and that he tried to stop the testnet to therefore also stop all Ordinals testing. The "disruptor" might be a regular poster in BitcoinTalk.
2 Reply Quote Share

Related topics