オープンソース使用の落とし穴 それ自身に小さな脆弱性も
いまやソフトウェアの開発において、コードが公開されている「オープンソース」の活用は欠かせない。自前でイチから作るよりも、圧倒的に安くスピーディーに開発でき、製品・サービスの市場投入を早めることができる。汎用的な部分は世に溢れるオープンソースを使い、技術のコアとなる部分だけは自前でコードを作り、それを組み上げてオリジナルとする。欧米では当たり前で、最近は日本でも広く行われている。今後、この流れが拡大していくのは確実だ。
▼しかしオープンソースにも弱点はある。それがセキュリティだ。誰でも自由に使え、たくさんの開発者がいるということは、磨かれて良い方向へ進化していく反面、悪意を持って脆弱性を狙っている輩もいる。そして、どんな完璧なソフトウェアにも脆弱性は必ず存在する。それを組み合わせて作るということは、完成品として表面的には脆弱性がなかったとしても、そこに使った各オープンソースまで見れば、小さな脆弱性が無数に存在する。開発者はオープンソースを使う際、その脆弱性とセキュリティまでキチンと把握し、管理・対応できている例は少ない。そこにオープンソースを利用する際の落とし穴がある。
▼だからオープンソースは危険で、自前で作るのが安全だというのは短絡的で早計だ。製品のライフサイクルが短く、他者との差別化が難しい時代に、オープンソースの活用はデメリットを補って余りあるだけの効果を生む。第4次産業革命やIoT、スマートファクトリーで、新しい時代の「生産」の形に注目が集まるが、実はその前行程である「開発・設計」も大変革期にある。自前主義から脱却し、オープンソースの有効利用と高付加価値化への注力を進めるためには、従来の開発・設計手法を見直し、新たな時代の最適な開発手法を見つけなければならない。付加価値の部分の多くをソフトウェアが握る時代、まずはその土台となるオープンソースの使い方、管理とコントロール手法の確立が大切だ。