Перейти к содержимому
buybitcoinsmart

Глоссарий / Узлы и ПО

Regtest

Другие названия: Режим регрессионного тестирования.

Что такое Regtest?
Regtest представляет собой частную сеть биткоина, которая работает на вашей собственной машине, где блоки добываются по команде, а не в ожидании того, что их создаст кто-то другой.

Здесь ничего никому не передается. Цепочка начинается со своего собственного генезис-блока, сложность майнинга стоит на самом низком значении, которое допускает программное обеспечение, и одна команда может создать сто блоков менее чем за секунду. Именно здесь тестируются кошельки, платежные процессоры и реализации Lightning, прежде чем что-либо из них соприкоснется с деньгами.

Как это работает

Запуск bitcoind с параметром regtest создает цепочку без пиров и без истории.

У этой сети нет DNS-сидов и нет узлов по умолчанию, к которым можно подключиться, поэтому, если не запустить второй экземпляр и не подключить его вручную, вы остаетесь одни в своем блокчейне. Демон слушает пиров на порту 18444 и вызовы RPC на порту 18443, хранит данные в отдельном каталоге regtest и выдает адреса с префиксом bcrt1, так что перепутать их с чем-то ценным невозможно.

Блоки появляются, когда вы их запросите. Команда generatetoaddress майнит на указанный вами адрес, и обычный первый шаг состоит в том, чтобы намайнить 101 блок вместо 1, потому что выход coinbase нельзя потратить, пока сверху не лягут еще 100 блоков. Только когда существует 101-й блок, у вас появляется монета, которую можно потратить, на которой можно строить остальную часть теста.

Еще два параметра намеренно отличаются от mainnet. Regtest начинается с той же субсидии в 50 BTC, но она уменьшается вдвое каждые 150 блоков вместо каждых 210 000, поэтому сеанс, в котором добыты несколько тысяч блоков, сведет вознаграждение к нулю и лишит вас возможности финансировать что-то новое. А поскольку нижний предел сложности настолько низок, реорганизации можно устраивать бесплатно: invalidateblock откатывает цепочку от любого выбранного вами блока, а reconsiderblock возвращает его на место, и это единственный практичный способ увидеть, что реорганизация в шесть блоков делает с балансом кошелька.

Где это встречается

Regtest является сетью, на которой работает собственный набор тестов биткоина.

Функциональные тесты Bitcoin Core поднимают узлы regtest, прогоняют их через сценарии и снова удаляют, так и проверяются изменения в программном обеспечении перед выпуском. Core Lightning и LND делают то же самое для логики каналов, а Polar дает этому процессу графический интерфейс, чтобы можно было создать небольшую сеть Lightning на своем ноутбуке в несколько кликов. BTCPay Server поставляет стек разработки на regtest по той же причине: никто не должен обнаруживать ошибку на странице оплаты с платежом клиента.

Если вы подключаете платежи в биткоине к веб-сайту, первые сто платежей должны пройти здесь. Вы точно управляете временем подтверждений, можете смоделировать зависшую транзакцию или повышение комиссии, не заплатив ни за то, ни за другое, и можете отрепетировать реорганизацию, которая иначе стала бы сюрпризом раз в год.

Как человек, который покупает биткоин или хранит его, вы никогда намеренно не подключитесь к regtest, но знать это название стоит. Адрес, начинающийся с bcrt1, не является адресом биткоина, и любой кошелек, который показывает вам такой адрес, подключен к частной цепочке, которая не существует нигде, кроме машины перед вами.

Не путать с

Часто задаваемые вопросы

Почему в руководствах по regtest всегда майнят 101 блок?

Потому что выходам coinbase нужно 100 подтверждений, прежде чем их можно потратить. Если намайнить 101 блок, вознаграждение за первый блок станет доступным для траты, и это наименьшее число, при котором у вас появляются монеты, которые можно использовать.

Могут ли монеты regtest когда-либо что-то стоить?

Нет. Цепочка существует только на вашей собственной машине, имеет свой собственный генезис-блок и не имеет общей истории с биткоином. Адреса в ней начинаются с bcrt1, и их не примет ни один настоящий кошелек или биржа.

Связанные термины

Еще в разделе «Узлы и ПО»

Читать эту страницу на английском