電車が止まる可能性も?実は深刻な「2038年問題」 社会インフラや家電など広範囲で影響大の恐れ
――コンピュータの時間問題というと「2000年問題」が思い浮かびます。世界中で大騒ぎとなり、日本でもさまざまな対策が行われましたが、結果的にあまり混乱は起きませんでした。「2038年問題」はどう違うのでしょうか。
2000年問題では、日付を扱うシステムが対象でした。そのため、影響を受けたのは「日付表示」だけだったとも言えます。ところが2038年問題は、「時間の経過」を表現するプログラムに影響します。
時間の経過は、ありとあらゆる制御に使われています。単純なところではカメラに搭載されているセルフタイマーです。例えば「10秒後にシャッターを切る」は、「今の時刻に10秒を加えた値になったらシャッターが作動する」というプログラムです。この時に、10秒後の時刻がマイナスになったら、このプログラムは正しく動かないかもしれません。
実は、約20年前の2004年1月11日に、2038年問題に関するトラブルが発生していました。この日、大手通信会社やSIerが手がけるプログラムで不具合が起き、複数のATMが止まりました。これは、UNIX時間がスタートした1970年1月1日と、UNIX時間が最大値を迎える2038年1月19日との中間のタイミング。ある時刻の中間を「2つの時刻を足して2で割る」ことで求めるプログラムにおいて、2004年1月11日以降、2つの時刻の合計値が32桁目に入ってしまったことや、システムが0.5秒単位の時刻を要したため、UNIX時間を2倍にして扱っていたことなどが原因でした。
なぜ、ATMに時刻の中間を求めるプログラム、または0.5秒単位の時刻を扱うプログラムが入っていたのかは不明ですが、意外なところでUNIX時間が使われていることが露呈した出来事です。2038年問題においても、どこに危険があるかわからない状態だといえます。
社会インフラの「息の長さ」が仇になる?!
――具体的にはどのような影響が出ると考えられますか。
私が最も危惧しているのは社会インフラです。鉄道などの交通インフラやエネルギープラント、各種工場には、多数の組み込み系・制御系システムが使われています。社会インフラが止まれば、最悪の場合、人の生命や財産に大きな影響を及ぼしかねませんが、これらのどこに2038年問題の影響を受けるシステムがあるか、正確に把握するのは相当難しいでしょう。
しかも、社会インフラのシステムは息が長いことが特徴です。鉄道のとある路線は、2018年の豪雨で停電した際、モニター復旧時にWindows 2000と映し出されたことで話題になりました。Windows 2000は2000年リリースなので、18年間も使い続けていたわけです。
無料会員登録はこちら
ログインはこちら