public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Garlo Nicon <garlonicon@gmail.com>
To: Saint Wenhao <saintwenhao@gmail.com>
Cc: Greg Maxwell <gmaxwell@gmail.com>,
	 Bitcoin Development Mailing List <bitcoindev@googlegroups.com>
Subject: Re: [bitcoindev] Re: Unbreaking testnet4
Date: Fri, 9 May 2025 15:07:48 +0200	[thread overview]
Message-ID: <CAN7kyNiWimDXDV5xT8MCZTvKzrunjfMDDOtTYcmKdQNN1z7Lsg@mail.gmail.com> (raw)
In-Reply-To: <CACgYNO+fsUtx=F=ZLZVq=FJfrgHv8NnKsjmoVS8LLVU78zjKDw@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 9055 bytes --]

> Hard fork in an ultramassive premine, as large as possible but what stays
with existing value overflow logic. (so maybe an additional 21 million
testnet btc?).

Why hard-forking anything? The starting difficulty is set to 1, and it
raises to 4 almost instantly, when testnet creators are mining the first
coins. Which means, that difficulty 1 is ridiculously easy to work with,
when you have any ASICs. If you combine it with the idea of fake
timestamps, then you can produce a really long initial chain, which will
start in 2009, and up to 2025, it will produce almost the same amount of
blocks as mainnet. All of that can have a soft-forked-in differences
between blocks of 10 minutes, after which you can bring the real
timestamps, and raise the difficulty to the proper level.

Which means, that instead of "premine", you can use "ninja-mine", and
achieve pretty much the same end result.

> In practice, trading will start, when the first version of the official
wallet will be released.

In that case, developers can generate some artificial chain with faked
timestamps, then mine some stronger blocks on top of that, and then release
a client with such changes. No changing of coins limits needed, and
ninja-mine is better than premine, because you wouldn't need to change the
code that much, but only eventually put a checkpoint, where you would want
to have a "genesis" block, for example at height 900,000, with some
coinbase message, timestamped with some hash from the mainnet.

wt., 6 maj 2025 o 17:25 Saint Wenhao <saintwenhao@gmail.com> napisał(a):

> > Some believed that resetting alone would discourage the conduct,
>
> I wonder, why many people keep saying "reset", when in practice, the old
> network is just "abandoned", and nothing is really "resetted". We would
> have a true reset, if a new testnet would lead to the full chain
> reorganization of the old chain. And this thing never happened, all
> previous testnets were just abandoned, as they were, and there were just
> not enough people, willing to keep old networks alive.
>
> > Hard fork in an ultramassive premine
>
> Well, if testnet4 will be "fixed" by doing a hard-fork on top of existing
> chain, then it would be equivalent to releasing testnet5 with "premine" of
> all testnet4 blocks.
>
> > so maybe an additional 21 million testnet btc?
>
> Using doublings, instead of halvings, is future-proof. Because then, if
> someone will continue using such test network forever, then later, it would
> release 21 million coins per block (which would be roughly equivalent to
> having a superchain, where you can peg one altcoin per 10 minutes).
>
> > if someone starts trading tnbct for money, whomever has the premine
> wallet should feel feel to sell into it what they can
>
> In practice, trading will start, when the first version of the official
> wallet will be released. It was the case in testnet4: when it was possible
> to mine new coins, only when you created your own binary from the source
> code, then there were only devs, and some skilled users. However, when it
> was officially supported in a new Core version, then it was quickly listed
> on centralized exchanges, and a lot of people dumped all of their test
> coins, and walked away with real BTCs.
>
> > the custodian of the premine will use it for the betterment of Bitcoin
> development,  but if it's found that they're not-- solution is just another
> reset
>
> Which means, that Bitcoin developers will turn into altcoin developers,
> where they will release new altcoins called "testnets", only to dump all of
> them, and get BTCs out of it.
>
> wt., 6 maj 2025 o 01:40 Greg Maxwell <gmaxwell@gmail.com> napisał(a):
>
>> On Tuesday, March 18, 2025 at 9:24:49 PM UTC Antoine Poinsot wrote:
>>
>> Hi,
>> Testnet4 was rolled out a year ago to address the shortcomings of
>> testnet3. One of those shortcomings was the difficulty reset creating
>> havoc. [0] In spite of this a similar rule was adopted for testnet4. [1] As
>> a result, testnet4 is similarly creating havoc. [2]
>> The goal of testnet is to mimic the Bitcoin mainnet. This is why it is
>> useful to have in addition to a more control testing environment such as
>> Signet.
>> The given rationale for a difficulty reset was to let developers
>> occasionally mine blocks on their laptop. But you cannot have your cake and
>> eat it too: either the network is permissionless (PoW) or you assign
>> identities and privileges to some (Signet). By trying to do both at the
>> same time testnet4 created a loophole for abuse. As a result it failed on
>> both count: it neither mimics mainnet nor allows developers to mine active
>> blocks on their laptop.
>> I propose to fix this by removing the difficulty reset rule from testnet4
>> through a flag day hard fork on 2026-01-01. I picked a date well in the
>> future to minimize disruption. This leaves enough time for a patch to be
>> reviewed, merged, included in the next major Bitcoin Core release,
>> backported to previous releases and adopted by the infrastructure running
>> on testnet4. That should be enough for a test network.
>>
>>
>> Part of the root cause is violations of the gentleman's agreement to not
>> trade testnet coins for money, this results in predictable chaos with
>> people sniping the low difficulty blocks. Some believed that resetting
>> alone would discourage the conduct, but even if it had (it hadn't people
>> are selling them now) it was still likely that people would hoard up coins
>> just in case they became tradable in the future.
>>
>> There is a simple fix for this which doesn't result in an operating
>> difference from Bitcoin, just an economic one.   Hard fork in an
>> ultramassive premine, as large as possible but what stays with existing
>> value overflow logic. (so maybe an additional 21 million testnet btc?).
>>
>> This also resolves the 'actual developers can't get coins problem' and if
>> someone starts trading tnbct for money, whomever has the premine wallet
>> should feel feel to sell into it what they can.  Once they run out of coins
>> it'll be time for another testnet reset.
>>
>> It may just not be possible to prevent degens from trading tn coins for
>> money, -- I mean consider the altcoins that some people spend money on :),
>> there is basically no low bar on how crappy you can make a cryptocurrency
>> where some scammer won't try to sell it to some fool.  But what can't be
>> prevented can at least be turned into a benefit.
>>
>> Compared to things like just rigging the subsidy to continue forever--
>> that's a bigger consensus change compared to bitcoin, and I think it
>> doesn't have the right incentive surface... some of the most popular
>> altcoins have endless inflation and people still use them.  Instead you
>> want the failure mode to be "if you do trade this for money, most of the
>> profits end up going to support a developer or development, rather than
>> whatever jerk decided to trick people into paying for it". :)
>>
>> Feel free to suggest yourself as the custodian of the premine.  Or it
>> could be some anonymous party if there is a concern that they'll be
>> pestered for handouts.  There should be a general expectation that the
>> custodian of the premine will use it for the betterment of Bitcoin
>> development,  but if it's found that they're not-- solution is just another
>> reset. :)
>>
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Bitcoin Development Mailing List" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to bitcoindev+unsubscribe@googlegroups.com.
>> To view this discussion visit
>> https://groups.google.com/d/msgid/bitcoindev/afb749b2-bdb8-4b2a-84ec-b703a64ad765n%40googlegroups.com
>> <https://groups.google.com/d/msgid/bitcoindev/afb749b2-bdb8-4b2a-84ec-b703a64ad765n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> You received this message because you are subscribed to the Google Groups
> "Bitcoin Development Mailing List" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to bitcoindev+unsubscribe@googlegroups.com.
> To view this discussion visit
> https://groups.google.com/d/msgid/bitcoindev/CACgYNO%2BfsUtx%3DF%3DZLZVq%3DFJfrgHv8NnKsjmoVS8LLVU78zjKDw%40mail.gmail.com
> <https://groups.google.com/d/msgid/bitcoindev/CACgYNO%2BfsUtx%3DF%3DZLZVq%3DFJfrgHv8NnKsjmoVS8LLVU78zjKDw%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups "Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bitcoindev+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/CAN7kyNiWimDXDV5xT8MCZTvKzrunjfMDDOtTYcmKdQNN1z7Lsg%40mail.gmail.com.

