今回はブロックチェーンを支えるP2Pネットワークについて紹介します。
できる限り「Short & Simple」を心がけます。
なお、私もブロックチェーン初学者なので、内容に誤り等ありましたらご指摘いただけると幸いです。
P2Pネットワークとは
P2P(peer-to-peer)ネットワークとは、以下のような条件を満たすネットワークのことを指す。
- ネットワークに参加しているノード(コンピュータ)がすべて同等の立場である
- 特別なノードがない
- すべてのノードがサービスを提供する負荷を分担している
以上より、P2Pネットワークでは「サーバ」や「ネットワーク内の階層」は存在しない。
P2P技術を用いたサービス例としては、winnyなどの「ファイル共有サービス」が挙げられる。
長所
- 一部のノードが故障や停止しても全体は影響を受けない(ゼロダウンタイムの実現)
- 規模が大きくなればなるほど対象外性に優れていく
短所
- 規模が大きくなればなるほど全体性能は悪くなる
- システムを止めたくても簡単には止められない
- 悪意のあるノードも参加できる
ブロックチェーンでの応用
ブロックチェーンはP2Pネットワーク上のシステムであり、参加しているノードすべてが同じブロックチェーンのデータを保持する。なお、同じデータを参照していることを保証・検証するために、ハッシュ関数が用いられている。
参加者全体でブロックチェーン(取引データ)を監視することで、改ざんや不正使用を困難なものとしている。