Глоссарий / Узлы и ПО
Тестовая сеть
Другие названия: Testnet4.
- Что такое тестовая сеть?
- Тестовая сеть (testnet) представляет собой параллельную сеть биткоина, монеты которой намеренно ничего не стоят; разработчики кошельков и бирж используют ее, чтобы отрепетировать транзакции, прежде чем касаться реальных денег.
Определено в BIP-94.
Никто эти монеты не покупает, потому что краны раздают их бесплатно. Сеть работает с 2011 года и уже один раз была заменена: BIP94 определил testnet4, которая вышла в Bitcoin Core 28.0 в октябре 2024 года после того, как старая цепочка пришла в состояние, на которое никто не мог полагаться. Тем, кто покупает биткоин, стоит запомнить одно: транзакция в тестовой сети ничего не доказывает о реальном платеже.
Как это работает
Статус: testnet3, версия, которую до сих пор описывает большинство руководств, заменена на testnet4, определенную в BIP94 и выпущенную в Bitcoin Core 28.0 в октябре 2024 года. Новые интеграционные работы следует нацеливать на testnet4 или signet.
Тестовая сеть применяет обычные правила консенсуса биткоина с одним крупным дополнением. Если проходит двадцать минут без блока, следующий блок можно добыть на минимально возможной сложности, так что один ноутбук может поддерживать движение цепочки, когда никто серьезный не направляет на нее оборудование. Именно это правило делает бесплатную тестовую сеть жизнеспособной, и именно оно погубило ее третью версию.
Механизм отказа описать легко. Кто-то с реальным майнинговым оборудованием ждет, пока сложность упадет до минимума, добывает всплеск из тысяч тривиальных блоков, и цепочка рывками уходит вперед с реорганизациями глубиной в сотни блоков. В сочетании со слабостью «искажения времени» (timewarp) в арифметике пересчета сложности это позволило майнерам сбить сложность testnet3 и израсходовать оставшуюся эмиссию монет гораздо быстрее, чем кто-либо предполагал, из-за чего краны опустели, а время подтверждения потеряло смысл.
Testnet4 сохраняет двадцатиминутную лазейку, но запрещает применять ее к первому блоку периода сложности, и привязывает каждый пересчет к началу собственной эпохи, так что трюк с искажением времени больше не работает. Кроме того, она началась с нового генезис-блока, поэтому ее история коротка. Пока обе версии работают параллельно на разных портах, 18333 для testnet3 и 48333 для testnet4, и обе используют одинаковые префиксы адресов: m, n, 2 и tb1.
Где это встречается
Тестовая сеть представляет собой место, где программное обеспечение, на которое вы полагаетесь, проверяют в работе, прежде чем оно до вас дойдет.
Инженерные команды бирж отлаживают здесь обработку пополнений и выводов, здесь тестируется прошивка аппаратных кошельков, и каждый, кто строит платежную интеграцию, делает здесь свои первые сто попыток, а не на деньгах. Сайты-краны раздают монеты всякому, кто попросит, а это самый ясный возможный сигнал о том, сколько они стоят.
Скорее всего, вы встретите тестовую сеть в связи с мошенничеством. Убедительный скриншот подтвержденной транзакции ничего не значит, если обозреватель блоков за ним переключен на тестовую сеть, и фальшивые агенты поддержки использовали именно этот трюк, утверждая, что возврат уже отправлен. Две проверки все решают: адрес, на который вам пришел реальный платеж, начинается с 1, 3 или bc1, а в URL обозревателя не должно быть слова testnet. Если кто-то предлагает продать вам монеты тестовой сети, покупать нечего.
Testnet vs signet
Testnet добывает всякий, кто придет, поэтому график ее блоков хаотичен; блоки signet действительны, только если их подписал названный оператор, поэтому ее график таковым не является. Именно из-за этого единственного различия signet в значительной мере взяла на себя серьезное тестирование. Testnet все еще отвечает на один вопрос, на который signet не может: как ведет себя программное обеспечение, когда сам майнинг ведет себя неправильно, но если нужна тестовая сеть, похожая на mainnet в обычный день, ближе к этому signet.