[-- Attachment #2: Type: text/html, Size: 10565 bytes --]

      reply	other threads:[~2025-05-09 13:24 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-18 14:29 [bitcoindev] Unbreaking testnet4 'Antoine Poinsot' via Bitcoin Development Mailing List
2025-03-18 21:34 ` Melvin Carvalho
2025-03-19  7:01 ` [bitcoindev] " Garlo Nicon
2025-03-19  7:56   ` [bitcoindev] " Sjors Provoost
2025-03-19  8:43     ` Garlo Nicon
2025-03-19  8:32 ` Sjors Provoost
2025-03-19  9:11   ` Melvin Carvalho
2025-03-19 17:03 ` bitcoin-dev-ml.void867 via Bitcoin Development Mailing List
2025-03-20 18:58 ` Melvin Carvalho
2025-03-21 21:20 ` Murch
2025-03-24  7:00   ` Garlo Nicon
2025-03-31  7:32     ` Saint Wenhao
2025-03-24 12:25   ` Murch
2025-03-24 13:57     ` 'Antoine Poinsot' via Bitcoin Development Mailing List
2025-04-27 11:44       ` Saint Wenhao
2025-04-27 22:49         ` Jameson Lopp
2025-04-28  6:11           ` Saint Wenhao
2025-04-28 10:45             ` Jameson Lopp
2025-04-28 11:59               ` 'emsit' via Bitcoin Development Mailing List
2025-04-28 12:47               ` Sjors Provoost
2025-04-28 13:33                 ` Saint Wenhao
2025-04-28 18:15                 ` Saint Wenhao
2025-04-28 18:50                   ` Sjors Provoost
     [not found]             ` <20250428110655.D4A1C7C0AE9@smtp.postman.i2p>
2025-04-28 11:48               ` pithosian
2025-05-05 22:25 ` [bitcoindev] " Greg Maxwell
2025-05-06 11:48   ` Saint Wenhao
2025-05-09 13:07     ` Garlo Nicon [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAN7kyNiWimDXDV5xT8MCZTvKzrunjfMDDOtTYcmKdQNN1z7Lsg@mail.gmail.com \
    --to=garlonicon@gmail.com \
    --cc=bitcoindev@googlegroups.com \
    --cc=gmaxwell@gmail.com \
    --cc=saintwenhao@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox