79 / 736TEST

Testnet

Сеть для тренировки платежей без настоящих биткоинов

Testnet — публичная тестовая сеть Bitcoin. В ней можно попробовать платёж, кошелёк или собственное приложение с тестовыми монетами, которые нельзя потратить в основной сети.

У Testnet своя история блоков и свои балансы, отдельные от основной сети — mainnet. Тестовые монеты, часто обозначаемые TBTC, предназначены для экспериментов без денежной ценности. Похожее управление не означает той же надёжности, комиссий или безопасности, что и при работе с настоящими BTC.

Анна хочет научиться получать и отправлять биткоины, прежде чем использовать свои деньги. В приложении с поддержкой Testnet она создаёт отдельный тестовый кошелёк. Получает средства из faucet — сервиса, раздающего небольшие суммы тестовых монет, — и отправляет часть Павлу в той же сети. Она видит адрес, транзакцию и ожидание подтверждения, не расходуя настоящие BTC. Это пример, а не инструкция к конкретной программе: такой режим есть не в каждом кошельке. Тестовые монеты — не бесплатные биткоины. Их баланс нельзя переключить или перенести в mainnet, а недоступность faucet не повод покупать их как инвестицию. [11]

Testnet — не учебный счёт внутри основного Bitcoin. Это другая цепочка блоков, начинающаяся со своего Genesis Block. Блок объединяет транзакции в общей истории, а Genesis Block служит её началом. У этой сети есть собственные UTXO — ещё не потраченные выходы транзакций. Выход задаёт сумму и условия её расходования, например необходимую подпись. Поэтому поступление средств Анне в одной сети не создаёт баланс в другой. Программы различают сети по параметрам, например идентификаторам начала сетевых сообщений и портам. При этом адреса разных сетей не обязательно выглядят по-разному. Приватный ключ — секретные данные, с помощью которых кошелёк создаёт подпись, разрешающую расходование соответствующих средств. Даже одинаковые приватные ключи не превращают две истории в один кошелёк с общим балансом. [12] [15]

Адреса, начинающиеся с tb1, могут относиться к Testnet3, Testnet4 или Signet. Поэтому Анна и Павел договариваются о конкретной сети и проверяют её в обоих приложениях; слова «тестовая» недостаточно. Для опытов Анна использует новые ключи и отдельную резервную копию. Она не вводит Seed Phrase (слова восстановления) кошелька с настоящими средствами в экспериментальную программу. Смена режима не делает ненадёжное приложение безопасным. Сервису faucet тоже нужен лишь публичный адрес для получения монет, но не слова восстановления или приватный ключ. Разделение файлов кошельков, ключей и копий уменьшает путаницу и нежелательные связи между тестами и личными платежами. [12] [14]

Публичный Testnet предназначен для опытов с незнакомыми участниками и открытым майнингом. Signet тоже служит для испытаний, но помимо Proof of Work (вычислительной работы для поиска допустимого блока) требует выполнить условие блока, обычно подпись, созданную уполномоченными ключами. Это позволяет лучше координировать выпуск блоков, хотя не гарантирует непрерывной работы. Regtest подходит разработчику, которому нужен контроль над опытом: он запускает собственную среду и создаёт блоки по запросу, например для автоматического теста. Если Анна только осваивает кошелёк, важны и сети, поддерживаемые приложением. Ни одна из этих сред не превращает свои монеты в биткоины основной сети. [10] [11] [16]

Пробный платёж Павла может пройти быстро и с небольшой комиссией. Из этого не следует стоимость той же операции в mainnet. Различаются нагрузка, вычислительная мощность майнеров и стимулы участников. Публичный Testnet может долго ждать блока, столкнуться со сбоем сервиса или реорганизацией: узлы — компьютеры, проверяющие правила сети, — заменяют недавнюю ветвь истории другой допустимой ветвью. Такие события помогают находить ошибки приложений, но не каждый сбой является намеренным. Успешный тест проверил конкретное поведение в конкретных условиях; сам по себе он не доказывает безопасное хранение ключей или устойчивость сервиса с настоящими деньгами. [10] [2]

В старых руководствах упоминается Testnet3, запущенный в 2011 году. Со временем проявились проблемы распределения монет и правил сложности майнинга. Так называемые block storms были сериями очень быстро добытых блоков: высота цепочки росла необычно быстро, а субсидия новых блоков снижалась быстрее, чем можно ожидать по календарю. Тестовыми монетами даже торговали, хотя они должны были оставаться доступным инструментом. Новое поколение поэтому начинает новую историю, а не переоценивает старые балансы. В руководстве проверяйте номер сети, а не только название Testnet. [1]

