(57)【要約】【課題】インターネット上での特定の機器との通信を各種のコンピュータウィルスや、遠隔攻撃などの不正アクセス手法から守り、通信の安全性を保つことができる組み込み機器を提供する。【解決手段】組み込み機器１は、互いに分離された実行環境として、他の装置と通信可能なノーマルワールド１１と、前記他の装置との通信が制限されるセキュアワールド２とを有する組み込みシステムを備える。他の装置とのＴＣＰ／ＩＰ通信をノーマルワールド１１にて行う。この通信における暗号に係る処理、例えば、ＳＳＬ／ＴＬＳ通信の処理をセキュアワールド２で行う。【選択図】図１
2018106455.tif 000002
【特許請求の範囲】
【請求項１】
互いに分離された実行環境として、他の装置と通信可能なノーマルワールドと、前記他の装置との通信が制限されるセキュアワールドとを有する組み込みシステムを備える組み込み機器であって、
前記他の装置とのＴＣＰ／ＩＰ通信を前記ノーマルワールドにて行い、前記通信における暗号に係る処理を前記セキュアワールドにて行うことを特徴とする組み込み機器。
【請求項２】
前記他の機器との前記通信の暗号に係る処理を行う前記セキュアワールド上のアプリケーションプログラムに対して、前記通信として、設定された特定の対向装置との通信であることが保証された前記通信のみが行なわれるように前記通信を監視する不正監視機能を備えることを特徴とする請求項１に記載の組み込み機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はインターネットを介して特定の機器と通信する組み込み機器に関する。
【背景技術】
【０００２】
各種家電や産業機械やデジタル機器等において、汎用のプロセッサを備えるＳｏＣとしての組み込みシステムが組み込まれ、プログラムで制御される組み込み機器が多用されている。また、組み込み機器は、ＩｏＴとして、各種装置とインターネットを介して通信を行うようになってきていいる。ＩｏＴでは、家電や産業用機械等の各種デバイスを制御する制御装置がインターネットに接続され、情報の入出力として例えばコマンドの入出力が可能となっており、デバイス同士が有機的に連携して動作することが可能となる。
【０００３】
しかし、あらゆるもの（デバイス）がインターネットに接続されることで、インターネット経由の攻撃にさらされることになり、各種デバイスが機能不全に陥ったり、多くのデバイスが操られて基幹システムを攻撃したりする虞がある。そこで、組み込み機器に組み込まれる組み込みシステムにおいてセキュリティを高めることが求められている。
【０００４】
例えば、ＳｏＣのチップに搭載されるＲＩＳＣ・ＣＰＵとしては、Ａｄｖａｎｃｅｄ  ＲＩＳＣ  Ｍａｃｈｉｎｅ（ＡＲＭ（登録商標））のアーキテクチャを採用したものが知られている。
【０００５】
このＳｏＣは、例えば、ＡＲＭアーキテクチャのトラストゾーン（ＴｒｕｓｔＺｏｎｅ（登録商標））対応チップである。トラストゾーンは、ＡＲＭ  Ｈｏｌｄｉｎｇｓ（登録商標）社によって開発された技術であり、アプリケーションを安全に実行することのできる信頼された環境を支援するプラットフォームを提供する。より詳細には、ＳｏＣは、実行環境として「ノーマルワールド」および「セキュアワールド」を含み、これらは、セキュア情報がセキュアワールドからノーマルワールドに漏れることを阻止するために互いから分離している。これらの２つのワールドは、同一の電子チップ上で互いに並行に動作する。このようなトラストゾーンを備えたＳｏＣを用いて、無線通信回線を介してインターネットに接続されたスマートフォンやタブレットを用いたオンライン取引における支払いのセキュリティを高める提案がなされている（例えば、特許文献１参照）。
【０００６】
特許文献１に記載されているように、セキュアワールドは、組み込み機器のメインオペレーティングシステムの立上げ時間前に、プレロードされ、妥当性が確認される。ノーマルワールドが、組み込み機器のメインオペレーティングシステムを運用し、セキュアワールドが、異なる（よりセキュアな）オペレーティングシステムを運用する。こうして、ノーマルワールドに存在するコンポーネントまたはアプリケーションの整合性を検証するために、セキュアワールドを使用することができる。
【０００７】
ノーマルワールドおよびセキュアワールドは、それぞれ、１つまたは複数のソフトウェア・アプリケーションを含むことがある。セキュアワールドに存在するソフトウェア・アプリケーションを、アプレットと称することもある。たとえば、アプリケーションがノーマルワールドに存在し、１つまたは複数のセキュア・アプレットがセキュアワールドに存在する。
【０００８】
セキュアワールドに存在するセキュア・アプレットは、セキュア・タスクを行うように構成されたプログラム・モジュールである。アプリケーションが、より低いレベルのセキュリティを有するノーマルワールドに存在するので、高いレベルのセキュリティを必要とするタスクが行われる必要がある場合は、アプリケーションは、セキュア・アプレットからの認証サービスまたは審査サービスを要求することもある。
【０００９】
以上のようにＡＲＭアーキテクチャのプロセッサに搭載されたトラストゾーン機能により、プロセッサ上の実行環境をセキュアワールドと、ノーマルワールドに分けることができる。不正なコードにより、ノーマルワールド上のプログラムがセキュアワールドのデータを直接参照・更新しようとすると，トラストゾーン機能により防御と検知が行われる。この際，ノーマルワールド上のプログラム一式をリロードすることができる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１６−１０６２９２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
ところで、組込みシステムの普及と、ＩｏＴの普及によりスマートフォン等の通信を前提とするデジタル機器だけではなく、今まで、インターネットに繋がれることなくスタンドアローンで動作していた様々なデバイス（組み込み機器）がインターネットを介して、例えば、特定の機器とデータ通信を行うことになる。
【００１２】
インターネット上で機器同士が安全な通信を行う場合は、ＳＳＬ／ＴＬＳなどの仕組みを用いて認証と暗号化を行うと同時に、コンピュータウィルス対策ソフトウェア、ファイアウォールソフトウェアなどによって不正アクセス対策を行う。しかし、通信を行う組み込み機器の通信デバイスドライバーソフトとＯＳがコンピュータウィルスあるいは不正アクセス手法によって改ざんされた場合は、コンピュータウィルス対策ソフトウェア、ファイアウォールに検知されることなく認証と暗号化で使われる鍵とデータが盗聴、改ざんされる可能性がある。そこで、上述の組み込みシステムの互いに分離されたノーマルワールドとセキュアワールドを用い、組み込み機器におけるデータ通信の安全性をさらに高める方法が求められている。
【００１３】
本発明は、前記事情に鑑みてなされたものであり、インターネット上での特定の機器との通信を各種のコンピュータウィルスや、遠隔攻撃などの不正アクセス手法から守り、通信の安全性を保つことができる組み込み機器を提供することを目的とする。
【課題を解決するための手段】
【００１４】
前記課題を解決するために、本発明の組み込み機器は、
互いに分離された実行環境として、他の装置と通信可能なノーマルワールドと、前記他の装置との通信が制限されるセキュアワールドとを有する組み込みシステムを備える組み込み機器であって、
前記他の装置とのＴＣＰ／ＩＰ通信を前記ノーマルワールドにて行い、前記通信における暗号に係る処理を前記セキュアワールドにて行うことを特徴とする。
【００１５】
このような構成によれば、他の装置と通信可能なノーマルワールドは、コンピュータウィルスや遠隔攻撃などの不正アクセスによって機能不全に陥る可能性がある。それに対して、他の装置やノーマルワールドからのアクセスが制限されたセキュアワールドが暗号に係る処理を行うので、他の装置からの不正アクセスや例えばコンピュータウィルスに感染したノーマルワールドからの不正アクセスにより暗号化されたデータや暗号化や復号化のための鍵を解読されたり改ざんされたり盗聴されたりするのを防止できる。
【００１６】
なお、ノーマルワールドおよびセキュアワールドは、例えば、ＡＲＭのトラストゾーンにおけるノーマルワールドとセキュアワールドである。また、ノーマルワールド上の通信処理により、他の装置とＴＣＰ／ＩＰ通信が行なわれる。すなわち、他の装置とプロトコルとして、ＴＣＰまたはＵＤＰとＩＰとを用いて、例えば、所謂インターネット通信やイントラネット通信が行なわれる。
【００１７】
また、セキュアワールドでは、アプリケーションプログラムにより、暗号に係る処理として、ノーマルワールドとの間で他の装置との通信データ等をノーマルワールドに対して、ＳＳＬ／ＴＬＳ通信等の暗号通信により暗号化された通信データとして送信し、他の装置からの上述の暗号通信による暗号化された通信データ等をノーマルワールドで受信してからセキュアワールドに送信する。また、ノーマルワールドとセキュアワールドとの直接的な通信は禁止されているので、例えば、共有メモリを用いて通信を行う。セキュアワールド上のアプリケーションプログラムでは、他の装置との通信における認証や、他の装置に送信するデータの暗号化や他の装置から受信するデータの復号化をセキュアワールドで記憶された暗号鍵を用いて行う。
【００１８】
本発明の前記構成において、前記他の機器との前記通信の暗号に係る処理を行う前記セキュアワールド上のアプリケーションプログラムに対して、前記通信として、設定された特定の対向装置との通信であることが保証された前記通信のみが行なわれるように前記通信を監視する不正監視機能を備えることが好ましい。
【００１９】
このような構成によれば、本発明の組み込み機器の通信相手が特定の対向装置（対向サーバ）に制限されるので、第３者による不正アクセスを防止することができる。例えば、組み込み機器を遠隔操作するような場合に通信相手を制限することで不正な外部操作を阻止することができる。
【発明の効果】
【００２０】
本発明の組み込み機器によれば、他の装置との暗号化通信を安全に行うことができる。
【図面の簡単な説明】
【００２１】
【図１】本実施の形態の組み込み機器と対向サーバとを説明するためのブロック図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施の形態を説明する。
図１に示すように、本実施の形態の組み込み機器１は、対向サーバ３１とＴＣＰ／ＩＰ通信を行うようになっている。
本実施の形態の組み込み機器１は、組み込みシステムとしてのマイクロプロセッサと各種インターフェースとメモリ等を備えるＳｏＣを有するものであり、この組み込みシステムが組み込み機器１を制御することになる。なお、組み込み機器１は、上述のＳｏＣにより制御されるデバイスであり、家電製品、オフィス機器、電子デバイス、産業用機械等のマイクロプロセッサを用いて制御されるデバイスで、インターネットを介して他の機器と通信可能な機器である。図１は、組み込み機器１の外部と通信可能な制御装置部分、すなわち、ＳｏＣとしての組み込みシステム部分を主に示すブロック図であり、制御される部分の図示を省略している。すなわち、本実施の形態の組み込み機器１は、組み込みシステム部分に特徴を有するものであり、組み込みシステムに制御される部分は、どのような装置であってもよく、上述の家電製品、オフィス機器、デジタル機器、産業用機械等の組み込みシステムで制御される各種装置である。
【００２３】
前記組み込み機器１の組み込みシステムは、ＡＲＭアーキテクチャを採用したもので、トラストゾーン機能を有するものとなっている。
上述のように組み込みシステムは、ノーマルワールド１１とセキュアワールド２との２つの実行環境を備え、ノーマルワールド１１でメインオペレーティングシステムが実行され、セキュアワールド２でメインオペレーティングシステムと異なるとともに、よりセキュアなオペレーティングシステムが実行される。
【００２４】
また、ノーマルワールド１１およびセキュアワールド２では、それぞれＲＡＭ等のメモリを独立して使用可能となっているが、セキュアワールド２およびノーマルワールド１１との両方からアクセス可能な共有メモリ１８が設けられ、この共有メモリ１８には、ノーマルワールド１１およびセキュアワールド２からそれぞれデータの読み書きが可能となっている。
【００２５】
ノーマルワールド１１は、例えば、特定の対向サーバ３１とＴＣＰ／ＩＰ通信を行う機能を備えている。ノーマルワールドには、ＴＣＰ・ＵＤＰとＩＰを利用する為のライブラリである第１ソケットライブラリ１２が記憶されている。また、ノーマルワールド１１には、セキュアワールド２の後述の第１アプリケーションプログラム３が共有メモリ１８を介してノーマルワールド１１の第１ソケットライブラリ１２を用いたＴＣＰ／ＩＰ通信を行う際に、共有メモリ１８を介して通信データを中継するソケット通信中継プログラム１３が実行可能に記憶されている。
【００２６】
セキュアワールド２には、他の装置である対向サーバ３１と上述のＴＣＰ／ＩＰ通信上でＳＳＬ／ＴＬＳ通信を行う機能を有する第１アプリケーションプログラム３が実行可能に記憶されている。また、セキュアワールド２には、暗号化通信としてＳＳＬ／ＴＬＳ通信を行うための第１暗号化通信ライブラリ４が記憶されている。
【００２７】
また、セキュアワールド２には、後述の対向サーバ３１の第２不正アクセス監視プログラム３５と協働して、特定の対向サーバ３１以外の装置が不正に組み込み機器１（セキュアワールド２）にアクセスするのを防止する第１不正アクセス監視プログラム５が実行可能に記憶されている。
【００２８】
対向サーバ３１は、プロセッサ、ＲＡＭ等のメモリやストレージを備えたコンピュータシステムであるが、具体的には、汎用コンピュータシステム、パソコン、スマートフォン、タブレット等であってもよいし、組み込み機器１と同様の装置であってもよい。
このような対向サーバ３１は、組み込み機器１と通信する他の装置であり、本実施の形態において組み込み機器１は、対向サーバ３１とだけ通信可能となっている。なお、組み込み機器１と対向サーバ３１とだけが通信可能となっている必要はなく、組み込み機器１が予め設定された複数の対向サーバ３１と通信可能となっていてもよいし、対向サーバ３１が予め設定された複数の組み込み機器１と通信可能となっていてもよい。組み込み機器１が複数の対向サーバ３１と通信可能とされる場合には、第１不正アクセス監視プログラム５において、通信可能な複数の対向サーバ３１に関する情報が必要である。
【００２９】
対向サーバ３１には、組み込み機器１とＴＣＰ／ＩＰ通信上でＳＳＬ／ＴＬＳ通信を行うために、通信機能を有する第２アプリケーションプログラム３２と、ＴＣＰ／ＩＰ通信のための第２ソケットライブラリ３３と、ＳＳＬ／ＴＬＳ通信のための第２暗号化通信ライブラリ３４とが実行可能に記憶されている。また、対向サーバ３１には、上述の組み込み機器１の第１不正アクセス監視プログラム５に対して特定の対向サーバ３１との通信を保証するための第２不正アクセス監視プログラム３５が実行可能に記憶されている。
【００３０】
このような組み込み機器１と対向サーバ３１とのインターネット通信について説明する。セキュアワールド２の第１アプリケーションプログラム３の通信用に第１暗号化通信ライブラリ４が共有メモリ１８を通じてノーマルワールド１１のソケット通信中継プログラム１３に指示し、第１ソケットライブラリ１２と対向サーバ３１の第２ソケットライブラリ３３を介して第２暗号化通信ライブラリ３４とＴＣＰコネクションを確立する。
【００３１】
ＴＣＰコネクションを確立後、セキュアワールド２の第１暗号化通信ライブラリ４は、ノーマルワールド１１のソケット通信中継プログラム１３と共有メモリ１８とを通じて連携することで対向サーバ３１の第２暗号化通信ライブラリ３４と通信を行う。セキュアワールド２の第１暗号化通信ライブラリ４と対向サーバ３１の第２暗号化通信ライブラリ３４は、予め設定された秘密鍵、あるいは公開鍵暗号方式などによって交換した共通鍵を用いることで、暗号化された認証メッセージを交換し、お互いを認証する。
【００３２】
組み込み機器１の第１アプリケーションプログラム３と対向サーバ３１の第２アプリケーションプログラム３２はそれぞれ、組み込み機器１の第１暗号化通信ライブラリ４と対向サーバ３１の第２暗号化通信ライブラリ３４と通信データをやりとりする。
【００３３】
セキュアワールド２の第１暗号化通信ライブラリ４と対向サーバ３１の第２暗号化通信ライブラリ３４は前もって決められた秘密鍵あるいは公開鍵暗号方式などによって交換した共通鍵を用いることで、通信データを暗号化・復号化し、共有メモリ１８とノーマルワールド１１のソケット通信中継プログラム１３と対向サーバ３１の第２ソケットライブラリ３３とを通じてインターネットでデータ通信を行う。
【００３４】
アプリケーション用（第１アプリケーションプログラム３および第２アプリケーションプログラム３２）のＴＣＰコネクション確立後にセキュアワールド２の第１不正アクセス監視プログラム５の通信用に第１暗号化通信ライブラリ４が共有メモリ１８を通じてソケット通信中継プログラム１３に指示し、第２暗号化通信ライブラリ３４と新たなＴＣＰコネクションを確立する。
【００３５】
ＴＣＰコネクション確立後に第１不正アクセス監視プログラム５と第２不正アクセス監視プログラム３５が一定期間ごとに決められた認証データをそれぞれ、第１暗号化通信ライブラリ４と第２暗号化通信ライブラリ３４を通じて暗号化・復号化しながら通信し、正当な相手と通信をしていることを確認する。第１不正アクセス監視プログラム５と第２不正アクセス監視プログラム３５との間で認証データが確認できない場合はアプリケーション用のＴＣＰコネクションを切断する。
アプリケーション用ＴＣＰコネクションが終了した時に、不正アクセス監視用のＴＣＰコネクションも終了させる。
【００３６】
以上のような組み込み機器においては、ノーマルワールド１１側で外部の装置とＴＣＰ／ＩＰ通信、すなわち、インターネット通信が可能になるが、対向サーバ３１とのインターネット通信上での暗号化通信であるＳＳＬ／ＴＬＳ通信がセキュアワールド２の第１アプリケーションプログラムにより行われる。この際に組み込み機器１側の認証および暗号化・復号化はセキュアワールド２で行われるので、暗号鍵、暗号化された通信データの盗聴、解読、改ざんを行うことが困難であり、組み込み機器１と対向サーバ３１との暗号化通信の安全性を高めることができる。但し、外部の悪意ある攻撃を完全に防ぐことは難しいので、本実施の形態では、組み込み機器１のセキュアワールド２の第１アプリケーションプログラム３と通信可能な外部の装置を予め設定した対向サーバ３１に制限し、組み込み機器１の第１不正アクセス監視プログラム５と対向サーバ３１の第２不正アクセス監視プログラム３５とが互いに認証している場合に組み込み機器１と対向サーバ３１と通信が許可されるので、対向サーバ３１以外の装置が組み込み機器１のセキュアワールドの第１アプリケーションプログラム３と通信することが困難になり、暗号化通信の安全性をさらに高めることができる。なお、暗号化通信は、ＳＳＬ／ＴＬＳに限られるものではなく、他の方法であってもよい。例えば、インターネット上の暗号化通信方式としては、ＤＴＬＳ（Ｄａｔａｇｒａｍ  Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ）を用いてもよいし、その他の方式を用いてもよいし、暗号化方式として独自のプロトコルを用いてもよい。
【符号の説明】
【００３７】
１    組み込み機器
２    セキュアワールド
５    第１不正アクセス監視プログラム（不正監視機能）
１１  ノーマルワールド
３１  対向サーバ（他の装置、特定の対向装置）
【図１】
2018106455.tif 000003