(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023163417
(43)【公開日】2023-11-10
(54)【発明の名称】鍵管理装置および暗号鍵管理システム
(51)【国際特許分類】
H04L 9/08 20060101AFI20231102BHJP
H04L 9/10 20060101ALI20231102BHJP
H04L 9/32 20060101ALI20231102BHJP
【FI】
H04L9/08 B
H04L9/10 A
H04L9/32 200B
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022074330
(22)【出願日】2022-04-28
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】598076591
【氏名又は名称】東芝インフラシステムズ株式会社
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】三澤 裕人
(72)【発明者】
【氏名】福岡 寛規
(57)【要約】
【課題】 製品におけるデータ更新を安全に行える鍵管理装置および暗号鍵管理システムを提供する。
【解決手段】 実施形態によれば、鍵管理装置は、通信部とインターフェースとプロセッサとを有する。通信部は、製品を管理する製品管理装置と通信する。インターフェースは、鍵情報を生成し、生成した鍵情報をセキュアに保存するHSMと接続する。プロセッサは、製品管理装置から製品に書き込む暗号鍵が依頼された場合にHSMが生成する鍵情報に含まれる暗号鍵を製品管理装置へ送信し、製品管理装置から製品の更新データに対する鍵情報を用いた演算処理が依頼された場合にHSMが保存する製品に書き込んだ暗号鍵に対応する鍵情報を用いて更新データを演算処理したデータを製品管理装置へ送信する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
製品を管理する製品管理装置と通信する通信部と、
鍵情報を生成し、生成した鍵情報をセキュアに保存するHSMと接続するインターフェースと、
前記製品管理装置から前記製品に書き込む暗号鍵が依頼された場合に前記HSMが生成する鍵情報に含まれる暗号鍵を前記製品管理装置へ送信し、前記製品管理装置から前記製品の更新データに対する鍵情報を用いた演算処理が依頼された場合に前記HSMが保存する前記製品に書き込んだ前記暗号鍵に対応する鍵情報を用いて前記更新データを演算処理したデータを前記製品管理装置へ送信するプロセッサと、
を有する鍵管理装置。
【請求項2】
前記プロセッサは、
前記鍵情報として公開鍵と秘密鍵との鍵ペアを前記HSMに生成させ、
前記製品管理装置から前記製品に書き込む暗号鍵が依頼された場合に前記HSMが生成した前記公開鍵を前記製品管理装置へ送信し、
前記製品管理装置から前記製品の更新データに対する電子署名が依頼された場合に前記HSMが保存する前記製品に書き込んだ前記公開鍵に対応する前記秘密鍵を用いて前記更新データに電子署名を付与したデータを前記製品管理装置へ送信する、
請求項1に記載の鍵管理装置。
【請求項3】
前記プロセッサは、
前記鍵情報として共通鍵を前記HSMに生成させ、
前記製品管理装置から前記製品に書き込む暗号鍵が依頼された場合に前記HSMが生成した前記共通鍵を前記製品管理装置へ送信し、
前記製品管理装置から前記製品の更新データに対する暗号化が依頼された場合に前記HSMが保存する前記製品に書き込んだ前記共通鍵を用いて前記更新データを暗号化したデータを前記製品管理装置へ送信する、
請求項1に記載の鍵管理装置。
【請求項4】
前記プロセッサは、
前記製品管理装置から前記製品に書き込む暗号鍵が依頼された場合に前記HSMが生成する鍵情報に含まれる暗号鍵と当該暗号鍵の鍵IDとを前記製品管理装置へ送信し、
前記製品管理装置から前記製品の更新データに対する前記鍵情報を用いた演算処理が依頼された場合に前記製品管理装置から前記更新データとともに受信する鍵IDで特定される暗号鍵に対応する鍵情報を用いて前記更新データを演算処理したデータを前記製品管理装置へ送信する、
請求項1乃至3のいずれか1項に記載の鍵管理装置。
【請求項5】
前記プロセッサは、
前記製品管理装置からの認証情報に基づくユーザ認証を実行し、前記ユーザ認証が成功したユーザの権限に応じて前記製品管理装置からの依頼を受け付ける、
請求項1乃至3のいずれか1項に記載の鍵管理装置。
【請求項6】
前記プロセッサは、前記製品管理装置からの依頼に応じて実行した処理内容を示すログデータに前記公開鍵に対応する前記秘密鍵を用いて前記HSMが電子署名したデータを記憶装置に保存する、
請求項2に記載の鍵管理装置。
【請求項7】
前記プロセッサは、前記製品管理装置からの依頼に応じて実行した処理内容を示す通知をユーザ認証が成功したユーザの通知先に送信する、
請求項5に記載の鍵管理装置。
【請求項8】
鍵情報を管理する鍵管理装置と製品を管理する製品管理装置とを有する暗号鍵管理システムにおいて、
前記鍵管理装置は、
前記製品管理装置と通信する第1の通信部と、
鍵情報を生成し、生成した鍵情報をセキュアに保存するHSMと接続するインターフェースと、
前記製品管理装置から前記製品に書き込む暗号鍵が依頼された場合に前記HSMが生成する鍵情報に含まれる暗号鍵を前記製品管理装置へ送信し、前記製品管理装置から前記製品の更新データに対する鍵情報を用いた演算処理が依頼された場合に前記HSMが保存する前記製品に書き込んだ前記暗号鍵に対応する鍵情報を用いて前記更新データを演算処理したデータを前記製品管理装置へ送信する第1のプロセッサと、を有し、
前記製品管理装置は、
前記鍵管理装置と通信する第2の通信部と、
出荷前の製品に書き込む暗号鍵を前記鍵管理装置に依頼した後に前記鍵管理装置から暗号鍵を取得し、前記暗号鍵を書き込んだ前記製品に書き込む更新データに対する鍵情報を用いた演算処理を前記鍵管理装置に依頼した後に前記製品への配布データとして鍵情報を用いて演算処理された前記更新データを前記鍵管理装置から取得する第2のプロセッサと、を有する、
暗号鍵管理システム。
【請求項9】
前記鍵管理装置の前記第1のプロセッサは、
前記鍵情報として公開鍵と秘密鍵との鍵ペアを前記HSMに生成させ、
前記製品管理装置から前記製品に書き込む暗号鍵が依頼された場合に前記HSMが生成した前記公開鍵を前記製品管理装置へ送信し、
前記製品管理装置から前記製品の更新データに対する電子署名が依頼された場合に前記HSMが保存する前記製品に書き込んだ前記公開鍵に対応する前記秘密鍵を用いて前記更新データに電子署名を付与したデータを前記製品管理装置へ送信し、
前記製品管理装置の前記第2のプロセッサは、
前記公開鍵を書き込んだ前記製品に書き込む更新データに対する電子署名を前記鍵管理装置に依頼した後に前記製品への配布データとして前記製品に書き込んだ前記公開鍵に対応する前記秘密鍵を用いて前記更新データに電子署名を付与したデータを前記鍵管理装置から取得する、
請求項8に記載の暗号鍵管理システム。
【請求項10】
前記鍵管理装置の前記第1のプロセッサは、
前記鍵情報として共通鍵を前記HSMに生成させ、
前記製品管理装置から前記製品に書き込む暗号鍵が依頼された場合に前記HSMが生成した前記共通鍵を前記製品管理装置へ送信し、
前記製品管理装置から前記製品の更新データに対する暗号化が依頼された場合に前記HSMが保存する前記製品に書き込んだ前記共通鍵を用いて前記更新データを暗号化したデータを前記製品管理装置へ送信し、
前記製品管理装置の前記第2のプロセッサは、
前記共通鍵を書き込んだ前記製品に書き込む更新データに対する暗号化を前記鍵管理装置に依頼した後に前記製品への配布データとして前記共通鍵を用いて暗号化された前記更新データを前記鍵管理装置から取得する第2のプロセッサと、を有する、
請求項8に記載の暗号鍵管理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、鍵管理装置および暗号鍵管理システムに関する。
【背景技術】
【0002】
近年、記憶内容の更新が可能なメモリを含むLSIなどの電子機器を備える製品(デバイス)が多くなってきている。このような製品(デバイス)には、製造者(メーカ)から出荷された後にメモリに記憶したデータを更新する機能を有するものがある。出荷後にデータを更新する機能を備える製品は、外部装置からダウンロードする更新データをメモリに書き込む。出荷後の製品は、エンドユーザが保有しているため、例えば、オンラインで更新データが配布されたり、エンドユーザからの要求に応じて更新データをダウンロードしたりする。
【0003】
しかしながら、出荷後の製品は、エンドユーザが保持している状態であるため、安全な通信経路が確保できなかったり、偽の外部装置(偽のWEBサイトなど)から偽のデータをダウンロードしてしまったりする可能性がある。製品は、攻撃者によって改ざんされた不正なプログラムをダウンロードしてしまうと、不正なプログラムがインストールされ、正常な動作が行えなくなる。例えば、製品は、悪意のある偽のファームウェアを用いて更新してしまうと、情報が漏えいしてしまったり機器が乗っ取られたりするなどの被害にあう可能性がある。このため、データの更新機能を備える製品は、更新用のデータが正当な事業者(メーカ又は更新データの提供者)自身から提供されたデータがあることを確認した上でデータ更新を実行するようにすることが要望される。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記の課題を解決するために、本発明は、製品におけるデータ更新を安全に行える鍵管理装置および暗号鍵管理システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
実施形態によれば、鍵管理装置は、通信部とインターフェースとプロセッサとを有する。通信部は、製品を管理する製品管理装置と通信する。インターフェースは、鍵情報を生成し、生成した鍵情報をセキュアに保存するHSMと接続する。プロセッサは、製品管理装置から製品に書き込む暗号鍵が依頼された場合にHSMが生成する鍵情報に含まれる暗号鍵を製品管理装置へ送信し、製品管理装置から製品の更新データに対する鍵情報を用いた演算処理が依頼された場合にHSMが保存する製品に書き込んだ暗号鍵に対応する鍵情報を用いて更新データを演算処理したデータを製品管理装置へ送信する。
【図面の簡単な説明】
【0007】
【
図1】
図1は、実施形態に係る暗号鍵管理システムの構成例を概略的に示す図である。
【
図2】
図2は、実施形態に係る暗号鍵管理システムにおける製品管理サーバの構成例を示すブロック図である。
【
図3】
図3は、実施形態に係る暗号鍵管理システムにおける署名システムの署名サーバの構成例を示すブロック図である。
【
図4】
図4は、実施形態に係る暗号鍵管理システムにおける製品管理サーバが管理する製品の構成例を示すブロック図である。
【
図5】
図5は、実施形態に係る暗号鍵管理システムにおいて署名サーバが暗号鍵を製品管理サーバへ提供する処理の例を説明するためのシーケンスである。
【
図6】
図6は、実施形態に係る暗号鍵管理システムにおいて署名サーバが管理する鍵情報を用いた更新データに対する処理の例を説明するためのシーケンスである。
【発明を実施するための形態】
【0008】
以下、実施形態について、図面を参照しつつ説明する。
まず、実施形態に係る暗号鍵管理システム1の構成について説明する。
図1は、実施形態に係る暗号鍵管理システム1の構成例を示す図である。
図1に示す構成例において、暗号鍵管理システム1は、製品管理システム2および署名システム3を有する。
【0009】
製品管理システム2は、製品(デバイス)8を管理するためのシステムである。製品管理システム2が管理する製品8は、LSIなどのデータの書き込みが可能なメモリを備える電子機器を搭載するデバイスであるものとする。製品管理システム2は、製品8に搭載される電子機器のメモリに書き込むプログラム又は制御データなどのデータを管理する。
【0010】
本実施形態において、製品管理システム2は、エンドユーザ向けに出荷する前の製品8Aに書き込むデータを管理する機能と出荷後の製品8Bに対して書き込むべきデータ(更新データ)を管理する機能とを有するものとする。
【0011】
なお、出荷前の製品8Aに書き込むデータを管理する事業者(ユーザ)と出荷後の製品8Bに対して書き込むべき更新データを管理する事業者(ユーザ)とは、同一の事業者であっても良いし、異なる事業者であっても良い。
【0012】
図1に示す構成例において、製品管理システム2は、製品管理サーバ(製品管理装置)4とデータストレージ5とを備える。製品管理サーバ4は、製品8(8A、8B)に書き込むデータを管理するコンピュータである。データストレージ5は、製品管理サーバ4が管理するデータを記憶する。
【0013】
製品管理サーバ4は、出荷前の製品8Aに書き込むデータを供給する機能と出荷後の製品8Bに対して書き込むべきデータ(更新データ)を配布する機能とを有するものとする。製品管理サーバ4は、1つのサーバ装置で構成しても良いし、複数のサーバ装置で構成しても良い。例えば、出荷前の製品8Aにデータを供給する事業者と出荷後の製品8Bに対して更新データを配布する事業者とが異なる事業者である場合、出荷前の製品8Aにデータを供給する製品管理サーバ4と出荷後の製品8Bに対して更新データを配布する製品管理サーバ4とは異なる装置(ハードウエア)であっても良い。
【0014】
製品管理システム2において、製品管理サーバ4は、エンドユーザ向けに出荷する前(例えば、製造工程)の製品8Aに書き込むデータを管理し、出荷前の製品8Aにデータを書き込ませる。例えば、製品管理サーバ4は、製造工程において製品8Aに書き込むべきプログラム(ファームウエア又はドライバなど)や制御データなどのデータを製品8A(又は製品8Aにデータを書き込む装置)に供給する。出荷前の製品8Aは、製品管理サーバ4から供給されるデータを自身のメモリに書き込む。
【0015】
また、製品管理サーバ4は、出荷後の製品に配布するデータの正当性を確認するために出荷前の製品8Aに書き込む暗号鍵(公開鍵又は共通鍵)を署名システム3から取得する。製品管理サーバ4は、署名システム3から取得する暗号鍵を出荷前の製品8Aに供給する。これにより、出荷前の製品8Aは、製品管理サーバ4から供給されるデータを自身のメモリに書き込む。
【0016】
また、製品管理システム2において、製品管理サーバ4は、出荷後の製品8Bに対して書き込むべきデータ(更新データ)を管理する。例えば、製品管理システム2は、出荷後の製品8Bに書き込まれているプログラムや制御データなどを更新するためのデータ(更新データ)を管理する。製品管理サーバ4は、出荷後の各製品8Bに書き込む更新データに対して署名システム3が鍵情報を用いて演算処理(電子署名又は暗号化)したデータ(製品への配布データ)を取得する。
【0017】
製品管理サーバ4は、更新データを署名システム3が鍵情報を用いて演算処理した配布データを出荷後の各製品8Bに配布する。例えば、製品管理サーバ4は、オンライン接続される出荷後の各製品8Bに対して更新データを演算処理した配布データを配布するようにしても良い。また、製品管理サーバ4は、出荷後の製品8Bを保持するユーザ(エンドユーザ)に対してデータの更新を通知し、エンドユーザからの要求に応じて更新データを演算処理した配布データを提供するようにしても良い。また、製品管理サーバ4は、配布データをWEBサーバ上で公開し、エンドユーザが当該WEBサーバから更新データを演算処理した配布データをダウンロードできるようにしても良い。
【0018】
出荷前の製品8Bは、製品管理サーバ4から鍵情報を用いて更新データが演算処理された配布データを取得する。製品8Bは、自身に書き込まれている暗号鍵を用いて配布データを復号化することにより配布データに含まれる更新データの正当性を確認し、正当性を確認した更新データを自身のメモリに書き込む。例えば、配布データとして電子署名された更新データを取得した場合、製品8Bは、自身に書き込まれている公開鍵を用いて電子署名の正当性を確認した後に更新データを自身のメモリに書き込む。また、配布データとして共通鍵で暗号化された更新データを取得した場合、製品8Bは、自身に書き込まれている共通鍵を用いて暗号化された更新データを復号化した後に更新データを自身のメモリに書き込む。
【0019】
署名システム3は、署名サーバ(鍵管理装置)6およびHSM(ハードウエアセキュリティモジュール:Hardware Security Module)7を有する。署名サーバ6は、製品管理システム2によって管理する製品8に書き込む暗号鍵を含む鍵情報を管理する鍵管理装置である。署名サーバ6は、HSMと協働することで実現する機能として、鍵生成機能、鍵取得機能および署名生成機能などを備える。
【0020】
HSM7は、セキュアに鍵情報の生成、保護および管理を行う耐タンパ性を備えるハードウエアデバイス(セキュリティデバイス)である。HSM7は、暗号鍵を含む鍵情報の生成し、生成した鍵情報をセキュアに保存する。また、HSM7は、保存した鍵情報を用いた暗号化プロセスを含む演算処理を実行する。例えば、HSM7は、保存した鍵情報を用いたデータの暗号化および復号、電子署名、および、電子証明書の作成などの演算処理を行う。
【0021】
鍵管理装置としての署名サーバ6は、製品管理装置としての製品管理サーバ4からの依頼に応じてHSM7によって生成する暗号鍵を製品管理サーバ4に提供する。例えば、署名サーバ6は、鍵生成機能として、製品管理サーバ4からの依頼に応じてHSM7により鍵情報を生成する。例えば、署名サーバ6は、製品管理サーバ4からの依頼に応じてHSM7により公開鍵と秘密鍵との鍵ペアを含む鍵情報を生成する。
【0022】
署名サーバ6は、鍵取得機能として、製品管理サーバ4からの依頼に応じて製品8に書き込む暗号鍵を製品管理サーバ4へ提供する。例えば、署名サーバ6は、製品管理サーバ4からの依頼に応じてHSM7が生成した公開鍵を製品8に書き込む暗号鍵として製品管理サーバ4へ提供する。さらに、署名サーバ6は、製品管理サーバ4へ公開鍵自体を提供するのではなく、自己署名を付与した所定のフォーマット(例えばX.509などの規格で規定されるフォーマット)に準拠した公開鍵証明書を提供(配布)するようにしても良い。
【0023】
また、署名サーバ6は、共通鍵暗号系の鍵情報を管理する運用であれば、製品管理サーバ4からの依頼に応じてHSM7により共通鍵を含む鍵情報を生成し、生成した共通鍵を製品8に書き込む暗号鍵として製品管理サーバ4へ提供するようにしても良い。さらに、署名サーバ6は、共有暗号鍵によって公開鍵を暗号化して製品管理サーバ4へ提供するようにしても良い。また、署名サーバ6は、共有暗号鍵によって公開鍵証明書を暗号化して製品管理サーバ4へ提供するようにしても良い。
【0024】
署名サーバ6は、署名生成機能として、HSM7によって製品管理サーバ4からの更新データに電子署名を付与する。例えば、署名サーバ6は、HSM7が生成した鍵情報に含まれる公開鍵を書き込んだ製品8に対する更新データに対する電子署名の依頼を製品管理サーバ4から受け付ける。署名サーバ6は、HSM7内に保管する製品8に書き込んだ公開鍵に対する秘密鍵を用いて製品管理サーバ4から電子署名が依頼された更新データに電子署名を付与する。署名サーバ6は、HSM7によって製品8に書き込んだ公開鍵に対応する秘密鍵で電子署名した更新データ(署名ファイル)を製品管理サーバ4へ送信する。なお、共通鍵暗号系に対応する場合、署名サーバ6は、署名生成機能として、MACを生成するようにしても良い。
【0025】
また、署名サーバ6は、処理内容を示すログデータを保存する機能を有するものであっても良い。例えば、署名サーバ6は、HSM7が保存する秘密鍵を用いた電子署名などの処理を実行した場合に処理内容を示すログデータを生成し、生成したログデータにHSM7が電子署名したデータ(署名付きログデータ)を記憶装置に保存するようにしても良い。
【0026】
また、署名サーバ6は、製品を管理する事業者(製品を製造する事業者、又は、出荷後の製品に対するサービスを提供する事業者)を暗号鍵管理システム1のユーザとして管理するユーザ管理機能を有する。例えば、署名サーバ6は、ユーザ管理機能として、ユーザ認証、ユーザ情報の管理、ユーザに関する権限の管理、ユーザ情報の登録、変更および削除、ユーザのグループ管理、グループに対するアクセス制限、メールなどによるユーザへの通知などの機能を有する。
【0027】
なお、ユーザ登録機能としては、所定の事業者以外のユーザ登録を抑止するために、ホワイトリストチェックによって登録可能なユーザを限定しても良い。例えば、登録すべきユーザ情報にメールアドレスを含め、メールアドレスのドメインに対してホワイトリストチェックを行うことにより特定のドメインを有するメールアドレスのユーザをユーザ登録できるようにしても良い。
【0028】
次に、実施形態に係る暗号鍵管理システム1における製品管理システム2の製品管理サーバ4の構成について説明する。
図2は、実施形態に係る暗号鍵管理システム1における製品管理装置としての製品管理サーバ4の構成例を示すブロック図である。
図2に示すように、製品管理装置としての製品管理サーバ4は、プロセッサ41、ROM42、RAM43、データメモリ44、インターフェース(I/F)45、通信インターフェース(I/F)46、および、通信インターフェース(I/F)47を有する。
【0029】
プロセッサ41は、プログラムを実行することにより各種の処理を実行する。プロセッサ41は、例えば、CPU(Central Processing Unit)である。プロセッサ41は、システムバスを介してサーバ4内の各部と接続され、各部との間でデータを送受信する。プロセッサ41は、ROM42およびRAM43と協働して製品管理装置としての製品管理サーバ4における制御およびデータ処理などの動作を実行する。
【0030】
ROM(Read Only Memory)42は、製品管理サーバ4の基本的な動作を実現するためのプログラムおよび制御データなどを記憶する不揮発性のメモリである。
RAM(Random Access Memory)43は、データを一時的に記憶する揮発性のメモリである。RAM43は、プロセッサ41がプログラムを実行する場合にワーキングメモリとして機能する。
【0031】
データメモリ44は、各種のデータを記憶する記憶部である。データメモリ44は、データの書き換えが可能な不揮発性のメモリで構成される。例えば、データメモリ44は、OSプログラム、アプリケーションプログラム、動作設定情報などを記憶する。
【0032】
インターフェース45は、データストレージ5にアクセスするためのインターフェースである。データストレージ5が外部デバイスとしての記憶装置である場合、インターフェース45は、データストレージ5としての記憶装置が備えるインターフェース規格に対応したものであれば良い。また、データストレージ5がデータサーバ等である場合、インターフェース45は、データストレージ5としてのデータサーバと通信するための通信インターフェースで構成すれば良い。
【0033】
通信インターフェース46は、署名システム3の署名サーバ6と通信するためのインターフェース(第2の通信部)である。通信インターフェース46は、無線で署名サーバ6と通信を行うものであって良いし、有線で署名サーバ6と通信を行うものであっても良い。例えば、通信インターフェース46は、インターネットなどの広域のネットワークを介して署名サーバ6とする。
【0034】
通信インターフェース47は、製品(デバイス)8(8A、8B)と通信するためのインターフェースである。通信インターフェース47は、無線で製品8にデータを供給するものであっても良いし、有線で製品8にデータを供給するものであっても良い。通信インターフェース47は、出荷前の製品8にデータを供給するインターフェースと出荷後の製品8Bに更新データを含む配布データを供給するインターフェースとを含む。
【0035】
なお、通信インターフェース46および通信インターフェース47は、1つの通信インターフェースで実現する構成としても良い。また、インターフェース45についても、通信インターフェース46又は通信インターフェース47と共通化したインターフェースとする構成にしても良い。
【0036】
次に、実施形態に係る暗号鍵管理システム1における署名システム3の署名サーバ6の構成について説明する。
図3は、実施形態に係る暗号鍵管理システム1における鍵管理装置としての署名サーバ6の構成例を示すブロック図である。
図3に示すように、鍵管理装置としての署名サーバ6は、プロセッサ61、ROM62、RAM63、データメモリ64、インターフェース65、および、通信インターフェース66を有する。
【0037】
プロセッサ61は、プログラムを実行することにより各種の処理を実行する。プロセッサ61は、例えば、CPU(Central Processing Unit)である。プロセッサ61は、システムバスを介してサーバ6内の各部と接続され、各部との間でデータを送受信する。プロセッサ61は、ROM62およびRAM63と協働して署名サーバ6における制御およびデータ処理などの動作を実行する。
【0038】
ROM(Read Only Memory)62は、署名サーバ6の基本的な動作を実現するためのプログラムおよび制御データなどを記憶する不揮発性のメモリである。
RAM(Random Access Memory)63は、データを一時的に記憶する揮発性のメモリである。RAM63は、プロセッサ61がプログラムを実行する場合にワーキングメモリとして機能する。
【0039】
データメモリ64は、各種のデータを記憶する記憶装置である。データメモリ64は、データの書き換えが可能な不揮発性のメモリで構成される。例えば、データメモリ64は、OSプログラム、アプリケーションプログラム、動作設定情報などを記憶する。また、データメモリ64は、ユーザ情報などを記憶するようにしても良い。また、データメモリ64は、処理内容を示すログデータを記憶するようにしても良い。
【0040】
インターフェース65は、HSM7にアクセスするためのインターフェースである。インターフェース65は、HSM7が備えるインターフェース規格に対応したものであれば良い。
通信インターフェース66は、製品管理装置としての製品管理サーバ4と通信するための通信インターフェースを含む。通信インターフェース66は、無線で通信を行うものであって良いし、有線で通信を行うものであっても良い。また、通信インターフェース66は、インターネットなどの広域のネットワークを介して製品管理システム2における製品管理サーバ4と通信するものであれば良い。
【0041】
次に、実施形態に係る暗号鍵管理システム1における製品管理システム2が管理する製品(デバイス)8の構成について説明する。
図4は、実施形態に係る製品管理システム2が管理する製品8の構成例を示すブロック図である。
製品8は、プロセッサ、メモリおよびインターフェースを備えるLSIなどの電子機器を搭載するものである。製品8は、特定のデバイスに限定されるものではなく、出荷後にデータの更新が実行可能なものであれば良い。
【0042】
図4に示す構成例において、製品8は、プロセッサ81、ROM82、RAM83、データメモリ84および通信インターフェース85を有する。
プロセッサ81は、種々の処理を実行する回路を含む。プロセッサ81は、例えば、CPU(Central Processing Unit)である。プロセッサ81は、ROM82あるいはデータメモリ84に記憶されているプログラムを実行することにより種々の処理機能を実現する。
【0043】
ROM82は、プログラムメモリとして機能する不揮発性のメモリである。ROM82は、予め制御用のプログラムおよび制御データなどが記憶される。
RAM83は、ワーキングメモリとして機能する揮発性のメモリである。また、RAM83は、プロセッサ81が処理中のデータなどを一時保管するバッファとしても機能する。例えば、RAM83は、通信インターフェース85を介して外部装置との間で送受信するデータを一時保管する通信バッファとして機能する。
【0044】
データメモリ84は、データの書き込みおよび書き換えが可能な不揮発性のメモリである。データメモリ84は、例えば、EEPROM(登録商標)(Electrically Erasable Programmable Read Only Memory)などで構成する。データメモリ84には、プログラムファイルあるいはデータファイルなどが定義され、それらのファイルに制御プログラムや種々のデータが書き込まれる。例えば、データメモリ84又はROM82には、製品管理サーバ4から供給されるデータをデータメモリ84に書き込むためのプログラムが記憶される。また、データメモリ84又はROM82には、製品管理サーバ4から配布される配布データの正当性を確認するためのプログラムが記憶される。
【0045】
また、データメモリ84は、製品として出荷される前に製品管理装置としての製品管理サーバ4から供給されるデータが書き込まれる。例えば、製品8には、鍵管理装置としての署名サーバ6を署名システム3で生成された暗号鍵(公開鍵又は共通鍵)が製品管理サーバ4から供給され、データメモリ84には、製品管理サーバ4から供給される暗号鍵が書き込まれる。また、データメモリ84は、製品として出荷された後に製品管理装置としての製品管理サーバ4から配布される配布データに含まれる更新データが書き込まれる。
【0046】
通信インターフェース85は、製品管理サーバ4と通信するためのインターフェースである。通信インターフェース85は、製品管理サーバ4から供給されるデータが取得できるものであれば良い。
【0047】
次に、本実施形態に係る暗号鍵管理システム1によって管理される鍵情報を用いたデータ処理について説明する。
図5は、本実施形態に係る暗号鍵管理システム1において製品8Aに書き込む暗号鍵を製品管理システム2へ提供する処理の動作例を説明するためのシーケンスである。
製品管理システム2の製品管理サーバ4と署名システム3の署名サーバ6とは、製品管理サーバ4を使用するユーザ(事業者)が署名システム3にログインするためのユーザ認証を実行する(ST11)。
【0048】
例えば、製品管理サーバ4のプロセッサ41は、通信インターフェース46により署名サーバ6に通信接続し、ユーザ認証(ログイン)要求とともに認証情報を署名サーバ6へ送信する。署名サーバ6は、通信インターフェース66により製品管理サーバ4からのユーザ認証要求を受信する。署名サーバ6のプロセッサ61は、製品管理サーバ4から受信した認証情報とデータメモリ64などに記憶しているユーザ情報とに基づいてユーザ認証を実行する。
【0049】
署名サーバ6のプロセッサ61は、ユーザ認証が成功した場合(ユーザが正当なユーザであると確認した場合)、当該ユーザをログイン状態とする。署名サーバ6のプロセッサ61は、ログイン状態であるユーザに対して設定されている権限に基づいて前記製品管理サーバ4からの処理要求(依頼)を受け付ける。
【0050】
製品管理サーバ4のプロセッサ41は、署名サーバ6へのログインが成功すると、出荷前の製品8Aに書き込む暗号鍵を含む鍵情報などの鍵生成を署名サーバ6に対して依頼する(ST12)。ここで、製品管理サーバ4のプロセッサ41は、鍵生成の依頼とともに暗号アルゴリズムやセキュリティパラメータを指定するようにしても良い。
【0051】
署名サーバ6は、通信インターフェース66により製品管理サーバ4からログインしたユーザによる鍵の生成依頼を受信する。ここで、署名サーバ6のプロセッサ61は、ログイン中のユーザが鍵生成を依頼する権限を有することを確認する。プロセッサ61は、ログイン中のユーザが鍵生成を依頼する権限を有していれば、製品管理サーバ4からの鍵生成の依頼を受け付ける。
【0052】
署名サーバ6のプロセッサ61は、製品管理サーバ4から鍵生成の依頼を受け付けると、インターフェース65に接続されるHSM7に対して鍵情報の生成を要求する(ST13)。HSM7は、プロセッサ61からの要求に応じて製品8Aに書き込む暗号鍵を含む鍵情報を生成する(ST14)。HSM7は、署名サーバ6からの鍵情報の生成の要求に応じて暗号鍵を含む鍵情報を生成すると、生成した鍵情報を鍵IDに対応づけてセキュアに保管する(ST15)。
【0053】
例えば、暗号鍵管理システム1が管理する鍵情報が公開鍵暗号系であれば、HSM7は、公開鍵とその公開鍵とペアになる秘密鍵とを鍵情報として生成する。HSM7は、公開鍵と秘密鍵との鍵ペアを生成すると、生成した鍵ペアに鍵IDに対応づけてHSM7内に保管する。この場合、HSM7は、鍵ペアとして生成した秘密鍵を外部へ出力することなくセキュアに保管する。HSM7は、鍵IDによって指定される鍵情報としての秘密鍵を用いて電子署名などの演算処理を実行する。
【0054】
また、暗号鍵管理システム1が管理する鍵情報が共通鍵暗号系であれば、HSM7は、共通鍵を含む鍵情報を生成する。HSM7は、共通鍵を含む鍵情報を生成すると、共通鍵に鍵IDに対応づけてHSM7内に保管する。HSM7は、鍵IDによって指定される鍵情報としての共通鍵を用いてデータの暗号化などの演算処理を実行する。
【0055】
署名システム3において、HSM7は、生成した鍵情報を鍵IDに対応づけて保管すると、保管(生成)した鍵情報を示す鍵IDを署名サーバ6へ出力する。署名サーバ6のプロセッサ61は、HSM7から生成した鍵情報を示す鍵IDを受けると、鍵生成の依頼元である製品管理サーバ4へ鍵IDを通知する。ここで、署名サーバ6のプロセッサ61は、ログイン中のユーザを示す情報(ユーザIDなど)に対応づけて生成した鍵情報を示す鍵IDをデータメモリ64などに記憶するようにしても良い。
【0056】
鍵生成を依頼した製品管理サーバ4は、通信インターフェース46により署名サーバ6から生成した鍵情報を示す鍵IDを受信する。製品管理サーバ4のプロセッサ41は、署名サーバ6から通知された鍵IDをデータストレージ5又はデータメモリ44に保存する。これにより、製品管理サーバ4は、鍵生成の依頼に応じて署名システム3が生成した鍵情報を指定できる。
【0057】
また、製品管理サーバ4のプロセッサ41は、鍵管理装置としての署名サーバ6に鍵情報の生成を依頼した後、署名サーバ6に出荷前の製品8Aに書き込む暗号鍵を要求(暗号鍵の取得を依頼)する(ST16)。例えば、製品管理サーバ4のプロセッサ41は、署名サーバ6からHSM7で生成した鍵情報を示す鍵IDを受信した後、鍵IDを指定して出荷前の製品8Aに書き込む暗号鍵を署名サーバ6に要求する。
【0058】
署名サーバ6は、通信インターフェース66により製品8Aに書き込む暗号鍵の要求(暗号鍵の取得依頼)を受信する。ここで、署名サーバ6のプロセッサ61は、ログイン中のユーザが暗号鍵を取得する権限を有することを確認する。プロセッサ61は、ログイン中のユーザが暗号鍵を取得する権限を有していれば、製品管理サーバ4からの暗号鍵の要求を受け付ける。
【0059】
署名サーバ6のプロセッサ61は、製品管理サーバ4からの暗号鍵の要求を受け付けると、ログイン中のユーザの要求に応じて生成した鍵情報に含まれる暗号鍵をHSM7に対して要求する(ST17)。HSM7は、署名サーバ6からの要求に応じて鍵情報に含まれる暗号鍵を署名サーバ6へ出力する(ST18)。
【0060】
例えば、署名サーバ6のプロセッサ61は、製品管理サーバ4が指定する鍵IDに対応する鍵情報に含まれる暗号鍵をHSM7に対して要求する。HSM7は、署名サーバ6からの要求に応じて製品管理サーバ4が指定する鍵IDに対応する鍵情報に含まれる暗号鍵を署名サーバ6へ出力する。
【0061】
また、暗号鍵管理システム1が管理する鍵情報が公開鍵暗号系であれば、HSM7は、製品管理サーバ4が指定する鍵IDに対応する鍵情報(鍵ペア)に含まれる公開鍵を署名サーバ6へ出力する。暗号鍵管理システム1が管理する鍵情報が共通鍵暗号系であれば、HSM7は、製品管理サーバ4が指定する鍵IDに対応する鍵情報に含まれる共通鍵を署名サーバ6へ出力する。
【0062】
署名サーバ6のプロセッサ61は、HSM7が出力する暗号鍵を取得すると、通信インターフェース66によりHSM7から取得した暗号鍵(公開鍵又は共通鍵)を暗号鍵の要求元である製品管理サーバ4へ送信する(ST19)。
【0063】
製品管理サーバ4は、出荷前の製品8Aに書き込む暗号鍵を要求した後、通信インターフェース46により署名サーバ6からの暗号鍵を受信する。製品管理サーバ4のプロセッサ41は、署名サーバ6から製品8Aに書き込む暗号鍵を受信すると、受信した暗号鍵を出荷前に書き込むべき暗号鍵として製品8Aへ供給する(ST20)。
【0064】
出荷前の製品8Aは、通信インターフェース85により製品管理サーバ4から供給される暗号鍵を受信する。製品8Aのプロセッサ81は、製品管理サーバ4から自身に書き込むべき暗号鍵を受信すると、製品管理サーバ4から受信した暗号鍵を自身に書き込む処理を実行する(ST21)。製品8Aのプロセッサ81は、暗号鍵の書き込みを完了すると、暗号鍵の書き込み完了を製品管理サーバ4に通知する。
【0065】
製品管理サーバ4のプロセッサ41は、製品8Aから暗号鍵の書き込み完了の通知を受信すると、当該製品8Aを識別する情報(例えば、製品ID)と書き込んだ暗号鍵に対応する鍵IDとをデータストレージ5又はデータメモリ44に保存する。
【0066】
製品管理サーバ4が署名サーバ6から取得した暗号鍵の書き込みが完了した製品8Aは、出荷可能となり、エンドユーザ向けに出荷される。
【0067】
また、署名サーバ6は、処理内容を示すログの保存およびユーザへの通知を行うようにしても良い。
図5に示す処理例において、署名サーバ6のプロセッサ61は、暗号鍵を製品管理サーバ4へ送信した場合、処理内容を示すログデータを生成する(ST24)。署名サーバ6のプロセッサ61は、ログデータを生成すると、公開鍵暗号系であれば当該ログデータに対する電子署名をHSM7に依頼する(ST25)。ここで、署名サーバ6は、暗号鍵に対応する鍵IDを指定してログデータへの電子署名を依頼する。
【0068】
HSM7は、署名サーバ6からの依頼に応じて指定された鍵IDに対応する公開鍵とペアとなる秘密鍵を用いてログデータに電子署名を付与する(ST26)。HSM7は、生成した署名付きのログデータを署名サーバ6へ出力する(ST27)。署名サーバ6のプロセッサ61は、HSM7が生成した署名付きのログデータをデータメモリ64などの記憶装置に保存する(ST28)。これにより、署名サーバ6を含む署名システム3は、処理内容を示すログデータを署名付きで保存することができ、原本であることが保証されたログデータを閲覧することが可能となる。
【0069】
さらに、署名サーバ6のプロセッサ61は、製品管理サーバ4からの要求に応じて製品8Aに書き込む暗号鍵を送信した場合、暗号鍵の送信先となるユーザに処理内容を通知する(ST29)。例えば、署名サーバ6のプロセッサ61は、製品8Aに書き込む暗号鍵を要求したユーザのユーザ情報に含まれるメールアドレスに処理内容を示す電子メールを送信する。これにより、ユーザ(事業者)は、署名システム3を用いて実施した処理内容を把握することができる。
【0070】
次に、本実施形態に係る暗号鍵管理システム1における鍵情報を用いたデータ処理について説明する。
図6は、本実施形態に係る暗号鍵管理システム1における鍵情報を用いた出荷後の製品8Bに対するデータ更新処理の動作例を説明するためのシーケンスである。
出荷後の製品8Bに対して更新データを提供する場合、暗号鍵管理システム1は、製品8Bに書き込まれている暗号鍵で正当性が可能な状態に演算処理した更新データを製品8Bへ供給する。
【0071】
例えば、暗号鍵管理システム1は、管理する鍵情報が公開鍵暗号系であれば、署名システム3が製品8Bに書き込まれている公開鍵に対応する秘密鍵で電子署名を付加した更新データを製品8Bに供給する。これにより、製品8Bは、自身に書き込まれている公開鍵を用いて更新データの正当性を確認した後に更新データを自身に書き込むことができる。
【0072】
また、暗号鍵管理システム1は、管理する鍵情報が共通鍵暗号系であれば、署名システム3が製品8Bに書き込まれている共通鍵を用いて暗号化した更新データを製品8Bに供給する。これにより、製品8Bは、自身に書き込まれている共通鍵を用いて復号される更新データを自身に書き込むようにできる。
【0073】
以下、
図6に示す処理例の説明としては、暗号鍵管理システム1が公開鍵暗号系の鍵情報を管理するものとする。
まず、製品管理システム2における製品管理サーバ4は、出荷済み(暗号鍵を書き込み済み)の製品8Bに書き込むべき更新データを取得する(ST30)。製品管理サーバ4のプロセッサ41は、製品8Bに対する更新データを取得すると、製品8B自身が正当性を確認できるように更新データを演算処理することを署名システム3に依頼するため、署名サーバ6へのログイン処理を実行する(ST31)。
【0074】
例えば、製品管理サーバ4のプロセッサ41は、通信インターフェース46により署名サーバ6に通信接続し、ユーザ認証(ログイン)要求とともに認証情報を署名サーバ6へ送信する。署名サーバ6のプロセッサ61は、製品管理サーバ4から受信するログインユーザの認証情報とデータメモリ64などに記憶しているユーザ情報とに基づいてユーザ認証を実行する。プロセッサ61は、ユーザ認証が成功した場合(ユーザが正当なユーザであると確認した場合)、当該ユーザをログイン状態として当該ユーザからの処理要求を受け付ける。
【0075】
製品管理サーバ4のプロセッサ41は、署名サーバ6へのログインが成功すると、出荷後の製品8Bに書き込む更新データに対する電子署名を署名サーバ6に対して依頼する(ST32)。ここで、製品管理サーバ4のプロセッサ41は、製品8Bに書き込んだ公開鍵を示す鍵IDを指定して更新データに対する電子署名を依頼する。また、プロセッサ41は、署名の依頼とともに署名アルゴリズムやセキュリティパラメータを指定するようにしても良い。
【0076】
署名サーバ6は、通信インターフェース66により製品管理サーバ4から更新データへの署名依頼を受信する。ここで、署名サーバ6のプロセッサ61は、ログイン中のユーザが電子署名を取得する権限を有することを確認する。プロセッサ61は、ログイン中のユーザが電子署名を取得する権限を有していれば、製品管理サーバ4からの署名依頼を受け付ける。
【0077】
署名サーバ6のプロセッサ61は、製品管理サーバ4から署名依頼を受け付けると、インターフェース65に接続されるHSM7に対して更新データに対する電子署名の生成を要求する(ST33)。ここで、プロセッサ61は、署名依頼とともに更新データと署名に用いる鍵情報を示す鍵IDとをインターフェース65によりHSM7へ供給する。HSM7は、署名サーバ6からの署名要求に応じて更新データに対する電子署名を生成する(ST34)。HSM7は、署名サーバ6から指定される鍵IDに対応する秘密鍵を特定し、特定した秘密鍵を用いて更新データに電子署名を付与することにより署名ファイル(署名付き更新データ)を生成する。HSM7は、生成した署名ファイルを署名サーバ6へ出力する(ST35)。
【0078】
署名サーバ6のプロセッサ61は、HSM7が生成した署名ファイルを取得すると、通信インターフェース66により署名の依頼元である製品管理サーバ4へ署名ファイルを送信する(ST36)。
【0079】
製品管理サーバ4は、出荷後の製品8Aに書き込む更新データへの署名を依頼した後、通信インターフェース46により署名サーバ6から署名付きの更新データとしての署名ファイルを受信する。製品管理サーバ4のプロセッサ41は、署名サーバ6から受信した署名ファイル(署名付きの更新データ)を製品8Bに配布する配布データとする。プロセッサ41は、署名システム3によって更新データに電子署名を施した配布データとしての署名ファイルを製品8Bへ配布する(ST37)。
【0080】
なお、製品管理サーバ4から製品8Bへの署名ファイル(配布データ)の配布方法は特定の方法に限定されるものではない。例えば、製品管理サーバ4は、製品8Bがオンライン接続される運用形態のデバイスであれば、製品8Bに対してオンラインで署名ファイル(配布データ)を配布するようにしても良い。
【0081】
また、製品管理サーバ4は、出荷後の製品8Bを保持するユーザ(エンドユーザ)に対してデータの更新を通知し、エンドユーザからの要求に応じて署名ファイルを製品8Bにダウンロードするようにしても良い。また、製品管理サーバ4は、署名ファイルをWEBサーバ上で公開し、当該WEBサーバからエンドユーザが製品8Bに署名ファイルをダウンロードするようにしても良い。
【0082】
出荷後の製品8Bは、通信インターフェース85により製品管理サーバ4が配布する配布データとしての署名ファイルを受信する。製品8Bのプロセッサ81は、製品管理サーバ4が配布する署名ファイルを受信すると、製品管理サーバ4から受信した署名ファイルを自身に書き込まれている公開鍵を用いて検証する(ST38)。
【0083】
製品8Aのプロセッサ81は、公開鍵によって署名ファイルの正当性を確認した場合、署名ファイルに含まれる更新データを書き込む処理を実行する(ST39)。署名ファイルに含まれる更新データの書き込みが完了すると、製品8Bのプロセッサ81は、通信インターフェース85により更新データの書き込み完了を製品管理サーバ4に通知する(ST40)。
【0084】
製品管理サーバ4のプロセッサ41は、製品8Bから更新データの書き込み完了の通知を受信すると、当該製品8Bを識別する情報(例えば、製品ID)に対応づけて更新データの書き込み完了を記録する。これにより、製品管理サーバ4は、署名システム3によって管理される秘密鍵で電子署名された更新データを製品8Bに供給することができる。この結果、製品8Bは、自身に書き込まれている公開鍵を用いて電子署名を検証することが」でき、正当性が確認された更新データを書き込むようにできる。
【0085】
なお、暗号鍵管理システム1が管理する鍵情報が共通鍵暗号系である場合、署名サーバ6は、製品管理サーバ4から出荷後の製品8Bに対する更新データを受信し、HSM7により当該更新データを製品8Bに書き込んだ共通鍵に対応する共通鍵を用いて暗号化したデータを取得するようにしても良い。この場合、署名サーバ6は、HSM7が共通鍵で暗号化したデータを製品管理サーバ4へ送信する。製品管理サーバ4は、署名システム3によって共通鍵で暗号化されたデータを製品8Bに配布する。製品8Bは、共通鍵を用いてHSM7で暗号化された更新データを復号し、復号した更新データを書き込むようにすれば良い。
【0086】
また、署名サーバ6は、
図6に示すように、出荷後の製品8Bに配布する署名ファイルを提供する処理につても処理内容を示すログの保存およびユーザへの通知を行うようにしても良い。
図6に示す処理例において、署名サーバ6のプロセッサ61は、署名ファイル(配布データ)を製品管理サーバ4へ送信した場合、処理内容を示すログデータを生成する(ST41)。署名サーバ6のプロセッサ61は、ログデータを生成すると、当該ログデータに対する電子署名をHSM7に依頼する(ST42)。
【0087】
HSM7は、署名ファイルを生成するのに用いた秘密鍵を用いてログデータに対する電子署名を生成する(ST43)。HSM7は、生成した署名付きのログデータを署名サーバ6へ出力する(ST44)。署名サーバ6のプロセッサ61は、HSM7が生成した署名付きのログデータをデータメモリ64などの記憶装置に保存する(ST45)。
【0088】
これにより、署名サーバ6を含む署名システム3は、出荷後の製品8Bに配布した署名ファイルを生成した処理の内容を示すログデータを署名付きで保存することができ、原本であることが保証されたログデータを閲覧することが可能となる。
【0089】
さらに、署名サーバ6のプロセッサ61は、出荷後の製品8Bに対する更新データに電子署名した署名ファイルを製品管理サーバ4から送信した場合、ログイン中のユーザに処理内容を通知する(ST46)。例えば、署名サーバ6のプロセッサ61は、ログイン中のユーザのユーザ情報に含まれるメールアドレスに処理内容を示す電子メールを送信する。これにより、ユーザ(事業者)は、署名システム3によって出荷後の製品8Bに対する更新データに電子署名した署名ファイルが製品管理サーバ4へ送信されたことを把握することができる。
【0090】
以上のように、実施形態に係る暗号鍵管理システムは、製品の製造又は管理を実施する事業者が運用する製品管理システムおよび署名システム(鍵管理システム)を有する。署名システムは、製品管理システムからの依頼に応じて生成した暗号鍵を含む鍵情報を管理し、管理する鍵情報に含まれる暗号鍵を書き込んだ製品に対する更新データに電子署名を付与する。製品管理システムは、署名システムが電子署名を付与した更新データを出荷後の製品に配布する。製品は、電子署名が付与された更新データを取得し、取得した署名の正当性を自身に書き込まれた公開鍵で確認した後に更新データを書き込む。
【0091】
これにより、製品管理システムを運用する製品の製造又は管理を実施する事業者は、暗号鍵の管理をセキュアに実施する署名システムに委譲することができる。この結果、事業者は、暗号鍵を含む鍵情報の管理に係るコストを低減しつつ、製品に対する更新データの安全性を確保できる。また、鍵管理装置としての署名サーバを含む署名システムによって、暗号鍵を利用した署名などのプリミティブな暗号化プロセスによるセキュリティ機能を事業者に提供することができ、多様な事業者の要望にあったセキュリティ機能をフレキシブルに提供できる。
【0092】
上述の各実施形態で説明した機能は、ハードウエアを用いて構成するに留まらず、ソフトウエアを用いて各機能を記載したプログラムをコンピュータに読み込ませて実現することもできる。また、各機能は、適宜ソフトウエア、ハードウエアのいずれかを選択して構成するものであっても良い。
【0093】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0094】
1…暗号鍵管理システム、2…製品管理システム、3…署名システム、4…製品管理サーバ(製品管理装置)、5…データストレージ(記憶装置)、6…署名サーバ(鍵管理装置)、7…HSM、8(8A、8B)…製品、41…プロセッサ(第2のプロセッサ)、44…データメモリ(記憶装置)、45…インターフェース、46…通信インターフェース(第2の通信部)、47…通信インターフェース、61…プロセッサ(第1のプロセッサ)、64…データメモリ(記憶装置)、65…インターフェース、66…通信インターフェース(第1の通信部)、81…プロセッサ、84…データメモリ、85…インターフェース。