イーサリアムでフォーク(分岐)が発生、主要クライアントのアップデート対応が遅れる

ブロックチェーン
この記事は約2分で読めます。

イーサリアムの主要クライアントでバグが見つかりアップデートを行なったものの、結果的にイーサリアムのブロックチェーンがフォーク(分岐)していたことが8月28日に明らかとなった。

きっかけとなったのは、イーサリアムノード全体の74.6%のシェアを誇るGo Ethereum(Geth)のクライアントだ。Gethの旧バージョンにバグが見つかっていたことから、v1.10.8へのアップデートがリリースされている。しかし、最新バージョンへの対応が遅れたノードが多数いたことで、結果的にイーサリアムのブロックチェーンがフォークしてしまったようだ。

今回のフォークについて、イーサリアム財団のセキュリティリードを務めるMartin Swende氏は次のようにコメントしている。「幸いなことに、ほとんどのマイナー(ノード)はすでにアップデートへの対応を完了しており、イーサリアムのチェーンも安定して稼働しています」。

今回の問題は、チェーンのフォークが発生したという点では深刻であるものの、原因がクライアントのアップデートに対応していなかったという点からは、長引く問題ではないと言えるだろう。なお、Gethのアップデートが迅速に対応されなかったことでイーサリアムがフォークした事例は、2020年11月にも発生している。

Geth以外にも、4月にはGethに次ぐシェアを誇るOpen Ethereumで同様の問題が発生し、Open Ethereumを利用しているノードがイーサリアムネットワークに参加できない状況となっていた。

イーサリアムのような分散型プロトコルの場合、ネットワークに参加するためのクライアントが必要だ。GethやOpen Ethereumがその最たる例となっているが、ネットワークを構成するノードはこれらのクライアントを利用している。

そのため、クライアントのアップデートが発生した場合には、ノードはそれぞれそのアップデートに対応しなければならない。今回、対応が遅れた原因としては、Gethのアップデートが発生することがうまくノードに伝わっていなかった点が指摘されている。

これは非常に難しい問題ではあるものの、分散型ネットワークを維持するには避けては通れない問題だと言えるだろう。

タイトルとURLをコピーしました