JP4626181B2 - 情報処理方法及び情報処理システム - Google Patents
情報処理方法及び情報処理システム Download PDFInfo
- Publication number
- JP4626181B2 JP4626181B2 JP2004142824A JP2004142824A JP4626181B2 JP 4626181 B2 JP4626181 B2 JP 4626181B2 JP 2004142824 A JP2004142824 A JP 2004142824A JP 2004142824 A JP2004142824 A JP 2004142824A JP 4626181 B2 JP4626181 B2 JP 4626181B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- client device
- signature
- public key
- certified
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
このようなクライアント装置では、署名データは、当該クライアント装置内に記憶された秘密鍵データを基に生成される。
ところで、上記クライアント装置が盗難等された場合に、盗難を行った不正なユーザは、クライアント装置内に記憶された秘密鍵データを基に署名データを生成することで、クライアント装置の正当なユーザになりすますことができる。
このような事態を防止するために、例えば、クライアント装置が盗難された場合に、盗難にあった時刻を指定して、公開鍵の発行元のサーバ装置に通知を行い、当該サーバ装置が、上記指定された時刻以降は公開鍵証明書データが無効であることを示す有効期間データを公開鍵証明書データと対応付けて発行する。
<第1実施形態>
以下、本発明の第1実施形態を説明する。
〔本発明の構成との対応関係〕
先ず、本実施形態の構成要素と、本発明の構成要素との対応関係を説明する。
本実施形態において、アプリケーションプログラムAPが、第1および第2の発明のプログラムに対応している。
ここで、図6に示すステップST15が第1の発明の第1の手順および第2の手順、並びに第3の発明の第1の工程および第2の工程に対応している。
また、図6に示すステップST18が第1の発明の第3の手順、並びに第3の発明の第3の工程に対応している。
また、図2に示すメモリ43が第2の発明のメモリに対応し、CPU45が第2の発明の実行回路に対応し、図4に示すカウンタ58が第2の発明のカウンタに対応している。
また、本発明において、文書データDDが本発明の被証明データに対応している。
ここで、図8に示すステップST35が第4の発明の第1の手順、並びに第6の発明の第1の工程に対応している。
また、図8に示すステップST39〜ST43が第4の発明の第2の手順、並びに第6の発明の第2の工程に対応している。
また、図2に示すメモリ43が第5の発明のメモリに対応し、CPU45が第5の発明の実行回路に対応している。
また、CPU45が、本発明のコンピュータに対応している。
図1に示すように、通信システム1は、例えば、クライアント装置C1,C2、文書配信サーバ10、認証機関(CA)12および無効リスト配信サーバ14を有する。
本実施形態では、クライアント装置C1,C2、文書配信サーバ10、認証機関12および無効リスト配信サーバ14の間の通信はネットワーク9を介して行われる。
なお、本実施形態では2つのクライアント装置を例示するが、クライアント装置の数は任意である。
認証機関12は、クライアント装置C1,C2の各々のセキュリティチップSCに対して秘密鍵データKpri1,Kpri2(Kpri)を発行し、これらをセキュアな状態で提供する。
また、認証機関12は、秘密鍵データKpri1,Kpri2の各々に対応した公開鍵証明データCert1,Cert2(Cert)を発行する。
無効リスト配信サーバ14は、クライアント装置C1,C2から、無効対象の署名データSDの生成に用いられた秘密鍵データKpriに対応した公開鍵データKpubの識別データKpubIDと、無効にする直前に署名データSDを生成したときのカウントデータCDとを含む無効通知データRNを受信する。
そして、無効リスト配信サーバ14は、無効通知データRNを基に、無効リストデータRLISTを更新する。
無効リストデータRLISTは、無効対象の識別データKpubIDと、カウントデータCDとを対応付けて示している。
なお、クライアント装置C2は、クライアント装置C1と同じ構成を有している。
クライアント装置C1,C2は、例えば、パーソナルコンピュータ、PDA(Personal Digital Assistants)および携帯電話などの通信機器である。
〔クライアント装置C1〕
図2は、図1に示すクライアント装置C1の構成図である。
図2に示すように、クライアント装置C1は、例えば、インタフェース42、メモリ43、セキュリティチップSC、CPU45、ディスプレイ46および操作部47を有し、これらがデータ線40を介して接続されている。
メモリ43は、プログラムBIOS(Basic Input/Output System) 、ローダプログラムLoader、オペレーティングシステムOS( Operating System) およびアプリケーションプログラムAPを記憶する。
アプリケーションプログラムAPとしては、クライアント装置C1の動作を統括的に制御するプログラムPRG_C、文書作成プログラムW_APおよび文書閲覧プログラムR_APが備えられている。
CPU45は、例えば、図3に示すように、CPU45およびセキュリティチップSCなどのハードウェア上でプログラムBIOSを動作させる。
また、CPU45は、プログラムBIOS上でローダプログラムLoaderを動作させ、このローダプログラムLoaderを基にオペレーティングシステムOSを起動する。
また、CPU45は、オペレーティングシステムOS上でアプリケーションプログラムAPを動作させる。
CPU45は、クライアント装置C1の後述する動作例で示す処理を統括的に制御する。
CPU45による制御は、後述する動作例と関連付けて説明する。
本実施形態では、CPU45は、後述するより、図5に示すように、文書データDDのハッシュデータHDと、署名データSD生成時のカウントデータCDと、署名データSDと、公開鍵証明書データCertとを文書データDDに付加して文書配信サーバ10に送信する。
操作部47は、キーボードやマウスなどの操作手段であり、ユーザの操作に応じた操作信号をCPU45に出力する。
図4に示すように、セキュリティチップSCは、例えば、入出力回路(I/O)51、鍵生成回路52、ハッシュ回路53、乱数発生回路54、署名・暗号回路55、メモリ56、プロセッサ57およびカウンタ58を有し、これらがデータ線50を介して接続されている。
鍵生成回路52は、例えば、乱数発生回路54が発生した乱数を基に、セキュリティに係わる種々の鍵データを生成する。
ハッシュ回路53は、ハッシュデータを生成する。
乱数発生回路54は、乱数を発生(生成)する。
署名・暗号回路55は、鍵データを用いた暗号化および復号を行い、暗号データの生成、暗号データの復号、署名データの生成、並びに署名データの検証を行う。
メモリ56は、セキュリティチップSCの秘密鍵データKpri1を記憶する。
また、メモリ56は、サーバ装置S1の起動時に生成された起動プログラム検証データPHDを記憶する。
また、メモリ56は、署名データSDの公開鍵データの識別データKpubIDと、署名鍵データSDの生成時のカウントデータCDとの履歴を対応付けて示すログデータLOGを記憶する。
また、メモリ56は、公開鍵証明書データCert1を記憶する。
カウンタ58は、署名・暗号回路55が署名データを作成する度に、そのカウント値を「1」だけ増加(インクリメント)する。
なお、カウンタ58は、署名・暗号回路55が署名データを作成する度に、そのカウント値を「1」だけ減少(デクリメント)してもよい。
カウンタ58は、セキュリティチップSCに内蔵されているため、カウント値はセキュアな状態で更新され、ユーザはそのカウント値を調整できない。
〔第1の動作例〕
以下、クライアント装置Cが文書データDDを生成する場合の動作例を説明する。
図6は、当該動作例を説明するためのフローチャートである。
ステップST11:
図2に示すクライアント装置C1のCPU45が、文書作成プログラムW_APに従って、操作部47から入力した操作信号を基に、文書データDDを生成する。
ステップST12:
CPU45が、文書作成プログラムW_APに従って、ステップST11で生成した文書データDDのハッシュデータHDを生成し、これをセキュリティチップSCに出力する。
具体的には、ハッシュデータHDは、文書作成プログラムW_APからオペレーティングシステムOSを経由してセキュリティチップSCに出力される。
文書作成プログラムW_APは、オペレーティングシステムOSにハッシュデータHDを提供(出力)し、署名データSDの生成を指示する。
セキュリティチップSCのプロセッサ57は、CPU45からの指示(プログラムPRG_C)に従って、カウンタ58のカウンタ値を示すカウントデータCDを読み出す。
ステップST14:
プロセッサ57は、ステップST12で入力したハッシュデータHDと、ステップST13で読み出したカウントデータCDとを連結してデータHD+CDを生成する。
ステップST15:
セキュリティチップSCの署名・暗号回路55が、メモリ56から読み出した秘密鍵データKpri1を基に、ステップST14で生成されたデータHD+CDの署名データSDを生成する。
そして、カウンタ58は、カウントデータCDのカウント値を「1」だけ増加させる。
ステップST16:
セキュリティチップSCのプロセッサ57は、署名データSD、並びにその生成時のカウントデータCDを基に、メモリ56に記憶されているログデータLOGを更新する。
ユーザは、メモリ56に記憶されているログデータを定期的にバックアップしてクライアント装置C1の外部の記録媒体に記録する。
プロセッサ57は、ステップST14で生成したデータCD+HD、ステップST15で生成した署名データSD、並びにメモリ56から読み出した公開鍵証明書データCert1を、入出力回路51を介してCPU45に出力する。
ステップST18:
CPU45は、文書作成プログラムW_APに従って、ステップST17で入力したデータCD+HD、署名データSD、並びに公開鍵証明書データCert1を、ステップST11で生成した文書データDDに付加する。
ステップST19:
CPU45は、ステップST18でデータCD+HD等が付加された文書データDDを、インタフェース42を介して図1に示す文書配信サーバ10に送信する。
文書配信サーバ10は、例えば、クライアント装置C2からの要求に応じて、ステップST18でデータCD+HD等が付加された文書データDDをクライアント装置C2に送信する。
以下、クライアント装置C1が盗難等され、正当なユーザが署名データの無効化を無効リスト配信サーバ14に指示する場合の動作例を説明する。
図7は、当該動作例を説明するためのフローチャートである。
ステップST21:
クライアント装置C1が盗難等されると、正当なユーザが所定のコンピュータを操作し、過去にクライアント装置C1から外部の記録媒体に記憶したログデータLOGを基に、上記コンピュータが、図1に示すように、公開鍵データKpubの識別データKpubIDと、ログデータLOGが示す最新の署名データSDのカウントデータCDとを含む無効通知データRNを生成する。
ステップST22:
上記コンピュータは、ステップST21で生成した無効通知データRNを図1に示す無効リスト配信サーバ14に送信する。
無効リスト配信サーバ14は、ステップST22で受信した無効通知データRNを基に、無効リストデータRLISTを更新する。
ステップST24:
無効リスト配信サーバ14は、無効リストデータRLISTを公開する。
クライアント装置C1,C2を含むクライアント装置は、無効リスト配信サーバ14から無効リストRLISTを受信する。
以下、文書データDDを受信した場合の動作例を説明する。
以下の説明では、クライアント装置C2が、クライアント装置C1が第1の動作例で説明した手順で生成した文書データDDを受信する場合を説明する。
図8は、当該動作例を説明するためのフローチャートである。
ステップST31:
CPU45は、オペレーティングシステムOSに従って、無効リスト配信サーバ14にアクセスを行って無効リストデータRLISTを受信し、これをメモリ43に書き込む。
CPU45は、例えば、署名データSDの正当性を検証する度、あるいは定期的に無効リスト配信サーバ14から無効リストデータRLISTを受信する。
ステップST32:
CPU45は、文書閲覧プログラムR_APに従って、文書配信サーバ10から文書データDDを受信する。
当該文書データDDには、第1の動作例で図5を参照して説明したように、カウントデータCDとハッシュデータHDとを連結したデータCD+HD、データCD+HDの署名データSD、並びに公開鍵証明書データCert1が付加されている。
CPU45は、オペレーティングシステムOSに従って、ステップST32で受信した文書データDDに付加された公開鍵証明書データCert1の正当性を、例えば、認証機関12にアクセスして検証する。
ステップST34:
CPU45は、公開鍵証明書データCert1が正当であると判断するとステップST35に進み、そうでない場合にはステップST43に進む。
CPU45は、オペレーティングシステムOSに従って、ステップST32で受信した文書データDDに付加された署名データSDが、公開鍵証明書データCert1に含まれる公開鍵データKpub1に対応した秘密鍵データKpri1を基に生成されたか否かを、図4に示すセキュリティチップSCの署名・暗号回路55に検証させる。
ステップST36:
CPU45は、オペレーティングシステムOSに従って、署名データSDが秘密鍵データKpri1を基に生成されたと判断すると判断するとステップST37に進み、そうでない場合にステップST43に進む。
CPU45は、公開鍵証明書データCert1に含まれる公開鍵データKpub1の識別データKpubIDに対応する項目が、ステップST31で受信した無効リストデータRLIST内に存在するか否かを判断する。
ステップST38:
CPU45は、ステップST37において存在すると判断するとステップST39に進み、存在しないと判断するとステップST43に進む。
CPU45は、オペレーティングシステムOSに従って、ステップST32で受信した文書データDDに付加されたカウントデータCDを署名時カウント値として取得する。
ステップST40:
CPU45は、オペレーティングシステムOSに従って、無効リストデータRLIST内の識別データKpubIDに対応付けられたカウントデータCDを無効時カウント値として取得する。
CPU45は、オペレーティングシステムOSに従って、ステップST39で取得した署名時カウント値が、ステップST40で取得した無効時カウント値より大きいか否かを判断し、大きいと判断するとステップST43にすすみ、大きくないと判断するとステップST42に進む。
ステップST42:
CPU45は、文書データDDがクライアント装置C1の盗難等の前に生成された正当なものであると判断し、文書閲覧プログラムR_APに従って、それを利用する。
ステップST43:
CPU45は、文書データDDがクライアント装置C1の盗難等の後に生成された不正なものであると判断し、文書閲覧プログラムR_APによるその利用を禁止する。
以下、通信システム1の全体動作例を説明する。
図9は、当該動作例を説明するためのフローチャートである。
クライアント装置C1は、例えば、データCD(1)+HD、署名データSD、並びに公開鍵証明書データCert1が付加された文書データDDを文書配信サーバ10に送信する(ステップST51)。
また、クライアント装置C2は、無効リスト配信サーバ14から無効リストデータRLISTを受信する(ステップST52)。このとき、無効リストデータRLISTには、署名データSDの検証に用いられる公開鍵データKpub1の識別データKpubIDは含まれていない。
また、クライアント装置C2は、文書配信サーバ10から、データCD(1)+HD、署名データSD、並びに公開鍵証明書データCert1が付加された文書データDDを受信する(ステップST53)。
次に、クライアント装置C2は、ステップST52で受信した無効リストデータRLIST内に上記識別データKpubIDが含まれていないため、ステップST53で受信した文書データDDは正当であると判断する(ステップST54)。
無効リスト配信サーバ14は、受信した無効通知データRNを基に、無効リストデータRLISTを更新して無効リストデータRLIST(CD(1))にする。
そして、クライアント装置C2は、無効リスト配信サーバ14から無効リストデータRLIST(CD(1))を受信する(ステップST57)。このとき、無効リストデータRLIST(CD(1))には、署名データSDの検証に用いられる公開鍵データKpub1の識別データKpubIDが含まれている。
また、クライアント装置C1は、盗難を行った不正なユーザの指示に応じて、例えば、データCD(2)+HD、署名データSD、並びに公開鍵証明書データCert1が付加された文書データDDを文書配信サーバ10に送信する(ステップST58)。
ここで、カウントデータCD(2)は、署名データSDのカウントデータCD(1)より値が大きい。
そして、クライアント装置C2は、文書配信サーバ10から、データCD(2)+HD、署名データSD、並びに公開鍵証明書データCert1が付加された文書データDDを受信する(ステップST59)。
次に、クライアント装置C2は、ステップST57で受信した無効リストデータRLIST(CD(1))内に上記識別データKpubIDが含まれているため、無効リストデータRLIST内のカウントデータCD(1)と、文書データDDに付加されたカウントデータCD(2)とを比較し、カウントデータCD(2)の方が大きいため、ステップST59で受信した文書データDDは不当であると判断する(ステップST60)。
そのため、通信システム1によれば、クライアント装置C1が盗難された場合でも、不正なユーザはカウンタ58を調整できず、当該不正なユーザが作成した文書データに付加されたカウントデータCDは署名データSDの生成に応じて適切に更新されたものになる。
従って、前述したように、検証側のクライアント装置C2において、カウントデータCDを基に、文書データDDの正当性を高い信頼性で判断できる。
図10は、本発明の第2実施形態の通信システム101の全体構成図である。
図10に示すように、通信システム101は、例えば、クライアント装置C1a,C2a、文書配信サーバ10、認証機関(CA)12、無効リスト配信サーバ14aおよび時刻証明サーバ16を有する。
図10において、文書配信サーバ10および認証機関12は、第1実施形態で説明したものと同じである。
ここで、図15に示すステップST70が第8の発明の第1の手順に対応し、ST73が第8の発明の第2の手順に対応し、ST75が第8の発明の第3の手順に対応し、ST77が第8の発明の第4の手順に対応している。
ここで、図17に示すステップST95が第9の発明の第1の手順に対応している。
また、図17に示すステップST99が第9の発明の第2の手順に対応し、ST100〜ST103が第9の発明の第3の手順に対応している。
無効リスト配信サーバ14は、クライアント装置C1a,C2aから、無効対象の署名データSDaの生成に用いられた秘密鍵データKpriに対応した公開鍵データKpubの識別データKpubIDと、署名データSDaを無効する時刻を示す無効時データRTIMEとを含む無効通知データRNaを受信する。
そして、無効リスト配信サーバ14aは、無効通知データRNaを基に、無効リストデータRLISTaを更新する。
無効リストデータRLISTaは、無効対象の識別データKpubIDと、無効時データRTIMEとを対応付けて示している。
時刻証明サーバ16は、クライアント装置C1a,C2aから、これらのセキュリティチップが内蔵するタイマが示す時データTIMEを含む時刻証明要求を受信し、その時データTIMEを証明したことを示す時刻証明データT_Certを生成し、これをクライアント装置C1a,C2aに送信する。
時刻証明データT_Certには、時刻証明サーバ16内の内部時刻と、上記時データTIMEとの差分時間を示す差分時間データが含まれる。
なお、クライアント装置C2aは、クライアント装置C1と同じ構成を有している。
〔クライアント装置C1a〕
図11は、図10に示すクライアント装置C1aの構成図である。
図11に示すように、クライアント装置C1aは、例えば、インタフェース42、メモリ43、セキュリティチップSCa、CPU45a、ディスプレイ46および操作部47を有し、これらがデータ線40を介して接続されている。
図11において、図2と同じ符号を付した構成要素は第1実施形態で説明したものと同じである。
メモリ43は、アプリケーションプログラムAPaを記憶する。
アプリケーションプログラムAPaとしては、クライアント装置C1aの動作を統括的に制御するプログラムPRG_Ca、文書作成プログラムW_APaおよび文書閲覧プログラムR_APaが備えられている。
CPU45aは、例えば、図12に示すように、CPU45aおよびセキュリティチップSCaなどのハードウェア上でプログラムBIOSを動作させる。
また、CPU45aは、プログラムBIOS上でローダプログラムLoaderを動作させ、このローダプログラムLoaderを基にオペレーティングシステムOSaを起動する。
また、CPU45aは、オペレーティングシステムOSa上でアプリケーションプログラムAPaを動作させる。
CPU45は、クライアント装置C1aの後述する動作例で示す処理を統括的に制御する。
CPU45aによる制御は、後述する動作例と関連付けて説明する。
本実施形態では、CPU45aは、後述するより、図14に示すように、文書データDDのハッシュデータHDと、署名データSDa生成時の時データTIMEと、署名データSDaと、公開鍵証明書データCertと、時刻証明データT_Certを文書データDDに付加して文書配信サーバ10に送信する。
図13において、図4と同じ符号を付した構成要素は第1実施形態で説明したものと同じである。
図13に示すように、セキュリティチップSCaは、例えば、入出力回路51、鍵生成回路52、ハッシュ回路53、乱数発生回路54、署名・暗号回路55、メモリ56、プロセッサ57aおよびタイマ59を有し、これらがデータ線50を介して接続されている。
タイマ59は、計時を行う。タイマ59は、セキュリティチップSCaに内蔵されているため、計時をセキュアな状態で行い、クライアント装置C1aのユーザが設定を行うことはできない。
〔第1の動作例〕
以下、クライアント装置C1aが文書データDDを生成する場合の動作例を説明する。
図15は、当該動作例を説明するためのフローチャートである。
ステップST70:
図11に示すクライアント装置C1aのCPU45aが、例えば、クライアント装置C1aの起動時に、図13に示すセキュリティチップSCa内のタイマ59が示す時データTIMEを含む時刻証明要求を、インタフェース42を介して時刻証明サーバ16に送信する。
そして、CPU45aは、上記時刻証明要求に応じて、時刻証明サーバ16から受信した時刻証明データT_Certをメモリ43に書き込む。
時刻証明データT_Certには、前述したように、時刻証明サーバ16内の内部時刻と、上記時データTIMEとの差分時間を示す差分時間データが含まれる。
ステップST71:
図11に示すクライアント装置C1aのCPU45aが、文書作成プログラムW_APaに従って、操作部47から入力した操作信号を基に、文書データDDを生成する。
ステップST72:
CPU45aが、文書作成プログラムW_APaに従って、ステップST71で生成した文書データDDのハッシュデータHDを生成し、これをセキュリティチップSCaに出力する。
文書作成プログラムW_APaは、オペレーティングシステムOSaにハッシュデータHDを提供(出力)し、署名データSDの生成を指示する。
セキュリティチップSCaのプロセッサ57aは、CPU45aからの指示(プログラムPRG_Ca)に従って、ステップST7で署名データSDを生成した時にタイマ59が示す時データTIMEを取得する。
ステップST74:
プロセッサ57は、ステップST72で入力したハッシュデータHDと、ステップST73で取得した時データTIMEとを連結してデータHD+TIMEを生成する。
ステップST75:
セキュリティチップSCaの署名・暗号回路55が、メモリ56から読み出した秘密鍵データKpri1を基に、ステップST74で生成されたデータHD+TIMEの署名データSDaを生成する。
ステップST76:
プロセッサ57は、ステップST74で生成したデータTIME+HD、ステップST75で生成した署名データSDa、並びにメモリ56から読み出した公開鍵証明書データCert1を、入出力回路51を介してCPU45aに出力する。
ステップST77:
CPU45aは、文書作成プログラムW_APに従って、ステップST76で入力したデータTIME+HD、署名データSDa、並びに公開鍵証明書データCert1と、ステップST70で取得した時刻証明データT_Certとを、ステップST71で生成した文書データDDに付加する。
ステップST78:
CPU45aは、ステップST77でデータTIME+HD等が付加された文書データDDを、インタフェース42を介して図1に示す文書配信サーバ10に送信する。
文書配信サーバ10は、例えば、クライアント装置C2からの要求に応じて、ステップST78でデータTIME+HD等が付加された文書データDDをクライアント装置C2aに送信する。
以下、クライアント装置C1aが盗難等され、正当なユーザが署名データの無効化を無効リスト配信サーバ14aに指示する場合の動作例を説明する。
図16は、当該動作例を説明するためのフローチャートである。
ステップST81:
クライアント装置C1aが盗難等されると、正当なユーザがクライアント装置C1a以外の所定のコンピュータを操作し、無効対象の署名データSDaの生成に用いられた秘密鍵データKpriに対応した公開鍵データKpubの識別データKpubIDと、盗難された時刻を示す無効時データRTIMEとを含む無効通知データRNaを生成する。
ステップST82:
上記コンピュータは、ステップST81で生成した無効通知データRNaを図1に示す無効リスト配信サーバ14aに送信する。
無効リスト配信サーバ14aは、ステップST82で受信した無効通知データRNaを基に、無効リストデータRLISTaを更新する。
ステップST84:
無効リスト配信サーバ14aは、無効リストデータRLISTaを公開する。
クライアント装置C1a,C2aを含むクライアント装置は、無効リスト配信サーバ14aから無効リストRLISTaを受信する。
以下、文書データDDを受信した場合の動作例を説明する。
以下の説明では、クライアント装置C2aが、クライアント装置C1aが第1の動作例で説明した手順で生成した文書データDDを受信する場合を説明する。
図17は、当該動作例を説明するためのフローチャートである。
ステップST91:
CPU45aは、オペレーティングシステムOSaに従って、無効リスト配信サーバ14aにアクセスを行って上述した無効リストデータRLISTaを受信し、これをメモリ43に書き込む。
CPU45aは、例えば、署名データSDaの正当性を検証する度、あるいは定期的に無効リスト配信サーバ14aから無効リストデータRLISTaを受信する。
ステップST92:
CPU45aは、文書閲覧プログラムR_APaに従って、文書配信サーバ10から文書データDDを受信する。
当該文書データDDには、第1の動作例で図14を参照して説明したように、時データTIMEとハッシュデータHDとを連結したデータTIME+HD、データTIME+HDの署名データSDa、公開鍵証明書データCert1、並びに時刻証明データT_CerTが付加されている。
CPU45aは、オペレーティングシステムOSaに従って、ステップST92で受信した文書データDDに付加された公開鍵証明書データCert1の正当性を、例えば、認証機関12にアクセスして検証する。
ステップST94:
CPU45aは、公開鍵証明書データCert1が正当であると判断するとステップST95に進み、そうでない場合にはステップST103に進む。
CPU45aは、オペレーティングシステムOSaに従って、ステップST92で受信した文書データDDに付加された署名データSDaが、公開鍵証明書データCert1に含まれる公開鍵データKpub1に対応した秘密鍵データKpri1を基に生成されたか否かを、図13に示すセキュリティチップSCaの署名・暗号回路55に検証させる。
ステップST96:
CPU45aは、オペレーティングシステムOSaに従って、署名データSDaが秘密鍵データKpri1を基に生成されたと判断すると判断するとステップST97に進み、そうでない場合にステップST103に進む。
CPU45aは、公開鍵証明書データCert1に含まれる公開鍵データKpub1の識別データKpubIDに対応する項目が、ステップST91で受信した無効リストデータRLISTa内に存在するか否かを判断する。
ステップST98:
CPU45aは、ステップST97において存在すると判断するとステップST99に進み、存在しないと判断するとステップST103に進む。
CPU45aは、オペレーティングシステムOSaに従って、ステップST92で受信した文書データDDに付加された時刻証明データT_Certの正当性を検証し、正当であると判断すると、文書データDDに付加された時データTIMEと、時刻証明データT_Certに含まれる差分時刻データとを基に、署名時刻を示す署名時刻データを生成する。
ステップST100:
CPU45aは、オペレーティングシステムOSaに従って、無効リストデータRLISTa内の識別データKpubIDに対応付けられた無効時刻データRTIMEを取得する。
CPU45aは、オペレーティングシステムOSaに従って、ステップST99で取得した署名時刻データが示す時刻が、ステップST100で取得した無効時刻データRTIME示す時刻より遅いか否かを判断し、遅いと判断するとステップST103にすすみ、大きくないと判断するとステップST102sに進む。
ステップST102:
CPU45aは、文書データDDがクライアント装置C1aの盗難等の前に生成された正当なものであると判断し、文書閲覧プログラムR_APaに従って、それを利用する。
ステップST103:
CPU45aは、文書データDDがクライアント装置C1aの盗難等の後に生成された不正なものであると判断し、文書閲覧プログラムR_APaによるその利用を禁止する。
以下、通信システム101の全体動作例を説明する。
図18は、当該動作例を説明するためのフローチャートである。
クライアント装置C1aは、例えば、データTIME(1)+HD、署名データSDa、公開鍵証明書データCert1、並びに時刻証明データT_Certが付加された文書データDDを文書配信サーバ10に送信する(ステップST201)。
また、クライアント装置C2aは、無効リスト配信サーバ14aから無効リストデータRLISTaを受信する(ステップST202)。このとき、無効リストデータRLISTには、署名データSDaの検証に用いられる公開鍵データKpub1の識別データKpubIDは含まれていない。
また、クライアント装置C2aは、文書配信サーバ10から、データTIME(1)+HD、署名データSDa、公開鍵証明書データCert1、並びに時刻証明データT_Certが付加された文書データDDを受信する(ステップST203)。
次に、クライアント装置C2aは、ステップST202で受信した無効リストデータRLISTa内に上記識別データKpubIDが含まれていないため、ステップST203で受信した文書データDDは正当であると判断する(ステップST204)。
無効リスト配信サーバ14aは、受信した無効通知データRNaを基に、無効リストデータRLISTaを更新して無効リストデータRLISTa(RTIME(2))を生成する。
そして、クライアント装置C2aは、無効リスト配信サーバ14aから無効リストデータRLISTa(RTIME(2))を受信する(ステップST207)。このとき、無効リストデータRLISTa(rTIME(2))には、署名データSDaの検証に用いられる公開鍵データKpub1の識別データKpubIDが含まれている。
また、クライアント装置C1aは、盗難を行った不正なユーザの指示に応じて、例えば、データTIME(3)+HD、署名データSDa、公開鍵証明書データCert1、並びに時刻証明データT_Certが付加された文書データDDを文書配信サーバ10に送信する(ステップST208)。
ここで、時データTIME(3)は、無効時刻データRTIME(2)よりも遅い。
そして、クライアント装置C2aは、文書配信サーバ10から、データTIME(3)+HD、署名データSDa、公開鍵証明書データCert1、並びに時刻証明データT_Certが付加された文書データDDを受信する(ステップST209)。
次に、クライアント装置C2aは、ステップST205で受信した無効リストデータRLISTa(RTIME(2))内に上記識別データKpubIDが含まれているため、無効リストデータRLISTa内の無効時刻データRTIME(2)と、文書データDDに付加された時データTIME(3)とを比較し、時データTIME(3)の方が遅いため、ステップST209で受信した文書データDDは不当であると判断する(ステップST210)。
そのため、通信システム101によれば、クライアント装置C1aが盗難された場合でも、不正なユーザはタイマ59を調整できず、当該不正なユーザが作成した文書データに付加された時データTIMEは、タイマ59を基準とした署名データSDaの生成時刻を正確に示したものになる。
また、署名側のクライアント装置C2aにおいて、時刻証明データT_Certを基に、時データTIMEを調整するため、時刻証明サーバ16内のタイマを基準とした署名データSDaの生成時刻を特定でき、無効時刻より遅い生成時刻を持つ署名データSDaを適切に無効化できる。
従って、通信システム101によれば、検証側のクライアント装置C2aにおいて、文書データDDの正当性を高い信頼性で判断できる。
本実施形態では、クライアント装置C1,C1aのCPU45,45aが、クライアント装置C1,C1aが電源投入などにより起動されたときに、クライアント装置C1,C1a上で起動されたBIOS、ローダLoader、オペレーティングシステムOS,OSaおよびアプリケーションプログラムAP,APaの各々のハッシュデータを含む動作環境データPHDを生成する。
そして、CPU45,45aは、文書データDDに、さらに動作環境データPHDを付加して送信する。
検証側のクライアント装置C2,C2aは、図8および図17の検証において、予めベンダから取得したBIOS、ローダLoader、オペレーティングシステムOS,OSaおよびアプリケーションプログラムAP,APaのハッシュデータを基に、文書データDDに付加されている動作環境データPHDを検証する。そして、クライアント装置C2,C2aは、当該検証で一致していると判断したことを条件に、文書データDDを正当であると判断する。
これにより、クライアント装置C2,C2aは、クライアント装置C1,C1aが、図6および図15の処理を適切に行う動作環境を備えていること、すなわちカウントデータCDおよび時データTIMEを正当に生成する動作環境を備えていることを検証できる。
これにより、通信システム1,101の信頼性をさらに高めることができる。
上述した実施形態では、本発明の被証明データとして文書データDDを例示したが、本発明の被証明データは、電子メールなどのその他のコンテンツデータなどであってもよい。
Claims (5)
- 被証明データを生成或いは利用可能な複数のクライアント装置と、前記複数のクライアント装置のそれぞれに対してネットワークを介して秘密鍵データを提供すると共に当該秘密鍵データに対応する公開鍵データを発行する認証機関と、無効化対象の被証明データの公開鍵データを示す無効リストデータを前記ネットワークを介して配信する無効リスト配信サーバと、を有する情報処理システムの情報処理方法であって、
前記複数のクライアント装置の内の第1のクライアント装置が、被証明データに関する署名データを生成する度に、カウントデータを増加あるいは減少の何れか一方向に前記第1のクライアント装置内でセキュアな状態で更新する第1の工程と、
前記第1のクライアント装置が、前記被証明データと前記第1の工程で更新した前記カウントデータとに対して、前記認証機関の提供する秘密鍵データを基に前記署名データを生成する第2の工程と、
前記第1のクライアント装置が、前記第1の工程で更新したカウントデータと、前記第2の工程で生成した前記署名データと、前記第2の工程において使用した前記秘密鍵データに対応する前記公開鍵データと、を前記被証明データに付加する第3の工程と、
前記複数のクライアント装置の内の第2のクライアント装置が、前記第1のクライアント装置から前記被証明データを取得すると共に、前記無効リスト配信サーバから、無効化対象の被証明データの公開鍵データと対応するカウントデータとを予め対応付けた前記無効リストデータを取得する第4の工程と、
前記第2のクライアント装置が、前記第4の工程において取得した前記被証明データに付加された前記公開鍵データが前記無効リストデータ内にあるか否かを基に、前記公開鍵データの正当性を検証する第5の工程と、
前記第2のクライアント装置が、前記第4の工程において取得した前記被証明データに付加された前記署名データが、前記付加された公開鍵データに対応する秘密鍵データを基に生成されたか否かを検証する第6の工程と、
前記第2のクライアント装置が、前記第6の工程で前記署名データが前記秘密鍵データを基に生成されたと判断したことを条件に、前記第4の工程において取得した前記被証明データに付加されたカウントデータと、無効リストデータに記載された、当該被証明データの公開鍵データに対応付けられたカウントデータとを基に、前記署名データの有効性を判断する第7の工程と、
を有する情報処理方法。 - 前記第1のクライアント装置が、前記第1の工程で更新した前記カウントデータの履歴を示すログデータを記憶し、バックアップ指示に応じて前記ログデータを当該第1のクライアント装置の外部の記憶装置に記憶させる第8の工程
をさらに有する請求項1に記載の情報処理方法。 - 前記第1のクライアント装置が、当該第1のクライアント装置の起動時に、当該第1のクライアント装置上で起動されたBIOS、ローダ、オペレーティングシステムおよびアプリケーションプログラムの各々のハッシュデータを含む動作環境データを生成する第9の工程をさらに有し、
前記第3の工程において、前記第9の工程で生成した前記動作環境データを前記被証明データにさらに付加する
請求項1に記載の情報処理方法。 - 前記第2のクライアント装置が、前記被証明データに付加され、前記署名データを生成するコンピュータの起動時に当該コンピュータ上で起動されたBIOS、ローダ、オペレーティングシステムおよびアプリケーションプログラムの各々のハッシュデータの正当性を検証する第10の工程
をさらに有し、
前記第7の工程は、前記第10の工程で正当性が検証されたことを条件に実行される
請求項1に記載の情報処理方法。 - 被証明データを生成或いは利用可能な複数のクライアント装置と、前記複数のクライアント装置のそれぞれに対してネットワークを介して秘密鍵データを提供すると共に当該秘密鍵データに対応する公開鍵データを発行する認証機関と、無効化対象の被証明データの公開鍵データを示す無効リストデータを前記ネットワークを介して配信する無効リスト配信サーバと、を有する情報処理システムであって、
前記複数のクライアント装置の内の第1のクライアント装置は、
被証明データに関する署名データを生成する度に、カウントデータを増加あるいは減少の何れか一方向に前記第1のクライアント装置内でセキュアな状態で更新し、
前記被証明データと前記更新した前記カウントデータとに対して、前記認証機関の提供する秘密鍵データを基に前記署名データを生成し、
前記更新したカウントデータと、前記生成した前記署名データと、前記署名データを生成する際に使用した前記秘密鍵データに対応する前記公開鍵データと、を前記被証明データに付加し、
前記複数のクライアント装置の内の第2のクライアント装置は、
前記第1のクライアント装置から前記被証明データを取得すると共に、前記無効リスト配信サーバから、無効化対象の被証明データの公開鍵データと対応するカウントデータとを予め対応付けた前記無効リストデータを取得し、
前記取得した前記被証明データに付加された前記公開鍵データが前記無効リストデータ内にあるか否かを基に、前記公開鍵データの正当性を検証し、
前記取得した被証明データに付加された前記署名データが、前記付加された公開鍵データに対応する秘密鍵データを基に生成されたか否かを検証し、
前記署名データが前記秘密鍵データを基に生成されたと判断したことを条件に、前記取得した被証明データに付加されたカウントデータと、無効リストデータに記載された、当該被証明データの公開鍵データに対応付けられたカウントデータとを基に、前記署名データの有効性を判断する
情報処理システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004142824A JP4626181B2 (ja) | 2004-05-12 | 2004-05-12 | 情報処理方法及び情報処理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004142824A JP4626181B2 (ja) | 2004-05-12 | 2004-05-12 | 情報処理方法及び情報処理システム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2005328198A JP2005328198A (ja) | 2005-11-24 |
JP2005328198A5 JP2005328198A5 (ja) | 2007-06-21 |
JP4626181B2 true JP4626181B2 (ja) | 2011-02-02 |
Family
ID=35474215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004142824A Expired - Fee Related JP4626181B2 (ja) | 2004-05-12 | 2004-05-12 | 情報処理方法及び情報処理システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4626181B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4952593B2 (ja) * | 2008-01-21 | 2012-06-13 | ソニー株式会社 | 情報処理装置、ディスク、および情報処理方法、並びにプログラム |
JP4883015B2 (ja) * | 2008-01-21 | 2012-02-22 | ソニー株式会社 | 情報処理装置、ディスク、および情報処理方法、並びにプログラム |
KR20100112131A (ko) | 2008-01-21 | 2010-10-18 | 소니 주식회사 | 정보 처리 장치, 디스크, 및 정보 처리 방법, 및 프로그램 |
JP2014192793A (ja) * | 2013-03-28 | 2014-10-06 | Mega Chips Corp | 暗号装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002071468A (ja) * | 2000-08-28 | 2002-03-08 | Sanyo Electric Co Ltd | 温度記録装置、温度記録の管理方法、および温度記録管理システム |
JP2002215029A (ja) * | 2001-01-22 | 2002-07-31 | Seiko Epson Corp | 情報認証装置及びこれを使用したデジタルカメラ |
JP2002244554A (ja) * | 2001-02-16 | 2002-08-30 | Hitachi Software Eng Co Ltd | タイムスタンプ生成方法及び確認方法並びに装置並びにシステム |
JP2002304589A (ja) * | 2001-04-04 | 2002-10-18 | Dainippon Printing Co Ltd | 決済システム |
JP2003298580A (ja) * | 2002-04-05 | 2003-10-17 | Nippon Telegr & Teleph Corp <Ntt> | 失効公開鍵証明書リスト生成装置、失効公開鍵証明書リスト生成方法、コンピュータプログラムおよびコンピュータプログラムを記録した記録媒体 |
JP2004056635A (ja) * | 2002-07-23 | 2004-02-19 | Hitachi Ltd | 証明書失効リストの更新装置、システム及び方法 |
JP2004318564A (ja) * | 2003-04-17 | 2004-11-11 | Dainippon Printing Co Ltd | Icカード及びicカードプログラム |
JP2005260676A (ja) * | 2004-03-12 | 2005-09-22 | Internatl Business Mach Corp <Ibm> | セキュリティ装置、情報処理装置、セキュリティ装置の制御方法、情報処理装置の制御方法、該制御方法を実行させるための装置実行可能なプログラムおよびチケット・システム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11205308A (ja) * | 1997-10-29 | 1999-07-30 | Hitachi Ltd | 認証方法および情報システム |
-
2004
- 2004-05-12 JP JP2004142824A patent/JP4626181B2/ja not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002071468A (ja) * | 2000-08-28 | 2002-03-08 | Sanyo Electric Co Ltd | 温度記録装置、温度記録の管理方法、および温度記録管理システム |
JP2002215029A (ja) * | 2001-01-22 | 2002-07-31 | Seiko Epson Corp | 情報認証装置及びこれを使用したデジタルカメラ |
JP2002244554A (ja) * | 2001-02-16 | 2002-08-30 | Hitachi Software Eng Co Ltd | タイムスタンプ生成方法及び確認方法並びに装置並びにシステム |
JP2002304589A (ja) * | 2001-04-04 | 2002-10-18 | Dainippon Printing Co Ltd | 決済システム |
JP2003298580A (ja) * | 2002-04-05 | 2003-10-17 | Nippon Telegr & Teleph Corp <Ntt> | 失効公開鍵証明書リスト生成装置、失効公開鍵証明書リスト生成方法、コンピュータプログラムおよびコンピュータプログラムを記録した記録媒体 |
JP2004056635A (ja) * | 2002-07-23 | 2004-02-19 | Hitachi Ltd | 証明書失効リストの更新装置、システム及び方法 |
JP2004318564A (ja) * | 2003-04-17 | 2004-11-11 | Dainippon Printing Co Ltd | Icカード及びicカードプログラム |
JP2005260676A (ja) * | 2004-03-12 | 2005-09-22 | Internatl Business Mach Corp <Ibm> | セキュリティ装置、情報処理装置、セキュリティ装置の制御方法、情報処理装置の制御方法、該制御方法を実行させるための装置実行可能なプログラムおよびチケット・システム |
Also Published As
Publication number | Publication date |
---|---|
JP2005328198A (ja) | 2005-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7263608B2 (en) | System and method for providing endorsement certificate | |
KR101139658B1 (ko) | 기록 매체, 통신 장치, 데이터 처리 방법 및 통신 시스템 | |
JP6595822B2 (ja) | 情報処理装置及びその制御方法 | |
JP4067985B2 (ja) | アプリケーション認証システムと装置 | |
JP5046165B2 (ja) | チップカードを備える組み込みシステム上に安全なカウンタを作成する方法 | |
US7539312B2 (en) | Program update method and server | |
JP4739644B2 (ja) | 悪質コード検出方法 | |
US8670568B2 (en) | Methods and systems for utilizing cryptographic functions of a cryptographic co-processor | |
AU2019204723B2 (en) | Cryptographic key management based on identity information | |
US20070118752A1 (en) | Authentication of control units in a vehicle | |
US20050182952A1 (en) | Information processing apparatus and method and computer program | |
JP2015233315A (ja) | サーバ | |
JP2011522469A (ja) | 保護されたソフトウエアイメージを有する集積回路及びそのための方法 | |
JP2004021755A (ja) | 記憶装置 | |
JP2007512787A (ja) | トラステッド・モバイル・プラットフォーム・アーキテクチャ | |
JP2009521032A5 (ja) | ||
EP2005356A1 (en) | Authentication of a request to alter at least one of a bios and a setting associated with the bios | |
US20200178080A1 (en) | Key generation apparatus and key update method | |
JP2002509388A (ja) | 異なるアドレス空間にある別のプロセスを強力に認証する方法 | |
JP2014048800A (ja) | 認証システムおよび認証方法 | |
JP2000011101A (ja) | Icカードおよび記録媒体 | |
JP4626181B2 (ja) | 情報処理方法及び情報処理システム | |
CN111667268B (zh) | 基于区块链的交易方法、节点及系统 | |
KR20060047623A (ko) | 프로그램, 컴퓨터, 데이터 처리 방법, 통신 시스템 및 그방법 | |
JP3684179B2 (ja) | セキュリティ機能を有するメモリカード |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070502 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070502 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100720 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100913 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101012 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101025 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131119 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131119 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |