(57)【要約】【課題】デバイスのリモートログインのセキュリティ上の安全性を高めることができるセキュアエレメント、コンピュータプログラム、デバイス及びリモートログイン方法を提供する。【解決手段】セキュアエレメントは、デバイス本体に対するリモートログインを認証するための認証情報を記憶する記憶部と、秘匿通信路経由でデバイス本体に対するリモートログインの要求を取得する取得部と、リモートログインの要求を取得した場合、記憶部に記憶した認証情報に基づいて、リモートログインを許可するか否かを判定する判定部と、判定結果をデバイス本体に通知する通知部とを備える。【選択図】図１
2019023810.tif 000002
【特許請求の範囲】
【請求項１】
デバイス本体に対するリモートログインを認証するための認証情報を記憶する記憶部と、
秘匿通信路経由で前記デバイス本体に対するリモートログインの要求を取得する取得部と、
該取得部でリモートログインの要求を取得した場合、前記記憶部に記憶した認証情報に基づいて、前記リモートログインを許可するか否かを判定する判定部と、
該判定部での判定結果を前記デバイス本体に通知する通知部と
を備えるセキュアエレメント。
【請求項２】
前記通知部は、
前記判定部でリモートログインを許可すると判定した場合、前記デバイス本体に対するリモートアクセスが許可されたことを前記デバイス本体に通知する請求項１に記載のセキュアエレメント。
【請求項３】
前記判定部でリモートログインを許可すると判定した場合、前記秘匿通信路経由でリモートアクセスに係る通信を受信する受信部と、
該受信部で受信したリモートアクセスに係る通信を前記デバイス本体へ送出する送出部と
を備える請求項１又は請求項２に記載のセキュアエレメント。
【請求項４】
前記秘匿通信路経由で送受信するリモートアクセスに係る通信と、前記デバイス本体との間で授受するリモートアクセスに係る通信との間で通信プロトコルを変換する変換部を備える請求項１から請求項３のいずれか一項に記載のセキュアエレメント。
【請求項５】
前記デバイス本体の通常実行環境で実行される汎用ＯＳ又は汎用アプリケーションとの間でリモートアクセスに係る通信を処理する通信処理部を備える請求項１から請求項４のいずれか一項に記載のセキュアエレメント。
【請求項６】
前記デバイス本体の通常実行環境よりも安全なトラステッド実行環境で実行されるトラステッドＯＳ又はトラステッドアプリケーションとの間でリモートアクセスに係る通信を処理する通信処理部を備える請求項１から請求項５のいずれか一項に記載のセキュアエレメント。
【請求項７】
トラステッドＯＳ又はトラステッドアプリケーションを経由して汎用ＯＳ又は汎用アプリケーションとの間でリモートアクセスに係る通信を処理する通信処理部を備える請求項１から請求項６のいずれか一項に記載のセキュアエレメント。
【請求項８】
前記判定部でリモートログインを許可すると判定した場合、リモートアクセスに係る通信に用いる秘匿通信路を開設するための開設情報を生成する生成部と、
該生成部で生成した開設情報を前記デバイス本体及び該デバイス本体の通信先それぞれに通知する開設情報通知部と
を備える請求項１から請求項７のいずれか一項に記載のセキュアエレメント。
【請求項９】
前記デバイス本体に対するリモートアクセスに係る通信の全部又は一部を処理する通信処理部を備える請求項１から請求項８のいずれか一項に記載のセキュアエレメント。
【請求項１０】
前記秘匿通信路経由で認証情報を含む認証情報更新要求を取得する更新要求取得部と、
該更新要求取得部で認証情報更新要求を取得した場合、前記記憶部に記憶した認証情報を前記認証情報更新要求に含まれる認証情報で更新する更新部と
を備える請求項１から請求項９のいずれか一項に記載のセキュアエレメント。
【請求項１１】
コンピュータに、リモートログインを認証させるためのコンピュータプログラムであって、
コンピュータに、
秘匿通信路経由でデバイス本体に対するリモートログインの要求を取得する処理と、
リモートログインの要求を取得した場合、記憶部に記憶した認証情報に基づいて、前記リモートログインを許可するか否かを判定する処理と、
判定結果を前記デバイス本体に通知する処理と
を実行させるコンピュータプログラム。
【請求項１２】
請求項１から請求項１０のいずれか一項に記載のセキュアエレメントと、デバイス本体とを備えるデバイス。
【請求項１３】
リモートログイン方法であって、
セキュアエレメントは、
秘匿通信路経由でデバイス本体に対するリモートログインの要求を取得し、
リモートログインの要求を取得した場合、記憶部に記憶した認証情報に基づいて、前記リモートログインを許可するか否かを判定し、
判定結果を前記デバイス本体に通知するリモートログイン方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュアエレメント、コンピュータプログラム、デバイス及びリモートログイン方法に関する。
【背景技術】
【０００２】
ネットワーク技術の進展に伴って、インターネット等の通信回線を使って手元にある端末装置から遠隔地に存在する端末装置にアクセスするリモートアクセスが行われている。リモートアクセスは利便性に優れているものの、セキュリティ上の問題が徐々に顕在化している。
【０００３】
このような状況に対し、リモートアクセスに対するセキュリティ対策方法が開発されている。例えば、特許文献１には、リモート局にセキュアエレメントを組み込んでおき、管理局からリモート局にリモートアクセスする際に、管理局からセキュアエレメントに対してリモート局のＩＤを求める要求を送信し、セキュアエレメントがリモート局から署名されたＩＤ応答を受信し、受信したＩＤ応答を管理局へ送信するリモート局の認証方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２０１４−５０９１６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＩｏＴ（Internet of Things）では、多種多様なデバイスがネットワークに接続されることで新たな付加価値を生み出している。このようなＩｏＴデバイスは、特許文献１に記載のような端末装置（例えば、パーソナルコンピュータ）と異なり、（１）リッチな入出力装置がない、（２）物理的にアクセスが困難な場所に設置されることが多い等の特徴がある。このため、ＩｏＴデバイスの管理を行うためには、必然的にリモート管理を必要とする。
【０００６】
また、インターネットに接続されるＩｏＴデバイスが爆発的に増加することに鑑みれば、特許文献１のように、認証情報を個々のＩｏＴデバイスに設定する手法は、手間がかかるとともに製造コストが増加し実用的ではない。一方で、ＩｏＴデバイスに設定する認証情報を一定の初期値にすると、脆弱なリモートログイン手段を具備することになる。このため、ＩｏＴデバイスのリモートログインのセキュリティ上の安全性を高めることが望まれていた。
【０００７】
本発明は、斯かる事情に鑑みてなされたものであり、デバイスのリモートログインのセキュリティ上の安全性を高めることができるセキュアエレメント、コンピュータプログラム、デバイス及びリモートログイン方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の実施の形態に係るセキュアエレメントは、デバイス本体に対するリモートログインを認証するための認証情報を記憶する記憶部と、秘匿通信路経由で前記デバイス本体に対するリモートログインの要求を取得する取得部と、該取得部でリモートログインの要求を取得した場合、前記記憶部に記憶した認証情報に基づいて、前記リモートログインを許可するか否かを判定する判定部と、該判定部での判定結果を前記デバイス本体に通知する通知部とを備える。
【０００９】
本発明の実施の形態に係るコンピュータプログラムは、コンピュータに、リモートログインを認証させるためのコンピュータプログラムであって、コンピュータに、秘匿通信路経由でデバイス本体に対するリモートログインの要求を取得する処理と、リモートログインの要求を取得した場合、記憶部に記憶した認証情報に基づいて、前記リモートログインを許可するか否かを判定する処理と、判定結果を前記デバイス本体に通知する処理とを実行させる。
【００１０】
本発明の実施の形態に係るデバイスは、本発明の実施の形態に係るセキュアエレメントと、デバイス本体とを備える。
【００１１】
本発明の実施の形態に係るリモートログイン方法は、リモートログイン方法であって、セキュアエレメントは、秘匿通信路経由でデバイス本体に対するリモートログインの要求を取得し、リモートログインの要求を取得した場合、記憶部に記憶した認証情報に基づいて、前記リモートログインを許可するか否かを判定し、判定結果を前記デバイス本体に通知する。
【発明の効果】
【００１２】
本発明によれば、デバイスのリモートログインのセキュリティ上の安全性を高めることができる。
【図面の簡単な説明】
【００１３】
【図１】本実施の形態のリモートログイン認証システムの構成の一例を示すブロック図である。
【図２】本実施の形態のセキュアエレメントによるリモートログイン動作の一例を示す説明図である。
【図３】本実施の形態のデバイスによるセキュアエレメントを経由したＴＥＥに対するリモートアクセス動作の一例を示す説明図である。
【図４】本実施の形態のデバイスによるセキュアエレメントを経由したＲＥＥに対するリモートアクセス動作の一例を示す説明図である。
【図５】本実施の形態のデバイスによるセキュアエレメント及びＴＥＥを経由したＲＥＥに対するリモートアクセス動作の一例を示す説明図である。
【図６】本実施の形態のデバイスのＴＥＥによるリモートアクセス動作の一例を示す説明図である。
【図７】本実施の形態のデバイスのＲＥＥによるリモートアクセス動作の一例を示す説明図である。
【図８】本実施の形態のデバイスによるアクセス権情報ＤＢの更新動作の一例を示す説明図である。
【図９】本実施の形態のセキュアエレメントによるリモートログイン認証の処理手順の一例を示すフローチャートである。
【図１０】本実施の形態のデバイスによるＴＥＥに対するリモートアクセスの処理手順の一例を示すフローチャートである。
【図１１】本実施の形態のデバイスによるＲＥＥに対するリモートアクセスの処理手順の一例を示すフローチャートである。
【図１２】本実施の形態のセキュアエレメントによるリモートアクセス通信のためのセッション鍵生成の処理手順の一例を示すフローチャートである。
【図１３】本実施の形態のセキュアエレメントによるアクセス権情報ＤＢの更新の処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態を図面に基づいて説明する。図１は本実施の形態のリモートログイン認証システムの構成の一例を示すブロック図である。本実施の形態のリモートログイン認証システムは、セキュアエレメント５０が組み込まれたデバイス１００、及び管理用端末２００などを備える。デバイス１００は、「モノのインターネット」（ＩｏＴ）でいうところの「モノ」に該当するデバイス（ＩｏＴデバイス、電子デバイスとも称する）を含む。デバイス１００と管理用端末２００とは、イーサーネット、Ｗｉｆｉ、３Ｇ回線などの一般的なネットワーク回線７０を介して接続される。
【００１５】
デバイス１００は、セキュアエレメント５０の他に、デバイス本体１０を備える。デバイス本体１０とセキュアエレメント５０との間は、Ｉ２Ｃ（Inter-Integrated Circuit）、ＳＰＩ（Serial Peripheral Interface）等の通信路４５で物理的に接続されている。なお、セキュアエレメント５０は、ＵＩＣＣ（Universal Integrated Circuit Card）のように着脱可能な構成とすることもできる。
【００１６】
デバイス本体１０の大部分は、単一のＳｏＣ（System on a Chip）で構成され、一個の半導体チップ上にシステムの動作に必要な機能（例えば、ＣＰＵ４１、不図示のメモリなどを含む）の多く、あるいは全ての機能を一体化して実装している。
【００１７】
デバイス本体１０は、例えば、ＴｒｕｓｔＺｏｎｅ（登録商標）と称される技術を用いることによって、ソフトウェア（ＯＳ、アプリケーションなど）の実行環境をＲＥＥ（Rich Execution Environment）２０（通常実行環境、ノーマルワールドとも称する）と、ＴＥＥ（Trusted Execution Environment）３０（トラステッド実行環境、セキュアワールドとも称する）との二つに分けている。ＲＥＥ２０とＴＥＥ３０との間では、メモリ空間、入出力装置などが分離されている。
【００１８】
ＲＥＥ２０は、広く一般的に利用されているＯＳの実行環境であり、ＴＥＥ３０へのアクセスが制限される以外、特段の機能制約がない実行環境である。
【００１９】
ＴＥＥ３０は、セキュリティ機能を隔離する目的で、同一のＳｏＣ上でＲＥＥ２０とは別に提供される独立した実行環境である。ＴＥＥ３０は、ＲＥＥ２０からのアクセスが制限されており、実行可能な機能も限定されている。なお、ＴＥＥ３０の如くＴＥＥという称呼は、ＲＥＥ２０と分離され、セキュリティ上より安全な実行環境であれば、どのような称呼の実行環境であってもよい。
【００２０】
セキュリティ上保護すべきソフトウェア及びデータをＴＥＥ３０に配置するとともに、ＲＥＥ２０及びデバイス１００の外部からのアクセスを制限することによって、デバイス１００のセキュリティを確保することができる。なお、ＴＥＥは、ＴｒｕｓｔＺｏｎｅの設計思想に基づく仕様を表す用語としても用いられる。
【００２１】
上述のように、ＲＥＥ２０からＴＥＥ実行環境３０にはアクセスできないように制限されるので、ＲＥＥ２０からはＴＥＥ３０の存在を認識することはできない。ＲＥＥ２０からＴＥＥ３０で実行する処理を呼び出すためには、例えば、不図示のセキュアモニタなどを経由しなければならない。
【００２２】
ＲＥＥ２０では、汎用ＯＳとしてのリッチＯＳ２１、ＲＥＥ側リモート管理アプリケーション２２、汎用アプリケーションとしてのクライアントアプリケーション２３などを実行することができる。リッチＯＳ２１は、秘匿通信路通信処理部２１１の機能を備える。
【００２３】
リッチＯＳ２１は、ＲＥＥ２０においてＯＳの機能を果たすソフトウェアである。リッチＯＳ２１は、クライアントアプリケーション２３からの要求に応じ、デバイス１００に接続されたハードウェア（入出力装置）の制御等を含む各種ＯＳ機能を提供する。リッチＯＳ２１は、後述のトラステッドアプリケーション３４を利用するためのインタフェースとして機能することもできる。
【００２４】
秘匿通信路通信処理部２１１は、リッチＯＳ２１内に具備した秘匿通信路通信処理を行うモジュールである。秘匿通信路通信処理には、例えば、ＯｐｅｎＳＳＬ（Secure Sockets Layer）のようなＴＬＳ（Transport Layer Security）プロトコルスタックなどが含まれる。
【００２５】
ＲＥＥ側リモート管理アプリケーション２２は、ＲＥＥ２０側に配置され、ＲＥＥ２０外からの通信によりＲＥＥ２０内を管理するためのアプリケーションである。
【００２６】
クライアントアプリケーション２３は、リッチＯＳ２１上で動作するアプリケーションである。なお、図１では、便宜上、一つのクライアントアプリケーション２３を図示しているが、クライアントアプリケーション２３の数は複数でもよい。
【００２７】
ＴＥＥ３０では、トラステッドＯＳ３１、ＲＥＥ管理用トラステッドアプリケーション３２、ＴＥＥ管理用トラステッドアプリケーション３３、トラステッドアプリケーション３４などを実行することができる。トラステッドＯＳ３１は、秘匿通信路通信処理部３１１の機能を備える。
【００２８】
トラステッドＯＳ３１は、ＴＥＥ３０においてＯＳの機能を果たすソフトウェアである。トラステッドＯＳ３１は、トラステッドアプリケーション３４からの要求に応じて、セキュリティ機能を中心としたＯＳ機能を提供する。また、トラステッドＯＳ３１は、ＲＥＥ２０とＴＥＥ３０との通信（例えば、ＲＥＥ２０からの機能実行要求又はデータの授受など）を行うためのインタフェース機能を有し、ＲＥＥ２０（クライアントアプリケーション２３）とトラステッドアプリケーション３４との間の通信路としても機能する。
【００２９】
秘匿通信路通信処理部３１１は、トラステッドＯＳ３１内に具備した秘匿通信路通信処理を行うモジュールである。秘匿通信路通信処理には、例えば、ＴＥＥ  Socket  ＡＰＩのようなＴＬＳ通信可能なＡＰＩモジュールなどが含まれる。
【００３０】
ＲＥＥ管理用トラステッドアプリケーション３２は、ＴＥＥ３０からＲＥＥ２０を管理するためのアプリケーションである。ＲＥＥ管理用トラステッドアプリケーション３２は、ＲＥＥ側リモート管理アプリケーション２２と接続することによって、ＴＥＥ３０側からＲＥＥ２０の管理を行うことができる。
【００３１】
ＴＥＥ管理用トラステッドアプリケーション３３は、ＴＥＥ３０内の管理を行うためのアプリケーションである。ＴＥＥ管理用トラステッドアプリケーション３３は、セキュアエレメント５０経由でＴＥＥ３０内の管理を行うことができる。
【００３２】
トラステッドアプリケーション３４は、トラステッドＯＳ３１上で動作するアプリケーションである。トラステッドアプリケーション３４は、セキュリティ上の保護が必要な機能（例えば、鍵管理、暗号演算など）を実装することができる。なお、図１では、便宜上、一つのトラステッドアプリケーション３４を図示しているが、トラステッドアプリケーション３４の数は複数でもよい。
【００３３】
ネットワーク通信部４２は、デバイス１００をネットワークに接続する機能を有し、ネットワーク上のサービスサーバ（不図示）との間で情報の送受信を行うことができる。ネットワーク通信部４２は、不図示のセンサ類で検出した情報をサービスサーバ（不図示）に送信することができる。
【００３４】
セキュアエレメント５０は、リモートログイン認証処理部５１、秘匿通信路通信処理部５２、アクセス権情報ＤＢ５３、リモートアクセス通信処理部５４、セッション鍵生成処理部５５、プロトコル変換処理部５６などを備える。
【００３５】
アクセス権情報ＤＢ５３は、記憶部としての機能を有し、管理用端末２００からのデバイス本体に対するリモートログインを認証するための認証情報を記憶する。認証情報は、例えば、ログインＩＤ及びパスワードとすることができる。すなわち、アクセス権情報ＤＢ５３は、デバイス本体１０（又はデバイス１００）へのアクセス権を確認するための秘密情報を格納しているデータベースである。なお、認証アルゴリズムは適宜決定することができる。アクセス権情報ＤＢ５３は、セキュリティポリシーに基づいて、ユーザ名（ログインＩＤ）、パスワード、公開鍵認証などのリモートログイン認証に使用する秘密情報を適宜格納することができる。
【００３６】
秘匿通信路通信処理部５２は、セキュアエレメント５０と管理用端末２００との間で独立した秘匿通信路６１を開設する。秘匿通信路６１は、例えば、ＨＴＴＰＳ（ＨＴＴＰ  Over  ＴＬＳ）とすることができるが、これに限定されない。秘匿通信路通信処理部５２は、ＴＬＳの暗号化及び復号、ＨＴＴＰ（Hypertext Transfer Protocol）メッセージの解釈などの処理を行う。
【００３７】
秘匿通信路通信処理部５２は、取得部としての機能を有し、秘匿通信路６１経由でデバイス本体１０に対するリモートログインの要求を取得する。リモートログインの要求は、例えば、管理用端末２００が送信した要求を取得することができる。リモートログインの要求には、リモートログインの認証のための認証情報（例えば、ログインＩＤ及びパスワード）を含めることができる。セキュアエレメント５０と管理用端末２００との間は、秘匿通信路６１が開設されている。これにより、管理用端末２００からリモートログインの要求を取得する際に、認証情報の改ざんの防止、あるいは取得の妨害を回避することができる。
【００３８】
リモートログイン認証処理部５１は、判定部としての機能を有し、秘匿通信路通信処理部５２でリモートログインの要求を取得した場合、アクセス権情報ＤＢ５３に記憶した認証情報に基づいて、リモートログインを許可するか否かを判定する。リモートログインを許可するか否かの判定は、例えば、リモートログインの要求に含まれる認証情報とアクセス権情報ＤＢ５３に記憶した認証情報とが一致するか否かに応じて行うことができる。
【００３９】
リモートログイン認証処理部５１は、通知部としての機能を有し、リモートログインの認証結果をデバイス本体１０に通知する。例えば、リモートログイン認証処理部５１は、管理用端末２００からのリモートログインの要求が認証された場合、認証された旨をデバイス本体１０に通知することができる。また、リモートログイン認証処理部５１は、管理用端末２００からのリモートログインの要求が認証されなかった場合、認証されなかった旨をデバイス本体１０に通知してもよく、あるいは何も通知しなくてもよい。
【００４０】
上述の構成により、リモートログインの認証処理を、セキュアエレメント５０内のアクセス権情報ＤＢ５３に記憶した認証情報を用い、且つセキュアエレメント５０内部で実施するので、リモートログインのセキュリティ上の安全性を高めることができる。また、認証情報をデバイス１００側（デバイス本体１０）に記憶するのではなくセキュアエレメント５０内に保持することにより、デバイス個々の認証情報の個別化をセキュアエレメント５０に対してのみ行えばよく、デバイス１００側（デバイス本体１０）で認証情報の個別化を考慮する必要がなく、デバイス本体１０の認証情報の個別化に係る製造コストを削減することができる。
【００４１】
リモートログイン認証処理部５１は、リモートログインを許可すると判定した場合、デバイス本体１０に対するリモートアクセスが許可されたことをデバイス本体１０に通知する。これにより、リモートログインに続くリモートアクセスを行うことができる。
【００４２】
秘匿通信路通信処理部５２は、受信部としての機能を有し、リモートログイン認証処理部５１でリモートログインを許可すると判定した場合、秘匿通信路６１経由でリモートアクセスに係る通信を受信する。秘匿通信路通信処理部５２は、例えば、管理用端末２００が送信したリモートアクセスに係る通信を受信することができる。
【００４３】
リモートアクセス通信処理部５４は、通信処理部及び送出部としての機能を有し、秘匿通信路通信処理部５２で受信したリモートアクセスに係る通信をデバイス本体１０へ送出（転送）する。また、リモートアクセス通信処理部５４は、デバイス本体１０から取得したリモートアクセスに係る通信を秘匿通信路通信処理部５２へ送出する。この場合、秘匿通信路通信処理部５２は、リモートアクセス通信処理部５４からのリモートアクセスに係る通信を取得し、秘匿通信路６１経由で管理用端末２００へ送信する。
【００４４】
上述の構成により、管理用端末２００が送信したリモートアクセスに係る通信をデバイス本体１０が取得することができ、管理用端末２００とデバイス本体１０とがリモートアクセスに係る通信を行うことができる。
【００４５】
プロトコル変換処理部５６は、変換部としての機能を有し、秘匿通信路６１経由で送受信するリモートアクセスに係る通信と、デバイス本体１０との間で授受するリモートアクセスに係る通信との間で通信プロトコルを変換する。すなわち、プロトコル変換処理部５６は、管理用端末２００とセキュアエレメント５０との間の通信と、セキュアエレメント５０とデバイス本体１０との間の通信との間の通信プロトコルを変換する。
【００４６】
プロトコル変換は、例えば、テキスト・バイナリ変換とすることができる。例えば、セキュアエレメント５０と管理用端末２００との間の通信がＨＴＴＰの場合、ＨＴＴＰボディで授受される内容はテキストベースである。この場合、管理用端末２００は、バイナリコードをAscii文字列化してセキュアエレメント５０へ送信し、セキュアエレメント５０内においてAscii文字列をバイナリコードに変換してデバイス本体１０へ出力することができる。なお、プロトコル変換は、テキスト・バイナリ変換に限定されない。
【００４７】
これにより、デバイス本体１０が用いる通信プロトコルが、外部の管理用端末２００が用いる通信プロトコルに対応していない場合でも、セキュアエレメント５０が通信プロトコルを変換する機能を備えることにより、管理用端末２００とデバイス本体１０とがリモートアクセスに係る通信を行うことができる。
【００４８】
セッション鍵生成処理部５５は、生成部としての機能を有し、リモートログイン認証処理部５１でリモートログインを許可すると判定した場合、リモートアクセスに係る通信に用いる秘匿通信路を開設するための開設情報を生成する。開設情報は、例えば、一時的なセッション鍵とすることができる。
【００４９】
セッション鍵生成処理部５５は、開設情報通知部としての機能を有し、生成したセッション鍵をデバイス本体１０及び管理用端末２００に通知する。
【００５０】
上述の構成により、デバイス本体１０と管理用端末２００との間の秘匿通信路６１とは別の秘匿通信路を開設する時の鍵を一時的なものとすることによって、セキュアエレメント５０を介さない従来のリモートアクセスよりもセキュリティ上強固なリモートアクセスを実現することができる。また、リモートアクセスに係る通信がセキュアエレメント５０の処理能力を上回る場合でも、デバイス本体１０と管理用端末２００との間の秘匿通信路を利用してリモートアクセスに係る通信を行うことができる。
【００５１】
セキュアエレメント５０は、耐タンパ性を有する。セキュアエレメント５０の機能（例えば、リモートログイン認証処理部５１、秘匿通信路通信処理部５２、アクセス権情報ＤＢ５３、リモートアクセス通信処理部５４、セッション鍵生成処理部５５、プロトコル変換処理部５６）をハードウェアのモジュールで実現する場合、耐タンパ性を有するためには、セキュアエレメント５０を１チップ化にしてもよく、あるいは、モジュール表面をコーティングしてもよい。また、セキュアエレメント５０の機能をソフトウェアのモジュールで実現する場合、耐タンパ性を有するためには、実行コードを暗号化し、実行時に必要な部分だけをメモリ上で復号するようにすればよい。
【００５２】
次に、本実施の形態のリモートログイン認証システムの動作について説明する。以下では、セキュアエレメント５０によるリモートログイン動作、セキュアエレメント５０を経由したＴＥＥ３０に対するリモートアクセス動作、セキュアエレメント５０を経由したＲＥＥ２０に対するリモートアクセス動作、セキュアエレメント５０及びＴＥＥ３０を経由したＲＥＥ２０に対するリモートアクセス動作、ＴＥＥ３０によるリモートアクセス動作、ＲＥＥ２０によるリモートアクセス動作、アクセス権情報ＤＢ５３の更新動作について説明する。
【００５３】
図２は本実施の形態のセキュアエレメント５０によるリモートログイン動作の一例を示す説明図である。以下、符号Ｐ１〜Ｐ７で示す処理について説明する。
【００５４】
Ｐ１（秘匿通信路開設要求）：管理用端末２００は、デバイス１００内のセキュアエレメント５０に対して、秘匿通信路６１の開設を要求する。セキュアエレメント５０が自ら物理的な通信手段（ＬＡＮ又はＷｉｆｉなど）を有する場合、秘匿通信路６１の確立を独力で行うことができるが、通信手段を有さない場合には、デバイス本体１０の物理的な通信手段を用いることができる。
【００５５】
Ｐ２（リモートログイン要求）：管理用端末２００は、開設された秘匿通信路６１を経由して、セキュアエレメント５０に対し、リモートログイン要求を送信する。この場合、アクセス権情報ＤＢ５３においてアクセス権を認証可能な認証情報もリモートログイン要求とともに送信される。認証情報は、例えば、ログインＩＤ及びパスワードとすることができる。
【００５６】
Ｐ３（リモートログイン認証依頼）：秘匿通信路通信処理部５２は、取得した通信がリモートログイン要求であることを確認すると、取得した認証情報をリモートログイン認証処理部５１に転送し、リモートログイン認証を依頼する。
【００５７】
Ｐ４（アクセス権認証）：リモートログイン認証処理部５１は、アクセス権情報ＤＢ５３を参照し、取得した認証情報によるリモートログインの可否を判定する。具体的には、リモートログイン認証処理部５１は、取得したログインＩＤがアクセス権情報ＤＢ５３に存在すること、及び当該ログインＩＤに設定されているパスワードが、取得したパスワードと一致していることを確認する。
【００５８】
Ｐ５（認証結果通知）：リモートログイン認証処理部５１は、認証結果を秘匿通信路通信処理部５２に通知する。
【００５９】
Ｐ６（管理用端末２００への認証結果通知）：秘匿通信路通信処理部５２は、秘匿通信路６１経由で認証結果を管理用端末２００に通知する。リモートログインが拒否された場合は、拒否された旨を管理用端末２００に通知して処理を終了する。この場合、管理用端末２００によるデバイス１００へのリモートログインは許可されない。
【００６０】
Ｐ７（リモートログイン許可の通知）：リモートログインが許可された場合、リモートログイン認証処理部５１は、デバイス本体１０に対し、管理用端末２００によるリモートログインを許可する旨、及びリモートログインに続くリモートアクセスを許可する旨を通知する。なお、デバイス本体１０での通知先は、デバイス１００（デバイス本体１０）のセキュリティポリシー等に基づいて適宜決定することができる。例えば、許可する旨を、ＴＥＥ管理用トラステッドアプリケーション３３及びＲＥＥ側リモート管理アプリケーション２２に通知することができる。
【００６１】
次に、リモートログインに認証が行われた後に続くリモートアクセスについて説明する。
【００６２】
図３は本実施の形態のデバイス１００によるセキュアエレメント５０を経由したＴＥＥ３０に対するリモートアクセス動作の一例を示す説明図である。以下、符号Ｐ１１〜Ｐ２０で示す処理について説明する。
【００６３】
Ｐ１１（ＴＥＥ操作要求の送信）：管理用端末２００は、秘匿通信路６１を経由して、セキュアエレメント５０側の秘匿通信路通信処理部５２に対して、ＴＥＥ３０に対する操作内容を含むＴＥＥ操作要求を送信する。
【００６４】
Ｐ１２（リモートログイン許可の確認）：秘匿通信路通信処理部５２は、ＴＥＥ操作要求を受信すると、当該管理用端末２００がリモートログインを許可されているか否かをリモートログイン認証処理部５１に確認する。なお、ここでは、図２に例示した動作によってリモートログインを許可されているとする。
【００６５】
Ｐ１３（リモートアクセス通信処理部５４への通知）：秘匿通信路通信処理部５２は、リモートログインが許可されている場合、受信したＴＥＥ操作要求をリモートアクセス通信処理部５４に通知する。
【００６６】
Ｐ１４（受信内容のプロトコル変換）：リモートアクセス通信処理部５４は、取得したＴＥＥ操作要求のプロトコルを検証し、プロトコル変換が必要な場合、プロトコル変換処理部５６に対してプロトコル変換を依頼する。プロトコル変換処理部５６は、必要な変換を行う。プロトコル変換が必要でない場合、プロトコル変換処理部５６は、変換処理を行わない。
【００６７】
Ｐ１５（ＴＥＥ管理用トラステッドアプリケーション３３への配信）：プロトコル変換処理部５６は、プロトコル変換後のＴＥＥ操作要求をＴＥＥ管理用トラステッドアプリケーション３３に配信する。
【００６８】
Ｐ１６（ＴＥＥ操作）：ＴＥＥ管理用トラステッドアプリケーション３３は、受信したＴＥＥ操作要求に基づいてＴＥＥの操作を行う。ＴＥＥの操作は、例えば、トラステッドメモリ（不図示）に対する鍵の登録、削除又は更新、トラステッドアプリケーション３４のインストール（追加）又は削除などを含む。
【００６９】
Ｐ１７（操作結果の返信）：ＴＥＥ管理用トラステッドアプリケーション３３は、ＴＥＥ操作結果（例えば、正常終了、エラー終了など）をプロトコル変換処理部５６へ返信する。
【００７０】
Ｐ１８（プロトコル変換）：プロトコル変換処理部５６は、ＴＥＥ操作結果に対し、Ｐ１４で実施した変換と逆の変換を行い、管理用端末２００が解釈可能な通信内容に変換する。特に変換が不要な場合、プロトコル変換処理部５６は、変換処理を行わない。プロトコル変換処理部５６は、必要な変換を行った後、変換後のＴＥＥ操作結果をリモートアクセス通信処理部５４に返信する。
【００７１】
Ｐ１９（管理処理結果の返信）：リモートアクセス通信処理部５４は、取得したＴＥＥ操作結果を秘匿通信路通信処理部５２に返信し、管理用端末２００への返信を依頼する。
【００７２】
Ｐ２０（ＴＥＥ操作要求結果の返信）：秘匿通信路通信処理部５２は、取得したＴＥＥ操作結果を秘匿通信路６１経由で管理用端末２００に返信する。
【００７３】
図４は本実施の形態のデバイス１００によるセキュアエレメント５０を経由したＲＥＥ２０に対するリモートアクセス動作の一例を示す説明図である。以下、符号Ｐ３１〜Ｐ４０で示す処理について説明する。
【００７４】
Ｐ３１（ＲＥＥ操作要求の送信）：管理用端末２００は、秘匿通信路６１を経由して、セキュアエレメント５０側の秘匿通信路通信処理部５２に対して、ＲＥＥ２０に対する操作内容を含むＲＥＥ操作要求を送信する。
【００７５】
Ｐ３２（リモートログイン許可の確認）：秘匿通信路通信処理部５２は、ＲＥＥ操作要求を受信すると、当該管理用端末２００がリモートログインを許可されているか否かをリモートログイン認証処理部５１に確認する。なお、ここでは、図２に例示した動作によってリモートログインを許可されているとする。
【００７６】
Ｐ３３（リモートアクセス通信処理部５４への通知）：秘匿通信路通信処理部５２は、リモートログインが許可されている場合、受信したＲＥＥ操作要求をリモートアクセス通信処理部５４に通知する。
【００７７】
Ｐ３４（受信内容のプロトコル変換）：リモートアクセス通信処理部５４は、取得したＲＥＥ操作要求のプロトコルを検証し、プロトコル変換が必要な場合、プロトコル変換処理部５６に対してプロトコル変換を依頼する。プロトコル変換処理部５６は、必要な変換を行う。プロトコル変換が必要でない場合、プロトコル変換処理部５６は、変換処理を行わない。
【００７８】
Ｐ３５（ＲＥＥ側リモート管理アプリケーション２２への配信）：プロトコル変換処理部５６は、プロトコル変換後のＲＥＥ操作要求をＲＥＥ側リモート管理アプリケーション２２に配信する。
【００７９】
Ｐ３６（ＲＥＥ操作）：ＲＥＥ側リモート管理アプリケーション２２は、受信したＲＥＥ操作要求に基づいてＲＥＥの操作を行う。ＲＥＥの操作は、例えば、クライアントアプリケーション２３のインストール（追加）又は削除、ファイルの追加又は削除、コンフィグレーションの変更などのリモート操作等を含む。
【００８０】
Ｐ３７（操作結果の返信）：ＲＥＥ側リモート管理アプリケーション２２は、ＲＥＥ操作結果（例えば、正常終了、エラー終了、出力メッセージなど）をプロトコル変換処理部５６へ返信する。
【００８１】
Ｐ３８（プロトコル変換）：プロトコル変換処理部５６は、ＲＥＥ操作結果に対し、Ｐ３４で実施した変換と逆の変換を行い、管理用端末２００が解釈可能な通信内容に変換する。特に変換が不要な場合、プロトコル変換処理部５６は、変換処理を行わない。プロトコル変換処理部５６は、必要な変換を行った後、変換後のＲＥＥ操作結果をリモートアクセス通信処理部５４に返信する。
【００８２】
Ｐ３９（管理処理結果の返信）：リモートアクセス通信処理部５４は、取得したＲＥＥ操作結果を秘匿通信路通信処理部５２に返信し、管理用端末２００への返信を依頼する。
【００８３】
Ｐ４０（ＲＥＥ操作要求結果の返信）：秘匿通信路通信処理部５２は、取得したＲＥＥ操作結果を秘匿通信路６１経由で管理用端末２００に返信する。
【００８４】
図５本実施の形態のデバイス１００によるセキュアエレメント５０及びＴＥＥ３０を経由したＲＥＥ２０に対するリモートアクセス動作の一例を示す説明図である。以下、符号Ｐ５１〜Ｐ６２で示す処理について説明する。
【００８５】
Ｐ５１（ＲＥＥ操作要求の送信）：管理用端末２００は、秘匿通信路６１を経由して、セキュアエレメント５０側の秘匿通信路通信処理部５２に対して、ＲＥＥ２０に対する操作内容を含むＲＥＥ操作要求を送信する。
【００８６】
Ｐ５２（リモートログイン許可の確認）：秘匿通信路通信処理部５２は、ＲＥＥ操作要求を受信すると、当該管理用端末２００がリモートログインを許可されているか否かをリモートログイン認証処理部５１に確認する。なお、ここでは、図２に例示した動作によってリモートログインを許可されているとする。
【００８７】
Ｐ５３（リモートアクセス通信処理部５４への通知）：秘匿通信路通信処理部５２は、リモートログインが許可されている場合、受信したＲＥＥ操作要求をリモートアクセス通信処理部５４に通知する。
【００８８】
Ｐ５４（受信内容のプロトコル変換）：リモートアクセス通信処理部５４は、取得したＲＥＥ操作要求のプロトコルを検証し、プロトコル変換が必要な場合、プロトコル変換処理部５６に対してプロトコル変換を依頼する。プロトコル変換処理部５６は、必要な変換を行う。プロトコル変換が必要でない場合、プロトコル変換処理部５６は、変換処理を行わない。
【００８９】
Ｐ５５（ＲＥＥ管理用トラステッドアプリケーション３２への配信）：プロトコル変換処理部５６は、プロトコル変換後のＲＥＥ操作要求をＲＥＥ管理用トラステッドアプリケーション３２に配信する。
【００９０】
Ｐ５６（ＲＥＥ側リモート管理アプリケーション２２への配信）：ＲＥＥ管理用トラステッドアプリケーション３２は、取得したＲＥＥ操作要求をＲＥＥ側リモート管理アプリケーション２２に配信する。この場合、ＲＥＥ管理用トラステッドアプリケーション３２は、ＴＥＥ３０のセキュリティ機能を利用したセキュリティの確保（例えば、公開鍵による復号処理）、セキュアエレメント５０では処理負荷の大きいプロトコル変換などのＲＥＥ操作に対する所要の処理を行うことができる。これにより、セキュリティレベルの向上、セキュアエレメント５０での処理の補完などを行うことができる。
【００９１】
Ｐ５７（ＲＥＥ操作）：ＲＥＥ側リモート管理アプリケーション２２は、受信したＲＥＥ操作要求に基づいてＲＥＥの操作を行う。ＲＥＥの操作は、例えば、クライアントアプリケーション２３のインストール（追加）又は削除、ファイルの追加又は削除、コンフィグレーションの変更などのリモート操作等を含む。
【００９２】
Ｐ５８（操作結果の返信）：ＲＥＥ側リモート管理アプリケーション２２は、ＲＥＥ操作結果（例えば、正常終了、エラー終了、出力メッセージなど）をＲＥＥ管理用トラステッドアプリケーション３２に返信する。
【００９３】
Ｐ５９（操作結果の返信）：ＲＥＥ管理用トラステッドアプリケーション３２は、取得したＲＥＥ操作結果をプロトコル変換処理部５６に返信する。
【００９４】
Ｐ６０（プロトコル変換）：プロトコル変換処理部５６は、ＲＥＥ操作結果に対し、Ｐ５４で実施した変換と逆の変換を行い、管理用端末２００が解釈可能な通信内容に変換する。特に変換が不要な場合、プロトコル変換処理部５６は、変換処理を行わない。プロトコル変換処理部５６は、必要な変換を行った後、変換後のＲＥＥ操作結果をリモートアクセス通信処理部５４に返信する。
【００９５】
Ｐ６１（管理処理結果の返信）：リモートアクセス通信処理部５４は、取得したＲＥＥ操作結果を秘匿通信路通信処理部５２に返信し、管理用端末２００への返信を依頼する。
【００９６】
Ｐ６２（ＲＥＥ操作要求結果の返信）：秘匿通信路通信処理部５２は、取得したＲＥＥ操作結果を秘匿通信路６１経由で管理用端末２００に返信する。
【００９７】
図６は本実施の形態のデバイス１００のＴＥＥ３０によるリモートアクセス動作の一例を示す説明図である。以下、符号Ｐ７１〜Ｐ７７で示す処理について説明する。
【００９８】
Ｐ７１（ＴＥＥリモートアクセス開始要求）：管理用端末２００は、秘匿通信路６１を経由して、セキュアエレメント５０側の秘匿通信路通信処理部５２に対して、ＴＥＥ３０に対するリモートアクセス通信開始要求を送信する。
【００９９】
Ｐ７２（セッション鍵生成依頼）：秘匿通信路通信処理部５２は、リモートアクセス通信開始要求を取得すると、セッション鍵生成処理部５５に対し、セッション鍵の生成を依頼する。
【０１００】
Ｐ７３（セッション鍵の生成）：セッション鍵生成処理部５５は、当該リモートアクセスに用いる、一般的なセッション鍵を新たに生成する。セッション鍵生成処理部５５は、例えば、乱数生成器により所定バイト（例えば、１２８バイトなど）の共通鍵を生成することができる。
【０１０１】
Ｐ７４（管理用端末２００へのセッション鍵の配信）：セッション鍵生成処理部５５は、秘匿通信路６１を経由して、生成したセッション鍵を管理用端末２００に配信する。
【０１０２】
Ｐ７５（ＴＥＥ３０へのセッション鍵の配信）：セッション鍵生成処理部５５は、生成したセッション鍵をトラステッドＯＳ３１の秘匿通信路通信処理部３１１に配信する。
【０１０３】
Ｐ７６（ＴＥＥ３０への秘匿通信路開設要求）：管理用端末２００は、トラステッドＯＳ３１の秘匿通信路通信処理部３１１を通信先として、新たに秘匿通信路６２を開設する。ここでは、Ｐ７３で生成された共通鍵をベースとした、ＴＬＳ−ＰＳＫ（Pre-Shared Key）を開設することができる。なお、生成する鍵は、上述の例に限定されない。例えば、ＲＳＡ鍵生成を行い、サーバ、クライアント証明書と鍵ペアとをセッション鍵として生成した上で、当該鍵と証明書に基づいてＴＬＳ通信を行うことができる。また、単なるパスワードを生成した上で、サーバ証明書による片側認証ＴＬＳを開設した後、ワンタイムパスワードによる認証を行ってリモートアクセス可否を判定してもよい。
【０１０４】
Ｐ７７（リモートアクセス通信の実施）：以降、管理用端末２００とＴＥＥ３０とは、管理用端末２００とセキュアエレメント５０との間に確立された秘匿通信路６１とは別の秘匿通信路６２上で、リモートアクセス通信を授受する。
【０１０５】
図７は本実施の形態のデバイス１００のＲＥＥ２０によるリモートアクセス動作の一例を示す説明図である。以下、符号Ｐ８１〜Ｐ８７で示す処理について説明する。
【０１０６】
Ｐ８１（ＲＥＥリモートアクセス開始要求）：管理用端末２００は、秘匿通信路６１を経由して、セキュアエレメント５０側の秘匿通信路通信処理部５２に対して、ＲＥＥ２０に対するリモートアクセス通信開始要求を送信する。
【０１０７】
Ｐ８２（セッション鍵生成依頼）：秘匿通信路通信処理部５２は、リモートアクセス通信開始要求を取得すると、セッション鍵生成処理部５５に対し、セッション鍵の生成を依頼する。
【０１０８】
Ｐ８３（セッション鍵の生成）：セッション鍵生成処理部５５は、当該リモートアクセスに用いる、一般的なセッション鍵を新たに生成する。セッション鍵生成処理部５５は、例えば、乱数生成器により所定バイト（例えば、１２８バイトなど）の共通鍵を生成することができる。
【０１０９】
Ｐ８４（管理用端末２００へのセッション鍵の配信）：セッション鍵生成処理部５５は、秘匿通信路６１を経由して、生成したセッション鍵を管理用端末２００に配信する。
【０１１０】
Ｐ８５（ＴＥＥ３０へのセッション鍵の配信）：セッション鍵生成処理部５５は、生成したセッション鍵をリッチＯＳ２１の秘匿通信路通信処理部２１１に配信する。
【０１１１】
Ｐ８６（ＲＥＥ２０への秘匿通信路開設要求）：管理用端末２００は、リッチＯＳ２１の秘匿通信路通信処理部２１１を通信先として、新たに秘匿通信路６２を開設する。ここでは、Ｐ７３で生成された共通鍵をベースとした、ＴＬＳ−ＰＳＫ（Pre-Shared Key）を開設することができる。
【０１１２】
Ｐ８７（リモートアクセス通信の実施）：以降、管理用端末２００とＲＥＥ２０とは、管理用端末２００とセキュアエレメント５０との間に確立された秘匿通信路６１とは別の秘匿通信路６２上で、リモートアクセス通信を授受する。
【０１１３】
リモートアクセス通信の通信量が膨大になる場合、あるいはプロトコル処理に多大な処理能力を必要とする場合、比較的処理能力が高くないセキュアエレメント５０によるリートアクセスでは、通信処理に支障をきたす可能性がある。上述のように、管理用端末２００とセキュアエレメント５０との間に確立された秘匿通信路６１とは別の秘匿通信路６２上で、リモートアクセス通信を授受することにより、セキュアエレメント５０は、デバイス本体１０に対するリモートアクセスに係る通信の全部又は一部を処理することができ、リモートアクセス通信の通信量が膨大になる場合、あるいはプロトコル処理に多大な処理能力を必要とする場合でも、リモートアクセス通信を確実に行うことができる。また、セキュアエレメント５０の通信処理能力を、デバイス本体１０に対するリモートアクセス通信の最大量まで高める必要がなくなる。
【０１１４】
また、管理用端末２００とＴＥＥ３０又はＲＥＥ２０との間の新たな秘匿通信路６２は、セキュアエレメント５０が生成したセッション鍵によって開設される。当該セッション鍵を一時的な鍵とすることによって、従来のようなリモートアクセスに比べて、強固なリモートアクセスセキュリティを実現することができる。
【０１１５】
図８は本実施の形態のデバイス１００によるアクセス権情報ＤＢ５３の更新動作の一例を示す説明図である。以下、符号Ｐ９１〜Ｐ９５で示す処理について説明する。
【０１１６】
Ｐ９１（アクセス権情報ＤＢ５３の更新要求の送信）：管理用端末２００は、秘匿通信路６１を経由して、セキュアエレメント５０側の秘匿通信路通信処理部５２に対して、アクセス権情報ＤＢ５３に対する更新要求を送信する。更新要求には、例えば、ログインＩＤに関連付けられている新旧パスワードの情報などが含まれる。
【０１１７】
Ｐ９２（リモートログイン認証処理部５１への依頼）：秘匿通信路通信処理部５２は、更新要求取得部としての機能を有し、取得した更新要求をリモートログイン認証処理部５１に送信し、アクセス権情報ＤＢ５３の更新処理を依頼する。
【０１１８】
Ｐ９３（アクセス権情報ＤＢ５３の更新）：リモートログイン認証処理部５１は、更新部としての機能を有し、受信した更新要求に基づき、アクセス権情報ＤＢ５３を更新する。リモートログイン認証処理部５１は、例えば、受信した旧パスワードがログインＩＤに対応付けられているパスワードと同一であることを確認の上、旧パスワードを新パスワードで更新することができる。
【０１１９】
Ｐ９４（更新結果の返信）：リモートログイン認証処理部５１は、更新結果を秘匿通信路通信処理部５２に返信する。
【０１２０】
Ｐ９５（アクセス権情報ＤＢ５３の更新要求に対する返信）：秘匿通信路通信処理部５２取得した更新結果を管理用端末２００に返信する。
【０１２１】
これにより、リモートアクセスにおけるリモートログイン処理に必要なアクセス権情報を適宜更新することができるので、アクセス権情報の陳腐化を防止するとともに、アクセス権情報が容易に推測されることを防止することができる。
【０１２２】
図９は本実施の形態のセキュアエレメント５０によるリモートログイン認証の処理手順の一例を示すフローチャートである。セキュアエレメント５０は、管理用端末２００との間で秘匿通信路６１を開設し（Ｓ１１）、リモートログインの要求があるか否かを判定する（Ｓ１２）。リモートログインの要求がない場合（Ｓ１２でＮＯ）、セキュアエレメント５０は、ステップＳ１２の処理を続ける。
【０１２３】
リモートログインの要求があった場合（Ｓ１２でＹＥＳ）、セキュアエレメント５０は、認証情報（アクセス権情報）を取得し（Ｓ１３）、アクセス権情報ＤＢ５３を参照して、取得した認証情報によるリモートログインの可否を判定する（Ｓ１４）。
【０１２４】
リモートログインが可の場合（Ｓ１４で許可する）、セキュアエレメント５０は、リモートログインが許可された旨を管理用端末２００及びデバイス本体１０に通知する（Ｓ１５）。セキュアエレメント５０は、管理用端末２００によるリモートアクセスを許可する旨をデバイス本体１０に通知し（Ｓ１６）、処理を終了する。
【０１２５】
リモートログインが否の場合（Ｓ１４で許可しない）、セキュアエレメント５０は、リモートログインが拒否された旨を管理用端末２００に通知し（Ｓ１７）、処理を終了する。
【０１２６】
図１０は本実施の形態のデバイス１００によるＴＥＥ３０に対するリモートアクセスの処理手順の一例を示すフローチャートである。セキュアエレメント５０は、管理用端末２００からのＴＥＥ操作要求があるか否かを判定し（Ｓ２１）、ＴＥＥ操作要求がない場合（Ｓ２１でＮＯ）、ステップＳ２１の処理を続ける。
【０１２７】
ＴＥＥ操作要求があった場合（Ｓ２１でＹＥＳ）、セキュアエレメント５０は、ＴＥＥ操作要求に対するプロトコル変換が必要であるか否かを判定し（Ｓ２２）、プロトコル変換が必要である場合（Ｓ２２でＹＥＳ）、ＴＥＥ操作要求のプロトコル変換を行い（Ｓ２３）、後述のステップＳ２４の処理を行う。
【０１２８】
プロトコル変換が必要でない場合（Ｓ２２でＮＯ）、セキュアエレメント５０は、ステップＳ２３の処理を行うことなく、ＴＥＥ操作要求をデバイス本体１０へ送出する。
【０１２９】
デバイス本体１０は、ＴＥＥ操作要求を取得し（Ｓ１０１）、ＴＥＥ操作を実行し（Ｓ１０２）、ＴＥＥ操作結果をセキュアエレメント５０へ送出する（Ｓ１０３）。
【０１３０】
セキュアエレメント５０は、ＴＥＥ操作結果を取得し（Ｓ２５）、ＴＥＥ操作結果に対するプロトコル変換が必要であるか否かを判定する（Ｓ２６）。なお、ステップＳ２２でプロトコル変換が必要であると判定された場合、ステップＳ２６でもプロトコル変換が必要であると判定される。
【０１３１】
プロトコル変換が必要である場合（Ｓ２６でＹＥＳ）、セキュアエレメント５０は、ＴＥＥ操作結果のプロトコル変換を行い（Ｓ２７）、後述のステップＳ２８の処理を行う。
【０１３２】
プロトコル変換が必要でない場合（Ｓ２６でＮＯ）、セキュアエレメント５０は、ステップＳ２７の処理を行うことなく、ＴＥＥ操作結果を管理用端末２００へ送信し（Ｓ２８）、処理を終了する。
【０１３３】
図１１は本実施の形態のデバイス１００によるＲＥＥ２０に対するリモートアクセスの処理手順の一例を示すフローチャートである。セキュアエレメント５０は、管理用端末２００からのＲＥＥ操作要求があるか否かを判定し（Ｓ３１）、ＲＥＥ操作要求がない場合（Ｓ３１でＮＯ）、ステップＳ３１の処理を続ける。
【０１３４】
ＲＥＥ操作要求があった場合（Ｓ３１でＹＥＳ）、セキュアエレメント５０は、ＲＥＥ操作要求に対するプロトコル変換が必要であるか否かを判定し（Ｓ３２）、プロトコル変換が必要である場合（Ｓ３２でＹＥＳ）、ＲＥＥ操作要求のプロトコル変換を行い（Ｓ３３）、後述のステップＳ３４の処理を行う。
【０１３５】
プロトコル変換が必要でない場合（Ｓ３２でＮＯ）、セキュアエレメント５０は、ステップＳ３３の処理を行うことなく、ＲＥＥ操作要求をＴＥＥ３０に経由させるか否かを判定する（Ｓ３４）。
【０１３６】
ＴＥＥ３０を経由させる場合（Ｓ３４でＹＥＳ）、セキュアエレメント５０は、ＲＥＥ操作要求をＲＥＥ管理用トラステッドアプリケーション３２に送出する（Ｓ３５）。ＴＥＥ３０を経由させない場合（Ｓ３４でＮＯ）、セキュアエレメント５０は、ＲＥＥ操作要求をＲＥＥ側リモート管理アプリケーション２２に送出する（Ｓ３６）。
【０１３７】
デバイス本体１０は、セキュアエレメント５０が、ＲＥＥ操作要求をＲＥＥ管理用トラステッドアプリケーション３２に送出した場合、ＲＥＥ管理用トラステッドアプリケーション３２からＲＥＥ側リモート管理アプリケーション２２にＲＥＥ操作要求を配信する（Ｓ１１１）。
【０１３８】
デバイス本体１０は、ＲＥＥ操作要求をＲＥＥ側リモート管理アプリケーション２２で取得する（Ｓ１１２）。なお、セキュアエレメント５０が、ＲＥＥ操作要求をＲＥＥ側リモート管理アプリケーション２２に送出した場合も、ステップＳ１１２の処理が行われる。
【０１３９】
デバイス本体１０は、ＲＥＥ操作を実行し（Ｓ１１３）、ＲＥＥ操作結果をセキュアエレメント５０へ送出する（Ｓ１１４）。
【０１４０】
セキュアエレメント５０は、ＲＥＥ操作結果を取得し（Ｓ３７）、ＲＥＥ操作結果に対するプロトコル変換が必要であるか否かを判定する（Ｓ３８）。なお、ステップＳ３２でプロトコル変換が必要であると判定された場合、ステップＳ３８でもプロトコル変換が必要であると判定される。
【０１４１】
プロトコル変換が必要である場合（Ｓ３８でＹＥＳ）、セキュアエレメント５０は、ＲＥＥ操作結果のプロトコル変換を行い（Ｓ３９）、後述のステップＳ４０の処理を行う。
【０１４２】
プロトコル変換が必要でない場合（Ｓ３８でＮＯ）、セキュアエレメント５０は、ステップＳ３９の処理を行うことなく、ＲＥＥ操作結果を管理用端末２００へ送信し（Ｓ４０）、処理を終了する。
【０１４３】
図１２は本実施の形態のセキュアエレメント５０によるリモートアクセス通信のためのセッション鍵生成の処理手順の一例を示すフローチャートである。セキュアエレメント５０は、管理用端末２００から、デバイス本体１０に対するリモートアクセス通信の要求を取得したか否かを判定し（Ｓ５１）、リモートアクセス通信の要求がない場合（Ｓ５１でＮＯ）、ステップＳ５１の処理を続ける。
【０１４４】
リモートアクセス通信の要求があった場合（Ｓ５１でＹＥＳ）、セキュアエレメント５０は、管理用端末２００とデバイス本体１０（ＴＥＥ３０又はＲＥＥ２０）との間の秘匿通信路開設のためのセッション鍵を生成する（Ｓ５２）。
【０１４５】
セキュアエレメント５０は、生成したセッション鍵をデバイス本体１０（ＴＥＥ３０又はＲＥＥ２０）及び管理用端末２００に配信し（Ｓ５３）、処理を終了する。
【０１４６】
図１３は本実施の形態のセキュアエレメント５０によるアクセス権情報ＤＢ５３の更新の処理手順の一例を示すフローチャートである。セキュアエレメント５０は、管理用端末２００から、アクセス権情報ＤＢ５３の更新要求を取得したか否かを判定し（Ｓ６１）、更新要求を取得していない場合（Ｓ６１でＮＯ）、ステップＳ６１の処理を続ける。
【０１４７】
更新要求を取得した場合（Ｓ６１でＹＥＳ）、セキュアエレメント５０は、更新要求に含まれる新旧認証情報（新旧アクセス権情報）を取得し（Ｓ６２）、取得した旧認証情報がアクセス権情報ＤＢ５３の認証情報と一致するか否かを判定する（Ｓ６３）。
【０１４８】
認証情報が一致する場合（Ｓ６３でＹＥＳ）、セキュアエレメント５０は、アクセス権情報ＤＢ５３の認証情報を取得した新認証情報で更新し（Ｓ６４）、更新結果を管理用端末２００に通知し（Ｓ６５）、処理を終了する。
【０１４９】
認証情報が一致しない場合（Ｓ６３でＮＯ）、セキュアエレメント５０は、認証情報が一致しない旨を管理用端末２００に通知し（Ｓ６６）、処理を終了する。
【０１５０】
従来のＩｏＴデバイスでは、膨大な数の製品（デバイス）に対して、アクセス権情報を個々のデバイス毎に異なる値に設定すること（個別化）は、製造工程が増え、製造コストが高くなるため、個々のデバイスに共通（一様）のアクセス権情報を設定せざるを得ない実情がある。一方で、ＩｏＴデバイスの購入者（ユーザ）は、必ずしもセキュリティリテラシーが高いとは限らず、アクセス権情報をデバイス購入時のままに放置する傾向がある。このような脆弱性を有する従来のＩｏＴデバイスの場合、攻撃者がＩｏＴデバイスに対する不正アクセスを簡単に行って、例えば、マルウェアの不正導入などを容易に行うことができる可能性がある。
【０１５１】
しかし、上述のように、実施の形態では、リモートログインに関する認証情報（アクセス権情報、例えば、ログインＩＤ及びパスワード）をセキュアエレメント５０内に保持し、またリモートログインの認証処理を、セキュアエレメント５０内で実施する。これにより、アクセス権情報の個別化（アクセス権情報を一定の初期値、例えば、工場出荷時に一様に設定される値などに設定するのではなく、デバイス１００毎に異なるアクセス権情報を設定すること）をセキュアエレメント５０に対してのみ行えばよく、デバイス１００（ＩｏＴデバイス）のＯＳ全体に対する個別化を実施する必要がなくなる。すなわち、アクセス権情報の個別化作業をデバイス本体１０（デバイス１００）の製造工程から分離することができ、デバイス１００の製造コストを低減することができる。
【０１５２】
また、本実施の形態では、リモートログイン処理は、セキュアエレメント５０内のアクセス権情報を用い、デバイス側ではなくセキュアエレメント５０内で実施する。これにより、セキュアエレメント５０の耐タンパ性により、認証処理に対する解析、改ざんを防止することができる。また、アクセス権情報をセキュアエレメント５０の外へ出力せずに認証処理を行うことにより、アクセス権情報の漏洩を防止することができる。
【０１５３】
また、本実施の形態では、リモートログイン後のリモートアクセス通信を、セキュアエレメント５０が開設した秘匿通信路経由でデバイス本体１０に転送する。これにより、デバイス１００側（デバイス本体１０）で秘匿通信路を新たに開設することなく、リモートアクセスを行う通信路をセキュアに提供することができる。
【０１５４】
また、本実施の形態では、セキュアエレメント５０がプロトコル変換機能を備える。これにより、デバイス１００と外部の管理用端末との間で通信プロトコルが相違する場合でも、デバイス１００に対する管理を当該管理用端末で行うようにすることができる。
【０１５５】
また、本実施の形態では、リモートアクセス通信の通信量がセキュアエレメント５０の処理能力を上回る場合、セキュアエレメント５０は、管理用端末２００とデバイス本体１０との間の秘匿通信路開設のための鍵（例えば、一時的なセッション鍵）を生成し、生成した鍵を管理用端末２００及びデバイス本体１０の双方に提供するので、ＩｏＴデバイスに対する従来のリモートアクセス通信に比べて、高いセキュリティを提供し、処理性能を要するリモートアクセス通信にも対応可能となる。
【０１５６】
本実施の形態に係るセキュアエレメントは、デバイス本体に対するリモートログインを認証するための認証情報を記憶する記憶部と、秘匿通信路経由で前記デバイス本体に対するリモートログインの要求を取得する取得部と、該取得部でリモートログインの要求を取得した場合、前記記憶部に記憶した認証情報に基づいて、前記リモートログインを許可するか否かを判定する判定部と、該判定部での判定結果を前記デバイス本体に通知する通知部とを備える。
【０１５７】
本実施の形態に係るコンピュータプログラムは、コンピュータに、リモートログインを認証させるためのコンピュータプログラムであって、コンピュータに、秘匿通信路経由でデバイス本体に対するリモートログインの要求を取得する処理と、リモートログインの要求を取得した場合、記憶部に記憶した認証情報に基づいて、前記リモートログインを許可するか否かを判定する処理と、判定結果を前記デバイス本体に通知する処理とを実行させる。
【０１５８】
本実施の形態に係るデバイスは、本発明の実施の形態に係るセキュアエレメントと、デバイス本体とを備える。
【０１５９】
本実施の形態に係るリモートログイン方法は、リモートログイン方法であって、セキュアエレメントは、秘匿通信路経由でデバイス本体に対するリモートログインの要求を取得し、リモートログインの要求を取得した場合、記憶部に記憶した認証情報に基づいて、前記リモートログインを許可するか否かを判定し、判定結果を前記デバイス本体に通知する。
【０１６０】
記憶部は、デバイス本体に対するリモートログインを認証するための認証情報を記憶する。認証情報は、例えば、ログインＩＤ及びパスワードとすることができる。
【０１６１】
取得部は、秘匿通信路経由でデバイス本体に対するリモートログインの要求を取得する。リモートログインの要求は、例えば、外部の管理用端末が送信した要求を取得することができる。リモートログインの要求には、リモートログインの認証のための認証情報（例えば、ログインＩＤ及びパスワード）を含めることができる。セキュアエレメントと管理用端末との間は、秘匿通信路が開設されている。秘匿通信路においては、例えば、ＴＬＳ（Transport Layer Security）などのプロトコルによって通信を行うことができる。これにより、管理用端末からリモートログインの要求を取得する際に、認証情報の改ざんの防止、あるいは取得の妨害を回避することができる。
【０１６２】
判定部は、リモートログインの要求を取得した場合、記憶部に記憶した認証情報に基づいて、リモートログインを許可するか否かを判定する。リモートログインを許可するか否かの判定は、例えば、リモートログインの要求に含まれる認証情報と記憶部に記憶した認証情報とが一致するか否かに応じて行うことができる。
【０１６３】
通知部は、判定部での判定結果をデバイス本体に通知する。
【０１６４】
上述の構成により、リモートログインの認証処理を、セキュアエレメント内の記憶部に記憶した認証情報を用い、且つセキュアエレメント内部で実施するので、リモートログインのセキュリティ上の安全性を高めることができる。また、認証情報をデバイス側（デバイス本体）に記憶するのではなくセキュアエレメント内に保持することにより、デバイス個々の認証情報の個別化をセキュアエレメントに対してのみ行えばよく、デバイス側（デバイス本体）で認証情報の個別化を考慮する必要がなく、デバイス本体の認証情報の個別化に係る製造コストを削減することができる。
【０１６５】
本実施の形態に係るセキュアエレメントにおいて、前記通知部は、前記判定部でリモートログインを許可すると判定した場合、前記デバイス本体に対するリモートアクセスが許可されたことを前記デバイス本体に通知する。
【０１６６】
通知部は、判定部でリモートログインを許可すると判定した場合、デバイス本体に対するリモートアクセスが許可されたことをデバイス本体に通知する。これにより、リモートログインに続くリモートアクセスを行うことができる。
【０１６７】
本実施の形態に係るセキュアエレメントは、前記判定部でリモートログインを許可すると判定した場合、前記秘匿通信路経由でリモートアクセスに係る通信を受信する受信部と、該受信部で受信したリモートアクセスに係る通信を前記デバイス本体へ送出する送出部とを備える。
【０１６８】
受信部は、判定部でリモートログインを許可すると判定した場合、秘匿通信路経由でリモートアクセスに係る通信を受信する。例えば、外部の管理用端末が送信したリモートアクセスに係る通信を受信することができる。
【０１６９】
送出部は、受信部で受信したリモートアクセスに係る通信をデバイス本体へ送出する。これにより、例えば、管理用端末が送信したリモートアクセスに係る通信をデバイス本体が取得することができ、管理用端末とデバイス本体とがリモートアクセスに係る通信を行うことができる。
【０１７０】
本実施の形態に係るセキュアエレメントは、前記秘匿通信路経由で送受信するリモートアクセスに係る通信と、前記デバイス本体との間で授受するリモートアクセスに係る通信との間で通信プロトコルを変換する変換部を備える。
【０１７１】
変換部は、秘匿通信路経由で送受信するリモートアクセスに係る通信と、デバイス本体との間で授受するリモートアクセスに係る通信との間で通信プロトコルを変換する。すなわち、変換部は、管理用端末とセキュアエレメントとの間の通信と、セキュアエレメントとデバイス本体との間の通信との間の通信プロトコルを変換する。これにより、デバイス本体が用いる通信プロトコルが、外部の管理用端末が用いる通信プロトコルに対応していない場合でも、セキュアエレメントが通信プロトコルを変換する機能を備えることにより、管理用端末とデバイス本体とがリモートアクセスに係る通信を行うことができる。
【０１７２】
本実施の形態に係るセキュアエレメントは、前記デバイス本体の通常実行環境で実行される汎用ＯＳ又は汎用アプリケーションとの間でリモートアクセスに係る通信を処理する通信処理部を備える。
【０１７３】
通信処理部は、デバイス本体の通常実行環境で実行される汎用ＯＳ又は汎用アプリケーションとの間でリモートアクセスに係る通信を処理する。汎用ＯＳ又は汎用アプリケーションとの間で行われるリモートアクセスは、例えば、汎用アプリケーションの追加又は削除、汎用ＯＳ又は汎用アプリケーションが使用するファイルの追加又は削除、コンフィグレーションの変更などを含む。
【０１７４】
本実施の形態に係るセキュアエレメントは、前記デバイス本体の通常実行環境よりも安全なトラステッド実行環境で実行されるトラステッドＯＳ又はトラステッドアプリケーションとの間でリモートアクセスに係る通信を処理する通信処理部を備える。
【０１７５】
通信処理部は、デバイス本体の通常実行環境よりも安全なトラステッド実行環境で実行されるトラステッドＯＳ又はトラステッドアプリケーションとの間でリモートアクセスに係る通信を処理する。トラステッドＯＳ又はトラステッドアプリケーションとの間で行われるリモートアクセスは、例えば、トラステッドアプリケーションの追加又は削除、トラステッド実行環境内のメモリに対する鍵の登録、削除又は更新などを含む。
【０１７６】
本実施の形態に係るセキュアエレメントは、トラステッドＯＳ又はトラステッドアプリケーションを経由して汎用ＯＳ又は汎用アプリケーションとの間でリモートアクセスに係る通信を処理する通信処理部を備える。
【０１７７】
通信処理部は、トラステッドＯＳ又はトラステッドアプリケーションを経由して汎用ＯＳ又は汎用アプリケーションとの間でリモートアクセスに係る通信を処理する。トラステッドＯＳ又はトラステッドアプリケーションを経由することにより、トラステッド実行環境でのセキュリティ機能を利用することができ、セキュリティ上の安全性をさらに高めることができる。
【０１７８】
本実施の形態に係るセキュアエレメントは、前記判定部でリモートログインを許可すると判定した場合、リモートアクセスに係る通信に用いる秘匿通信路を開設するための開設情報を生成する生成部と、該生成部で生成した開設情報を前記デバイス本体及び該デバイス本体の通信先それぞれに通知する開設情報通知部とを備える。
【０１７９】
生成部は、判定部でリモートログインを許可すると判定した場合、リモートアクセスに係る通信に用いる秘匿通信路を開設するための開設情報を生成する。開設情報は、例えば、一時的なセッション鍵とすることができる。
【０１８０】
開設情報通知部は、生成部で生成した開設情報をデバイス本体及び該デバイス本体の通信先それぞれに通知する。デバイス本体の通知先は、例えば、管理用端末とすることができる。
【０１８１】
上述の構成により、デバイス本体と管理用端末との間の秘匿通信路開設時の鍵を一時的なものとすることによって、セキュアアレメントを介さない従来のリモートアクセスよりもセキュリティ上強固なリモートアクセスを実現することができる。また、リモートアクセスに係る通信がセキュアエレメントの処理能力を上回る場合でも、デバイス本体と管理用端末との間の秘匿通信路を利用してリモートアクセスに係る通信を行うことができる。
【０１８２】
本実施の形態に係るセキュアエレメントは、前記デバイス本体に対するリモートアクセスに係る通信の全部又は一部を処理する通信処理部を備える。
【０１８３】
通信処理部は、デバイス本体に対するリモートアクセスに係る通信の全部又は一部を処理する。すなわち、セキュアエレメントは、デバイス本体に対するリモートアクセスに係る通信の全部を処理してもよく、デバイス本体に対するリモートアクセスに係る通信の一部を処理し、残りの通信をデバイス本体と管理用端末との間の秘匿通信路を用いて行わせるようにしてもよい。これにより、セキュアエレメントの通信処理能力を、デバイス本体に対するリモートアクセス通信の最大量まで高める必要がなくなる。
【０１８４】
本実施の形態に係るセキュアエレメントは、前記秘匿通信路経由で認証情報を含む認証情報更新要求を取得する更新要求取得部と、該更新要求取得部で認証情報更新要求を取得した場合、前記記憶部に記憶した認証情報を前記認証情報更新要求に含まれる認証情報で更新する更新部とを備える。
【０１８５】
更新要求取得部は、秘匿通信路経由で認証情報を含む認証情報更新要求を取得する。認証情報更新要求は、例えば、外部の管理用端末から取得することができる。
【０１８６】
更新部は、更新要求取得部で認証情報更新要求を取得した場合、記憶部に記憶した認証情報を認証情報更新要求に含まれる認証情報で更新する。これにより、認証情報の陳腐化を防止すること、あるいは認証情報が容易に推測されることを防止することができる。
【符号の説明】
【０１８７】
１０  デバイス本体
２０  ＲＥＥ
２１  リッチＯＳ
２１１  秘匿通信路通信処理部
２２  ＲＥＥ側リモート管理アプリケーション
２３  クライアントアプリケーション
３０  ＴＥＥ
３１  トラステッドＯＳ
３１１  秘匿通信路通信処理部
３２  ＲＥＥ管理用トラステッドアプリケーション
３３  ＴＥＥ管理用トラステッドアプリケーション
３４  トラステッドアプリケーション
４１  ＣＰＵ
４２  ネットワーク通信部
４５  通信路
５０  セキュアエレメント
５１  リモートログイン認証処理部
５２  秘匿通信路通信処理部
５３  アクセス権情報ＤＢ
５４  リモートアクセス通信処理部
５５  セッション鍵生成処理部
５６  プロトコル変換処理部
６１、６２  秘匿通信路
７０  ネットワーク回線
２００  管理用端末
【図１】
2019023810.tif 000003
【図２】
2019023810.tif 000004
【図３】
2019023810.tif 000005
【図４】
2019023810.tif 000006
【図５】
2019023810.tif 000007
【図６】
2019023810.tif 000008
【図７】
2019023810.tif 000009
【図８】
2019023810.tif 000010
【図９】
2019023810.tif 000011
【図１０】
2019023810.tif 000012
【図１１】
2019023810.tif 000013
【図１２】
2019023810.tif 000014
【図１３】
2019023810.tif 000015