【初心者向け】仮想通貨のブロックサイズってなに?
ブロックチェーンによって支えられている仮想通貨ですが、この「ブロック」とは何かご存知でしょうか?
いまだ発展途上の仮想通貨において、このブロックが議論の対象になることは少なくありません。
というわけで、今回はブロックとそれに関する課題(スケーラビリティ問題)について、かんたんにご紹介したいと思います。
ブロックとは?
ブロックチェーン上でトランザクションが一定量行われると、それらをひとかたまりのデータとして記録していくのですが(=マイニング)、このひとかたまりのデータのことを「ブロック」と呼んでいます。
トランザクションはブロックとして生成されてはじめて承認されるので、それまでは未承認ということになりますね。
新しく生成されるブロックは、前のブロックのデータを暗号化したもの(ハッシュ値)に依存するかたちで作られているので、
もしどこかのデータを1つだけ改ざんしようとしても、それと紐づいているすべてのデータを遡って書き換えなければならないことや、
より長くつながっているブロックチェーンを正しいものとして判断するルールがあることから、事実上、改ざんがほぼ不可能な仕組みとなっています。
また、生成されたブロックがすべて時系列でつながっていることでデータの信頼性が担保されています。
ブロックサイズとは?
そのようにして生成されていくブロックですが、1つのブロックに詰め込むことのできるデータ量のことを「ブロックサイズ」といいます。
ブロックサイズが大きい場合、処理が必要なデータ量が増える分、マイナーにかかる負担が大きくなります。
ハッシュパワーが大きいほどマイニングの成功の確率が大きくなるため、ハッシュパワーの小さなマイナーは離脱・淘汰・集約されて、ハッシュパワーの大きな特定のマイナーだけがマイニングに参加する状況になってしまいます。
- 中央集権寄りの仕組みになってしまう
- 分散化の特徴である匿名性や信頼性が失われる可能性がある
反対に、ブロックサイズが取引量と比べて小さい場合には、常にサイズの上限いっぱいで取引がされて未処理の取引が増えてしまい、次のような問題を引き起こす可能性があります。
- 手数料がとてつもなく高くなる
- 取引の承認が大幅に遅れる
ブロックサイズ問題とは?
前述の問題をまとめて「スケーラビリティ問題」といったりもしますが、ブロックのサイズはなかなか複雑な問題を抱えていることがわかるかと思います。
ブロックチェーンの特徴を最大限活かして欲しいものの、手数料が高いうえに送金の処理に手間取ってしまうようでは、実用的ではありませんもんね。
例えばビットコインのブロックサイズは1MBなのですが、過去にビットコインに注目が集まり短期的に取引量が一気に増えたことで、実際にスケーラビリティ問題が発生しました。
もちろんその問題を解消するために、
- ブロックの容量そのものを大きくする(ビットコインキャッシュの誕生)
- 1つ1つのトランザクションに必要なデータを小さくする(セグウィット)
- ブロックチェーンを補助する別のチェーンを用意する(オフチェーン)
といったように様々な対策がとられていますが、まだまだ改善点は多いとされています。
そのため、そのようなビットコインの課題から、新たにLitecoin(ライトコイン)やEOS(イオス)といったようなアルトコインも生まれたりしています。
まとめ
世の中に革命的な変化をもたらすとされるブロックチェーン。
今回は、その中でも「ブロック」について取り上げましたが、いかがでしたでしょうか?
ブロックチェーンや仮想通貨は、依然として実用化へむけての試行錯誤の段階ですが、着実且つもの凄いスピードで改善されていて、サイドチェーンという技術が開発されたりもしています。
1つ1つ新しい知識を身につけていきたいですね!