(57)【特許請求の範囲】
【請求項１】
サーバと、ユーザ装置と、秘密情報格納装置と、を用いて端末に秘密情報を設定する秘密情報設定方法において、
前記ユーザ装置は、前記サーバの記憶部から、暗号化された秘密鍵を取得し、
前記端末から、当該端末を一意に識別する識別子である端末ＩＤを取得し、
前記秘密情報格納装置は、前記サーバの記憶部から、暗号鍵と、前記端末に前記秘密鍵を設定するための条件である条件情報と、を取得し、
前記ユーザ装置の記憶部から、前記端末ＩＤと、当該端末ＩＤと対応付き且つ暗号化された秘密鍵と、を取得し、
当該暗号化された秘密鍵を、前記暗号鍵で復号し、
前記条件情報に基づき、前記端末に前記復号した秘密鍵を設定可能かを判定し、
当該判定結果が設定可能である場合に、当該秘密鍵を前記端末に設定する、
ことを特徴とする秘密情報設定方法。
【請求項２】
請求項１に記載の秘密情報設定方法において、
前記条件情報は、前記ユーザ装置と端末との接続方法を指定する情報を含んでおり、
前記判定は、前記端末が前記指定された接続方法により前記ユーザ装置と接続された場合に、秘密鍵を設定可能と判定することを特徴とする秘密情報設定方法。
【請求項３】
請求項１に記載の秘密情報設定方法において、
前記条件情報は、位置範囲を指定する情報を含んでおり、
前記判定は、前記ユーザ装置と前記端末の少なくとも一方が前記位置範囲内に存する場合に、秘密鍵を設定可能と判定することを特徴とする秘密情報設定方法。
【請求項４】
請求項１に記載の秘密情報設定方法において、
前記条件情報は、時間帯を指定する情報を含んでおり、
前記判定は、当該判定を実施する時刻が前記時間帯に含まれる場合に、秘密鍵を設定可能と判定することを特徴とする秘密情報設定方法。
【請求項５】
請求項１に記載の秘密情報設定方法において、
前記条件情報は、承認者を指定する情報を含んでおり、
前記判定は、所定の方法で前記指定された承認者を識別する情報が入力された場合に、秘密鍵を設定可能と判定することを特徴とする秘密情報設定方法。
【請求項６】
請求項１に記載の秘密情報設定方法において、
前記条件情報は、端末を指定する情報を含んでおり、
前記判定は、所定の方法で前記指定された端末を識別する情報が入力された場合に、秘密鍵を設定可能と判定することを特徴とする秘密情報設定方法。
【請求項７】
サーバと、ユーザ装置と、秘密情報格納装置と、を備える秘密情報設定システムにおいて、
前記サーバは、暗号化された秘密鍵と、暗号鍵と、端末に秘密鍵を設定するための条件である条件情報と、を格納する記憶部を備え、
前記ユーザ装置は、前記サーバの記憶部から前記暗号化された秘密鍵を取得し、前記端末から当該端末を一意に識別する識別子である端末ＩＤを取得する通信部と、
取得した情報を格納する記憶部と、を備え、
前記秘密情報格納装置は、前記サーバの記憶部から、前記暗号鍵と、前記条件情報と、を取得し、前記ユーザ装置の記憶部から、前記端末ＩＤと、当該端末ＩＤと対応付き且つ暗号化された秘密鍵と、を取得する通信部と、
当該暗号化された秘密鍵を前記暗号鍵で復号する暗号処理部と、
前記条件情報に基づき、前記端末に前記復号した秘密鍵を設定可能かを判定し、当該判定結果が設定可能である場合に、当該秘密鍵を前記端末に設定する制御部と、
を備えることを特徴とする秘密情報設定システム。
【請求項８】
サーバの記憶部から、暗号鍵と、端末に秘密鍵を設定するための条件である条件情報と、を取得し、
ユーザ装置の記憶部から、端末を一意に識別する識別子である端末ＩＤと、当該端末ＩＤと対応付き且つ暗号化された秘密鍵と、を取得する通信部と、
当該暗号化された秘密鍵を前記暗号鍵で復号する暗号処理部と、
前記条件情報に基づき、前記端末に前記復号した秘密鍵を設定可能かを判定し、当該判定結果が設定可能である場合に、当該秘密鍵を前記端末に設定する制御部と、
を備えることを特徴とする秘密情報設定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、秘密情報を設定するための方法、システム、および装置に関する。
【背景技術】
【０００２】
特許文献１には、公開鍵暗号を用い親ＩＣカードから子ＩＣカードに秘密情報を転送する方法が開示されている。また特許文献２には、カーネルやＴＰＭ（Ｔｒｕｓｔｅｄ  Ｐｌａｔｆｏｒｍ  Ｍｏｄｕｌｅ）等で保証されたＧＰＳロケーションを、ＰＣ内のアプリの実行権限の検証に用いる方法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２７７１８４号公報
【特許文献２】特表２０１４−５０３９０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年、Ｍ２Ｍ（Ｍａｃｈｉｎｅ  Ｔｏ  Ｍａｃｈｉｎｅ）やＩｏＴ（Ｉｎｔｅｒｎｅｔｏｆ  ｔｈｅ  Ｔｈｉｎｇｓ）の広まりを受け、車載機器やセンサノードなどの多様な端末が様々なネットワークを介してサーバやクラウドに接続するようになりつつある。これらの端末がサーバに接続する際、セキュリティを高めるために秘密鍵を含む証明書などを用いた認証が必要となる場合がある。これら証明書を端末にインポートする際には端末認証を行う必要があるが、端末のセキュリティ機能やセキュリティ運用が多様であることから、暗号技術に則った厳密な認証が難しいという課題がある。
【０００５】
特許文献１によると、受け側端末が初期鍵を持っていることを前提にしており、受け側端末が初期鍵を持っていない場合に対応することができない。また、特許文献２によると、ＴＰＭ等で保証された位置情報を、ＰＣ内のアプリの実行権限の検証に用いるが、他の機器への秘密情報の配布に用いる方法は開示されていない。
【０００６】
そこで本発明は、初期鍵が無いなど厳密な端末認証によるセキュリティが達成できない場合でも、証明書を抜き取りや対象外の端末への証明書インポートなどを防ぎセキュリティを高める好適な情報システムを構成するための方法、システム、および装置を提供する。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明における秘密情報設定装置は、サーバの記憶部から、暗号鍵と、端末に秘密鍵を設定するための条件である条件情報と、を取得し、ユーザ装置の記憶部から、端末を一意に識別する識別子である端末ＩＤと、当該端末ＩＤと対応付き且つ暗号化された秘密鍵と、を取得する通信部と、暗号化された秘密鍵を暗号鍵で復号する暗号処理部と、条件情報に基づき、端末に復号した秘密鍵を設定可能かを判定し、判定結果が設定可能である場合に、秘密鍵を端末に設定する制御部と、を備える。
【発明の効果】
【０００８】
本発明によれば、初期鍵が無いなど厳密な端末認証によるセキュリティが達成できない場合でも、設定位置や設定時間など守られるべき条件となる条件情報を用いることで、セキュリティを高めることが可能となる。
【図面の簡単な説明】
【０００９】
【図１】情報システムの一例を示す図である。
【図２】情報装置の機能構成の一例を示す図である。
【図３】秘密情報格納装置の機能構成の一例を示す図である。
【図４】端末の機能構成の一例を示す図である。
【図５】サーバの機能構成の一例を示す図である。
【図６】情報システムの処理の一例を示す図である。
【図７】情報システムの処理の一例を示す図である。
【図８】条件情報の一例を示す図である。
【図９】情報システムの処理の一例を示す図である。
【図１０】情報システムの処理の一例を示す図である。
【図１１】情報システムの処理の一例を示す図である。
【図１２】情報システムの機能構成の一例を示す図である。
【図１３】情報システムの処理の一例を示す図である。
【図１４】情報システムの処理の一例を示す図である。
【図１５】情報システムの機能構成の一例を示す図である。
【図１６】情報システムの処理の一例を示す図である。
【図１７】情報システムの処理の一例を示す図である。
【図１８】情報システムの機能構成の一例を示す図である。
【図１９】情報システムの処理の一例を示す図である。
【図２０】情報システムの処理の一例を示す図である。
【図２１】情報装置の機能構成の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明に係る実施例について図を用いて説明する。本発明では、情報システムにおいて、端末が厳密なセキュリティを達成するために十分な認証情報を持ち合わせていない場合でも、証明書を端末にインポートする際のセキュリティを高める方法の具体的な例を説明する。
【００１１】
図１は、情報システムの一例を示す図である。本発明にかかる情報システムは、情報装置１と、端末３と、サーバ４とが、通信により相互に接続している。また、情報装置１と、半導体素子を備える秘密情報格納装置２とが、通信により相互に接続している。なお、それぞれの装置は図１で示していない経路によって接続されていても構わない。あるいは情報装置１が秘密情報格納装置２を内部に備えていても何ら問題はない。また図に示したもの以外の構成要素を含んでも何ら問題はない。例えば所定のＩｏＴのサービスを実現するために端末３と通信するサーバなどを含んでもよい。
【００１２】
情報装置１は、情報を表示可能な表示機能、情報を入力可能な入力機能、他の装置や機器と通信可能な通信機能、および情報の演算が可能な制御機能等を有した端末であり、主として、ユーザからの入力や、機器間の通信を仲介する役割を担う。また、この情報システムには複数の情報装置１が含まれてもよい。情報装置１としてはＰＣ、スマートフォン、タブレット端末、ウェアラブル端末などが考えられるが、これに限るものではない。
【００１３】
秘密情報格納装置２は、耐タンパ機構等を備えたセキュアな半導体素子を含む装置である。秘密情報格納装置２は、他の装置や機器と通信可能な通信部、および情報の演算が可能な制御部、高速暗号処理が可能な暗号演算部等を有しており、主として、情報装置１と情報のやりとりを行う。秘密情報格納装置２の形態としては、情報装置１に差込む形のデバイス、非接触型または接触型のＩＣカード、ＳＩＭカード型のＩＣカード、ｍｉｃｒｏＳＤ型のＩＣカード、組込みチップ型のＩＣカード、ＴＰＭ（Ｔｒｕｓｔｅｄ  Ｐｌａｔｆｏｒｍ  Ｍｏｄｕｌｅ）などが考えられるが、これに限るものではない。あるいは、秘密情報格納装置２は、情報装置１と一体となっており、制御部やもしくは半導体素子それ自身を、それらと共有していても良い。情報システムには複数の秘密情報格納装置２が含まれていても良いし、また、一つの情報装置１が複数の秘密情報格納装置２と通信してもかまわない。
【００１４】
端末３は、Ｍ２Ｍ（Ｍａｃｈｉｎｅ  ｔｏ  Ｍａｃｈｉｎｅ）やＩｏＴ（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）によるサービスを提供するためなどにネットワーク等を通じて他の端末、装置、サーバ等と通信を行う端末である。端末３は情報装置１と通信を行うことで、他のサーバ等と通信を行うための認証情報を設定する。端末３は、例えばセンサなどを備えたセンサノードや、Ｍ２Ｍを実現するＭ２Ｍ機器、あるいは自動車に搭載された車載装置などである。端末３は、例えば、データを外部に送出するための所定の認証手段と暗号手段とを備えることで、所定のセキュリティ機能を実現する。
【００１５】
サーバ４は、ネットワーク等を通じて情報装置１、端末３、他のサーバ等と通信を行うサーバである。サーバ４は、ＰＫＩ（Ｐｕｂｌｉｃ  Ｋｅｙ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ）の公開鍵証明書や秘密鍵を安全に格納するサーバである。その他のアプリケーションが動作していてもよいし、機能が複数のサーバやストレージなどの筐体に分かれ、それらが組み合わさった構成になっていてもよい。また、サーバに限らず同様の処理が可能な情報機器などであってもよい。
【００１６】
情報装置１と、秘密情報格納装置２との通信は、例えば、接触ＩＣカードの国際標準通信方式であるＩＳＯ７８１６、非接触ＩＣカードの国際標準通信方式であるＩＳＯ１４４４３、ＮＦＣ（Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）、ＦｅｌｉＣａ（登録商標）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、ＳＤカード規格に応じた通信、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ（登録商標）、有線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、無線ＬＡＮ、Ｚｉｇｂｅｅ（登録商標）、ＴｒａｎｓｆｅｒＪＥＴ（登録商標）などの、有線または無線による通信であることが考えられる。あるいは基板上の結線などであっても構わない。
【００１７】
情報装置１と、端末３との通信は、例えば、ＵＳＢ、ＮＦＣ、ＳＤカード規格に応じた通信、Ｂｌｕｅｔｏｏｔｈ、Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ、有線ＬＡＮ、無線ＬＡＮ、Ｚｉｇｂｅｅ、ＴｒａｎｓｆｅｒＪＥＴ、接触ＩＣカードの国際標準通信方式であるＩＳＯ７８１６、非接触ＩＣカードの国際標準通信方式であるＩＳＯ１４４４３、ＦｅｌｉＣａ、ＲＳ−２３２Ｃなどの、有線または無線による通信であることが考えられる。
【００１８】
情報装置１とサーバ４、および、端末３とサーバ４、のそれぞれの間の通信は、例えば、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）、３Ｇ（３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ）、ＷｉＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ）、無線ＬＡＮおよびＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等の無線通信、もしくは有線ＬＡＮ、インターネット、専用回線を用いた通信などの、有線通信であることが考えられる。
【００１９】
これらの通信のそれぞれは、別個の通信ネットワークであっても何ら問題はないし、同一のネットワークであっても何ら問題はない。
【００２０】
図２は、情報装置１の機能構成の一例を示す図である。
【００２１】
情報装置１は、記憶部１１、制御部１２１、電源供給部１２２、表示部１３１、入力部１３２、センサー入力部１３３、本人確認情報入力部１３４、サーバ通信部１４１、端末通信部１４２、秘密情報格納装置通信部１４３、揮発性記憶部１５を備え、これらがバス線などで結線されている。なお、図２では各モジュールが情報装置１の内部にて他のモジュールと物理的に結線しているように示しているが、必ずしもバス線により結線されている必要はなく、その他の方法で電気的に繋がっていても良いし、必要なモジュール同士のみが相互に接続されている構成でもかまわない。
【００２２】
記憶部１１は、例えば磁気ディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、ＥＥＰＲＯＭ、フラッシュメモリ等、あるいは一部はＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等から構成され、各種の情報を記憶する。記憶部１１の記憶内容は電源供給部１２２からの電源供給がない状態でも保持される。記憶部１１は、例えば制御部１２１が実行する動作制御用プログラムや、処理に必要なデータなどを記憶する。記憶部１１が備える構成要素については後述する。
【００２３】
制御部１２１は、ＣＰＵ、ＭＰＵ、およびＤＳＰ等から構成され、所定の動作制御用プログラムを実行するなどして、情報装置１全体の動作を制御する。
【００２４】
電源供給部１２２は、バッテリ、ＡＣアダプタ、および充電回路等から構成され、情報装置１の各部への電源供給や、バッテリへの充電を行う。電源供給部１２２は、秘密情報格納装置２への電源供給を行ってもよく、その際に秘密情報格納装置通信部１４３を介してもよい。
【００２５】
表示部１３１は、液晶ディスプレイ、有機ＥＬディスプレイ、電子ペーパー等のパネル並びにドライバ回路等から構成され、制御部１２１の制御下にて任意の情報（例えば、文字、静止画、および動画等）を表示する。表示部１３１は、それぞれ異なる情報を表示する複数の表示装置を有していても良い。
【００２６】
入力部１３２は、タッチパネル、ボタン、キーボード、マウス、カーソルキー、およびテンキー等の一または複数を備え、ユーザの操作を受け付け、当該操作に基づいた入力信号を制御部１２１に入力する。なお、タッチパネルのように、表示部１３１と入力部１３２とが一体となった構成であっても良い。また、音声認識、画像認識、またはジェスチャ認識等によって入力信号を生成し、制御部１２１に入力するようにしても良い。
【００２７】
センサー入力部１３３は、情報装置１の外部または内部から所定の情報を取得し、電気信号として制御部１２１に入力する。センサー入力部１３３は、位置情報を取得するＧＰＳ、無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈなどのデバイス、画像を撮像する撮像素子、音声を取得するマイクロフォン、情報装置１の時刻を管理または時刻を外部から取得するデバイス、温度センサ、歪みセンサ、加速度センサ、微粒子センサ等の各種センサ、キーパッドやタッチパッドなどの入力装置、生体情報の取得デバイス、あるいはそれらの組み合わせである。センサー入力部１３３は、入力部１３２、本人確認情報入力部１３４、電源供給部１２２、ネットワーク通信部１４１、端末通信部１４２、秘密情報格納装置通信部１４３、あるいはその他のモジュールと共通のデバイスであってもよい。センサー入力部１３３から取得された情報はその正当性を確認するための署名などが付されてもよい。センサー入力部１３３が取得した情報は、後に述べるフローにおいて端末３への端末秘密鍵の設定において条件情報として参照される。
【００２８】
本人確認情報入力部１３４は、静脈、指紋、手のひら、虹彩、音声、顔、等の一または複数の生体情報を画像や音声信号、もしくはそれらから特徴を抽出したデータを取得する装置、あるいは、パスワードやＰＩＮ番号を入力するキーパッドやタッチパッドやキーボードである。本人確認情報入力部１３４は、入力部１３２と一体となっている構成でもよい。本人確認情報入力部１３４は、生体の存在を検知することでデータを取得する動作を開始してもよいし、入力部１３２による入力をトリガーとしてデータを取得する動作を開始してもよい。本人確認情報入力部１３４は、情報装置１に複数個存在してもかまわない。
【００２９】
サーバ通信部１４１は、情報装置１がサーバ４等と通信を行うための機能であり、ＬＴＥ、３Ｇ、ＷｉＭＡＸ、無線ＬＡＮおよびＷＡＮ等の無線通信、もしくは有線ＬＡＮ、インターネット、専用回線を用いた通信などを行うためのモジュールである。サーバ通信部１４１は通信方式等に応じて情報装置１に複数個存在してもかまわない。またその他の通信を実施するモジュールと共用になっていても構わない。
【００３０】
端末通信部１４２は、情報装置１が端末３等と通信を行うための機能であり、Ｂｌｕｅｔｏｏｔｈ、ＮＦＣ、Ｚｉｇｂｅｅ、ＵＳＢ、ＲＳ−２３２Ｃ、有線ＬＡＮ、無線ＬＡＮ、Ｚｉｇｂｅｅ、ＴｒａｎｓｆｅｒＪＥＴ等の通信を行うためのモジュールである。その他、機器と機器を接続する通信であれば上記の方式に限らない。端末通信部１４２は、サーバ通信部１４１や秘密情報格納装置通信部１４３と同一のモジュールであってもよい。端末通信部１４２は通信方式等に応じて情報装置１に複数個存在してもかまわない。
【００３１】
秘密情報格納装置通信部１４３は、情報装置１が秘密情報格納装置２と通信を行うための機能であり、接触ＩＣカードの国際標準通信方式であるＩＳＯ７８１６、非接触ＩＣカードの国際標準通信方式であるＩＳＯ１４４４３、ＦｅｌｉＣａ、ＮＦＣ、ＳＤカード規格に応じた通信、Ｂｌｕｅｔｏｏｔｈ、ＵＳＢ、有線ＬＡＮ、無線ＬＡＮ、Ｚｉｇｂｅｅ、ＴｒａｎｓｆｅｒＪＥＴなどの通信方式を実現するモジュールである。秘密情報格納装置通信部１４３は、他の通信部と同一のモジュールであってもよい。また、秘密情報格納装置２が情報装置１の組込みモジュールであった場合、基盤上等で結線されたものであっても構わない。あるいは情報装置１と秘密情報格納装置２が一体となっており、秘密情報格納装置２に相当する機能が情報装置１の秘密情報保護機構である場合は、情報装置１が備える秘密情報保護機構への所定のＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）が秘密情報格納装置通信部１４３であると考えても何ら問題はない。秘密情報格納装置通信部１４３は通信方式や秘密情報格納装置２の個数に応じて情報装置１に複数個存在してもかまわない。
【００３２】
なお、サーバ通信部１４１、端末通信部１４２並びに秘密情報格納装置通信部１４３等の通信機能が無線通信の場合、アンテナ、および変復調回路等を含んでも良い。一方、これらが有線通信の場合は、コネクタ、および変復調回路等を含んでも良い。サーバ通信部１４１、端末通信部１４２並びに秘密情報格納装置通信部１４３は、それぞれが複数の通信方式に対応するよう構成されても良い。
【００３３】
揮発性記憶部１５は、情報装置１に内蔵される半導体メモリ等から構成され、各種の情報を記憶する。揮発性記憶部１５は、例えばＲＡＭメモリ等から構成され、その記憶内容は電源供給部１２２からの電源供給がなくなった場合に破棄される。揮発性記憶部１５は、例えば処理に一時的に必要なデータなどを記憶する。揮発性記憶部１５が備える構成要素については後述する。
【００３４】
記憶部１１は、制御ソフト１１０１と、サーバ接続情報１１０２と、暗号化秘密鍵格納テーブル１１１と、条件情報ＩＤテーブル１１２と、を備える。これら以外の構成要素を備えてもよい。
【００３５】
制御ソフト１１０１は、情報装置１を制御するためのソフトウェアが記述されている。制御ソフト１１０１は、入力部１３２からの入力、サーバ通信部１４１からの通信、端末通信部１４２からの通信、秘密情報格納装置通信部１４３からの通信、あるいは所定のタイマーやその他の割り込み処理により、一連の処理フローを実行させるソフトウェアである。制御ソフト１１０１は複数のソフトウェアが連携した複合的なものであってもかまわない。なお、本例で特に断りなく情報装置１もしくは制御ソフト１１０１が処理を実行するような記述をした場合、物理的には制御ソフト１１０１のプログラムの記述に則って制御部１２１が処理を実行するということを示しているものとする。
【００３６】
サーバ接続情報１１０２は、情報装置１がサーバ４に接続するために必要となる情報である。例えばサーバ接続情報１１０２はサーバ４のＵＲＬなどである。その他の情報を含んだ複合的な情報であってもよい。
【００３７】
暗号化秘密鍵格納テーブル１１１は、サーバ４によって暗号化された端末秘密鍵を保持する構成要素であり、データベースやハッシュテーブル等で構成される。暗号化秘密鍵格納テーブル１１１は、エントリＩＤ１１１１と、端末秘密鍵１１１２をテーブルの要素として備える。エントリＩＤ１１１１に格納されるエントリＩＤは、情報システムにおいて端末秘密鍵を一意に特定するＩＤ情報であり、適当な番号や文字列が記載される。端末秘密鍵１１１２の列には、エントリＩＤ対応付いた暗号化された端末秘密鍵が格納される。端末秘密鍵は、後に述べるフローにおいて端末３に設定すべき情報である。例えば、公開鍵暗号の秘密鍵と公開鍵証明書の組や、共通鍵暗号の秘密鍵である。端末秘密鍵はサーバ４によって所定の方法で暗号化されており、エントリＩＤ１１１１に対応付けて格納されている。図では暗号化秘密鍵格納テーブル１１１の一例を示しているが、データ形式やデータ数、データの中身などは、これに限るものではない。
【００３８】
条件情報ＩＤテーブル１１２は、センサー入力部１３３などによって取得する情報の種類を示す条件情報ＩＤを格納する構成要素であり、データベースやハッシュテーブル等で構成される。図２では、一例としてＣ１０００という条件情報ＩＤに「端末接続情報」が対応付けられている。端末接続情報は、端末３が情報装置１に接続されている方法を示す情報であり、例えば端末通信部１４２から取得する通信方式や通信に用いる端末固有のＩＤなどである。またＣ１００１という条件情報ＩＤに「位置情報」が対応付けられている。位置情報はセンサー入力部１３３から取得するか、もしくは端末３からすることが考えられる。またＣ１００２という条件情報ＩＤに「時刻情報」が対応付けられている。時刻情報はセンサー入力部１３３、制御部１２１、もしくは各通信部から取得してもよい。例えばサーバ４からサーバ通信部１４１を通じて取得してもよい。またＣ１００３という条件情報ＩＤに「複数管理者認証」が対応付けられている。複数管理者認証は、情報装置１を操作するユーザに加えて１名以上の他の管理者の認証が必要であることを示しており、他の管理者の本人確認情報は本人確認情報入力部１３４や入力部１３２を通じて取得することが考えられる。このとき他の管理者のパスワード、ＰＩＮ、生体テンプレート情報などは秘密情報格納装置２に格納されていてもよい。またＣ１００４という条件情報ＩＤに「端末ＩＤ入力」が対応付けられている。端末ＩＤ入力は、端末３の筐体などに付されたＩＤをユーザが入力部１３２、センサー入力部１３３などを通じて入力することを示す。入力の方法としてはキーパッドやタッチパッドやキーボードによる入力、撮像による入力、バーコードや二次元コード、ＲＦＩＤタグの読み取りによる入力、音声による入力、などが考えられる。条件情報の詳細は、図８で後述する。
【００３９】
条件情報ＩＤテーブル１１２に定義される条件情報ＩＤはこれらに限るものではなく、情報装置１が周囲から取得したり内部で保持したりする情報の種類を示すＩＤであって、取得のタイミングを制御部１２１から指示することで、所定のモジュールから、もしくは、入出力によってユーザや外部の機器から入力される種類の情報であればよい。
【００４０】
揮発性記憶部１５は、管理者ＩＤ格納部１５０１と、サーバ認証情報格納部１５０２と、を備える。これら以外の構成要素を備えてもよい。
【００４１】
管理者ＩＤ格納部１５０１は、情報装置１を操作する管理者であるユーザのＩＤを示す管理者ＩＤを格納する構成要素である。管理者ＩＤは情報システム全体でユーザ毎に一意に定まるものであり、番号や文字列、バイナリデータなどで構成される。その他の情報を含んだ複合的な情報であってもよい。後の処理フローの説明では、管理者ＩＤは秘密情報格納装置２から取得するが、記憶部１１に管理者ＩＤを保持してもよい。このとき管理者ＩＤ格納部１５０１の構成を省略してもよい。
【００４２】
サーバ認証情報格納部１５０２は、サーバ４と認証処理を行うためのサーバ認証情報を一時的に格納するための構成要素である。情報装置１はサーバ認証情報を用いてサーバ４と相互に認証すると共に、情報装置１とサーバ４との間での暗号通信を確立する。後の処理フローの説明では、サーバ認証情報は秘密情報格納装置２から取得するが、その一部または全部を記憶部１１に保持してもよい。このときサーバ認証情報格納部１５０２の構成を省略してもよい。サーバ認証情報１５０２は、サーバ４とＳＳＬもしくはＴＬＳ通信を行うためのサーバ認証あるいはクライアント認証、もしくはその両方に必要な情報である。サーバ認証情報格納部１５０２に格納されるサーバ認証情報は、必ずしもその全てを秘密情報格納装置２から取得する必要はない。すなわち、サーバ認証情報格納部１５０２が秘密鍵などを含む複合的な情報を格納する場合には、秘密鍵を取り出さなくともよい。また、サーバ認証情報格納部１５０２に格納されるサーバ認証情報は、必要な情報を適宜サーバ４や他のサーバから取得しても構わない。
【００４３】
図３は、秘密情報格納装置２の機能構成の一例を示す図である。
【００４４】
秘密情報格納装置２は、記憶部２１、制御部２２１、電源供給部２２２、暗号処理部２２３、情報装置通信部２４３、揮発性記憶部２５を備え、これらがバス線などで結線されている。なお、図３では各モジュールが秘密情報格納装置２の内部にて他のモジュールと物理的に結線しているように示しているが、必ずしもバス線により結線されている必要はなく、その他の方法で電気的に繋がっていても良い。また、必要なモジュール同士のみが相互に接続されている構成でもかまわない。
【００４５】
記憶部２１は、例えばＥＥＰＲＯＭ、フラッシュメモリ等、あるいは一部はＲＯＭ等から構成され、各種の情報を記憶する。あるいは磁気ディスク、ＳＳＤ等から構成されていても良い。記憶部２１の記憶内容は電源供給部２２２からの電源供給がない状態でも保持される。記憶部２１は、例えば制御部２２１が実行する動作制御用プログラムや、処理に必要なデータなどを記憶する。記憶部２１が備える構成要素については後述する。
【００４６】
制御部２２１は、ＣＰＵ、ＭＰＵ、およびＤＳＰ等から構成され、所定の動作制御用プログラムを実行して、秘密情報格納装置２全体の動作を制御する。
【００４７】
電源供給部２２２は、外部から電源を取得する電源供給端子もしくはアンテナ、及び電源供給回路等から構成され、秘密情報格納装置２の各部への電源供給を行う。あるいは、バッテリ、ＡＣアダプタ、充電回路等を備えていてもよい。図３に記してはいないが、秘密情報格納装置２は電源供給部２２２によって情報装置１から電源の供給を受けてもよく、その際に情報装置通信部２４３を介してもよい。
【００４８】
暗号処理部２２３は、剰余乗算コプロセッサや暗号アクセラレータ等から構成され、ＲＳＡ暗号や楕円曲線暗号といった公開鍵暗号処理や、ＡＥＳやＤＥＳといった共通鍵暗号処理を高速に実行するための処理部である。暗号処理部２２３は処理する暗号等に応じて秘密情報格納装置２内に複数個存在してもかまわない。
【００４９】
情報装置通信部２４３は、秘密情報格納装置２が情報装置１と通信を行うための機能である。情報装置通信部２４３は、接触ＩＣカードの国際標準通信方式であるＩＳＯ７８１６、非接触ＩＣカードの国際標準通信方式であるＩＳＯ１４４４３、ＦｅｌｉＣａ、ＮＦＣ、ＳＤカード規格に応じた通信、Ｂｌｕｅｔｏｏｔｈ、ＵＳＢ、有線ＬＡＮ、無線ＬＡＮ、Ｚｉｇｂｅｅ、ＴｒａｎｓｆｅｒＪＥＴ、などの通信方式を実現するモジュールである。秘密情報格納装置２が情報装置１の組込みモジュールであった場合、基盤上等で結線されたものであっても構わない。情報装置１と秘密情報格納装置２が一体となっており、秘密情報格納装置２に相当する機能が情報装置１の秘密情報保護機構である場合は、情報装置１が備える秘密情報保護機構への所定のＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）が情報装置通信部２４３であると考えてもよい。情報装置通信部２４３は、通信方式に応じて秘密情報格納装置２に複数個存在してもかまわない。
【００５０】
なお、情報装置通信部２４３等の通信機能は、無線通信の場合、アンテナ、および変復調回路等を含んでも良い。有線通信の場合は、コネクタ、および変復調回路等を含んでも良い。情報装置通信部２４３は、それぞれが複数の通信方式に対応するよう構成されても良い。
【００５１】
揮発性記憶部２５は、秘密情報格納装置２に内蔵される半導体メモリ等から構成され、各種の情報を記憶する。揮発性記憶部２５は、例えばＲＡＭメモリ等から構成され、その記憶内容は電源供給部２２２からの電源供給がなくなった場合に破棄される。揮発性記憶部２５は、処理に一時的に必要なデータなどを記憶する。揮発性記憶部２５が備える構成要素については後述する。
【００５２】
記憶部２１は、制御ソフト２１０１と、管理者認証情報２１０２と、管理者ＩＤ２１０３と、情報装置用サーバ認証情報２１０４と、サーバ認証情報２１０５と、端末設定用鍵２１０６と、情報格納テーブル２１１と、条件情報ＩＤテーブル２１２と、を備える。これら以外の構成要素を備えてもよい。
【００５３】
制御ソフト２１０１は、秘密情報格納装置２を制御するためのソフトウェアが記述されており、情報装置通信部２４３からの通信、あるいは所定のタイマーやその他の割り込み処理により一連の処理フローを実行させるソフトウェアである。制御ソフト２１０１は複数のソフトウェアが連携した複合的なものであってもかまわない。なお、本例で特に断りなく秘密情報格納装置２もしくは制御ソフト２１０１が処理を実行するような記述をした場合、物理的には制御ソフト２１０１のプログラムの記述に則って制御部２２１が処理を実行するということを示しているものとする。
【００５４】
管理者認証情報２０１２は、管理者の本人確認を実施するための参照情報であり、パスワード、ＰＩＮ、生体情報テンプレートなどである。情報装置通信部２４３を通じて本人確認のための情報を取得し、管理者認証情報２１０２に格納された参照情報と比較することで、本人か否かを検証する。
【００５５】
管理者ＩＤ２１０３は、情報装置１を操作する管理者であるユーザのＩＤを示す管理者ＩＤである。管理者ＩＤは情報システム全体でユーザ毎に一意に定まるものであり、番号や文字列、バイナリデータなどで構成される。その他の情報を含んだ複合的な情報であってもよい。
【００５６】
情報装置用サーバ認証情報２１０４は、情報装置１がサーバ４と認証処理を行うための情報であり、情報装置１はサーバ認証情報を用いてサーバ４と相互に認証すると共に、情報装置１とサーバ４との間での暗号通信を確立する。情報装置１がサーバ認証情報を保持している場合は、情報装置用サーバ認証情報２１０４の構成を省略してもよい。情報装置用サーバ認証情報２１０４は、情報装置１とサーバ４とがＳＳＬもしくはＴＬＳ通信を行うためのサーバ認証あるいはクライアント認証、もしくはその両方に必要な情報である。情報装置用サーバ認証情報２１０４は、その全てを情報装置１に送出する必要はなく、サーバ認証情報格納部１５０２が秘密鍵などを含む複合的な情報を格納する場合、秘密鍵を送出しなくともよい。情報装置用サーバ認証情報２１０４の一部または全部を情報装置通信部２４３から送出する場合、管理者認証情報２１０２による本人確認が成功した後にこれらを送出する。
【００５７】
サーバ認証情報２１０５は、秘密情報格納装置２がサーバ４と認証処理を行うための情報である。秘密情報格納装置２はサーバ認証情報２１０５を用いてサーバ４と相互に認証すると共に、サーバ４との間での暗号通信を確立する。サーバ認証情報２１０５は、情報装置１とサーバ４とがＳＳＬもしくはＴＬＳ通信を行うためのサーバ認証あるいはクライアント認証、もしくはその両方に必要な情報である。もしくは、共通鍵暗号による認証に必要な暗号鍵などである。
【００５８】
端末設定用鍵２１０６は、端末３に端末秘密鍵を設定するための暗号鍵である。端末設定用鍵２１０６は、端末３のセキュリティレベルに応じて複数の構成例が考えられる。例えば、ＲＳＡや楕円曲線暗号などによる公開鍵暗号である。なお、端末設定用鍵２１０６が公開鍵暗号に基づく場合、端末３に端末設定用鍵２１０６の公開鍵証明書を検証する機能がある場合は、検証のための公開鍵証明書を端末設定用鍵２１０６に保持し、端末３に送付してもよい。端末３に相互認証の機能がある場合は、端末３の秘密鍵を検証する方法を記憶部２１に保持してもよい。端末設定用鍵２１０６は、共通鍵暗号の暗号鍵や、公開鍵暗号に基づくＰＫＩによる認証処理に必要な公開鍵証明書などの情報を保持していてもよい。
【００５９】
情報格納テーブル２１１は、サーバ４から取得した情報を保持する構成要素であり、情報装置１から取得する端末秘密鍵１１１２を所定の条件判断を実施した上で復号するための情報を格納する。情報格納テーブル２１１はデータベースやハッシュテーブル等で構成される。
【００６０】
情報格納テーブル２１１は、端末ＩＤ２１１０と、エントリＩＤ２１１１と、暗号鍵２１１３と、条件情報ＩＤ２１１４と、条件情報２１１５と、ログ情報２１１６と、をテーブルの要素として備える。
【００６１】
端末ＩＤ２１１０に格納される端末ＩＤは、端末３と対応付いたＩＤ情報であり、適当な番号や文字列である。もしくは端末３と情報装置１のＭＡＣアドレスや、ユーザが情報装置１に入力する番号などである。
【００６２】
エントリＩＤ２１１１に格納されるエントリＩＤは、情報システムにおいて端末秘密鍵を一意に特定することができるＩＤ情報であり、適当な番号や文字列である。
【００６３】
暗号鍵２１１３は、サーバ４によって暗号化された端末秘密鍵を復号するための暗号鍵であり、エントリＩＤ２１１１に対応付いている。暗号鍵２１１３は例えばＡＥＳなどの共通鍵暗号の暗号鍵である。
【００６４】
条件情報ＩＤ２１１４は、情報装置１のセンサー入力部１３３などによって取得する情報の種類を示す情報であり、エントリＩＤ２１１１に対応付いている。１つのエントリＩＤに複数の条件情報ＩＤが対応付いていてもよい。図３ではエントリＩＤ「ＡＢＣＤ１２３４」に「Ｃ１０００」と「Ｃ１００１」の２つの条件情報ＩＤが対応付いている例を含めて示している。
【００６５】
条件情報２１１５は、情報装置１が取得し情報装置通信部２４３を通じて受け取った条件情報を、所定の方法で検証するための条件情報が格納されている。後に説明する処理フローにおいて、制御部２１１は、情報装置１から受け取った条件情報が妥当か否かを、条件情報２１１５に格納された条件情報を参照して検証することで判断する。
【００６６】
ログ情報２１１６は、エントリＩＤ２１１１に対応付いた端末秘密鍵を端末３に設定した際のログを格納する構成要素であり、秘密情報格納装置２の内部もしくは情報装置１から取得した時刻等の情報や、制御ソフト２１０１による処理の履歴などが格納される。
【００６７】
図３の例では、例えば条件情報ＩＤ２１１４がＣ１０００の場合、条件情報２１１５には、端末接続情報として、端末通信部１４２から取得する通信方式や端末固有のＩＤまたはその範囲情報などが格納される。制御部２１１は、与えられた端末接続情報が所定のＩＤと等しいか、あるいは所定の範囲に入っているか、等を検証し、検証が成功した場合に与えられたが条件情報が妥当であると判断する。
【００６８】
また条件情報ＩＤ２１１４がＣ１００１の場合、条件情報２１１５には、位置情報として、ある特定の位置に関する情報か、その範囲情報などが格納される。制御部２１１は、与えられた位置情報が所定の位置と等しいか、あるいは所定の範囲に入っているか、等を検証し、検証が成功した場合に与えられた条件情報が妥当であると判断する。
【００６９】
また条件情報ＩＤ２１１４がＣ１００２の場合、条件情報２１１５には、時刻情報として、ある特定の時刻に関する情報か、その範囲情報などが格納される。制御部２１１は、与えられた時刻情報が所定の時刻と等しいか、あるいは所定の範囲に入っているか、等を検証し、検証が成功した場合に与えられた条件情報が妥当であると判断する。
【００７０】
また条件情報ＩＤ２１１４がＣ１００３の場合、条件情報２１１５には、複数管理者のＩＤ情報や、そのリスト、もしくはその範囲情報などが格納される。制御部２１１は、与えられた管理者ＩＤがリストに含まれるか、あるいは所定の範囲に入っているか、等を検証し、検証が成功した場合に与えられた条件情報が妥当であると判断する。
【００７１】
また条件情報ＩＤ２１１４がＣ１００３の場合、条件情報２１１５には、端末ＩＤとして、端末の筐体などに付されるＩＤ情報、ユーザが入力するＩＤ情報、バーコードや二次元コードの情報、ＲＦＩＤタグに格納されるＩＤ情報、撮像される画像のテンプレート、音声のテンプレート、等格納される。これらは特定のＩＤを指し示すための情報でもよいし、所定の範囲を含むものであってもよい。制御部２１１は、与えられたＩＤ情報が所定の条件情報と等しいか、あるいは所定の範囲に入っているか、等を検証し、検証が成功した場合に与えられた条件情報が妥当であると判断することが考えられる。
【００７２】
条件情報ＩＤテーブル２１２は、情報装置１のセンサー入力部１３３などによって取得する条件の種類を示す条件情報ＩＤを格納する構成要素であり、データベースやハッシュテーブル等で構成される。図３に示した具体的な例については条件情報ＩＤテーブル１１２で述べたものと同様であるため説明を省略する。
【００７３】
揮発性記憶部２５は、端末ＩＤ格納部２５０１と、端末秘密鍵格納部２５０２と、を備える。これら以外の構成要素を備えてもよい。
【００７４】
端末ＩＤ格納部２５０１は、端末３と対応付いたＩＤ情報である端末ＩＤを格納するための構成要素である。端末ＩＤは適当な番号や文字列である。もしくは端末３が情報装置１と通信する際のＭＡＣアドレスや、ユーザが情報装置１に入力する番号などである。端末ＩＤは情報装置１から情報装置通信部２４３を通じて取得する。
【００７５】
端末秘密鍵格納部２５０２は、端末３に設定する端末秘密鍵を格納する構成要素である。格納される端末秘密鍵は情報装置１の暗号化秘密鍵格納テーブル１１１に格納されている暗号化された端末秘密鍵を、情報装置通信部２４３を経由して取得し、秘密情報格納装置２の内部で復号処理を施したものである。詳細は処理フローの説明にて後述する。
【００７６】
図４は、端末３の機能構成の一例を示す図である。
【００７７】
端末３は、記憶部３１、制御部３２１、電源供給部３２２、暗号処理部３２３、センサー入力部３３３、情報装置通信部３４２、を備え、これらがバス線などで結線されている。なお、図４では各モジュールが端末３の内部にて他のモジュールと物理的に結線しているように示しているが、必ずしもバス線により結線されている必要はなく、その他の方法で電気的に繋がっていても良いし、必要なモジュール同士のみが相互に接続されている構成でもかまわない。
【００７８】
記憶部３１は、ＥＥＰＲＯＭ、フラッシュメモリ等、あるいは一部はＲＯＭ、等から構成され、各種の情報を記憶する。あるいは磁気ディスク、ＳＳＤ等から構成されていても良い。記憶部３１の記憶内容は電源供給部３２２からの電源供給がない状態でも保持される。記憶部３１は、制御部３２１が実行する動作制御用プログラムや、処理に必要なデータなどを記憶する。記憶部３１が備える構成要素については後述する。
【００７９】
制御部３２１は、ＣＰＵ、ＭＰＵＤＳＰ、等から構成され、所定の動作制御用プログラムを実行して、端末３全体の動作を制御する。
【００８０】
電源供給部３２２は、バッテリ、ＡＣアダプタ、および充電回路等から構成され、端末３の各部への電源供給や、バッテリへの充電を行う。
【００８１】
暗号処理部３２３は、剰余乗算コプロセッサや暗号アクセラレータ等から構成され、ＲＳＡ暗号や楕円曲線暗号といった公開鍵暗号処理や、ＡＥＳやＤＥＳといった共通鍵暗号処理を、高速に実行するための装置である。暗号処理部３２３は処理する暗号等に応じて端末３内に複数個存在してもかまわない。また暗号処理部３２３を構成として省略し、制御部３２１で暗号処理を実施しても何ら問題ない。
【００８２】
センサー入力部３３３は、Ｍ２ＭシステムやＩｏＴシステムの目的となる所定のサービスを実現するために必要な情報を端末３が収集するためのモジュールまたはインタフェースである。センサー入力部３３３は、端末３の外部または内部から所定の情報を取得し、電気信号として制御部３２１に入力する。センサー入力部３３３は、位置情報を取得するＧＰＳ、無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈなどのデバイス、画像を撮像する撮像素子、音声を取得するマイクロフォン、端末３の時刻を管理または時刻を外部から取得するデバイス、温度センサ、歪みセンサ、加速度センサ、微粒子センサ等の各種センサ、キーパッドやタッチパッドなどの入力装置、生体情報の取得デバイス、あるいはそれらの組み合わせである。センサー入力部３３３は、情報装置通信部３４２や他のモジュールと共通のデバイスであってもよい。センサー入力部３３３から取得された情報には、その正当性を確認するための署名が付されてもよい。センサー入力部３３３が取得した情報は、端末３への端末秘密鍵の設定において条件情報として参照されるために情報装置１に送付されてもよい。
【００８３】
情報装置通信部３４２は、端末３が情報装置１等と通信を行うための機能であり、Ｂｌｕｅｔｏｏｔｈ、ＮＦＣ、Ｚｉｇｂｅｅ、ＵＳＢ、ＲＳ−２３２Ｃ、有線ＬＡＮ、無線ＬＡＮ等の通信を行うためのモジュールである。その他、機器と機器を接続する通信であれば上記の方式に限らない。また、図示してはいないが、サーバ４や他のサーバと通信するモジュールが構成に存在しても構わない。その場合、情報装置通信部３４２と同一のモジュールであってもよい。情報装置通信部３４２は通信方式等に応じて端末３内に複数個存在してもかまわない。
【００８４】
なお、情報装置通信部３４２等の通信機能は、無線通信の場合、アンテナ、および変復調回路等を含んでも良い。有線通信の場合は、コネクタ、および変復調回路等を含んでも良い。情報装置通信部３４２は、それぞれが複数の通信方式に対応するよう構成されても良い。
【００８５】
記憶部３１は、制御ソフト３１０１と、端末ＩＤ３１０２と、端末秘密鍵格納部３１０５と、を備える。これら以外の構成要素を備えてもよい。
【００８６】
制御ソフト３１０１は、端末３を制御するためのソフトウェアが記述されており、センサー入力部３２３からの入力、情報装置通信部３４２からの通信、所定のタイマーやその他の割り込み処理により一連の処理フローを実行させるソフトウェアである。制御ソフト３１０１は複数のソフトウェアが連携した複合的なものであってもかまわない。なお、特に断りなく端末３もしくは制御ソフト３１０１が処理を実行するような記述をした場合、物理的には制御ソフト３１０１のプログラムの記述に則って制御部３２１が処理を実行するということを示しているものとする。
【００８７】
端末ＩＤ３１０２は、端末３のＩＤ情報である。端末ＩＤ３１０２は適当な番号や文字列である。端末３と情報装置１のＭＡＣアドレスや、ユーザが端末３を見て情報装置１に入力する番号などでもよい。端末ＩＤは情報装置通信部３４２を通じて情報装置１に送出する。
【００８８】
端末秘密鍵格納部３１０５は、端末３が所定のＭ２ＭサービスやＩｏＴサービスを実現するために他の端末やサーバ等と通信するための認証や暗号化等に用いる端末秘密鍵を格納する構成要素である。後に述べるフローにおいて、情報装置通信部３４２を通じた通信により端末３に端末秘密鍵が設定される。端末秘密鍵格納部３１０５に格納される端末秘密鍵としては、公開鍵暗号に基づくＰＫＩのクライアント認証を実現するための秘密鍵や公開鍵証明書、あるいは共通鍵暗号の暗号鍵などである。認証局やサーバ、他の端末他の公開鍵証明書などを含んでもよい。その他の認証に必要な情報を含んだ複合的な情報であっても構わない。
【００８９】
図５は、サーバ４の機能構成の一例を示す図である。
【００９０】
サーバ４は、記憶部４１、制御部４２１、電源供給部４２２、通信部４４１、を備え、これらがバス線などで結線されている。図に示してはいないが、これ以外の機能を備えていてもよい。例えば、揮発性記憶部や暗号処理部を備えていても良い。なお、図５では各モジュールがサーバ４の内部にて他のモジュールと物理的に結線しているように示しているが、必ずしもバス線により結線されている必要はなく、その他の方法で電気的に繋がっていても良いし、必要なモジュール同士のみが相互に接続されている構成でもかまわない。また別個の筐体にあるものが電気的もしくは光配線等で組み合わせられていても構わない。
【００９１】
記憶部４１は、磁気ディスク、ＳＳＤ、ＥＥＰＲＯＭ、フラッシュメモリ等の、サーバ４に内蔵されるメモリ、または取り外し可能な外部メモリ等から構成され、各種の情報を記憶する。例えば、制御部４０が実行する動作制御用プログラムや、処理に必要なデータなどを記憶する。記憶部４１が備える構成要素については後述する。
【００９２】
制御部４２１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、等から構成され、記憶部４１等に格納される所定の動作制御用プログラムを実行して、サーバ４全体の動作を制御する。
【００９３】
通信部４４１は、サーバ４が情報装置１等と通信を行うための機能であり、ＬＴＥ、３Ｇ、ＷｉＭＡＸ、無線ＬＡＮおよびＷＡＮ等の無線通信、もしくは有線ＬＡＮ、インターネット、専用回線を用いた通信などを行うためのモジュールである。通信部４４１は通信方式等に応じてサーバ４内に複数個存在してもかまわない。その他の通信を実施するモジュールと共用になっていても構わない。
【００９４】
なお、通信部４４１等の通信部は、無線通信の場合、アンテナ、および変復調回路等を含んでも良い。有線通信の場合は、コネクタ、および変復調回路等を含んでも良い。通信部４４１等の通信部は、それぞれが複数の通信方式に対応するよう構成されても良い。
【００９５】
記憶部４１は、制御ソフト４１０１と、情報格納テーブル４１１と、条件情報ＩＤテーブル１１２と、認証情報管理テーブル４１３と、を備える。これら以外の構成要素を備えてもよい。
【００９６】
制御ソフト４１０１は、サーバ４を制御するためのソフトウェアが記述されている。制御ソフト４１０１は、通信部４４１からの通信、あるいは所定のタイマーやその他の割り込み処理によって一連の処理フローを実行させるソフトウェアである。制御ソフト４１０１は複数のソフトウェアが連携した複合的なものであってもかまわない。なお、特に断りなくサーバ４もしくは制御ソフト４１０１が処理を実行するような記述をした場合、物理的には制御ソフト４１０１のプログラムの記述に則って制御部４２１が処理を実行するということを示しているものとする。
【００９７】
情報格納テーブル４１１は、端末秘密鍵を端末３に設定するために必要となる所定の情報を保持する構成要素である。情報格納テーブル４１１に格納される情報は、予めＭ２ＭサービスやＩｏＴサービスの管理事業者などが、端末３への設定に必要な情報としてサーバ４に登録するものである。情報格納テーブル４１１の情報は、所定の方法によって情報装置１や秘密情報格納装置２に送付され、暗号化秘密鍵格納テーブル１１１や、情報格納テーブル２１１に格納される。情報格納テーブル４１１は例えばデータベースやハッシュテーブル等で構成される。
【００９８】
情報格納テーブル４１１は、端末ＩＤ４１１０と、エントリＩＤ４１１１と、端末秘密鍵４１１２と、暗号鍵４１１３と、条件情報ＩＤ４１１４と、条件情報４１１５と、管理者ＩＤ４１１６と、をテーブルの要素として備える。このうち、端末ＩＤ４１１０は端末ＩＤ２１１０と、エントリＩＤ４１１１はエントリＩＤ２１１１およびエントリＩＤ１１１１と、暗号鍵４１１３は暗号鍵２１１３と、条件情報ＩＤ４１１４は条件情報ＩＤ２１１４と、条件情報４１１５は条件情報２１１５と、それぞれ目的を一にする構成要素であるため、説明を省略する。
【００９９】
端末秘密鍵４１１２は、端末秘密鍵１１１２と目的を一にする構成要素であるが、後の処理フローで説明するようにサーバ４から送出される際に暗号化済みであればよい。すなわち、必ずしも暗号鍵４１１３によって暗号化された状態で保持される必要はない。暗号鍵４１１３によって暗号化された状態で保持されてもよい。この場合は後の処理フローにおいて暗号化の処理を省略することができる。
【０１００】
管理者ＩＤ４１１６は管理者ＩＤ２１０３と目的を一にする構成要素であり、エントリＩＤ４１１１に対応付いている。管理者ＩＤ４１１６は、エントリＩＤ４１１１に対応付いたデータを取得する権限のあるユーザを示すものである。図では一つのエントリＩＤに一つの管理者ＩＤが対応付いた例を示しているが、一つのエントリＩＤに複数の管理者ＩＤが対応付いていても問題ないし、一つの管理者ＩＤに複数のエントリＩＤが対応付いていても問題ない。
【０１０１】
条件情報ＩＤテーブル４１２は、情報装置１のセンサー入力部１３３などによって取得する条件の種類を示す条件情報ＩＤを格納する構成要素であり、データベースやハッシュテーブル等で構成される。図５に示した具体的な例については条件情報ＩＤテーブル１１２で述べたものと同様であるため説明を省略する。
【０１０２】
認証情報管理テーブル４１３は、管理者ＩＤ４１３１と、情報装置用認証情報４１３２と、秘密情報格納装置用認証情報４１３３と、をテーブルの要素として備える。
【０１０３】
管理者ＩＤ４１３１は管理者ＩＤ４１１６に格納される管理者ＩＤと対応している。管理者ＩＤ４１３１を持つユーザを特定するために、情報装置用認証情報４１３２と、秘密情報格納装置用認証情報４１３３と、それぞれ対応付いている。
【０１０４】
情報装置用認証情報４１３２は、管理者ＩＤ４１３１と対応付いた認証情報であり、管理者ＩＤ４１３１の管理者が情報装置１を用いてサーバ４に接続した際の相互認証に用いられると共に、サーバ４と情報装置１との間での暗号通信を確立するためにも用いられる。情報装置用認証情報４１３２は、一例として、サーバ４と情報装置１とサーバ４とがＳＳＬもしくはＴＬＳ通信を行うためのサーバ認証あるいはクライアント認証、もしくはその両方に必要な情報である。
【０１０５】
秘密情報格納装置用認証情報４１３３は、管理者ＩＤ４１３１と対応付いた認証情報であり、管理者ＩＤ４１３１の管理者が秘密情報格納装置２と情報装置１を用いてサーバ４に接続する際の相互認証に用いられると共に、サーバ４と秘密情報格納装置２との間での暗号通信を確立するためにも用いられる。秘密情報格納装置用認証情報４１３３は、サーバ４と秘密情報格納装置２とサーバ４とがＳＳＬもしくはＴＬＳ通信を行うためのサーバ認証あるいはクライアント認証、もしくはその両方に必要な情報である。もしくは、共通鍵暗号による認証に必要な暗号鍵などである。
【０１０６】
図６は、端末３への端末秘密鍵の設定に先立ち、情報装置１と秘密情報格納装置２にサーバ４から必要な情報を取得する処理を示すフロー図である。以下、特に断りがなくとも、秘密情報格納装置２とサーバ４との間の通信の往復は、必要に応じて情報装置１が中継していても良いものとする。
【０１０７】
この処理フローは、管理者の入力処理をトリガーとして開始する（Ｓ１０１）。続いて管理者の本人確認を実施する（Ｓ１０２）。管理者の本人確認は本人確認情報入力部１３２からのパスワード、ＰＩＮ、生体情報の取得などによって実施され、照合処理を行うために取得したパスワード、ＰＩＮ、生体情報等が秘密情報格納装置２に送付される。これを受けた秘密情報格納装置２は、管理者認証情報２０１２と所定の照合を実施することで、本人確認を実施し、結果を情報装置１に送付する（Ｓ１０３）。図に示してはいないが、このとき秘密情報格納装置２が「本人確認済み」という状態となることが望ましい。「本人確認済み」でない場合は以降のフローで説明する処理の受付を拒否する、等の処理を行う。本人確認が成功したら、情報装置１は管理者ＩＤと情報装置用サーバ認証情報を取得する要求を秘密情報格納装置２に送出し（Ｓ１０４）、これを受けた秘密情報格納装置２は、管理者ＩＤ２１０３、情報装置用サーバ認証情報２１０４を情報装置１に送付し（Ｓ１０５）、情報装置１はこれを揮発性格納部１５の管理者ＩＤ格納部１５０１とサーバ認証情報格納部１５０２にそれぞれ格納する。情報装置用サーバ認証情報２１０４が複合的な情報から成る場合は、その一部のみをＳ１０５で送出しても構わない。例えば情報装置用サーバ認証情報２１０４が複合的な情報から成り、秘密鍵が含まれている場合は、秘密鍵を送出しなくともよい。
【０１０８】
続いて情報装置１は管理者ＩＤ格納部１５０１に格納された管理者ＩＤをサーバに送付し、サーバ認証情報格納部１５０２に格納したサーバ認証情報と、管理者ＩＤ対応付いた情報装置用認証情報４１３２によって、情報装置１とサーバ４とで相互認証を実施し、暗号通信を確立する（Ｓ１０６、Ｓ１０７）。図に示してはいないが、相互認証や暗号通信の確立に複数のコマンドとレスポンスの組を実施してもよい。また図に示してはいないが、相互認証や暗号通信の際に秘密情報格納装置２の情報装置用サーバ認証情報２１０４の一部を参照する必要がある場合は、情報装置１は適宜秘密情報格納装置２と必要な通信を行っても良い。Ｓ１０６及びＳ１０７以降のフローでは、特に断りがない限り、情報装置１とサーバ４との間の通信において、確立した暗号通信を通じて行われるものとする。続いて情報装置１は、管理者ＩＤに対応付いた情報をサーバ４に要求し（Ｓ１０８）、サーバ４は管理者ＩＤに対応付いたエントリＩＤ４１１１、及び暗号鍵４１１３で暗号化した端末秘密鍵４１１２を情報装置１に送付し（Ｓ１０９）、これを受け取った情報装置１は、これらを暗号化秘密鍵格納テーブル１１１のエントリＩＤ１１１１及び端末秘密鍵１１１２にそれぞれ格納する。サーバ４は管理者ＩＤに対応付いたエントリが複数ある場合、その全てを送出してもよいし、一部のみを送出してもよい。例えば情報装置１が端末３から端末ＩＤ３１０２を取得する処理を、後で説明するフローのＳ２０４、Ｓ２０５で実施するが、これをＳ１０８とＳ１０９の前に実施し、端末ＩＤ３１０２をサーバ４に送出することで、サーバ４が送出するエントリを端末ＩＤから絞り込んでも構わない。
【０１０９】
続いて情報装置１は秘密情報格納装置２とサーバ４との通信を中継する（Ｓ１１０）。秘密情報格納装置２の制御ソフト２１０１に処理の主体がある場合は、秘密情報格納装置２からコマンドをフェッチしてサーバ４に送付し、そのレスポンスを秘密情報格納装置２に送付する。また、サーバ４の制御ソフト４１０１に処理の主体がある場合は、サーバ４からコマンドをフェッチして秘密情報格納装置２に送付し、そのレスポンスをサーバ４に送付する。以降、秘密情報格納装置２から要求が出るよう記載する場合があるが、処理の主体はサーバ４であってもよい。その場合はサーバ４から秘密情報格納装置２に要求を送出し、秘密情報格納装置２がそれに対し必要な情報を返送することで処理を実施してもよい。
【０１１０】
秘密情報格納装置２は管理者ＩＤ２１０２に格納された管理者ＩＤをサーバに送付し、サーバ認証情報格納部２１０５と、管理者ＩＤに対応付いた秘密情報格納装置用認証情報４１３３によって、秘密情報格納装置２とサーバ４とで相互認証を実施し、暗号通信を確立する（Ｓ１１１、Ｓ１１２）。図に示してはいないが、相互認証や暗号通信の確立に複数のコマンドとレスポンスの組を実施してもよい。Ｓ１１１及びＳ１１２以降のフローでは、特に断りがない限り、秘密情報格納装置２とサーバ４との間の通信において、確立した暗号通信を通じて行われるものとする。続いて秘密情報格納装置２は、管理者ＩＤに対応付いた情報をサーバ４に要求し（Ｓ１１３）、サーバ４は管理者ＩＤに対応付いた端末ＩＤ４１１０、エントリＩＤ４１１１、端末秘密鍵４１１２、暗号鍵４１１３、条件情報ＩＤ４１１４、条件情報４１１５を秘密情報格納装置２に送付し（Ｓ１１４）、これを受け取った秘密情報格納装置２は、これらを情報格納テーブル２１１の端末ＩＤ２１１０、エントリＩＤ１１１１、暗号鍵２１１３、条件情報ＩＤ２１１４、条件情報２１１５にそれぞれ格納する。サーバ４は管理者ＩＤに対応付いたエントリが複数ある場合、その全てを送出してもよいし、一部のみを送出してもよい。例えばＳ１０８、Ｓ１０９での説明と同様に情報装置１から端末ＩＤがサーバ４に送付される場合、サーバ４が秘密情報格納装置２に送出するエントリを端末ＩＤから絞り込んでも構わない。
【０１１１】
図７は、端末３に端末秘密鍵を設定する処理のを示すフロー図である。以下、特に断りがなくとも、秘密情報格納装置２と端末３との間の通信の往復は、必要に応じて情報装置１が中継していても良いものとする。
【０１１２】
処理は、管理者の入力処理をトリガーとして開始する（Ｓ２０１）。続いて管理者の本人確認を実施する（Ｓ２０２）。管理者の本人確認は本人確認情報入力部１３２からのパスワード、ＰＩＮ、生体情報の取得などによって実施され、照合処理を行うために取得したパスワード、ＰＩＮ、生体情報等が秘密情報格納装置２に送付される。これを受けた秘密情報格納装置２は、管理者認証情報２０１２と所定の照合を実施することで、本人確認を実施し、結果を情報装置１に送付する（Ｓ２０３）。図に示してはいないが、このとき秘密情報格納装置２が「本人確認済み」という状態となることが望ましい。「本人確認済み」でない場合は以降のフローで説明する処理の受付を拒否する、等の処理を行う。また、図７のフローを図６のフローと続けて実施する場合は、Ｓ２０１からＳ２０３の処理は省略されても構わない。
【０１１３】
本人確認が成功したら、情報装置１は端末ＩＤを取得する要求を端末３に送出し（Ｓ２０４）、これを受けた端末３は、端末ＩＤ３１０２を情報装置１に送付し（Ｓ２０５）、情報装置１はこれを秘密情報格納装置２に送付する。端末ＩＤを受け取った秘密情報格納装置２は、端末ＩＤを端末ＩＤ格納部２５０１に格納し、この端末ＩＤに対して、情報格納テーブル２１１で対応付けられているエントリＩＤ２１１１を情報装置１に送出する（Ｓ２０６）。エントリＩＤを取得した情報装置１は、このエントリＩＤに対して、暗号化秘密鍵格納テーブル１１１で対応付けられている端末秘密鍵１１１２を秘密情報格納装置２に送付する（Ｓ２０７）。これを受けた秘密情報格納装置２は、情報格納テーブル２１１において端末ＩＤ格納部２５０１に格納された端末ＩＤと対応付いた暗号鍵２１１３によって、取得したデータを復号し、取り出した端末秘密鍵を端末秘密鍵格納部２５０２に格納する（Ｓ２０８）。
【０１１４】
続いて端末ＩＤ格納部２５０１に格納された端末ＩＤに対し、情報格納テーブル２１１で対応付いた条件情報ＩＤ２１１４を情報装置１に送出する（Ｓ２０９）。これを受けた情報装置１は、取得した条件情報ＩＤに基づいて条件情報ＩＤテーブル１１２から取得すべき条件情報を判断し（Ｓ２１０）、センサー入力部１３３等から条件情報を取得し、秘密情報格納装置２に送付する（Ｓ２１１）。なお、取得する条件情報や取得の方法については、条件情報ＩＤテーブル１１２の説明で述べたものが挙げられる。情報装置１が複数の条件情報ＩＤを受け取った場合は、それぞれの条件情報を取得する。
【０１１５】
続いて条件情報を受け取った秘密情報格納装置２は、取得した条件情報と条件情報２１１５を所定の方法で比較し、結果を判定する（Ｓ２１２）。当該処理の詳細については、図９〜図１１で後述する。比較の結果として与えられた条件情報が適切でないと判断した場合（Ｓ２１２  ＮＧ）、秘密情報格納装置２は情報装置１にエラーである旨を送出し、情報装置１はエラーを表示部１３１に表示するなどのエラー処理をして終了する（Ｓ２１３）。比較の結果として与えられた条件情報が適切であった場合は（Ｓ２１２  ＯＫ）、秘密情報装置２はその旨を情報装置１に通知する。
【０１１６】
続いて情報装置１は秘密情報格納装置２と端末３との通信を中継する（Ｓ２１４）。秘密情報格納装置２の制御ソフト２１０１に処理の主体がある場合は、秘密情報格納装置２からコマンドをフェッチして端末３に送付し、そのレスポンスを秘密情報格納装置２に送付する。また、端末３の制御ソフト３１０１に処理の主体がある場合は、端末３からコマンドをフェッチして秘密情報格納装置２に送付し、そのレスポンスを端末３に送付してもよい。以降、秘密情報格納装置２から要求が出るよう記載する場合があるが、処理の主体は端末３であってもよい。その場合は端末３から秘密情報格納装置２に要求を送出し、秘密情報格納装置２がそれに対し必要な情報を返送することで処理を実施してもよい。
【０１１７】
秘密情報格納装置２は端末設定用公開鍵２１０３を端末３に送付し、これを受けた端末３とで所定の暗号通信を確立する（Ｓ２１５、Ｓ２１６）。図に示してはいないが、暗号通信の確立に複数のコマンドとレスポンスの組を実施してもよい。Ｓ２１５及びＳ２１６以降のフローでは、特に断りがない限り、秘密情報格納装置２と端末３との間の通信において、確立した暗号通信を通じて行われるものとする。続いて秘密情報格納装置２は、端末秘密鍵格納部２５０２のデータを端末３に送付し、書き込んだ結果をログとしてログ情報２１１６に書き込む（Ｓ２１１６）。図で示してはいないが、ログ情報２１１６はサーバ４との暗号通信を通じてサーバ４に送出されてもよい。
【０１１８】
図８に、条件情報のデータ構造を示す。
【０１１９】
図３のＣ１０００で示した端末接続情報に関する条件情報の例をＤ１００からＤ１０２に示す。  Ｄ１００とＤ１０１は端末３と情報装置１が通信する際の端末３のアドレスを条件情報とする場合である。この場合、Ｄ１００では許可されるアドレスの範囲として、上限および下限を条件情報として保持する。Ｄ１０１では許可されるアドレスとして、アドレスのリストを保持する。Ｄ１０２では端末３と情報装置１が通信する際の通信方法を条件情報にする場合であり、接続方式に応じて許可・不許可のフラグを保持する。リストにない接続方式は不許可とすることとしてもよい。
【０１２０】
図３のＣ１００１で示した位置情報に関する条件情報の例をＤ１１０からＤ１１１で示す。Ｄ１１０とＤ１１１は情報装置１もしくは端末３の位置情報を条件情報とする場合である。Ｄ１１０では地図上の矩形の範囲の頂点として緯度・経度情報を保持する。また経線方向と緯線方向の許容される距離を合わせて保持する。許容される距離は、値の符号で向きを、値の絶対値で距離を示すようにしてもよい。Ｄ１１１では円形の範囲の中心として緯度・経度情報を保持する。また許容される距離として中心からの半径を合わせて保持する。Ｄ１１０やＤ１１１はそれぞれ複数を組み合わせてもよい。また範囲内ならば許可とする、あるいは範囲外ならば許可とする、といったことを判断するフラグを個別に持ってもよい。
【０１２１】
図３のＣ１００２で示した時刻情報に関する条件情報の例をＤ１２０からＤ１２１で示す。Ｄ１２０とＤ１２１は情報装置１もしくは情報端末１経由で端末３やサーバ４から取得する時刻情報を条件情報とする場合である。Ｄ１２０では許可される時刻の開始時刻と終了時刻を保持する。Ｄ１２１では許可される時刻の開始時刻と、開始時刻からの有効期限を保持する。Ｄ１２０やＤ１２１はそれぞれ複数を組み合わせてもよい。また範囲内ならば許可とする、あるいは範囲外ならば許可とする、といったことを判断するフラグを個別に持ってもよい。
【０１２２】
図３のＣ１００３で示した複数管理者認証に関する条件情報の例をＤ１３０で示す。Ｄ１３０は情報装置１から取得する管理者認証情報を条件情報とする場合である。Ｄ１３０の必要承認数は処理の許可が得られるために必要な承認の数を示している。またＤ１３０は管理者ＩＤと照合情報の組を１つ以上保持しており、情報装置１から取得した管理者ＩＤおよび照合情報が、対応する管理者ＩＤおよび照合情報と一致するか、または所定の照合方法による照合結果の一致度が所定の閾値を越えている場合は、照合成功とする。照合成功した管理者ＩＤは揮発性記憶部２５などに保持していることが望ましく、その数が必要承認数と等しくなるかもしくは上回ることで処理の許可を得る。
【０１２３】
図３のＣ１００４で示した端末ＩＤ入力に関する条件情報の例をＤ１４０からＤ１４２で示す。Ｄ１４０は情報装置１から取得する端末ＩＤの文字列の入力を条件情報とする場合である。情報端末１から取得する端末ＩＤの文字列は、ユーザにより入力部１３２から入力される、あるいはセンサー入力部１３３から取得される。センサー入力部１３３からの取得には端末３の表面に貼り付けられたり印刷されたりしたＲＦＩＤやバーコードの読み取りなども含まれる。Ｄ１４０は端末ＩＤ文字列を保持し、これらの情報と照合される。Ｄ１４１は端末画像テンプレートを保持する。端末画像テンプレートは端末３を撮像した画像を照合するために予め生成されたものである。端末３の表面に貼り付けられたり印刷されたりした端末ＩＤを画像の一部に含んでもよい。Ｄ１４２は音声入力テンプレートを保持する。音声入力テンプレートは端末３の端末ＩＤをユーザが読み上げた情報を照合するために予め生成されたものである。
【０１２４】
図９から図１１は、Ｓ２１２の詳細な処理フローを示す図である。図９から図１１ではＳ２１２の内部の判定処理を記述する。後述のＳ４１２については記述を省略するが、条件情報の比較についてはＳ２１２について示す例と同様である。
【０１２５】
図９ではＤ１００からＤ１０２を用いた判定についてそれぞれＳ２１２ａからＳ２１２ｃで詳細化する。
【０１２６】
Ｓ２１２ａでは、取得した条件情報がＤ１００のアドレス範囲下限とアドレス範囲上限の間のアドレス情報であるかどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２１３に遷移する。この処理により、端末３のアドレス範囲が所定の適正範囲である場合に限り、端末３に端末秘密鍵を設定することが可能となる。
【０１２７】
Ｓ２１２ｂでは、取得した条件情報がＤ１０１に記載のアドレスのいずれかと一致するかどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２１３に遷移する。この処理により、端末３のアドレスが予め記憶されている適正なアドレスである場合に限り、端末３に端末秘密鍵を設定することが可能となる。また、Ｓ２１２ａとＳ２１２ｂの処理を組み合わせて判定することも可能である。この場合、例えば、Ｄ１００の範囲外のアドレスであってもＤ１０１に記載されているアドレスであれば例外的に「適正なアドレス」と判定し、端末秘密鍵の設定を許可することとなる。
【０１２８】
Ｓ２１２ｃでは、取得した条件情報がＤ１０２に記載のフラグで許可されている接続方法と一致するかどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２１３に遷移する。この処理により、端末３と情報装置１が予め想定した適正な接続方法により接続された場合に限り、端末３に端末秘密鍵を設定することが可能となる。
【０１２９】
図１０ではＤ１１０からＤ１１１、およびＤ１２０からＤ１２１、およびＤ１３０を用いた判定についてそれぞれＳ２１２ｄからＳ２１２ｇで詳細化する。
【０１３０】
Ｓ２１２ｄでは、取得した条件情報がＤ１１０で指定された範囲内であることを示す位置情報かどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２１３に遷移する。Ｄ１１０による位置情報の範囲指定の方法は図８で述べた通りである。あるいはＳ２１２ｄでは、取得した条件情報がＤ１１１で指定された範囲内であることを示す位置情報かどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２１３に遷移する。Ｄ１１１による位置情報の範囲指定の方法は図８で述べた通りである。この処理により、予め想定した適正な所定位置でのみ、端末３に端末秘密鍵を設定することが可能となる。なお、前述の通り、Ｓ２１２ｄでは範囲外である場合に判定結果をＯＫとし、範囲内である場合に判定結果をＮＧとしてもよい。この場合、予め想定した不正な所定位置での秘密鍵設定を防止することが可能となる。この例は、秘密情報格納装置２の記憶容量を節約したい場合等に有効である。
【０１３１】
Ｓ２１２ｅでは、取得した条件情報がＤ１２０で指定された範囲内であることを示す時刻情報かどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２１３に遷移する。Ｄ１２０による時刻情報の範囲指定の方法は図８で述べた通りである。あるいはＳ２１２ｅでは、取得した条件情報がＤ１２１で指定された範囲内であることを示す時刻情報かどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２１３に遷移する。Ｄ１２１による時刻情報の範囲指定の方法は図８で述べた通りである。この処理により、予め想定した適正な所定時間帯でのみ、端末３に端末秘密鍵を設定することが可能となる。なお、前述の通り、Ｓ２１２ｅでは範囲外である場合に判定結果をＯＫとし、範囲内である場合に判定結果をＮＧとしてもよい。この場合、予め想定した不正な所定時間帯での秘密鍵設定を防止することが可能となる。この例は、秘密情報格納装置２の記憶容量を節約したい場合等に有効である。
【０１３２】
Ｓ２１２ｆでは、取得した条件情報がＤ１３０で指定された管理者ＩＤと照合情報の照合が成功するかどうかを判定し、判定結果がＯＫであればＳ２１２ｇに遷移し、そうでなければＳ２１３に遷移する。照合成功の判定の方法は図８で述べた通りである。Ｓ２１２ｇでは照合成功となった数が必要承認数を満たしたかどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２０９に遷移することで追加の条件情報を取得する。この処理により、予め想定した人数のユーザ認証を経た後にのみ、端末３に端末秘密鍵を設定することが可能となる。なお、ユーザ認証を複数回実施する場合には、それぞれのユーザが認証する順序を予め記憶し、その順序で認証が実施された場合にのみ端末秘密鍵の設定が許可されるようにしてもよい。この場合、例えば職位の低いユーザ、職位の高いユーザ、という正規の順序で承認が実施された場合にのみ端末秘密鍵の設定が可能となる。
【０１３３】
図１１ではＤ１４０からＤ１４２を用いた判定についてそれぞれＳ２１２ｈからＳ２１２ｊで詳細化する。
【０１３４】
Ｓ２１２ｈでは、取得した条件情報がＤ１４０の端末ＩＤ文字列と一致する文字列であるかどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２１３に遷移する。この処理により、予めＩＤが付与された正規の端末にのみ、端末秘密鍵を設定することが可能となる。
【０１３５】
Ｓ２１２ｉでは、取得した条件情報とＤ１４１の端末画像テンプレートとの所定の方法による照合処理の照合結果が所定の閾値を上回るかどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２１３に遷移する。この処理により、厳密なＩＤ管理およびユーザがＩＤを手入力する手間を省略することが可能となる。この例は、端末が多数存在する場合に、撮像装置前をコンベヤ等で端末を移動させ、Ｓ２１２の判定処理を自動で実施したい場合等に有効である。
【０１３６】
Ｓ２１２ｊでは、取得した条件情報とＤ１４２の音声入力テンプレートとの所定の方法による照合処理の照合結果が所定の閾値を上回るかどうかを判定し、判定結果がＯＫであればＳ２１５に遷移し、そうでなければＳ２１３に遷移する。この処理により、ユーザがＩＤを手入力する手間を省略することが可能となる。
【０１３７】
なお、図９から図１１の判定フローは、それぞれ独立に記載しているが、これらの判定を組み合わせた判定を行なってもよい。すなわち、図３でも説明したように、端末ＩＤ２１１０のＸＹＺの行には複数の条件情報（Ｃ１０００、Ｃ１００１）が記載されているので、このような場合には、Ｓ２１２ｃとＳ２１２ｄの判定処理が直列で実施されることとなる
図１２から図１４は、端末３に端末秘密鍵を設定するための別の方法を示すための構成ならびに処理の一例を示したものである。本例では条件情報２１１４に相当する情報が暗号化されて情報装置１に格納される。これにより秘密情報格納装置２の記憶部２１の容量をより節約することができる。
【０１３８】
図１２は、情報装置１の暗号化秘密鍵格納テーブル１１１、秘密情報格納装置２の情報格納テーブル２１１及び揮発性記憶部２５の別の構成例を示している。
【０１３９】
暗号化秘密鍵格納テーブル１１１は、図２で示した構成に加え、図３で示した条件情報ＩＤ２１１４と条件情報２１１５を暗号化したデータが、条件情報１１１４として格納されている。暗号化はサーバ４によって暗号鍵４１１３を用いて実施されたものである。
【０１４０】
情報格納テーブル２１１は、図３で示した情報格納テーブル２１１から、暗号化され暗号化秘密鍵格納テーブル１１１に格納されることにより不要となった構成である条件情報ＩＤ２１１４と条件情報２１１５を省略したものである。
【０１４１】
揮発性記憶部２５は、図３で示した構成に加え、復号した条件情報ＩＤと条件情報を格納する条件情報格納部２５０３を備える。
【０１４２】
図１３では、図１２の構成例を用いて端末３への端末秘密鍵の設定をするため、これに先立って情報装置１と秘密情報格納装置２にサーバ４から必要な情報を取得する処理の一例を示している。なお図６で示したフローと同一の処理については同じ番号を付し説明を省略する。
【０１４３】
Ｓ１０６、Ｓ１０７の処理に続き、情報装置１は、管理者ＩＤに対応付いた情報をサーバ４に要求し（Ｓ３０８）、サーバ４は管理者ＩＤに対応付いたエントリＩＤ４１１１、暗号鍵４１１３で暗号化した端末秘密鍵４１１２、暗号鍵４１１３で暗号化した条件情報ＩＤ４１１４、条件情報４１１５、を情報装置１に送付する（Ｓ３０９）。これらの情報を受け取った情報装置１は、これらを暗号化秘密鍵格納テーブル１１１のエントリＩＤ１１１１、端末秘密鍵１１１２、条件情報１１１４に、それぞれ格納する。
【０１４４】
図１４では、図１２の構成例を用いて端末３に端末秘密鍵を設定する処理の一例を示している。なお図７で示したフローと同一の処理については同じ番号を付し説明を省略する。
【０１４５】
Ｓ２０６に続き、エントリＩＤを取得した情報装置１は、このエントリＩＤに対して、暗号化秘密鍵格納テーブル１１１で対応付けられている端末秘密鍵１１１２及び条件情報１１１４を秘密情報格納装置２に送付する（Ｓ４０７）。これを受けた秘密情報格納装置２は、端末ＩＤ格納部２５０１に格納された端末ＩＤに対して、情報格納テーブル２１１を参照することで得られる暗号鍵２１１３によって、取得したデータを復号し、取り出した端末秘密鍵と条件情報を、それぞれ端末秘密鍵格納部２５０２及び条件情報格納部２５０３に格納する（Ｓ４０８）。続いて条件情報格納部２５０３に格納された条件情報ＩＤを情報装置１に送出する（Ｓ４０９）。
【０１４６】
図１５から図１７は、端末３に端末秘密鍵を設定するための別の方法を示すための構成ならびに処理の一例を示したものである。本例では情報装置１の端末秘密鍵１１１２に相当する情報が秘密情報格納装置２に格納される。これにより復号処理にかかる処理時間や、情報装置１と秘密情報格納装置２との通信による処理時間を削減し、処理全体を高速化することができる。
【０１４７】
図１５は、情報装置１の記憶部１１、秘密情報格納装置２の情報格納テーブル２１１、揮発性記憶部２５、サーバ４の情報格納テーブル４１１、の別の構成例を示している。
【０１４８】
記憶部１１は、図２で示した記憶部１１から、端末秘密鍵１１１２に相当する情報が秘密情報格納装置２に格納されるため不要となった構成である暗号化秘密鍵格納テーブル１１１を省略したものである。
【０１４９】
情報格納テーブル２１１は、図３で示した構成に加え、図４で示した端末秘密鍵４１１２が、端末秘密鍵２１１７として格納されている。端末秘密鍵２１１７に格納されるデータは、図２で示した端末秘密鍵１１１２と同等の情報であるが、暗号化されている必要はない。
【０１５０】
暗号化秘密鍵格納テーブル１１１は、図２で示した構成に加え、図３で示した条件情報ＩＤ２１１４と条件情報２１１５を暗号化したデータが、条件情報１１１４として格納されている。同様に、不要となった構成である暗号鍵２１１３は省略されている。
【０１５１】
揮発性記憶部２５は、図３で示した揮発性記憶部２５から、同様に不要となった構成である端末秘密鍵格納部２５０２を省略したものである。
【０１５２】
情報格納テーブル４１１は、図５で示した情報格納テーブル４１１から、同様に不要となった構成である暗号鍵４１１３を省略したものである。
【０１５３】
図１６では、図１５の構成例を用いて端末３への端末秘密鍵の設定をするため、これに先立って情報装置１と秘密情報格納装置２にサーバ４から必要な情報を取得する処理の一例を示している。なお図６で示したフローと同一の処理については同じ番号を付し説明を省略する。
【０１５４】
図１６では同様に不要となった処理であるＳ１０８とＳ１０９が省略されている。Ｓ１１１、Ｓ１１２に続き、秘密情報格納装置２は、管理者ＩＤに対応付いた情報をサーバ４に要求する（Ｓ６１３）。サーバ４は、管理者ＩＤに対応付いた端末ＩＤ４１１０、エントリＩＤ４１１１、端末秘密鍵４１１２、条件情報ＩＤ４１１４、条件情報４１１５を秘密情報格納装置２に送付する（Ｓ６１４）。これを受け取った秘密情報格納装置２は、これらの情報を情報格納テーブル２１１の端末ＩＤ２１１０、エントリＩＤ２１１１、端末秘密鍵２１１７、条件情報ＩＤ２１１４、条件情報２１１５に、それぞれ格納する。管理者ＩＤに対応付いたエントリが複数ある場合は、Ｓ１１４で説明した例を実施してもよい。
【０１５５】
図１７では、図１５の構成例を用いて端末３に端末秘密鍵を設定する処理の一例を示している。なお図７で示したフローと同一の処理については同じ番号を付し説明を省略する。
【０１５６】
図１７では同様に不要となった処理であるＳ２０６からＳ２０８が省略され、Ｓ２０４に続きＳ２０９が実施される。
【０１５７】
図１８から図２０は、端末３に端末秘密鍵を設定するための別の方法を示すための構成ならびに処理の一例を示したものである。本例では端末３が秘密情報格納装置２と相互認証を実施するための情報を予め保持している場合の例である。端末３のセキュリティ機能が充実している場合は、より安全性を高めて端末秘密鍵を設定することができる。
【０１５８】
図１８は、秘密情報格納装置２の情報格納テーブル２１１、端末３の記憶部３１、サーバ４の情報格納テーブル４１１の別の構成例を示している。
【０１５９】
情報格納テーブル２１１は、図３で示した構成に加え、エントリＩＤ２１１１と対応付いた端末認証情報２１１８を保持する構成要素を有する。端末認証情報２１１８は、秘密情報格納装置２が端末３と相互認証をするための情報であり、共通鍵暗号の暗号鍵や、公開鍵暗号に基づくＰＫＩによって端末３を認証するための公開鍵証明書を保持する。
【０１６０】
記憶部３１は、図４で示した構成に加え、端末設定用認証局証明書３１０６と、端末設定用秘密鍵３１０７を保持する。これらのいずれか一方のみ保持していても構わない。端末設定用認証局証明書３１０６は、秘密情報格納装置の端末認証情報２１１８がＰＫＩの公開鍵証明書を含む場合、公開鍵証明書に署名している認証局の公開鍵証明書等である。端末設定用秘密鍵３１０７は、秘密情報格納装置２が端末３を認証するために保持する情報であり、一例として共通鍵暗号の暗号鍵や、公開鍵暗号に基づくＰＫＩによる認証処理に必要な秘密鍵やこれと対となる公開鍵証明書を保持することが考えられる。
【０１６１】
情報格納テーブル４１１は、図５で示した構成に加え、端末認証情報２１１８で説明した端末認証情報を、端末情報４１１８としてエントリＩＤ４１１１と対応付けて格納するための構成要素を含む。
【０１６２】
図１９では、図１８の構成例を用いて端末３への端末秘密鍵の設定をするため、これに先立って情報装置１と秘密情報格納装置２にサーバ４から必要な情報を取得する処理の一例を示している。なお図６で示したフローと同一の処理については同じ番号を付し説明を省略する。
【０１６３】
Ｓ１１１、Ｓ１１２に続き、秘密情報格納装置２は、管理者ＩＤに対応付いた情報をサーバ４に要求する（Ｓ８１３）。サーバ４は、管理者ＩＤに対応付いた端末ＩＤ４１１０、エントリＩＤ４１１１、端末秘密鍵４１１２、条件情報ＩＤ４１１４、条件情報４１１５、端末認証情報４１１８を秘密情報格納装置２に送付する（Ｓ８１４）。これを受け取った秘密情報格納装置２は、これらの情報を情報格納テーブル２１１の端末ＩＤ２１１０、エントリＩＤ２１１１、端末秘密鍵２１１７、条件情報ＩＤ２１１４、条件情報２１１５、端末認証情報２１１８に、それぞれ格納する。管理者ＩＤに対応付いたエントリが複数ある場合は、Ｓ１１４で説明した例を実施してもよい。
【０１６４】
図２０では、図１８の構成例を用いて端末３に端末秘密鍵を設定する処理の一例を示している。なお図７で示したフローと同一の処理については同じ番号を付し説明を省略する。
【０１６５】
Ｓ２１２が成功したことに続いて、情報装置１はＳ２１４を実施する。秘密情報格納装置２は、端末設定用公開鍵２１０３を端末３に送付する（Ｓ９１５）。端末３は、取得した端末設定用公開鍵を、端末設定用認証局証明書３１０６から取り出した公開鍵で検証する（Ｓ９１６）。続いて秘密情報格納装置２は、端末認証情報２１１８、および端末設定用認証情報３１０７により、端末３を認証する（Ｓ９１７、Ｓ９１８）。例えば端末３の公開鍵証明書を秘密情報格納装置２が検証し、端末３が公開鍵証明書とペアとなる秘密鍵を保持していることを通信によって確認する。Ｓ９１５からＳ９１８を通して、暗号通信を確立する（Ｓ９１９、Ｓ９２０）。Ｓ９１９及びＳ９２０以降のフローでは、特に断りがない限り、秘密情報格納装置２と端末３との間の通信において、確立した暗号通信を通じて行われるものとする。
【０１６６】
本発明の全体を通し、フローに詳細を記してはいない場合であっても、一連のフローを実施している場合において、何らかのエラーが発生した場合は、その旨を各構成要素の制御部に通知しても構わない。
【０１６７】
またフローに詳細を記してはいないが、制御ソフト１２１は、必要に応じて、そのとき行っている処理を表示部１３１などによって適宜ユーザに通知しても構わない。特に一連の処理の完了や分岐においては、その旨をそれぞれの表示部によってユーザに通知するのが望ましい。また、表示部１３１と入力部１３２を組み合わせて分岐の判断をユーザに提示することで、ユーザに問い合わせても構わない。
【０１６８】
また、フローでは各ステップ間の情報のやり取りを省略して示している場合があるが、実際には、コマンドに対するレスポンスのペアを成している場合がある。また、各ステップ間の情報のやり取りを一組の双方向矢印で示している場合であっても、その中に複数のコマンド・レスポンスを含んでいても何ら問題ない。また、エンティティ間でデータを送受信するという内容を記述している場合でも、実際の通信は一方のエンティティがクライアント役、他方のエンティティがサーバ役となることで、のコマンド・レスポンスを通じて実施され、その結果として先述のようなデータの送信を実現していてもよい。
【０１６９】
なお、本発明は上記した各実施例に限定されるものではなく、様々な変形例が含まれる。上記した各実施例は本発明を分かりやすく説明するために詳細に説明されたものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１７０】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に格納されていてもよい。なお、図２１に示すように、各機能を実現するプログラム等をサーバ等に複製し、情報装置１、およびその他の端末、装置、機器等に有線または無線の通信回線等を介して提供するようにしても良い。この場合、ユーザは、端末等を操作して、サーバ等から必要なプログラム等をダウンロードし、端末等の記憶部にインストールさせる。
【０１７１】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１７２】
１：情報装置  ２：秘密情報格納装置  ３：端末  ４：サーバ
【図１】
0006419660.tif 000002
【図２】
0006419660.tif 000003
【図３】
0006419660.tif 000004
【図４】
0006419660.tif 000005
【図５】
0006419660.tif 000006
【図６】
0006419660.tif 000007
【図７】
0006419660.tif 000008
【図８】
0006419660.tif 000009
【図９】
0006419660.tif 000010
【図１０】
0006419660.tif 000011
【図１１】
0006419660.tif 000012
【図１２】
0006419660.tif 000013
【図１３】
0006419660.tif 000014
【図１４】
0006419660.tif 000015
【図１５】
0006419660.tif 000016
【図１６】
0006419660.tif 000017
【図１７】
0006419660.tif 000018
【図１８】
0006419660.tif 000019
【図１９】
0006419660.tif 000020
【図２０】
0006419660.tif 000021
【図２１】
0006419660.tif 000022