Testnet4 описывает техническое предложение BIP 94, а поддержку добавил Bitcoin Core 28.0. Помимо нового Genesis Block, изменились расчёт сложности и правила временных меток блоков, чтобы ограничить известные способы вызывать block storms. Но особое правило осталось: кроме первого блока периода сложности, метка более чем на 20 минут позже предыдущего блока требует минимальной сложности. Это не обещание подтвердить платёж за 20 минут. Testnet4 также с самого начала применяет изменения правил, действовавшие в mainnet на момент предложения в мае 2024 года. Даже эти улучшения не делают его безотказной моделью основной сети. [1] [9]

На 17 октября 2026 года BIP 95 для Testnet5 имеет статус Draft — разрабатываемый проект. Он предлагает убрать исключение минимальной сложности, поднять её минимум и с первого блока применять BIP 54, набор предлагаемых изменений правил консенсуса. Однако в документе ещё нет окончательных данных Genesis Block и ссылки на эталонную реализацию. Поэтому на его основании нельзя представлять Testnet5 как обычно развёрнутую сеть Bitcoin Core. Испытание новых правил также не активирует их в mainnet. При последующем чтении следует проверить статус предложения и документацию своей версии программы, а не полагаться на больший номер в названии. [2]

В Bitcoin Core параметр testnet4 выбирает Testnet4; точный синтаксис команды указан в документации вашей версии. В конфигурационном файле секция [test] означает Testnet3, а [testnet4] — Testnet4. Данные лежат в отдельных подкаталогах testnet3, testnet4, signet или regtest. Важно проверить и работающую программу: getblockchaininfo возвращает идентификатор сети в поле chain. Дополнительно проверяют хеш Genesis Block, синхронизацию и подключённые узлы. Для собственного Signet общего genesis недостаточно — нужно проверить конкретное условие блока. Заголовок окна или похожий адрес этого не заменяют. [8] [12] [13] [14] [10]

Анна сначала проверяет, что оба кошелька используют одну сеть. Потом пробует получение, отправку и различает отправленный и подтверждённый платёж. Восстановление она испытывает только с отдельной тестовой копией. Разработчик может добавить перезапуск приложения, недоступный узел, реорганизацию или отклонение неверной сети. Для комиссий полезны RBF — замена неподтверждённой транзакции новой — и CPFP: дочерняя транзакция с высокой комиссией побуждает майнеров включить также её неподтверждённую родительскую транзакцию. В результате фиксируют сеть, версию программы и действительно проверенное поведение. Testnet позволяет делать ошибки, которых хочется избежать с настоящими деньгами; он не доказывает, что дальнейшие проверки больше не нужны. [11] [9]

Для полной картины прочитайте эту статью вместе с Bitcoin Core, Signet, Майнинг, Кошелёк, Bitcoin, Full Node. На эту статью также ссылаются Sidechain, Liquid Network, Обучение Биткоину, Signet.

DOC · 001BIP 94 — Testnet 4Спецификация DOC · 002BIP 95 — Testnet 5 (Draft)Спецификация DOC · 003Bitcoin Core 28.0 — Testnet4 supportДокументация DOC · 004Bitcoin Core — chain parametersПервичный источник DOC · 005Bitcoin Core — Signet, testnet and regtest modesДокументация DOC · 006Bitcoin Core — bitcoin.conf network sectionsДокументация DOC · 007Bitcoin Core — chain-specific data directoriesДокументация DOC · 008Bitcoin Core 30.0 — getblockchaininfoДокументация DOC · 009Bitcoin Core 28.0 — Testnet4 release notesПервичный источник DOC · 010BIP 325 — SignetПервичный источник DOC · 011Bitcoin Developer Guide — Testing applicationsПервичный источник DOC · 012Bitcoin Core v30.0 — Network parametersПервичный источник DOC · 013Bitcoin Core v30.0 — Network configurationПервичный источник DOC · 014Bitcoin Core v30.0 — Network data and walletsПервичный источник DOC · 015Bitcoin Developer Guide — TransactionsПервичный источник DOC · 016Bitcoin Developer Guide — Block ChainПервичный источник
Обновлено: Сначала источники · Не является инвестиционной рекомендацией