大日本印刷、アットマークテクノ、NXPセミコンダクターズジャパンは2016年10月26日、セキュアブートの仕組みを組み込んだIoT機器の開発を容易にするパッケージを開発したことを発表した。「組み込み用パッケージ」という名称で、2017年春から販売を始める。
IoT機器が増えつつある昨今、IoT機器への攻撃も増加していくと考えられる。しかし、IoT機器はパソコンなどと比べるとコンピュータリソースが少ないため、ファイアウォールなどのセキュリティ対策ソフトウェアを組み込む余裕がないことがほとんどだ。そこで、内閣サイバーセキュリティセンターは、機器とソフトウェアを開発する際に、前工程である企画、設計の段階からセキュリティ対策を織り込む「セキュリティ・バイ・デザイン」の考え方を提唱している。今回3社が開発したパッケージは、企画の段階からセキュリティ対策を織り込むことを可能にするものだ。
パッケージは、大日本印刷が開発したセキュアチップである「SAM(Secure Application Module)」と、NXP SemiconductorsのSoC「i.MX 7 Dual(コアはCortex-A7)」に、アットマークテクノが開発したIoT機器開発に向けたLinuxなどの各種ソフトウェアと設定ツール、SAMやSoCを基盤に実装するための回路図をセットにしたものだ。このパッケージを基にIoT機器を設計、開発することで、セキュアブートと暗号化通信の機能を持つIoT機器を比較的容易に開発できる。
セキュアブートは、機器の起動時にブートローダー、OSカーネル、ファイルシステムなどの電子署名を調べながら起動することで実現する。それぞれの電子署名をSAMに格納しておき、起動時にそれぞれ比較し、一致しなければ起動を停止する。OSなどが不正に書き換えられていたとしても、この仕組みが働くので、悪用はできない。
図 SAMを利用してセキュアブートと暗号化通信を実現する
出所 大日本印刷
SAMは内部に記録したデータを読み取ることが極めて困難な作りになっているので、SAMから電子署名を盗み出して悪用することも事実上不可能だ。万が一それができて、ほかのSAMに記録して起動させようとしても、起動しない。SAMには一意のIDが振ってあり、起動時にプロセッサがSAMのIDを調べて、変わっていることを検知したら起動しないようになっている。
SAMは暗号化通信に必要な鍵を保持しているだけでなく、暗号化のアルゴリズムを実行する機能も持っている。先に説明したようにSAMが保持するデータを外部から読み取ることはほぼ不可能なので、暗号化通信の鍵も事実上盗み出すことはできないようになっている。
さらに、暗号通信の鍵などの機密データを定期的に入れ替えたいという要望に応えるため、大日本印刷など3社は遠隔操作で暗号鍵や電子証明書を更新する機能の提供を予定している。