2021年11月18日 2 min read

Testnetは時代遅れ?Regtest、Signetとは何なのか

Testnetは時代遅れ?Regtest、Signetとは何なのか
Photo by Nick Morrison / Unsplash

ビットコインを使用したことがある方でも、Testnetを触ったことのある方は珍しいかと思います。Testnetとはその名の通りテスト用のネットワークで、ビットコインノードの設定を変えることでテストネット用のブロックチェーンとビットコインが使用でき、何かを試してみたり開発する際に使われてきました。

しかし、Testnetはブロックの生成間隔が不安定だったり、コインが入手しにくいなど決して使い勝手が良いものとは言えなくなってしまいました。そこで開発用途・テスト用途として使われるRegestという「お一人様モード」と、SignetというTestnetに代わる新たなテスト用ネットワークについて紹介します。

MAINNETと同じ仕様が災いするTESTNET

ビットコインのTestnetは別のブロックチェーンでビットコインとほぼ同じことをしています。というのも、TestnetのブロックもPoWでマイニングされるため、ブロックを進めるにもコインを手に入れるにも、マイニングが必要なのです。

テスト用のコインを手に入れるにはフォーセットなどからマイニングしたものや寄付されたものを分けてもらうしかありません。しかしTestnet用のフォーセットは枯渇気味で、大きな量を入手するのは困難という現実があります。(量がそれほど関係するユースケースも限られますが。) また、無価値でなければテスト用と言えないのに、あまりの希少性に取引されてしまう懸念があります。

ブロックが生成される間隔もMainnetのビットコインと比較してとても不安定で、突如ASICがマイニングに参加したり消えたりすることでハッシュレートが乱高下したりします。さらにMainnetのビットコインでは6承認待てばリオーグされないと考えて支障ありませんが、Testnetだと深いリオーグが発生することもあるようです。

チェーンの立ち往生対策として、20分間ブロックが発見されない場合は特別に1ブロックだけ難易度が下がるなどの仕組みが用意されていますが、それでも約10分に1ブロックという常識が通用しないので使い勝手がよくありません。

結果としてTestnetはテスト用途としては使い勝手が悪いという皮肉な現実になっています。

ちなみに現在のTestnetのハッシュレートは約620TH/sと最先端のASIC6台分ほどです。

お一人様で自由自在なREGTEST

ビットコインを利用したアプリの開発などで自分だけでテストできれば十分という場合には他者も利用するTestnetを使う必要はありません。

実は2014年のBitcoin Core 0.9.0からRegtestというモードが実装されており、これはローカル環境に自分だけのオレオレブロックチェーンが生成されるものとなっています。

Great! You’ve successfully signed up.
Welcome back! You've successfully signed in.
You've successfully subscribed to ビットコイン研究所.
Your link has expired.
Success! Check your email for magic link to sign-in.
Success! Your billing info has been updated.
Your billing was not updated.