今週、ハードウェアの信頼性についてこれを明示しようという取り組みについて紹介した。ではソフトウェアについてはどうか?ハードウェアに比べて製造元が非常に多く、細分化すれば個人のプログラマまで広がってしまう。
ソフトウェアがハードウェアの「機器添付品」だった時代は、ハードウェアの製造企業が個別にソフトウェアを開発していた。ハードウェアの標準化に伴って、ソフトウェアの個別開発を見直せるようになった。これによって、ソフトウェア開発の効率性は高まった。ソフトウェアは人類共通の資産だという考えも広がり、それまでは「自家薬籠中」の物だったソースコードが公開されるようになった。これがオープンソースソフトウェア(OSS)である。
すでにあるプログラムなら、わざわざ自分で開発する必要はない。OSSは急激に広まっていった。インターネット経済は、従来の垂直統合型の構造ではない。水平分業であって、多くの人が開発したソフトウェアやサービスが重層的になって動いている。言い方を変えると、
・従来型経済 Centralized System
・インターネット経済 Decentralized System
ということもできる。インターネット経済を支えているソフトウェア群の中には、明確な管理者がいないものも含まれている。例えば2021年末に、非常にポピュラーなOSSのひとつ「Apache Log4j」に重大な脆弱性が見つかり、これを利用している事業者が青ざめたことがある。
政府機関や重要インフラ事業者もこれを使っていたのだが、責任をとれる開発者がいない。これを契機に、ソフトウェアの信頼性をどう担保するかの議論が激しくなった。結論としては、今使われているソフトウェア、開発しているソフトウェアの管理台帳と脆弱性リストが必要だということになる。
<続く>