(57)【要約】【課題】本発明は、ワンチップマイコンが備える記憶部に書き込まれた電子証明書のデータに対して固有の固定値によって電子証明書の真正性の判定を行うことを可能とし、多数の電子証明書を予め記憶させることなく低コストで安全性の高い機器認証を可能とすることを目的とする。【解決手段】本発明に係る通信装置は、外部装置と通信する通信装置であって、外部装置との間での所定の認証処理に用いられる電子証明書に含まれる、当該電子証明書のデータに固有の固定値を予め記憶するチップ記憶部を有するワンチップマイコンと、チップ記憶部に記憶された固定値と、他の装置から受信した電子証明書に含まれる固定値とを比較することより、受信した電子証明書が真正であるか否かを判定する判定部と、判定部によって受信した電子証明書が真正であると判定された場合に限り、受信した電子証明書を用いた所定の認証処理を実行可能とする認証処理部と、を備える。【選択図】図２
2018174507.tif 000002
【特許請求の範囲】
【請求項１】
外部装置と通信する通信装置であって、
前記外部装置との間での所定の認証処理に用いられる電子証明書に含まれる、当該電子証明書のデータに固有の固定値を予め記憶するチップ記憶部を有するワンチップマイコンと、
前記チップ記憶部に記憶された固定値と、他の装置から受信した前記電子証明書に含まれる固定値とを比較することより、前記受信した電子証明書が真正であるか否かを判定する判定部と、
前記判定部によって前記受信した電子証明書が真正であると判定された場合に限り、前記受信した電子証明書を用いた前記所定の認証処理を実行可能とする認証処理部と、
を備えることを特徴とする通信装置。
【請求項２】
前記外部装置との通信において、前記外部装置を認証するための電子証明書である外部装置証明書を前記外部装置から受信したとき、前記外部装置証明書を検証するための電子証明書である認証局証明書を送信するよう前記他の装置に要求し、前記他の装置から前記認証局証明書を受信する認証局証明書要求部を更に有する、請求項１に記載の通信装置。
【請求項３】
前記外部装置との通信において前記外部装置に対して前記通信装置を認証させる際、当該外部装置が有する認証局証明書によって検証可能な、前記通信装置を認証するための電子証明書である自装置証明書を、前記他の装置に送信要求し、前記他の装置から前記自装置証明書を受信する自装置証明書要求部を更に有する、請求項１又は２に記載の通信装置。
【請求項４】
前記認証処理部は、前記受信した電子証明書を用いて認証処理を実行した場合、前記受信した電子証明書を消去する、請求項１〜３のいずれか一項に記載の通信装置。
【請求項５】
前記ワンチップマイコン外の記憶領域であるデータ記憶部を更に備え、
前記判定部は、真正であると判定された前記電子証明書のみを前記データ記憶部に記憶し、
前記認証処理部は、前記データ記憶部に記憶された前記電子証明書を用いて認証処理を実行する、請求項１〜４のいずれか一項に記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子証明書を用いた認証処理を実行し、外部装置との間で安全な通信を行う通信装置に関する。
【背景技術】
【０００２】
コンピュータだけでなく、多様な機器に通信機能を持たせ、インターネットへの接続や機器間の相互通信等を行うＩｏＴ（Internet of Things）が世の中において普及しつつあり、それに伴い機器認証の重要性がますます高まっている。機器認証の一方式である公開鍵暗号基盤（Public Key Infrastructure, PKI）を利用した認証方式は、相互接続性を目的としたオープンスタンダードを採用して汎用性が高く且つ安全性の高い認証方式として知られている。そのため、ＰＫＩによる機器認証は、既存のシステムに対しても広く適用可能であること等の理由から特に注目されている。
【０００３】
ＰＫＩによる機器認証を行うためには、機器に搭載された書き換え可能な記憶領域（ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）又はフラッシュメモリ（Flash Memory）等）に、ＰＫＩによる機器認証に必要な情報（電子証明書又は秘密鍵等）を記憶させておく必要があった。
【０００４】
例えば、特許文献１では、端末装置の工場出荷時において、全ての端末装置で共通する電子証明書（機器証明書）を予め記憶させておき、当該機器証明書を用いることによって、サービスの提供を受けるための電子証明書（サービス証明書）をダウンロードして端末装置内に記憶させ、外部装置からサービスの提供を受けるための機器認証を行う通信システムが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−４５０１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、通信装置に、電子証明書が書き込まれた後又は電子証明書が書き込まれる際に、本来の電子証明書とは異なる信頼できない電子証明書が記憶されたり、信頼できない電子証明書に改ざんされたりする恐れがあった。信頼できない電子証明書が記憶されたままでは、通信装置と外部装置等との間で安全な機器認証ができなくなり、不正アクセス又はなりすまし等が行われる危険性があった。
【０００７】
そのため、通信装置を制御するためのワンチップマイコンの製造段階において、ワンチップマイコン内に電子証明書を記憶させておくことで、電子証明書の改ざん等のリスクを減らし、通信システム全体のセキュリティ管理の費用を低減させることが行われている。すなわち、ワンチップマイコンの製造段階において、ワンチップマイコンのＲＯＭ（Read Only Memory）等に電子証明書を記憶させておけば、その後工程（通信機器の組立工程、工場出荷工程等）におけるワンチップマイコン内の電子証明書の改ざんリスクは最小限に低減させることができる。
【０００８】
一方で、一般的にワンチップマイコンが備えるメモリは、非常に小さい記憶容量しか持ち得ていない。そのため、様々な認証局（Certification Authority, CA）が発行した電子証明書を検証できるように複数の認証局証明書（ルート証明書、中間証明書）を記憶させておく必要がある場合、又は、多様なサービスを利用するために複数のクライアント証明書を記憶させておく必要がある場合、ワンチップマイコンが備えるメモリでは、各種電子証明書を記憶するための記憶容量が不足するといった問題が生じていた。
【０００９】
本発明は、このような従来の課題を解決すべくなされたものであり、ワンチップマイコンが備える記憶部に書き込まれた電子証明書のデータに対して固有の固定値（フィンガープリント等）によって電子証明書の真正性の判定を行うことにより、多数の電子証明書を予め記憶させることなく低コストで安全性の高い機器認証を可能とする通信装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明に係る通信装置は、外部装置と通信する通信装置であって、外部装置との間での所定の認証処理に用いられる電子証明書に含まれる、当該電子証明書のデータに固有の固定値を予め記憶するチップ記憶部を有するワンチップマイコンと、チップ記憶部に記憶された固定値と、他の装置から受信した電子証明書に含まれる固定値とを比較することより、受信した電子証明書が真正であるか否かを判定する判定部と、判定部によって受信した電子証明書が真正であると判定された場合に限り、受信した電子証明書を用いた所定の認証処理を実行可能とする認証処理部と、を備える。
【００１１】
また、本発明に係る通信装置において、外部装置との通信において、外部装置を認証するための電子証明書である外部装置証明書を外部装置から受信したとき、外部装置証明書を検証するための電子証明書である認証局証明書を送信するよう他の装置に要求し、他の装置から認証局証明書を受信する認証局証明書要求部を更に有することが好ましい。
【００１２】
また、本発明に係る通信装置において、外部装置との通信において外部装置に対して通信装置を認証させる際、当該外部装置が有する認証局証明書によって検証可能な、通信装置を認証するための電子証明書である自装置証明書を、他の装置に送信要求し、他の装置から自装置証明書を受信する自装置証明書要求部を更に有することが好ましい。
【００１３】
また、本発明に係る通信装置において、認証処理部は、受信した電子証明書を用いて認証処理を実行した場合、受信した電子証明書を消去することが好ましい。
【００１４】
また、本発明に係る通信装置において、ワンチップマイコン外の記憶領域であるデータ記憶部を更に備え、判定部は、真正であると判定された電子証明書のみをデータ記憶部に記憶し、認証処理部は、データ記憶部に記憶された電子証明書を用いて認証処理を実行することが好ましい。
【発明の効果】
【００１５】
本発明に係る通信装置によって、ワンチップマイコンが備える記憶部に書き込まれた電子証明書のデータに対して固有の固定値（フィンガープリント等）によって電子証明書の真正性の判定を行うことを可能とし、多数の電子証明書を予め記憶させることなく低コストで安全性の高い機器認証が可能となる。
【図面の簡単な説明】
【００１６】
【図１】通信システム１の概略構成の一例を示す図である。
【図２】端末装置２の概略構成の一例を示す図である。
【図３】証明書管理装置３の概略構成の一例を示す図である。
【図４】サーバ装置４の概略構成の一例を示す図である。
【図５】（ａ）は、クライアント証明書のデータ構造の一例を示す図であり、（ｂ）は、サーバ証明書のデータ構造の一例を示す図であり、（ｃ）は、認証局証明書のデータ構造の一例を示す図である。
【図６】（ａ）は、証明書管理テーブル３２１のデータ構造の一例を示す図であり、（ｂ）は、フィンガープリントテーブル２４２１のデータ構造の一例を示す図である。
【図７】製造システムの動作シーケンスの一例を示す図である。
【図８】通信システム１の動作シーケンスの一例を示す図である。
【図９】端末装置２０の概略構成の一例を示す図である。
【発明を実施するための形態】
【００１７】
以下、図面を参照しつつ、本発明の様々な実施形態について説明する。ただし、本発明の技術的範囲はそれらの実施形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶ点に留意されたい。
【００１８】
本実施形態の通信装置は、所定のサービスを提供する外部装置と通信するための通信装置であって、外部装置との間において電子証明書を用いた所定の認証処理を実行する。また、通信装置は、一つのＩＣ（Integrated Circuit）の中に、少なくともＣＰＵ（Central Processing Unit）等のチップ制御部、ＲＯＭ、フラッシュメモリ又はＲＡＭ（Random Access Memory）等のチップ記憶部、Ｉ／Ｏポート（Input/Output Port）等を有するワンチップマイコンを備える。
【００１９】
ワンチップマイコンが有するチップ記憶部は、ワンチップマイコンの製造段階において、外部装置との間での認証処理に用いられる電子証明書のデータに固有の固定値を記憶する。なお、電子証明書に固有の固定値は、当該電子証明書を構成する一部のデータに基づいた値であり、例えば、当該電子証明書を構成する一部のデータからハッシュ関数を用いて変換されたフィンガープリント（ハッシュ値）である。なお、固定値は、フィンガープリントに限らず、電子証明書を構成する公開鍵を少なくとも含む一部のデータに基づいて一意に生成された値であればどのようなデータであってもよい。
【００２０】
また、通信装置は、チップ記憶部に記憶された固定値と、外部装置とは異なる他の装置から受信した電子証明書に含まれる固定値とを比較することより、他の装置から受信した電子証明書が真正であるか否かを判定する判定部を更に備える。そして、通信装置は、判定部によって、他の装置から受信した電子証明書が真正であると判定された場合に限り、外部装置との間で、当該電子証明書を用いた所定の認証処理を実行可能とする端末認証処理部を備える。なお、判定部及び端末認証処理部は、ワンチップマイコンが有するチップ制御部によって実行されるプログラムにより実現される機能モジュールを想定するが、通信装置が備えるワンチップマイコンとは異なる制御部によって実行されるプログラムにより実現される機能モジュールであってもよい。以下、固定値として、フィンガープリントを例にして説明する。
【００２１】
図１は、通信システム１の概略構成の一例を示す図である。通信システム１は、複数の端末装置２、証明書管理装置３及びサーバ装置４を有する。複数の端末装置２、証明書管理装置３及びサーバ装置４は、有線又は無線のネットワーク５で接続され、相互に各種の情報を送受信する。
【００２２】
端末装置２は、証明書管理装置３と通信し、証明書管理装置３から電子証明書を受信する機能と、サーバ装置４と通信し、サーバ装置４から所定のサービスの提供を受ける機能とを有する。端末装置２は、例えば、警備に用いられるコントローラ等である。なお、端末装置２は、通信装置の一例である。
【００２３】
証明書管理装置３は、端末装置２によって用いられる電子証明書を管理するための装置であり、例えば、データベース装置及びウェブサーバ等により構成される。なお、証明書管理装置３は、他の装置の一例である。
【００２４】
電子証明書は、一又は複数の認証局によって、認証の対象機器である端末装置２及びサーバ装置４に対して発行（生成）される。一又は複数の認証局は、電子証明書として、端末装置２を認証するために用いられるクライアント証明書、及び、サーバ装置４を認証するために用いられるサーバ証明書を発行する。また、一又は複数の認証局は、電子証明書として、クライアント証明書及びサーバ証明書を検証するために、クライアント証明書及びサーバ証明書を発行した認証局の認証局証明書を発行する。なお、クライアント証明書は、自装置証明書の一例であり、サーバ証明書は、外部装置証明書の一例である。
【００２５】
サーバ装置４は、複数の端末装置２と通信し、複数の端末装置２のそれぞれに対して所定のサービスを提供するための装置であり、例えば、ウェブサーバ等によって構成される。なお、サーバ装置４は、外部装置の一例である。
【００２６】
なお、証明書管理装置３及びサーバ装置４は、同一のウェブサーバ装置等によって構成されてもよい。例えば、サーバ装置４が証明書管理装置３の全ての機能を備えるように構成されてもよく、また、証明書管理装置３がサーバ装置４の全ての機能を備えるように構成されてもよい。
【００２７】
図２は、端末装置２の概略構成の一例を示す図である。端末装置２は、ワンチップマイコン２４を有し、ワンチップマイコン２４に記憶されたフィンガープリントテーブル２４２１に含まれる各フィンガープリントと、証明書管理装置３から受信した電子証明書に含まれるフィンガープリントとを比較し、受信した電子証明書が真正であるか否かを判定する機能を有する。また、端末装置２は、証明書管理装置３から受信した電子証明書が真正であると判定された場合に限り、当該電子証明書を用いた所定の認証処理を実行する機能を有する。本実施形態では、端末装置２は、端末通信部２１、入力部２２、表示部２３、ワンチップマイコン２４を備える。
【００２８】
端末通信部２１は、有線又は無線のＬＡＮ（Local Area Network）の通信インターフェース、ＵＳＢ（Universal Serial Bus）等と接続するためのインターフェース、所定の周波数帯を感受帯域とするアンテナを含む、通信インターフェース等である。端末装置２は、端末通信部２１を介して証明書管理装置３又はサーバ装置４等と接続され、端末通信部２１は、ワンチップマイコン２４から供給されたデータを、証明書管理装置３又はサーバ装置４等に送信する。また、端末通信部２１は、証明書管理装置３又はサーバ装置４等から受信したデータをワンチップマイコン２４に供給する。
【００２９】
入力部２２は、キーボード若しくはテンキー、又は外部入力端子等によって構成される。例えば、入力部２２は、工場出荷時又はサービス開始時等において、初期設定に係る情報を入力するために用いられる。なお、入力部２２が外部入力端子によって構成される場合では、外部入力端子に接続されたモバイル端末等からの情報が入力される。
【００３０】
表示部２３は、例えば、有機ＥＬ（Electro−Luminescence）ディスプレイ、液晶ディスプレイ、又は、タッチパネル式の表示デバイス、ＬＥＤ等である。表示部２３は、ワンチップマイコン２４から供給された出力データに応じた表示出力を行う。
【００３１】
ワンチップマイコン２４は、電子証明書を構成する一部のデータに基づいて生成されたフィンガープリントを記憶する機能を有する。また、ワンチップマイコン２４は、記憶したフィンガープリントを用いて、証明書管理装置３から送信された電子証明書が真正であるか否かを判定する機能を有する。また、ワンチップマイコン２４は、電子証明書が真正であると判定された場合、当該電子証明書を用いた所定の認証処理を実行する機能を有する。そのために、ワンチップマイコン２４は、チップ制御部２４１、チップ記憶部２４２を有する。
【００３２】
チップ制御部２４１は、例えば、ＣＰＵ等のプロセッサであり、チップ記憶部２４２に記憶されているプログラムに基づいて各種処理を実行する。チップ制御部２４１は、少なくとも判定部２４１１、端末認証処理部２４１２、認証局証明書要求部２４１３、自装置証明書要求部２４１４を備える。これらの各部は、チップ制御部２４１が備えるプロセッサで実行されるプログラムにより実現される機能モジュールである。
【００３３】
判定部２４１１は、端末通信部２１を介して証明書管理装置３から電子証明書を受信した場合、受信した電子証明書に含まれるフィンガープリントと、後述するフィンガープリントテーブル２４２１に記憶されたフィンガープリントとを比較する。複数のフィンガープリントが記憶されている場合は、判定部２４１１はそれぞれとの比較を行う。次に、判定部２４１１は、電子証明書に含まれるフィンガープリントに合致するフィンガープリントがフィンガープリントテーブル２４２１に記憶されている場合、受信した電子証明書が真正であると判定する。また、判定部２４１１は、真正であると判定したクライアント証明書を、チップ記憶部２４２を構成するＲＡＭ又は図示しないデータ記憶部に記憶する。
【００３４】
端末認証処理部２４１２は、受信された電子証明書（認証局証明書、クライアント証明書）が判定部２４１１によって真正であると判定された場合、当該電子証明書を用いて認証処理を実行する。
【００３５】
認証局証明書要求部２４１３は、認証シーケンスにおいて端末通信部２１を介してサーバ装置４からサーバ証明書を受信した場合、当該サーバ証明書を検証するための認証局証明書の送信を要求する認証局証明書要求を、端末通信部２１を介して証明書管理装置３に送信する。
【００３６】
自装置証明書要求部２４１４は、認証シーケンスにおけるサーバ認証が終了した後に、サーバ装置４に自ら（端末装置２）を認証させるためのクライアント証明書の送信を要求するクライアント証明書要求を、端末通信部２１を介して証明書管理装置３に送信する。
【００３７】
チップ記憶部２４２は、ＲＯＭ、フラッシュメモリ、ＲＡＭ等から構成され、チップ制御部２４１での処理に用いられるプログラム及びデータ等を記憶する。なお、プログラム及びデータは、ワンチップマイコン２４の製造段階において、後述するワンチップマイコン記録装置６等によってチップ記憶部２４２に書き込まれる。また、チップ記憶部２４２は、データとして、後述するフィンガープリントテーブル２４２１等を記憶する。チップ記憶部２４２が記憶しているフィンガープリントテーブル２４２１には、複数の電子証明書のそれぞれに対応して証明書ＩＤとフィンガープリント（固定値）が記憶されている。これらの電子証明書には自装置証明書、認証局証明書が含まれる。
【００３８】
図３は、証明書管理装置３の概略構成の一例を示す図である。証明書管理装置３は、端末装置２によって用いられる電子証明書を記憶し、端末装置２からの要求に応じて、記憶する電子証明書（認証局証明書、クライアント証明書）を端末装置２に送信する機能を有する。また、証明書管理装置３は、後述する認証局７にクライアント証明書の発行を要求する機能を有する。また、証明書管理装置３は、後述するワンチップマイコン記録装置６にフィンガープリントを送信する機能を有する。そのために、証明書管理装置３は、少なくとも管理通信部３１、管理記憶部３２、管理制御部３３を備える。
【００３９】
管理通信部３１は、有線又は無線のＬＡＮの通信インターフェース、ＵＳＢ等と接続するためのインターフェース、所定の周波数帯を感受帯域とするアンテナを含む、通信インターフェース等である。証明書管理装置３は、管理通信部３１を介して端末装置２等と接続され、管理通信部３１は、管理制御部３３から供給されたデータを、端末装置２等に送信する。また、管理通信部３１は、端末装置２等から受信したデータを管理制御部３３に供給する。
【００４０】
管理記憶部３２は、例えば、ＲＯＭ、ＲＡＭ等の半導体メモリ装置、又は、ハードディスク、光ディスク等を備え、管理制御部３３での処理に用いられるプログラム、データ等を記憶するデータベース装置等によって構成される。なお、プログラムは、例えばＣＤ−ＲＯＭ（Compact Disk Read Only Memory）、ＤＶＤ−ＲＯＭ（Digital Versatile Disk Read Only Memory）等のコンピュータ読み取り可能な可搬型記録媒体から、公知のセットアッププログラム等を用いて管理記憶部３２にインストールされてもよい。また、管理記憶部３２は、データとして、後述する証明書管理テーブル３２１等を記憶する。
【００４１】
管理制御部３３は、一又は複数個のプロセッサ及びその周辺回路を備える。管理制御部３３は、証明書管理装置３の全体的な動作を統括的に制御するものであり、例えば、ＣＰＵである。管理制御部３３は、管理記憶部３２に記憶されているプログラムに基づいて処理を実行する。管理制御部３３は、少なくとも証明書管理部３３１を備える。証明書管理部３３１は、管理制御部３３が備えるプロセッサで実行されるプログラムにより実現される機能モジュールである。あるいは、証明書管理部３３１は、ファームウェアとして証明書管理装置３に実装されてもよい。
【００４２】
証明書管理部３３１は、認証局７から送信された認証局証明書を、管理通信部３１を介して受信した場合、受信した認証局証明書を証明書管理テーブル３２１に記憶する。また、証明書管理部３３１は、認証局７から送信されたクライアント証明書を、管理通信部３１を介して受信した場合、受信したクライアント証明書を証明書管理テーブル３２１に記憶する。また、証明書管理装置３の証明書管理部３３１は、ワンチップマイコン記録装置６によって送信されたクライアント証明書発行要求を、管理通信部３１を介して受信した場合、受信したクライアント証明書発行要求を、管理通信部３１を介して認証局７に送信する。
【００４３】
図４は、サーバ装置４の概略構成の一例を示す図である。サーバ装置４は、端末装置２からのＴＬＳ（Transport Layer Security）接続要求に応じて、自ら（サーバ装置４）に発行された予め記憶するサーバ証明書を端末装置２に送信する機能を有する。また、サーバ装置４は、端末装置２から受信したクライアント証明書が検証できた場合、端末装置２とのＴＬＳ接続を確立し、端末装置２に所定のサービスを提供する機能を有する。そのために、サーバ装置４は、少なくともサーバ通信部４１、サーバ記憶部４２、サーバ制御部４３を備える。なお、端末装置２からの接続要求は、ＴＬＳに限らず、ＤＴＬＳ（Datagram Transport Layer Security）、ＩＰＳｅｃ（Security Architecture for Internet Protocol）等、他の標準的なセキュアチャネルプロトコルを用いてもよい。
【００４４】
サーバ通信部４１は、有線又は無線のＬＡＮの通信インターフェース、ＵＳＢ等と接続するためのインターフェース、所定の周波数帯を感受帯域とするアンテナを含む、通信インターフェース等である。サーバ装置４は、サーバ通信部４１を介して端末装置２等と接続され、サーバ通信部４１は、サーバ制御部４３から供給されたデータを、端末装置２等に送信する。また、サーバ通信部４１は、端末装置２等から受信したデータをサーバ制御部４３に供給する。
【００４５】
サーバ記憶部４２は、例えば、ＲＯＭ、ＲＡＭ等の半導体メモリ装置、又は、ハードディスク、光ディスク等を備え、サーバ制御部４３での処理に用いられるプログラム、データ等を記憶する。なお、プログラムは、例えばＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等のコンピュータ読み取り可能な可搬型記録媒体から、公知のセットアッププログラム等を用いてサーバ記憶部４２にインストールされてもよい。また、サーバ記憶部４２は、データとして、後述するサーバ証明書、認証局証明書等を記憶する。
【００４６】
サーバ制御部４３は、一又は複数個のプロセッサ及びその周辺回路を備える。サーバ制御部４３は、サーバ装置４の全体的な動作を統括的に制御するものであり、例えば、ＣＰＵである。サーバ制御部４３は、サーバ記憶部４２に記憶されているプログラムに基づいて処理を実行する。サーバ制御部４３は、少なくともサーバ認証処理部４３１を備える。サーバ認証処理部４３１は、サーバ制御部４３が備えるプロセッサで実行されるプログラムにより実現される機能モジュールである。あるいは、サーバ認証処理部４３１は、ファームウェアとしてサーバ装置４に実装されてもよい。
【００４７】
サーバ認証処理部４３１は、サーバ通信部４１を介して端末装置２からＴＬＳ接続要求を受信した場合、サーバ記憶部４２に記憶されたサーバ証明書４２１を、サーバ通信部４１を介して端末装置２に送信する。また、サーバ認証処理部４３１は、サーバ通信部４１を介して端末装置２からクライアント証明書、生成した署名及び暗号文を受信した場合、当該クライアント証明書の検証を行う。また、サーバ認証処理部４３１は、受信した署名を、クライアント証明書に含まれる公開鍵（Public Key）を用いて検証することで、端末装置２が、クライアント証明書に含まれる公開鍵に対応する真正な秘密鍵を所有していることを確認する。さらにサーバ認証処理部４３１は、受信した暗号文を、サーバ装置４が記憶するサーバ証明書の公開鍵に対応する秘密鍵によって復号することによりｓｅｅｄを取得し、取得したｓｅｅｄから共通鍵を生成する。また、サーバ認証処理部４３１は、生成した共有鍵を用いて、端末装置２とのＴＬＳ接続を確立する。
【００４８】
以下、図５（ａ）〜（ｃ）を参照して、クライアント証明書、サーバ証明書及び認証局証明書の各電子証明書について説明する。なお、電子証明書は、例えば、ＩＴＵ−Ｔ（国際電気通信連合―電気通信標準化部門, International Telecommunication Union Telecommunication Standardization Sector）によって定められた規格である「X.509 v3 証明書フォーマット」に対応するデータ構造等によって構成される。
【００４９】
図５は、電子証明書のデータ構造の一例を示す図であり、同図（ａ）がクライアント証明書、同図（ｂ）がサーバ証明書、同図（ｃ）が認証局証明書のデータ構造の一例を示している。これらの電子証明書は、発行者ＩＤ（identification）、証明書ＩＤ、端末ＩＤ／サーバＩＤ／認証局ＩＤ、公開鍵、有効期間開始、有効期間終了、署名値、フィンガープリント等から構成される。
【００５０】
発行者ＩＤは、電子証明書を発行（生成）した認証局を一意に識別するための識別情報の一例である。証明書ＩＤは、同一発行者（認証局）によって発行された電子証明書を一意に識別するための識別情報の一例である。すなわち、異なる発行者によって発行された電子証明書の証明書ＩＤと同一の証明書ＩＤの証明書が他の発行者によって発行されることがある。
【００５１】
端末ＩＤ／サーバＩＤ／認証局ＩＤは、電子証明書によって認証される対象である端末装置２／サーバ装置４／認証局７を一意に識別するための識別情報の一例である。公開鍵は、秘密鍵によって署名された情報を検証するための鍵情報であり、秘密鍵に基づいて生成される。
【００５２】
有効期間開始は、電子証明書が有効である期間の開始日時を示す情報であり、有効期間終了は、電子証明書が有効である期間の終了日時を示す情報である。有効期間開始及び有効期間終了によって、電子証明書の有効期間が規定される。
【００５３】
署名値は、電子証明書を構成する、発行者ＩＤ、証明書ＩＤ、端末ＩＤ／サーバＩＤ／認証局ＩＤ、公開鍵、有効期間開始及び有効期間終了の一連のデータ列を、電子証明書の発行者である認証局の秘密鍵によって署名した情報である。なお、認証局は階層構造で関連付けられており、例えば、最上位の認証局（所謂「ルート認証局」）等は、下位の認証局の認証局証明書を発行する。また、ルート認証局は、自身に対して認証局証明書を発行する。
【００５４】
フィンガープリントは、クライアント証明書を構成する、発行者ＩＤ、証明書ＩＤ、端末ＩＤ／サーバＩＤ／認証局ＩＤ、公開鍵、有効期間開始、有効期間終了及び署名値の一連のデータ列が、ハッシュ関数によって生成（変換）されたハッシュ値である。フィンガープリントは、電子証明書のデータ量に関わらず同じ固定長を有する、電子証明書に対して固有の英数字の文字列情報である。なお、ハッシュ関数は、例えば、ＮＩＳＴ（National Institute of Standards and Technology）によって標準化されたＳＨＡ−１、ＳＨＡ−２等が用いられる。
【００５５】
図６（ａ）は、証明書管理テーブル３２１のデータ構造の一例を示す図である。証明書管理テーブル３２１には、端末ＩＤ、発行者ＩＤ及び証明書種別と、各電子証明書とが互いに関連付けて記憶される。端末ＩＤは、各電子証明書の送信先として規定された端末装置２を識別するための端末ＩＤである。発行者ＩＤは、各電子証明書を発行した認証局を識別するための発行者ＩＤである。証明書種別には、「クライアント証明書」及び「認証局証明書」のいずれか一方を示す種別情報が記憶される。電子証明書には、図５（ａ）及び図５（ｃ）に示すデータ構造のクライアント証明書及び認証局証明書のいずれか一方のデータ本体が記憶される。なお、証明書管理テーブル３２１において、発行者ＩＤが各電子証明書に関連付けて記憶されなくてもよい。この場合、各電子証明書内に記憶された発行者ＩＤが参照される。
【００５６】
図６（ｂ）は、フィンガープリントテーブルのデータ構造の一例を示す図である。フィンガープリントテーブルには、各電子証明書を識別するための証明書ＩＤとフィンガープリントとが互いに関連付けて記憶されている。すなわち、図５（ａ）〜（ｃ）で示される各種電子証明書のデータ構造における、証明書ＩＤとフィンガープリントとのデータセットが、フィンガープリントテーブルに記憶される。なお、異なる認証局から同じ証明書ＩＤの電子証明書が発行される場合を想定して、証明書ＩＤだけでなく発行者ＩＤについても関連付けて記憶してもよい。
【００５７】
図７は、端末装置２のワンチップマイコン２４に内蔵されるチップ記憶部２４２にフィンガープリントテーブル２４２１を記憶させる際に利用される製造システムの動作シーケンスの一例を示す図である。
【００５８】
製造システムは、一又は複数の認証局７と証明書管理装置３とワンチップマイコン記録装置６とを有する。一又は複数の認証局７、証明書管理装置３及びワンチップマイコン記録装置６は、有線又は無線のネットワーク５で接続され、相互に各種の情報を送受信する。
【００５９】
ワンチップマイコン記録装置６は、ワンチップマイコン２４を製造するときに用いられる製造装置の一種であり、ワンチップマイコン２４のチップ記憶部２４２にデータ等を記録するための装置である。すなわち、ワンチップマイコン記録装置６は、端末装置２の動作に必要な各種データ（例えば、フィンガープリントテーブル２４２１、ブートローダー等の各種プログラム）をチップ記憶部２４２に書き込む。この動作シーケンスは、製造システムが有する、一又は複数の認証局７と証明書管理装置３とワンチップマイコン記録装置６との各要素が協働して実行される。
【００６０】
最初に、認証局７は、所定のタイミングにおいて、自ら（認証局７）の認証局証明書を、証明書管理装置３に送信する（ステップＳ１０１）。所定のタイミングは、例えば、証明書管理装置３から送信された認証局証明書の送信要求が受信されたとき、又は、直前に用いていた自らの認証局証明書の有効期間の終了日時が経過したとき若しくは終了日時の所定時間前、等である。なお、直前に用いられていた認証局証明書の有効期間の終了日時が経過したとき若しくは終了日時の所定時間前に送信される認証局証明書は、新たに生成された次の認証局証明書である。
【００６１】
次に、証明書管理装置３の証明書管理部３３１は、認証局７から送信された認証局証明書を、管理通信部３１を介して受信した場合、受信した認証局証明書を証明書管理テーブル３２１に記憶する（ステップＳ１０２）。以下、認証局証明書の記憶処理の一例について説明する。まず、証明書管理部３３１は、受信した認証局証明書を用いる端末装置２を決定する。例えば、証明書管理装置３は、複数の端末装置２ごとに定められた、各端末装置２で用いられる認証局証明書を示す使用情報を記憶しており、証明書管理部３３１は、使用情報に基づいて、受信した認証局証明書を用いる端末装置２を決定する。そして、証明書管理部３３１は、決定された端末装置２の端末ＩＤと、受信した認証局証明書に記された発行者ＩＤと、受信した認証局証明書の種別を示す証明書種別と、受信した認証局証明書とを関連付けて証明書管理テーブルに記憶する。以上により、認証局証明書の記憶処理が終了する。
【００６２】
次に、ワンチップマイコン記録装置６は、ワンチップマイコン２４の製造段階において、ワンチップマイコン２４を搭載する端末装置２の端末ＩＤ、有効期間開始及び有効期間終了を含むクライアント証明書発行要求を、証明書管理装置３に送信する（ステップＳ１０３）。なお、クライアント証明書発行要求に含まれる端末ＩＤは複数であってもよい。例えば、１００台の端末装置２のクライアント証明書が必要となった場合、当該１００台の端末装置２のそれぞれの端末ＩＤを含むクライアント証明書発行要求を送信する。なお、ステップＳ１０３の処理に代えて、ＵＳＢメモリ等の記録媒体に、製造段階の端末装置２の端末ＩＤを記録させておき、証明書管理装置３が、当該ＵＳＢメモリを介して端末装置２の端末ＩＤを取得するようにしてもよい。
【００６３】
次に、証明書管理装置３の証明書管理部３３１は、ワンチップマイコン記録装置６によって送信されたクライアント証明書発行要求を、管理通信部３１を介して受信した場合、受信したクライアント証明書発行要求を認証局７に送信する（ステップＳ１０４）。
【００６４】
次に、認証局７は、証明書管理装置３から送信されたクライアント証明書発行要求を受信した場合、受信したクライアント証明書発行要求に基づいてクライアント証明書を生成する（ステップＳ１０５）。以下、クライアント証明書の生成処理の一例について説明する。まず、認証局７は、クライアント証明書発行要求から端末ＩＤ、有効期間開始及び有効期間終了を抽出し、抽出した端末ＩＤごとに、秘密鍵と当該秘密鍵に対応する公開鍵とを生成する。次に、認証局７は、当該認証局７を識別する発行者ＩＤ、新たに付与した証明書ＩＤ、抽出した端末ＩＤ、生成した公開鍵、抽出した有効期間開始及び有効期間終了の一連のデータ列を特定する。次に、認証局７は、自ら（認証局７）の秘密鍵を用いて、特定したデータ列から署名値を生成する。次に、認証局７は、特定したデータ列と署名値を、所定のハッシュ関数を用いて変換したフィンガープリントを生成する。そして、認証局は、特定したデータ列、署名値、フィンガープリントに基づいて、クライアント証明書を生成し、クライアント証明書の生成処理を終了する。なお、クライアント証明書発行要求に複数の端末ＩＤが含まれている場合、認証局７は、各端末ＩＤに対して上述の生成処理を実行することにより、各端末装置に対応するクライアント証明書を生成する。
【００６５】
次に、認証局７は、生成したクライアント証明書と当該クライアント証明書に含まれる公開鍵に対応する秘密鍵とを、クライアント証明書発行要求を送信した証明書管理装置３に送信する（ステップＳ１０６）。この際、秘密鍵を含むクライアント証明書のデータ形式（PKCS#12（Public Key Cryptography Standards # 12））によって送信してもよい。
【００６６】
次に、証明書管理装置３の証明書管理部３３１は、認証局７から送信されたクライアント証明書を証明書管理テーブル３２１に記憶する（ステップＳ１０７）。以下、クライアント証明書の記憶処理の一例について説明する。まず、証明書管理部３３１は、受信したクライアント証明書を用いる端末装置２を決定する。例えば、証明書管理装置３は、複数の端末装置２ごと定められた、各端末装置２で用いられるクライアント証明書を示す使用情報を記憶しており、証明書管理部３３１は、使用情報に基づいて、受信したクライアント証明書を用いる端末装置２を決定する。なお、使用情報を用いずに、受信したクライアント証明書に記された端末ＩＤを参照することにより、当該クライアント証明書を用いる端末装置２を決定してもよい。そして、証明書管理装置３は、決定された端末装置２の端末ＩＤと、クライアント証明書とともに受信した発行者ＩＤと、受信したクライアント証明書の種別を示す証明書種別と、受信したクライアント証明書とを関連付けて証明書管理テーブルに記憶して、クライアント証明書の記憶処理を終了する。
【００６７】
次に、証明書管理部３３１は、証明書管理テーブルを参照して、ステップＳ１０３において送信されたクライアント証明書発行要求に含まれる端末ＩＤごとに、フィンガープリントの読み出し処理を実行する（ステップＳ１０８）。以下、フィンガープリントの読み出し処理の一例について説明する。まず、証明書管理部３３１は、クライアント証明書発行要求に含まれる端末ＩＤごとに、各端末ＩＤに関連付けられた各電子証明書（クライアント証明書及び認証局証明書）を証明書管理テーブルから抽出する。次に、証明書管理部３３１は、各端末ＩＤに対応する抽出した電子証明書に含まれる証明書ＩＤ及びフィンガープリントを読み出す。そして、証明書管理部３３１は、各端末ＩＤに対して、読み出した証明書ＩＤ及びフィンガープリントを対応付ける。以上により、フィンガープリントの読み出し処理が終了する。
【００６８】
次に、証明書管理部３３１は、各端末ＩＤに対応付けられた証明書ＩＤ及びフィンガープリントを、ワンチップマイコン記録装置６に送信する（ステップＳ１０９）。なお、ステップＳ１０９の処理に代えて、ＵＳＢメモリ等の記録媒体に、各端末ＩＤに対応付けられた証明書ＩＤ及びフィンガープリントを記録させておき、ワンチップマイコン記録装置６が、当該ＵＳＢメモリを介して各端末ＩＤに対応付けられた証明書ＩＤ及びフィンガープリントを取得するようにしてもよい。
【００６９】
そして、ワンチップマイコン記録装置６は、受信した証明書ＩＤ及びフィンガープリントを、対応する端末ＩＤのワンチップマイコン２４に書き込む（ステップＳ１１０）。なお、製造が完了したワンチップマイコンは、端末ＩＤごとに出荷管理される。
【００７０】
なお、本実施形態では、フィンガープリントの読み出し処理では、読み出した証明書ＩＤ及びフィンガープリントを各端末ＩＤに対応付けて管理したが、これに限らず、証明書管理テーブル３２１に記憶された全ての電子証明書に含まれるフィンガープリントの総データサイズがワンチップマイコン２４のチップ記憶部２４２の記憶容量よりも小さい場合では、証明書管理テーブル３２１に記憶された全ての電子証明書に含まれる証明書ＩＤ及びフィンガープリントをワンチップマイコン記録装置６に送信してもよい。この場合、ワンチップマイコン記録装置６は、各端末ＩＤのワンチップマイコン２４に、受信した全ての証明書ＩＤ及びフィンガープリントを書き込む。これにより、全てのワンチップマイコン２４に同じフィンガープリントテーブル２４２１を記憶すればよいため、ワンチップマイコンを端末ＩＤごとに出荷管理しなくてよく、ワンチップマイコン２４の出荷管理が容易になり管理コストも圧縮できる。
【００７１】
図８は、通信システム１の動作シーケンスの一例を示す図である。この動作シーケンスは、予めチップ記憶部２４２、管理記憶部３２及びサーバ記憶部４２に記憶されているプログラムに基づいて、主にチップ制御部２４１、管理制御部３３及びサーバ制御部４３により、端末装置２、証明書管理装置３及びサーバ装置４の各要素と協働して実行される。
【００７２】
最初に、端末装置２の端末認証処理部２４１２は、例えば、ユーザによる入力部２２の操作に応じた指示に従って、ＴＬＳ接続要求をサーバ装置４に送信する（ステップＳ２０１）。
【００７３】
次に、サーバ装置４のサーバ認証処理部４３１は、端末装置２からＴＬＳ接続要求を受信した場合、サーバ記憶部４２に記憶されたサーバ証明書４２１とランダムな情報とを、サーバ通信部４１を介して端末装置２に送信する（ステップＳ２０２）。
【００７４】
次に、端末装置２の認証局証明書要求部２４１３は、サーバ装置４からサーバ証明書４２１を受信した場合、受信したサーバ証明書４２１に含まれる発行者ＩＤを抽出し、自身の端末ＩＤ及び抽出した発行者ＩＤを含む認証局証明書要求を、証明書管理装置３に送信する（ステップＳ２０３）。
【００７５】
次に、証明書管理装置３の証明書管理部３３１は、端末装置２から認証局証明書要求を受信した場合、証明書管理テーブル３２１から、認証局証明書要求に含まれる端末ＩＤ及び発行者ＩＤに関連付けられた認証局証明書を選択し（ステップＳ２０４）、選択した認証局証明書を端末装置２に送信する（ステップＳ２０５）。
【００７６】
次に、端末装置２の判定部２４１１は、証明書管理装置３から受信した認証局証明書に含まれるフィンガープリントとフィンガープリントテーブル２４２１に記憶されたフィンガープリントとを比較する。判定部２４１１は、認証局証明書に含まれるフィンガープリントに合致するフィンガープリントがフィンガープリントテーブル２４２１に記憶されている場合、受信した認証局証明書が真正であると判定する（ステップＳ２０６）。
【００７７】
次に、端末装置２の端末認証処理部２４１２は、判定部２４１１によって受信された認証局証明書が真正であると判定された場合、ステップＳ２０２において送信されたサーバ証明書に含まれる署名値を、真正であると判定された認証局証明書に含まれる公開鍵を用いて署名検証を行う（ステップＳ２０７）。端末認証処理部２４１２は、署名検証ができた場合、サーバ認証が成功したと判定し、サーバ認証済みのサーバ証明書を、チップ記憶部２４２を構成するＲＡＭ又は図示しないデータ記憶部に記憶するとともにステップＳ２０８に処理を進め、署名検証ができなかった場合、サーバ認証が失敗したと判定して、ＴＬＳ接続シーケンスを終了する。なお、サーバ認証は、ステップＳ２０１〜Ｓ２０７の一連の手続による認証である。
【００７８】
次に、端末装置２の自装置証明書要求部２４１４は、自身の端末ＩＤ及びサーバ認証済みのサーバ証明書に含まれる発行者ＩＤを含むクライアント証明書要求を、証明書管理装置３に送信する（ステップＳ２０８）。なお、クライアント証明書要求は、送信要求の一例である。
【００７９】
次に、証明書管理装置３の証明書管理部３３１は、端末装置２からクライアント証明書要求を受信した場合、証明書管理テーブル３２１から、クライアント証明書要求に含まれる端末ＩＤ及び発行者ＩＤに関連付けられたクライアント証明書を選択する（ステップＳ２０９）。なお、端末装置２がクライアント証明書要求としてサーバＩＤも含んで送信され、且つ証明書管理装置３の管理記憶部３２が、サーバ装置４ごとに、各サーバ装置４が信頼している認証局７を示す所定のテーブル（サーバ装置４のサーバＩＤと認証局７の発行者ＩＤとが互いに対応付けられたテーブル）を記憶してもよい。この場合、クライアント証明書を選択する処理において、証明書管理部３３１は、選択された一又は複数のクライアント証明書の中から、所定のテーブルを参照して、クライアント証明書要求とともに受信したサーバＩＤに対応付けられた発行者ＩＤを含むクライアント証明書を更に選択してもよい。
【００８０】
次に、証明書管理装置３の証明書管理部３３１は、選択したクライアント証明書を、当該クライアント証明書に含まれる公開鍵に対応する秘密鍵とともに、管理通信部３１を介して端末装置２に送信する（ステップＳ２１０）。なお、秘密鍵を含むクライアント証明書のデータ形式（PKCS#12）によって送信してもよい。なお、認証局７と証明書管理装置３との間で秘密鍵が送信されるため、予め認証局７と証明書管理装置３との間でセキュアチャネルを確立しておくことが望ましい。また、端末装置２が、予め当該秘密鍵を記憶している場合は、秘密鍵は送信されない。
【００８１】
次に、端末装置２の判定部２４１１は、証明書管理装置３からクライアント証明書を受信した場合、受信したクライアント証明書に含まれるフィンガープリントとフィンガープリントテーブル２４２１に記憶されたフィンガープリントとを比較する。そして、合致するフィンガープリントがフィンガープリントテーブル２４２１に記憶されている場合、受信したクライアント証明書が真正であると判定する（ステップＳ２１１）。なお、判定部２４１１は、真正であると判定したクライアント証明書を、チップ記憶部２４２を構成するＲＡＭ又は図示しないデータ記憶部に記憶する。
【００８２】
次に、端末装置２の端末認証処理部２４１２は、クライアント証明書とともに受信した秘密鍵によって、Ｓ２０２で受信したランダムな情報を使って署名を生成するとともに、サーバ認証済みのサーバ証明書に含まれる公開鍵によって、ｓｅｅｄを暗号化した暗号文を生成する（ステップＳ２１２）。なお、ｓｅｅｄは、端末認証処理部２４１２によって生成された所定長のデータ列である。次に、端末認証処理部２４１２は、クライアント証明書、生成した署名及び暗号文を、端末通信部２１を介してサーバ装置４に送信する（ステップＳ２１３）。
【００８３】
次に、サーバ装置４のサーバ認証処理部４３１は、端末装置２からクライアント証明書、生成した署名及び暗号文を受信した場合、クライアント証明書に含まれる署名値を、サーバ記憶部４２に記憶された認証局証明書４２２に含まれる公開鍵を用いて署名検証を行う（ステップＳ２１４）。サーバ認証処理部４３１は、署名検証ができた場合、ステップＳ２１５に処理を進め、署名検証ができなかった場合、クライアント認証が失敗したと判定して、ＴＬＳ接続シーケンスを終了する。なお、クライアント認証は、ステップＳ２０８〜Ｓ２１５の一連の手続による認証である。
【００８４】
次に、サーバ認証処理部４３１は、受信した（ランダムな情報になされた）署名を、クライアント証明書に含まれる公開鍵を用いて検証することで、端末装置２が、クライアント証明書に含まれる公開鍵に対応する真正な秘密鍵を所有していることを確認し、且つ、受信した暗号文を、サーバ装置４が記憶するサーバ証明書の公開鍵に対応する秘密鍵によって復号することによりｓｅｅｄを取得し、取得したｓｅｅｄから共通鍵を生成する（ステップＳ２１５）。
【００８５】
次に、サーバ認証処理部４３１は、生成した共有鍵を用いて、端末装置２とのＴＬＳ接続を確立する（ステップＳ２１６）。なお、ＴＬＳ接続が確立した後又はサービス終了後に、端末装置２の端末認証処理部２４１２は、証明書管理装置３から受信した各種電子証明書を消去してもよい。そして、サーバ装置４は、確立したＴＬＳ接続のセキュアチャネルを介して所定のサービスを端末装置２に提供する（ステップＳ２１７）。
【００８６】
上述のとおり、端末装置２は、電子証明書の一部のデータから生成された固定値を予め記憶するチップ記憶部を有するワンチップマイコンと、チップ記憶部に記憶された固定値と、他の装置から受信した電子証明書に含まれる固定値とを比較することより、受信した電子証明書が真正であるか否かを判定する判定部と、判定部によって受信した電子証明書が真正であると判定された場合に限り、受信した電子証明書を用いた所定の認証処理を実行可能とする認証処理部を備えることにより、必要に応じて別途入手した電子証明書の真正性の判定を行うことができ、複数の電子証明書を予め記憶させることなく、低コストで安全性の高い機器認証が可能となる。
【００８７】
上述した実施形態では、端末装置２は、認証処理の都度、必要な電子証明書（クライアント証明書又は認証局証明書）を証明書管理装置３から受信し、受信した電子証明書をワンチップマイコン２４のＲＡＭ領域に一時記憶し、チップ記憶部２４２に予め記憶してあるフィンガープリントと合致することにより真正性を判定した上で、認証処理を実行していた。しかしながら、上述の電子証明書を都度受信する方法に限らず、端末装置２０は、証明書管理装置３から認証処理で用いられる複数の電子証明書を一括で受信し、これら複数の電子証明書の真正性を判定した上で、真正な電子証明書のみを端末記憶部２５（フラッシュメモリ、ＥＥＰＲＯＭ等）に記憶し、当該記憶した電子証明書を用いて認証処理を実行してもよい。
【００８８】
図９は、証明書管理装置３から認証処理で用いられる複数の電子証明書を一括で受信する端末装置２０の概略構成の一例を示す図である。図９において、図２に示す端末装置２と同じ構成については同じ符号を付し、その説明を省略する。
【００８９】
端末装置２は、端末通信部２１、入力部２２、表示部２３、ワンチップマイコン２４とともに、さらに端末記憶部２５を備える。端末記憶部２５は、端末装置２の製造段階において、チップ記憶部２４２とは異なる記憶素子として追加された記憶領域（フラッシュメモリ、ＥＥＰＲＯＭ等）であり、チップ記憶部２４２よりも記憶容量が大きい。
【００９０】
端末記憶部２５は、端末装置２が認証処理で用いる電子証明書（クライアント証明書及び認証局証明書）を記憶する。クライアント証明書は、当該クライアント証明書に含まれる公開鍵に対応する秘密鍵を含む形式（PKCS#12）に従って記憶される。なお、秘密鍵は端末記憶部２５とは異なる他の記憶領域に別途記憶されてもよい。例えば、秘密鍵へのアクセスが制限されたチップ記憶部２４２に記憶されることにより、よりセキュリティレベルを上げることが可能となる。
【００９１】
製造システムにおける、端末装置２０に搭載されるワンチップマイコン２４の製造工程を示す動作シーケンスは、図７に示される動作シーケンスのステップＳ１０１〜Ｓ１１０と同じであるため説明を省略する。本実施形態では、ステップＳ１１０の実行後、所定のタイミングにおいて端末装置２０は利用する電子証明書を一括ダウンロードする処理を実行する。ここで所定のタイミングとは、例えば、端末装置２０を製造する工場において端末装置２０の出荷前のタイミングだったり、製造された端末装置２０がユーザ宅に設置されるタイミングだったりする。この際、端末装置２０は、証明書管理装置３に対して自らの端末ＩＤを含む電子証明書ダウンロード要求を送信する。証明書管理装置３の証明書管理部３３１は、電子証明書ダウンロード要求を受信した場合、証明書管理テーブルを参照して、電子証明書ダウンロード要求に含まれる端末ＩＤに関連付けられた全ての電子証明書を読み出し、電子証明書ダウンロード要求を送信した端末装置２０に送信する。
【００９２】
一又は複数の電子証明書を受信した端末装置２０の判定部２４１１は、受信した全ての電子証明書に含まれるフィンガープリントとフィンガープリントテーブル２４２１に記憶されたフィンガープリントとを比較し、合致するフィンガープリントを含む電子証明書が真正であると判定する。そして、判定部２４１１は、真正であると判定された電子証明書のみを端末記憶部２５に記憶する。判定部２４１１は、受信した電子証明書が真正でないと判定された場合、表示部２３にその旨を知らせるエラー表示を出力する。また、端末認証処理部２４１２は、認証処理において、必要な電子証明書を端末記憶部２５に記憶していない場合は、認証処理の失敗として、表示部にその旨を知らせるエラー表示を出力する。
【００９３】
なお、判定部２４１１は、認証処理で用いられる複数の電子証明書を（真正性を確認することなく）予め端末記憶部２５に記憶し、端末装置２の起動時に、端末記憶部２５に記憶している全ての電子証明書の真正性を判定してもよい。この場合、判定部２４１１は、端末記憶部２５に記憶している電子証明書が真正でないと判定された場合、当該電子証明書を端末記憶部２５から消去してもよい。また、判定部２４１１は、端末記憶部２５に記憶している電子証明書が真正でないと判定された場合、不正とみなして端末装置２を正常起動させない制御を行ってもよい。
【００９４】
また、判定部２４１１は、認証処理で用いられる複数の電子証明書を（真正性を確認することなく）予め端末記憶部２５に記憶し、端末装置２における認証処理の開始時に、当該認証処理で用いられる電子証明書の真正性を判定してもよい。この際、判定部２４１１は、端末記憶部２５に記憶している電子証明書が真正でないと判定された場合、その旨を知らせるエラー表示を出力してもよい。
【００９５】
当業者は、本発明の精神及び範囲から外れることなく、様々な変更、置換及び修正をこれに加えることが可能であることを理解されたい。
【符号の説明】
【００９６】
１  通信システム、２，２０  端末装置、２１  端末通信部、２２  入力部、２３  表示部、２４  ワンチップマイコン、２４１  チップ制御部、２４１１  判定部、２４１２  端末認証処理部、２４１３  認証局証明書要求部、２４１４  自装置証明書要求部、２４２  チップ記憶部、２４２１  フィンガープリントテーブル、２５  端末記憶部、２５１  電子証明書、３  証明書管理装置、３１  管理通信部、３２  管理記憶部、３２１  証明書管理テーブル、３３  管理制御部、３３１  証明書管理部、４  サーバ装置、４１  サーバ通信部、４２  サーバ記憶部、４２１  サーバ証明書、４２２  認証局証明書、４３  サーバ制御部、４３１  サーバ認証処理部、５  ネットワーク、６  ワンチップマイコン記録装置、７  認証局。
【図１】
2018174507.tif 000003
【図２】
2018174507.tif 000004
【図３】
2018174507.tif 000005
【図４】
2018174507.tif 000006
【図５】
2018174507.tif 000007
【図６】
2018174507.tif 000008
【図７】
2018174507.tif 000009
【図８】
2018174507.tif 000010
【図９】
2018174507.tif 000011