SegWitって?UASFとは?BIP-148…?「ビットコイン分裂問題」関連の用語を解説

2017年7月の現在、世間では8月1日に行われるであろう「BIP-148」の実装でビットコインが分裂するかもという話題で騒然である。
しかし、話題に上がっているものの「大きなことが起こるのはわかるけど専門用語が多すぎて理解できない」という方も多いのではないだろうか。
この記事はそういった専門用語を一つ一つ紐解いて問題の理解を深めようという趣旨で進めていく。

概要: 「ブロックサイズ問題」を解決するために

ビットコインが分裂するかもという問題に何故至ったかを理解するため、まずは概要をおさらいしよう。

ブロックチェーンの要である取引データを保管する「ブロック」。ブロック一つあたりに入る取引データの容量が2017年7月の現在は最大1MBと決まっている。
しかし、取引量の増えた今では1MBだとすぐに上限に達してしまい、現状のブロックを生成する間隔(約10分)では追いつかなくなってきた。追いつかなくなったからといって不備がでるわけではない(と思う)が順番待ちが発生するため、いつかは解決しないといけない問題である。
(ブロックチェーンという用語についてはビットコインの根本的な仕組みであるため書ききれないので割合する。)

この問題を解決するために考案されたのが「Segwit」であり、 Segwit を導入するために「UASF」というルールが用いられ、これらの提案を「BIP-148」と呼ぶ。
そして「BIP-148」が適用されたブロックチェーンと従来のブロックチェーンの2つが両立した状態が「ビットコイン分裂」という形になる。

いきなり専門用語のオンパレードでなんのこっちゃだと思うので一つ一つをかいつまんで解説しよう。

Segwit(Segregated Witness), Segwit2x とは

先程の「ブロックサイズ問題」でデータ容量に限界が来ており、それを解決する手段が「Segwit」だ、という話をした。
「ブロックサイズ問題」の解決は具体的には以下のようなアプローチで行われようとしている。

第一アプローチ: 取引データの圧縮

ブロック内に入れる取引データの無駄を解消して取引データ自体を圧縮しようというアプローチ。
過去のブロックへの影響もほとんど無く、効率の良い手段と言える。

第二アプローチ: ブロックの容量を増やす

ブロック一つあたり最大1MBと決められている容量の最大値を増やそうというアプローチ。
一見単純に解決できそうなアプローチに見えるが、過去のブロックとの互換性で不備がでるためコストが掛かる。


「第一アプローチ」を行うのが Segwit 、その後に「第二アプローチ」をしようとする動き(容量を1MBから2MBへ)が Segwit2x である。
また、 Segwit は脆弱性を改善するためのアップデートも兼ねている。

UASF(User-Activated Soft Fork)とは

「UASF」を解説する前に「MASF」について知る必要がある。

MASF(Miner-Activated Soft Fork)とは

ビットコインのブロックチェーンは採掘者(Miner)によって成り立っているため、新しい仕様を取り入れようとした時には採掘者による多数決(に似たようなもの)で決めようというルールがある。それが「MASF」である。


MASF を見たとおり、採掘者の多数決による同意がなければ新しい仕様は通らない。
しかし、 Segwit はどうしても通さなければいけない仕様だと開発者側が判断したために出されたのが「UASF」である。
(採掘者ではない、つまりユーザー側も決定権を持ったため User-Activated という名称になったと思われる。)

通さなければいけない仕様だと言ったものの、 UASF で実施すると強制的にすべてのブロックに対して Segwit が適用されるわけではない。
最初は旧仕様のブロックと Segwit が実装されたブロックの2つのチェーンが生えた状態になる。この状態がいつまでも続くと「ビットコイン分裂」になるわけだ。

ソフトフォーク(Soft Fork)、ハードフォーク(Hard Fork)とは

ブロックチェーンの話題の中で時折「ソフトフォーク」と「ハードフォーク」という言葉を見かける。
これらはブロックチェーンに対して新しい仕様を取り入れる際に用いられる言葉だ。

『Segwit, Segwit2x とは』のセクションで解説した『第一アプローチ: 取引データの圧縮』のような他のブロックとの互換性を保てる仕様の変更を「ソフトフォーク」、
『第二アプローチ: ブロックの容量を増やす』のように互換性で不備のでる変更を「ハードフォーク」という。

BIP-xx(Bitcoin Improvement Proposals)とは

ブロックチェーンの仕組みをアップデートする際のバージョンのようなもので、ビットコイン・コミュニティによる改善の提案(Improvement Proposals)に対して多数決で実装するかの決議が行われる。
つまり「BIP-148」とは通し番号が148の改善案という事になる。

コメント

もっと読み込む

Cocco

ブロックチェーン技術に興味があります。ETHなどのアルトコインに付随する技術、暗号化、etc...。Webの技術にブロックチェーンを活かしたいです。 NEM5円の時に参入しました。

関連記事