SEGWITとは?ビットコインのスケーラビリティ問題の対策を簡単解説!

現在ビットコインのスケーラビリティ問題として取り上げられている

「トランザクション(取引)が毎秒7トランザクションが限界」

という問題について、いろいろな対策が考えられています。

特に、今後ビットコインのインフラ強化が図られ、トランザクション(取引)が増えた場合、このスケーラビリティ問題は、最優先で対応しなければならない問題です。

そんな中、この問題に対する対策としてSegwitという対策がビットコインの推進グループの中で83%の賛成を得られたため、実際にビットコインのブロックチェーンへ導入される可能性が高くなってきました。

従い、ここでは、SegWitについて解説したいと思います。

SegWitとは??

まず、この記事を理解するためには、ビットコインの基礎知識が必須ですので、もしわからないという方は右記リンク(ビットコインの基礎)をご確認し、その後以下を読む事をオススメします。

では、まずSegWitについてですが、語源として、「Segregated Witness(SegWit)」から来ています。

Segregate = 分離する
Witness  = 証拠、証明、署名

上記名称から推測できる様に、ブロックチェーン内のブロックの中にある各トランザクションの電子署名を分離し、その取り除かれた領域にトランザクション(取引)データを取り込もうとする方式です。

これは、現在ブロックの容量が、1MBと制限があるため、トランザクションデータを1ブロック内に保存出来る容量が限られています。したがい、現時点(2017年5月)では、毎秒7トランザクションが限界であるという問題になっています。

その対策として、上記の様な対策が掲げられています。

Sponsored Link

Segwitの仕組み

概略としては、上記で述べたとおりですが、実際にどの様にして、電子署名の取り除くのか、以下で説明します。

・英語が上達したい方    → クリック
・不労所得に興味がある方  → クリック
・子供の教育に興味のある方 → クリック
・人工知能に興味のある方  → クリック

電子署名とは??

SegWitの説明をするにあたり、絶対に外せないのが、この電子署名です。

これは、我々が一般的に使う郵便や手紙で送信元から「サイン」や「印鑑」が記載または押されていると思いますが、ちょうど電子署名はこれにあたります。

トランザクション(取引)の中では、その電子署名を元に、その送信元の公開鍵を探し、暗号を複合していきます。そのため、電子署名は、最後の複合の時のみに必要な情報であるという事がわかります。

イメージとしては、以下図の通りです。


転用元:https://www.slideshare.net/SoichiroTakagi/ss-59779821
図:暗号化と電子署名

ブロックの構造

次に、ビットコインのブロックの構造についてですが、ブロックは以下図に記載されている様に、多くのトランザクション(取引)を1つのブロックの中に保存しています。


転用元:https://jpbitcoin.com/about/whatisbitcoin2
図:ブロックの構造

また、この1つ1つのトランザクションに対し、上記で記載した電子署名の情報を保管しています。

さらに、この電子署名の領域はブロックチェーン全体の約60%の領域を占めています。

ここを別のデータベースで管理し、電子署名のデータ格納領域に、新しいトランザクション履歴を格納することで、最大で今まで4ブロック分つまり、4MB必要だったブロックが1ブロック(1MB)で済むことがわかりました。

上記より、SegWitを取り入れる事で、まずトランザクションの処理能力が最大4倍に向上することがわかります。
そのため、現在インフラが進み、トランザクション数が増えている、ビットコインには、必要な対策であることがわかります。

上記説明のイメージ図は以下を参照ください。


転用元:http://gaiax-blockchain.com/segwit

Sponsored Link

(英文原文)
These signatures are only needed at time of validation. They don’t go into the UTXO(Upsent Transaction Output) set, the database of all unspent coins. These unspent transaction outputs don’t enter into the UTXO set. This is a significant cost on the resources of both keeping a node running but also the speed of propagation and access to the UTXO set needs to be fast. Of all the data in a transaction, signatures don’t go into the UTXO set, even though they account for 60% of the blockchain data. Segregated witness is about ignoring this whenever possible.
(中略)
This is my proposal that we do right now. We implement segregated witness right now, soon. What we do is discount the witness data by 75% for block size. So this enables us to say we allow 4x as many signatures in the chain. What this normally corresponds to, with a difficult transaction load, this is around 75% capacity increase for transactions that choose to use it. Another way of looking at it, is that we raise the block size to 4 MB for the witness part, but the non-witness has same size. The reason for doing the discount, last slide, the reason for doing this discount is that it disincentivizes UTXO impact. A signature that doesn’t go into the UTXO set, can be pruned.

さいごに

このSegWitにより、まずはスケーラビリティ問題(毎秒のトランザクション数増加)に対する対策は、可能となりますが、これが最終形の対策ではないと思います。

おそらくビットコインは、まだまだ進化する可能性がありますので、今後も動向がとても気になります。

その1つとしてRootstockというものがありますので、気になる方は以下リンクを参照ください。

Rootstockに関する記事(リンク

最後まで購読ありがとうございました。

補足:ビットコインの価値推移に関するニュース

ビットコインの価値が急騰したり、暴落したりすることがあります。それなりの理由があり、急騰したり、暴落していることがありますので、ぜひ以下をご一読ください。

Sponsored Link

コメントを残す