JP2005159463A - Pki認証システムにおける代替証明書発行・検証システム - Google Patents

Pki認証システムにおける代替証明書発行・検証システム Download PDF

Info

Publication number
JP2005159463A
JP2005159463A JP2003391263A JP2003391263A JP2005159463A JP 2005159463 A JP2005159463 A JP 2005159463A JP 2003391263 A JP2003391263 A JP 2003391263A JP 2003391263 A JP2003391263 A JP 2003391263A JP 2005159463 A JP2005159463 A JP 2005159463A
Authority
JP
Japan
Prior art keywords
certificate
alternative
user
verification system
verification
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.)
Granted
Application number
JP2003391263A
Other languages
English (en)
Other versions
JP4057995B2 (ja
Inventor
Yasuhiro Fujita
康宏 藤田
Kensuke Bandai
健介 萬代
Hironaga Saito
博永 齋藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2003391263A priority Critical patent/JP4057995B2/ja
Publication of JP2005159463A publication Critical patent/JP2005159463A/ja
Application granted granted Critical
Publication of JP4057995B2 publication Critical patent/JP4057995B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

【課題】プライバシ情報の入っている証明書の利用できる範囲の制限を無くし、さらに匿名性を確保したり証明書の用途を変更可能とすること。
【解決手段】代替証明書発行・検証システム(300)は、ユーザ1(500)に発行された証明書を元にその証明書の情報を削除、追加、変更した代替証明書の発行をユーザ1に行い、ユーザ1は発行された代替証明書をユーザ2(600)に暗号データや署名データともに添付する。ユーザ1から暗号データや署名データを受け取ったユーザ2は代替証明書発行・検証システムの検証機能を利用することで、ユーザ1によって発行された代替証明書の有効性はもちろん、ユーザ1によって発行された元となった証明書の存在確認をすることができ、ユーザ1とユーザ2は元となるユーザ1(500)に発行された証明書とユーザ1に発行された代替証明書の差異を確かめることができる。
【選択図】図1

Description

本発明は、証明書を利用したPKI(Pubric Key Infrastructure)認証システムに用いられる証明書の発行及び検証の技術に関する。
プライバシ情報(例えば、生年月日等)を含んだ証明書の配布を広範囲に実行することには証明書悪用の課題もあってなかなかできなかった。そのため、プライバシ情報を含まない証明書を新しく作成することが考えられるが、プライバシ情報を含んだ証明書との関連付けが行われていないため、それぞれの証明書で異なる公開鍵と秘密鍵の鍵ペアを作って行っていた(例えば、特許文献1を参照)。つまり、これらの証明書の関連付けを行う技術は無かった。そのため、プライバシ情報を含む証明書とプライバシ情報を含まない証明書を別々に管理するという煩雑さがあった。
証明書の有効性確認という点では、Online Certificate Status Protocolという規格が存在し、該当する証明書の有効性をオンラインで確認する手段がすでに存在している。
特開平11−8619号公報
従来技術によると、プライバシ情報を含む証明書を不特定多数に配信することは実際上できず、そのため、プライバシ情報を含む証明書を使う場合、利用できる範囲が限定されるという課題が生じていた。
本発明の目的は、上述した課題を解決するために、プライバシ情報を含む証明書に対してプライバシ情報を含まない代替証明書を発行して証明書の利用できる範囲の制限を無くすことができるようにし、さらに、匿名性を確保したり証明書の用途を変更することができる代替証明書の発行及び検証システムを提供することにある。
前記課題を解決するために、本発明は主として次のような構成を採用する。
PKI認証システムの証明書の発行申請を行う第1のユーザと、前記第1のユーザと公開鍵を用いて通信する第2のユーザと、前記証明書の発行・検証を行う証明書検証システムと、にネットワークを通して接続される代替証明書発行・検証システムであって、
前記代替証明書発行・検証システムは、前記証明書検証システムによって前記第1のユーザに発行されたPKI認証システムの証明書を格納するリポジトリと、前記リポジトリを管理するリポジトリ管理部と、前記証明書に代替する証明書を発行する代替証明書発行部と、を有し、
前記代替証明書発行部は、信頼性の高い前記証明書検証システムによって発行された前記第1のユーザへの証明書に基づいて、前記証明書の情報を削除、追加又は変更した代替証明書を前記公開鍵を付して前記第1のユーザの求めに応じて発行し、
前記発行に際して、公開された変換ポリシ定義にしたがって前記証明書の情報を変換する構成とする。
また、PKI認証システムの証明書の発行申請を行う第1のユーザと、前記第1のユーザと公開鍵を用いて通信する第2のユーザと、前記証明書の発行・検証を行う証明書検証システムと、にネットワークを通して接続される代替証明書発行・検証システムであって、
前記代替証明書発行・検証システムは、前記証明書検証システムによって前記第1のユーザに発行されたPKI認証システムの証明書を格納するリポジトリと、前記リポジトリを管理するリポジトリ管理部と、前記証明書に代替する証明書を発行する代替証明書発行部と、前記第2のユーザのリクエストによる前記代替証明書及び前記公開鍵を検証する代替証明書検証部と、を有し、
前記代替証明書発行部は、信頼性の高い前記証明書検証システムによって発行された前記第1のユーザへの証明書に基づいて、公開された変換ポリシ定義にしたがって前記証明書の情報を削除、追加又は変更した代替証明書を前記公開鍵を付して前記第1のユーザの求めに応じて発行し、
前記代替証明書検証部は、前記変換ポリシ定義を用いて前記代替証明書と前記リポジトリで管理している前記証明書との差分比較を行い、前記差分比較によって前記代替証明書及び公開鍵の改ざんが行われていないことを検証する構成とする。
また、PKI認証システムの証明書の発行申請を行う第1のユーザと、前記証明書に代替する証明書を発行する代替証明書発行部及び前記第1のユーザと公開鍵を用いて通信する第2のユーザのリクエストによる前記代替証明書と前記公開鍵を検証する代替証明書検証部を有する代替証明書発行・検証システムと、を備えたPKI認証システムであって、
前記代替証明書発行部は、信頼性の高い前記証明書検証システムによって発行された前記第1のユーザへの証明書に基づいて、公開された変換ポリシ定義にしたがって前記証明書の情報を削除、追加又は変更した代替証明書を前記公開鍵を付して前記第1のユーザの求めに応じて発行し、
前記代替証明書検証部は、前記変換ポリシ定義を用いて前記代替証明書と前記リポジトリで管理している前記証明書との差分比較を行い、前記差分比較によって前記代替証明書及び公開鍵の改ざんが行われていないことを検証する構成とする。
また、PKI認証システムの証明書の発行申請を行う第1のユーザと、前記証明書に代替する証明書を発行する代替証明書発行部及び前記第1のユーザと公開鍵を用いて通信する第2のユーザのリクエストによる前記代替証明書と前記公開鍵を検証する代替証明書検証部を有する代替証明書発行・検証システムと、を備えたPKI認証システムであって、
前記代替証明書発行部は、信頼性の高い前記証明書検証システムによって発行された前記第1のユーザへの証明書に基づいて、公開された変換ポリシ定義にしたがって前記証明書の情報を削除、追加又は変更した代替証明書を前記公開鍵を付して前記第1のユーザの求めに応じて発行し、
前記第1のユーザは、前記第2のユーザの受信した代替証明書の情報確認の監査請求に応じて、前記代替証明書の署名を検定し、
前記代替証明書発行・検証システムの自己署名証明書から変換ポリシ定義を取得し、
前記変換ポリシ定義を用いて前記代替証明書と前記証明書との差分比較を行い、前記差分比較によって前記代替証明書の改ざんが行われていないことを監査し得る構成とする。
本発明によれば、従来では不可能であったプライバシ情報を含む証明書に基づいて、証明書の情報を変換した代替証明書の発行及び検証によって、証明書の利用できる範囲の制限を無くすことができ、さらに、匿名性を確保したり、証明書の用途を変更することができる。
本発明の実施形態に係るPKI認証システムについて、図面を参照しながら以下詳細に説明する。
図1は、本発明の実施形態に係るPKI認証システムの全体構成を示すブロック図である。図1において、PKI認証システムは、証明書検証システム(100)と、代替証明書発行・検証システム(300)と、ユーザ1(500)と、ユーザ2(600)と、ネットワーク(200)および(400)と、から構成されている。証明書検証システム(100)は検証局(101)を有する。代替証明書発行・検証システム(300)は、証明書検証システム100によってユーザ1(500)に発行された証明書を元に、その証明書の情報を削除、追加、変更した代替証明書の発行をユーザ1(500)に行い、それによりユーザ1は発行された代替証明書をユーザ2(600)に暗号データや署名データともに添付する。
そして、ユーザ1(500)から暗号データや署名データを受け取ったユーザ2(600)は代替証明書発行・検証システム(300)の検証機能を利用することで、ユーザ1(500)に発行された代替証明書の有効性はもちろん、ユーザ1(500)に発行された元となった証明書の存在確認をすることができ、場合によってはユーザ1とユーザ2は元となるユーザ1(500)に発行された証明書とユーザ1(500)に発行された代替証明書の差異を確かめる手段を持つことができる。
代替証明書発行・検証システム(300)は、代替証明書発行アプリケーション(301)と、代替証明書検証アプリケーション(308)と、リポジトリ管理部(314)と、リポジトリ(316)と、で構成されている。
ここで、まず最初に、本発明の実施形態に係るPKI検証システムにおける証明書検証システムと、代替証明書発行・検証システムと、証明書発行の依頼元であるユーザ1と、ユーザ1からの代替証明書を受け取るユーザ2と、におけるそれぞれの機能や、それらの関連動作について、その概要を説明する。
証明書検証システム100は、信頼性の高い、例えば国やその付属機関がユーザの求めに応じて署名や暗号化に使用する公開鍵付きの証明書を発行・検証するシステムである。代替証明書発行・検証システム300は、証明書検証システム100の有する信頼性よりも低下する証明書の発行・検証システム(例えば、民間の機関であって良い)であるが、証明書検証システム(国)100の発行する証明書からユーザのプライバシ情報(例えば、誕生日、住所の細部)を取り除いた代替証明書を発行・検証するシステムであって、ユーザ1は、この代替証明書(付随する公開鍵は国発行の証明書と同一)を取得し、プライバシ情報を含まない代替証明書であるので、広範囲の相手先即ち不特定多数、例えばユーザ2に暗号データ又は署名データに添付して送付する。
代替証明書の発行の態様を説明すると、まず、代替証明書発行・検証システム300は、ユーザ1から送られた国発行の証明書に基づいて、プライバシ情報をも含んだ国発行の証明書の記載内容を変換するのであるが、公開された変換ポリシ定義(図3を参照)によって証明書を変換する。例示すると、住所細部(図12を参照)を削除した代替証明書を発行する場合、公開された変換ポリシ定義(図3に示す証明書のsubjectに該当する)にしたがって処理する(変換する対象(場所)や変換の動作等が図3のように予め決められていて、公開しているものである)。また、プライバシ情報の削除の他に、公開鍵の使用目的を国発行の証明書と違えて、例えば、署名又は暗号化の一方に特定することもできる。また、代替証明書は代替証明書発行・検証システム自体の秘密鍵で署名してユーザ1に発行する。
ユーザ1は発行された代替証明書の有効性について、自身の有する監査アプリケーションを動作させて確認することができる。この際に、既に取得している国発行の証明書の内容を当然に参照して確認動作する。次に、ユーザ1は有効性の確認された代替証明書を署名データや暗号データに添付して不特定多数の一人であるユーザ2に送る。また、ユーザ1は、公開鍵付きの代替証明書を直接にユーザ2に送るのではなくて、証明書保管サーバに送付して誰もが利用できるようにしても良い。
ユーザ2は、代替証明書が直接にユーザ1から送られる場合や証明書保管サーバから取り寄せる場合もあり、受け取った代替証明書の有効性を確認する必要がある。ユーザ2による代替証明書の有効性確認には2つのルートが存在する。1つのルートは、代替証明書発行・検証システム300に検証リクエストを送り、代替証明書検証アプリケーションを動作させて確認するとともに国の証明書検証システムの検証結果を得る(図13を参照)。この検証によって、代替証明書の項目、付随する公開鍵の有効性を確認することができる。また、他のルートは、ユーザ2から直接にユーザ1に検証リクエストを出して、ユーザ1に監査を請求することである(証明書保管サーバから代替証明書を取得した場合に特に有効である)。監査請求されたユーザ1は、国発行の証明書と代替証明書発行・検証システム発行の代替証明書を保持しているので、ユーザ2から送られてきた代替証明書を監査してその有効性を確認することができる。
以上、概説した代替証明書を発行し且つ検証するシステムでは、高信頼性を有し且つ権威のある国発行の証明書に代えて、代替証明書を発行且つ検証することができて代替証明書を広範囲に流通させることできる。しかも、この代替証明書は、信頼性の高い国発行の証明書と公開鍵が同一であることやプライバシ情報を取り除いた代替証明書の他の内容が国発行の証明書と同一であることを確認可能であり、即ち、公開鍵を含めて代替証明書の有効性が確認可能なものである。したがって、広範囲に流通させることのできる代替証明書は、信頼性の高い国発行の証明書に裏付けられた証明書であると云える。
以上の説明は、本発明の実施形態に係るPKI検証システムの概要を記述したに過ぎないものであるので、本発明はこの概要に特定されるものではなくて、以下に詳細に述べる技術的事項に基づくものである。
代替証明書の発行手順は、ユーザ1(500)から送信される代替証明書リクエストデータを受け、代替証明書発行・検証システム(300)の代替証明書発行アプリケーション(301)を実行する。
代替証明書発行アプリケーション(301)は、署名検定部(302)、変換ポリシ抽出部(303)、証明書変換部(304)、変換ポリシ証拠作成部(305)、変換ポリシ追加部(306)、署名変更部(307)、で構成されており、署名検定部(302)でリクエストデータに付随する署名値の検定を行う。検定結果が正しければ、リクエストデータ内の証明書をリポジトリ管理部(314)の証明書登録部(313)を利用しリポジトリ(316)に登録し、変換ポリシ抽出部(303)を実行する。
変換ポリシ抽出部(303)は代替証明書発行・検証システムの自己署名証明書から変換ポリシ定義を取得する。変換ポリシ定義は図3に示し、代替証明書リクエストデータ内のユーザ1の証明書を変換ポリシ定義に従って変換を行う。
証明書変換部(304)の処理フローを図6に記載する。この処理フローを図6と図3を用いて説明すると、最初に、与えられた変換ポリシ定義にステップ6001でTP(変換ポリシ:図3に示す変数名)があるかどうか確認を行い、存在する場合、ステップ6002でaction(動作)がadd(追加)でないか確認し、addである場合、ステップ6003で変換場所の変数値に定義されている証明書の部分を検索し、ステップ6004で代替文字の変数名altstringに代入されている任意の文字列を追加する。同様にステップ6005ではactionがchange(変更)でないか確認を行い、ステップ6008ではactionがdelete(削除)でないか確認を行い、確認が取れた場合はそれぞれの処理を行う。
その後、ステップ6011変換ポリシ証拠作成を行い、ステップ6012の変換ポリシ追加部の実行において、証明書のプライベートエクステンションに追加し、ステップ6013の次のTPに移動するを実行し、左記の処理をTPが無くなるまで行う。
次に、変換ポリシ証拠作成の処理フローを図5に示し、作成される変換ポリシ証拠の定義を図4に示す。
変換ポリシ証拠作成の処理フローは、ステップ5001で変換ポリシ定義の変数名action(図3を参照)の変数値から変換ポリシ証拠の変数名action(図4を参照)の変数値を作成し、ステップ5002で変換ポリシ定義の変数名object(図3を参照)の変数値から変換ポリシ証拠の変数名object(図4を参照)の変数値を作成し、ステップ5003で変換ポリシ定義処理フローで検索した証明書の変換場所(変換すべき対象)の値を取得し、ステップ5004で取得した値のハッシュ値を作成する、ステップ5005で作成したハッシュ値で変換ポリシ証拠の変数名predata_hashを作成し、変換ポリシ証拠が作成される。
以上のことを具体的例示で説明する。例えば、ブロマイドデータ配布における変換ポリシ定義を図10に示し、証明書変換部(304)の処理フローと変換ポリシ証拠作成の処理フローを説明する。
ステップ6001でTP(変換ポリシ)があるかどうか確認を行い、存在するので、ステップ6002でactionがaddでないか確認し、addでは無いため、次にステップ6005でactionがchangeでないか確認し、changeでは無いため、ステップ6008でactionがdeleteで無いか確認し、deleteであるためステップ6009を実行し、変数名objectの値subjectから証明書内のsubjectが記載されている位置を検索する。次にステップ6010で検索したsubjectを削除処理として「*」の文字で上書きし、ステップ6011の変換ポリシ証拠の作成を行い、ステップ6012の変換ポリシ証拠追加で証明書のプライベートエクステンションに作成した変換ポリシ証拠を追加する。ステップ6013で次のTPに移動するを実行し、ステップ6001の処理でTPが存在しないので証明書変換部(304)の処理は終了し、署名変更部(307)の処理を実行する。
この際、変換ポリシ証拠の作成は、ステップ5001において変換ポリシ定義の変数名actionに定義されている変数値deleteから変換ポリシ証拠の変数名actionにdeleteを設定し、ステップ5002において変換ポリシ定義の変数名objectに定義されている変数値subjectから変換ポリシ証拠の変数名objectにsubjectを設定し、ステップ5003において変換ポリシ定義処理フローステップ6009で検索した証明書の変換場所の値を取得し、ステップ5004において取得した値のハッシュ値を作成する、ステップ5005において変数名predata_hashに作成したハッシュ値を代入する、これにより変換ポリシ証拠が作成される。
次に、署名変更部(307)の処理は証明書変換部(304)で変更された証明書の署名部分の削除を行い、変換したTBSCertificateに対して代替証明書発行・検証システム(300)の秘密鍵で署名を行う。発行された代替証明書はユーザ1(500)にネットワーク400を介して送信される。
上述した代替証明書の発行の流れについて、図2の代替証明書発行処理フローに示し、図11にユーザ1(500)に国から発行された証明書の例を示し、図12に図11の証明書を元に代替証明書発行・検証システム(300)で発行する代替証明書の例を示す。図12に示す代替証明書は、図11に示す国発行の証明書を元に住所の一部が削除されている例を示している。
次に、代替証明書の検証手順は、図1を参照して説明すると、ユーザ2(600)において証明書検証リクエスト作成(602)を実行し、次に証明書検証申請部(603)を実行し、ネットワーク400を介して代替証明書発行・検証システム(300)に証明書検証リクエストデータを送信する。
代替証明書発行・検証システム(300)は検証リクエストデータを受信し、代替証明書検証アプリケーション(308)を実行し、変換ポリシ抽出部(309)を実行する。変換ポリシ抽出部(309)は代替証明書発行・検証システム(300)の自己署名証明書から変換ポリシ定義を取得する。変換ポリシ定義は図3に示し、次に証明書比較部(310)を実行し、リポジトリ(316)で管理しているユーザ1の証明書と代替証明書検証リクエストデータ内のユーザ1の代替証明書の比較を行う。
証明書比較部(310)の処理は、変換ポリシ定義と代替証明書の比較処理と、証明書と代替証明書の比較処理において改ざんが行われていないことを確認し、証明書検証リクエスト作成部(311)を実行する。
変換ポリシ定義と代替証明書の比較処理フローを図7に示し、図8に証明書と代替証明書の比較処理フローを示す。
図7において、最初に、与えられた変換ポリシ定義にステップ7001でTP(図3に示す変換ポリシの変数名)があるかどうか確認を行い、存在する場合、ステップ7002でaction(図3に示す動作の変数名)がadd(図3に示す変数値)でないか確認し、addである場合、ステップ7003で図3の変換ポリシ定義に定義されている変数名objectの変数値と合致する代替証明書の部分を検索し、ステップ7004で検索した位置に記載されている文字と図3の変換ポリシ定義に定義されている変数名altstringの変数値が等しいことを確認し、同じであればステップ7005検索した値削除を行う。
同様に、ステップ7006ではactionがchangeでないか確認を行い、ステップ7009ではactionがdeleteでないか確認を行い、確認が取れた場合はそれぞれの処理を行う。その後、ステップ7012で次のTPに移動するを実行し、左記の処理をTPが無くなるまで行う。
次に、証明書と代替証明書の比較処理フローを示す図8において、ステップ8001でリポジトリ管理部(314)の証明書取得部(315)を実行し証明書(証明書検証システム100の発行した証明書)を取得する。ステップ8002では代替証明書のプライベートエクステンション(証明書独自定義部分)にTPEE(図4に示す変数名であって、代替証明書に付加した変換ポリシの証拠を表すもの)が存在するか確認し、ステップ8003においてTPEEの変数名actionがaddであるか確認し、addである場合はステップ8009の次のTPEEに移動を実行する。TPEEの変数名actionがaddで無い場合はステップ8004を実行し、actionがchangeで無いか確認し、changeである場合は証明書内をTPEEの変数名objectの変数値で検索し、ステップ8007で検索部分のハッシュ値を作成し、ステップ8008でTPEEの変数名predata_hashの変数値と等しいか確認する。その後、ステップ8009で次のTPEEに移動を実行する。
変数名actionがchangeで無い場合はステップ8005を実行し、actionがdeleteで無いか確認し、deleteである場合は証明書内の変数名objectの変数値を検索し、ステップ8007で検索部分のハッシュ値を作成し、ステップ8008で変数名predata_hashの値と等しいか確認する。その後、ステップ8009で次のTPEEに移動を実行する。このような処理をTPEEが無くなるまで行う。
次に、証明書検証リクエスト作成部(311)は、リポジトリから取得しているユーザ1に発行された証明書に対して検証リクエストを作成し、証明書検証申請部(312)を実行する。ここにおいて、証明書検証リクエスト作成部(311)では、ユーザ2から検証申請された代替証明書に対応する証明書検証システム(100)発行の証明書の有効性(証明書検証システム(100)による証明書発行時から代替証明書検証時までの間において当該証明書が失効リストにリストアップされていないこと)について証明書検証システム(100)に問い合わせを行うのである。
この際、証明書を取得する場合における代替証明書との対応付けは、代替証明書に記入された証明書のSerial Noを用いることで行われる。さらに、このSerial Noに加えて、証明書を発行した発行者名を確認することによっても証明書と代替証明書との対応付けを行うことができる。なお、この対応付けはテーブル等で行われる。そして、このテーブルを参照して、ユーザ2から検証申請された代替証明書に付されたSerial Noと同じSerial Noを有している証明書を取得する。また、証明書検証リクエスト作成部(311)で用いる証明書は、証明書比較部(310)で既にリポジトリ(316)から前述したのと同様にSerial No等に基づいて取得しているので、このとき取得した証明書を用いても良いし、新たにリポジトリ(316)から取得しても良い。このように、代替証明書との対応付けがなされて取得された証明書に証明書検証システム(100)向けの検証リクエストを作成するのである。
続いて、ネットワーク200を介して検証申請を証明書検証システム(100)に送信する。証明書検証システム(100)からネットワーク200を介して応答メッセージを受け取り、その応答結果をネットワーク400を介してユーザ2(600)に送信する。
上述した一連の流れを、代替証明書発行・検証システムにおける検証依頼フローとして図13に示す。図13に示す検証依頼フローはユーザ2が受け取った代替証明書の公開鍵あるいは秘密鍵が有効であるか否かを代替証明書発行・検証システム300に対して検証する流れであり、この流れにおいて、後述するように信頼性の高い証明書検証システムによる検証も含まれているので、検証結果に信頼性が保持されることとなる。
図13において、ステップ13001において変換ポリシ抽出プログラムで変換ポリシ定義を取り出し、次に変換ポリシ定義と検証リクエストデータ内の代替証明書との比較を行い(ステップ13002)、ステップ13003においてリポジトリで管理しているユーザ1の証明書(証明書検証システム100の発行した証明書)とリクエストデータ内の代替証明書との比較をし、リポジトリで管理しているユーザ1の証明書に対して検証リクエストを作成し(ステップ13004)、次いで、作成した検証リクエストデータを証明書検証システムに検証依頼し(ステップ13005)、ステップ13006において、証明書検証システムから応答結果を受信し、受信した応答結果をユーザ2に送信する。この応答結果の一例として、検証依頼された代替証明書に対応する証明書が失効リストに仮に該当しているものであれば、代替証明書は失効である旨の応答結果となる。
ユーザ2(600)は受信した応答メッセージから署名検定部(604)を実行し、応答メッセージが改ざんされていないかを確認し、タイムスタンプ確認部605)でユーザ2(600)が作成したリクエストの応答メッセージであるかを確認し、シリアル番号確認部(606)で代替証明書のシリアル番号と同一で有るかを確認する。
ユーザ2(600)の応答メッセージ解析フローを図14に示し、証明書検証システム(100)からの応答メッセージを図15に示す。図14によると、ステップ14001において応答メッセージに付随している署名値が正しいかを判断し、正しければ応答メッセージ内のタイムスタンプの時刻を確認する(ステップ14002)。次に、ステップ14003で応答メッセージデータ内の検証依頼した証明書のシリアル番号と代替証明書のシリアル番号が一致しているかを確認して解析フローを終了する。
また、証明書検証システム(100)からの応答メッセージは、図15に示す通りのものであり、応答メッセージのフィールドを一例として示すと、応答結果、応答メッセージ生成時刻、証明書の状態、検証対象の証明書及び署名値とからなる。ここで、証明書検証システムからの応答メッセージにおけるフィールドの内の証明書の状態を見ると、値として有効、失効、不明が応答される。これは証明書に付された公開鍵が有効、無効、不明であることを示している。換言すると、図13に示すフローでステップ13006の応答結果をみると、代替証明書に付された公開鍵の有効性をユーザ2は確認することができるのである。
これにおいて、公開鍵並びに代替証明書の有効性は勿論、元になった証明書の存在確認と有効性を知ることができ、代替証明書発行・検証システム(300)がユーザ2(600)からの検証依頼を証明書検証システム(100)に正しく検証依頼していることが証明される。
次に、代替証明書発行・検証システム(300)の監査手順は、証明書の所有者ユーザ1(500)によって発行された代替証明書を使い、代替証明書システム監査アプリケーション(504)を実行する。ここでは、ユーザ1は、証明書検証システム100から証明書を、代替証明書発行・検証システム300から代替証明書を既に得ていることが前提になっている。ユーザ2からユーザ1への監査請求(検証依頼)は、代替証明書発行・検証システムの他に、代替証明書を送信している本人宛に代替証明書の情報の再確認の意味もある。
システム監査アプリケーション(504)は署名検定部(505)、変換ポリシ抽出部(506)、証明書比較部(507)から成り、まず署名検定部(505)を実行し、代替証明書の署名を検定し、検定結果が正しければ、変換ポリシ抽出部(506)を実行する。変換ポリシ抽出部の処理は代替証明書発行・検証システムの自己署名証明書から変換ポリシ定義を取得する。
変換ポリシ定義は図3に示し、証明書比較部(507)を実行し、ユーザ1の代替証明書を変換ポリシ定義に従い、ユーザ1の証明書との差分比較を行う。証明書比較部の処理は変換ポリシ定義と代替証明書の比較処理と、証明書と代替証明書の比較処理フローにおいて改ざんが行われていないことを確認し、TP、TPEEに定義している以外に変換されている箇所が無いか比較する。変換ポリシ定義と代替証明書の比較処理は図7に示し、証明書と代替証明書の比較処理は図8に示す。
上述の監査処理により代替証明書発行・検証システム(300)が変換ポリシに従って代替証明書を発行しているか知ることができ、また、上述の例ではユーザ1が代替証明書発行・検証システムの監査申請を行ったが、ユーザ2(600)がユーザ1(500)の代替証明書の監査申請をネットワーク400を介してユーザ1(500)に依頼することも可能であり、また、ユーザ1が代替証明書の検証を代替証明書発行・検証システム(300)にネットワーク400を介して依頼することも可能である。さらに、システム監査アプリケーション(504)がユーザ1の内部に含まれているとして説明したが、この監査アプリケーション(504)が監査サーバとしてユーザ1から独立した構成としても良い。
以上説明したように、本発明の特徴の概要は、信頼性レベルの高い権威の有る証明書検証システムと、信頼性レベルの比較的低い代替証明書発行・検証システムとを設けることによって、前記証明書検証システムの発行したプライバシ情報を含む証明書を元に、代替証明書発行・検証システムがユーザに公開した変換ポリシ定義に従って、プライバシ情報を含まない代替証明書を発行することができ、さらに、プライバシ情報の入った証明書が確実に存在することが代替証明書発行・検証システムに問い合わせることで知ることができ、さらに、代替証明書とプライバシ情報を含む証明書との差異を証明書の利用者が知ることのできるシステムである。
また、本発明の実施形態は次のような構成例も含むものである。即ち、PKI認証システムの証明書配布において、PKIシステムの運用又は証明書の利用の主体であるユーザが証明書の情報を追加、削除、変更して、同じ鍵ペアを使って(証明書と代替証明書とで同一の公開鍵及び秘密鍵のペアを使って)、証明書を安全に再発行する方法であって、その発行した証明書から元の情報を含む証明書の存在確認と再発行した証明書が含む情報とどこが異なっているか確認することができる
また、PKI認証システム証明書配布において、PKIシステムのユーザが証明書の用途を変更した内容で証明書を再発行(例えば、鍵の使用方法の変更又は証明書のエクステンションの削除又は追加など)することで、証明書の用途を広げたり、制限することを可能とすることができる。
さらに、PKI認証システム証明書配布において、段階的に証明書記載の情報を相手に送る方法、具体的には契約において、契約の最初では契約相手に自分の情報が全く記載されていない証明書を見せて暗号化通信を行うが、契約の最後には情報が全て記載された証明書を送付して、最初に送っていた証明書の公開鍵と相違が無いことを確認することで匿名性を確保することを可能とする。
また、PKI認証システム証明書配布において、PKIシステムのユーザの内容を変更しても公開鍵の変更が発生しない(企業間の取引において利用している証明書において、担当者ユーザの変更が予想される、その際に新しい担当者ユーザ用に電子証明書を発明の方法で発行することで公開鍵の変更が発生しない)。さらに、交渉用の証明書を発行し、その証明書の代替証明書を担当者ユーザ宛に発行することで、担当者ユーザが変わった場合は、再度代替証明書を発行することで、元の交渉用の証明書の発行をする必要が無い、また、公開鍵の変更が無い、より現状の情報を証明書に反映できる。
また、電子投票システムにおいて、証明書記載の情報を一切排除した内容で証明書を発行することで投票内容にその証明書を添付して送付することで、投票内容の匿名性をコントロール(確保)することが可能となる。また、有名人のプライバシ情報を含む証明書を売買可能とすることもできる。
本発明の実施形態に係るPKI認証システムの全体構成を示すブロック図である。 本実施形態に関する代替証明書発行・検証システムにおける代替証明書発行の処理フローを示す図である。 本実施形態に関する代替証明書発行・検証システムに用いられる変換ポリシ定義を示す図である。 本実施形態に関する代替証明書発行・検証システムで作成される変換ポリシ証拠の定義を示す図である。 本実施形態に関する代替証明書発行・検証システムにおける変換ポリシ証拠作成の処理フローを示す図である。 本実施形態に関する代替証明書発行・検証システムにおける証明書変換部の処理フローを示す図である。 本実施形態に関する代替証明書発行・検証システムにおける変換ポリシ定義と代替証明書の比較処理フローを示す図である。 本実施形態に関する代替証明書発行・検証システムにおける証明書と代替証明書の比較処理フローを示す図である。 本実施形態に関する代替証明書発行・検証システムに用いられる代替証明書リクエストデータを示す図である。 本実施形態に変換ポリシ定義の一例であるブロマイドデータ配布における変換ポリシ定義を示す図である。 国から発行された証明書の一例を示す図である。 図11に示す証明書を元に本実施形態の代替証明書発行・検証システムから発行された代替証明書の一例を示す図である。 本実施形態に関する代替証明書発行・検証システムによる証明書検証システムへの検証依頼フローを示す図である。 ユーザ2が代替証明書発行・検証システムから受信した応答メッセージの解析フローを示す図である。 証明書検証システムからの応答メッセージを示す図である。
符号の説明
100 証明書検証システム
101 検証局
200 ネットワーク
300 代替証明書発行・検証システム
301 代替証明書発行アプリケーション
302 署名検定部
303 変換ポリシ抽出部
304 証明書変換部
305 変換ポリシ証拠作成部
306 変換ポリシ追加部
307 署名変更部
308 代替証明書検証アプリケーション
309 変換ポリシ抽出部
310 証明書比較部
311 証明書検証リクエスト作成部
312 証明書検証申請部
313 証明書登録部
314 リポジトリ管理部
315 証明書取得部
316 リポジトリ
400 ネットワーク
500 ユーザ1
501 署名部
502 代替証明書リクエスト作成部
503 証明書申請部
504 代替証明書システム監査アプリケーション
505 署名検定部
506 変換ポリシ抽出部
507 証明書比較部
600 ユーザ2
601 署名部
602 証明書検証リクエスト作成部
603 証明書検証申請部
604 署名検定部
605 タイムスタンプ確認部
606 シリアル番号確認部

Claims (12)

  1. PKI認証システムの証明書の発行申請を行う第1のユーザと、前記第1のユーザと公開鍵を用いて通信する第2のユーザと、前記証明書の発行・検証を行う証明書検証システムと、にネットワークを通して接続される代替証明書発行・検証システムであって、
    前記代替証明書発行・検証システムは、前記証明書検証システムによって前記第1のユーザに発行されたPKI認証システムの証明書を格納するリポジトリと、前記リポジトリを管理するリポジトリ管理部と、前記証明書に代替する証明書を発行する代替証明書発行部と、を有し、
    前記代替証明書発行部は、信頼性の高い前記証明書検証システムによって発行された前記第1のユーザへの証明書に基づいて、前記証明書の情報を削除、追加又は変更した代替証明書を前記公開鍵を付して前記第1のユーザの求めに応じて発行し、
    前記発行に際して、公開された変換ポリシ定義にしたがって前記証明書の情報を変換する
    ことを特徴とする代替証明書発行・検証システム。
  2. 請求項1において、
    前記証明書の情報の変換後に前記代替証明書発行・検証システムの秘密鍵で署名して前記代替証明書を発行する
    ことを特徴とする代替証明書発行・検証システム。
  3. PKI認証システムの証明書の発行申請を行う第1のユーザと、前記第1のユーザと公開鍵を用いて通信する第2のユーザと、前記証明書の発行・検証を行う証明書検証システムと、にネットワークを通して接続される代替証明書発行・検証システムであって、
    前記代替証明書発行・検証システムは、前記証明書検証システムによって前記第1のユーザに発行されたPKI認証システムの証明書を格納するリポジトリと、前記リポジトリを管理するリポジトリ管理部と、前記証明書に代替する証明書を発行する代替証明書発行部と、前記第2のユーザのリクエストによる前記代替証明書及び前記公開鍵を検証する代替証明書検証部と、を有し、
    前記代替証明書発行部は、信頼性の高い前記証明書検証システムによって発行された前記第1のユーザへの証明書に基づいて、公開された変換ポリシ定義にしたがって前記証明書の情報を削除、追加又は変更した代替証明書を前記公開鍵を付して前記第1のユーザの求めに応じて発行し、
    前記代替証明書検証部は、前記変換ポリシ定義を用いて前記代替証明書と前記リポジトリで管理している前記証明書との差分比較を行い、前記差分比較によって前記代替証明書及び公開鍵の改ざんが行われていないことを検証する
    ことを特徴とする代替証明書発行・検証システム。
  4. 請求項3において、
    前記差分比較は、前記ポリシ定義と前記代替証明書の対応比較を行うとともに、前記代替証明書と前記証明書の比較を行う
    ことを特徴とする代替証明書発行・検証システム。
  5. 請求項3において、
    前記代替証明書検証部は、前記差分比較に加えて、前記リポジトリで管理している前記第1のユーザの証明書に対する検証リクエストを作成して前記証明書検証システムに検証依頼し、前記証明書検証システムからの応答結果を前記第2のユーザに送信する
    ことを特徴とする代替証明書発行・検証システム。
  6. 請求項5において、
    前記代替証明書検証部は、前記証明書検証システムからの応答結果の内容によって公開鍵の有効性を前記第2のユーザに伝達し得る
    ことを特徴とする代替証明書発行・検証システム。
  7. 請求項3において、
    前記代替証明書検証部は、前記変換ポリシ定義を取り出す変換ポリシ抽出部と、前記変換ポリシ定義と代替証明書との比較及び前記代替証明書と前記証明書との比較を行う証明書比較部と、を備える
    ことを特徴とする代替証明書発行・検証システム。
  8. PKI認証システムの証明書の発行申請を行う第1のユーザと、前記証明書に代替する証明書を発行する代替証明書発行部及び前記第1のユーザと公開鍵を用いて通信する第2のユーザのリクエストによる前記代替証明書と前記公開鍵を検証する代替証明書検証部を有する代替証明書発行・検証システムと、を備えたPKI認証システムであって、
    前記代替証明書発行部は、信頼性の高い前記証明書検証システムによって発行された前記第1のユーザへの証明書に基づいて、公開された変換ポリシ定義にしたがって前記証明書の情報を削除、追加又は変更した代替証明書を前記公開鍵を付して前記第1のユーザの求めに応じて発行し、
    前記代替証明書検証部は、前記変換ポリシ定義を用いて前記代替証明書と前記リポジトリで管理している前記証明書との差分比較を行い、前記差分比較によって前記代替証明書及び公開鍵の改ざんが行われていないことを検証する
    ことを特徴とするPKI認証システム。
  9. 請求項8において、
    前記代替証明書検証部は、前記変換ポリシ定義を取り出す変換ポリシ抽出部と、前記変換ポリシ定義と代替証明書との比較及び前記代替証明書と前記証明書との比較を行う証明書比較部と、を備える
    ことを特徴とするPKI認証システム。
  10. PKI認証システムの証明書の発行申請を行う第1のユーザと、前記証明書に代替する証明書を発行する代替証明書発行部及び前記第1のユーザと公開鍵を用いて通信する第2のユーザのリクエストによる前記代替証明書と前記公開鍵を検証する代替証明書検証部を有する代替証明書発行・検証システムと、を備えたPKI認証システムであって、
    前記代替証明書発行部は、信頼性の高い前記証明書検証システムによって発行された前記第1のユーザへの証明書に基づいて、公開された変換ポリシ定義にしたがって前記証明書の情報を削除、追加又は変更した代替証明書を前記公開鍵を付して前記第1のユーザの求めに応じて発行し、
    前記第1のユーザは、前記第2のユーザの受信した代替証明書の情報確認の監査請求に応じて、前記代替証明書の署名を検定し、
    前記代替証明書発行・検証システムの自己署名証明書から変換ポリシ定義を取得し、
    前記変換ポリシ定義を用いて前記代替証明書と前記証明書との差分比較を行い、前記差分比較によって前記代替証明書の改ざんが行われていないことを監査し得る
    ことを特徴とするPKI認証システム。
  11. PKI認証システムの証明書の発行申請を行う第1の計算機システムと、前記第1の計算機システムと公開鍵を用いて通信する第2の計算機システムと、前記証明書の発行・検証を行う証明書検証システムと、にネットワークを通して接続される代替証明書発行・検証システムにおける代替証明書の管理方法であって、
    前記代替証明書発行・検証システムは、信頼性の高い前記証明書検証システムによって発行された前記第1の計算機システムへの証明書に基づいて、公開された変換ポリシ定義にしたがって前記証明書の情報を削除、追加又は変更した代替証明書を前記公開鍵を付して前記第1の計算機システムの求めに応じて発行し、
    さらに、前記代替証明書発行・検証システムは、前記変換ポリシ定義を用いて前記代替証明書と前記リポジトリで管理している前記証明書との差分比較を行い、前記差分比較によって前記代替証明書及び公開鍵の改ざんが行われていないことを前記第2の計算機システムの求めに応じて検証する
    ことを特徴とする代替証明書発行・検証システムにおける代替証明書の管理方法。
  12. PKI認証システムの証明書の発行申請を行う第1の計算機システムと、前記第1の計算機システムと公開鍵を用いて通信する第2の計算機システムと、前記証明書の発行・検証を行う証明書検証システムと、にネットワークを通して接続される代替証明書発行・検証システムにおける代替証明書の管理プログラムであって、
    前記代替証明書発行・検証システムは、信頼性の高い前記証明書検証システムによって発行された前記第1の計算機システムへの証明書に基づいて、公開された変換ポリシ定義にしたがって前記証明書の情報を削除、追加又は変更した代替証明書を前記公開鍵を付して前記第1の計算機システムの求めに応じて発行する代替証明書発行アプリケーションと、
    さらに、前記代替証明書発行・検証システムは、前記変換ポリシ定義を用いて前記代替証明書と前記リポジトリで管理している前記証明書との差分比較を行い、前記差分比較によって前記代替証明書及び公開鍵の改ざんが行われていないことを前記第2の計算機システムの求めに応じて検証する代替証明書検証アプリケーションと、を備える
    ことを特徴とする代替証明書発行・検証システムにおける代替証明書の管理プログラム。
JP2003391263A 2003-11-20 2003-11-20 Pki認証システムにおける代替証明書発行・検証システム Expired - Fee Related JP4057995B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003391263A JP4057995B2 (ja) 2003-11-20 2003-11-20 Pki認証システムにおける代替証明書発行・検証システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003391263A JP4057995B2 (ja) 2003-11-20 2003-11-20 Pki認証システムにおける代替証明書発行・検証システム

Publications (2)

Publication Number Publication Date
JP2005159463A true JP2005159463A (ja) 2005-06-16
JP4057995B2 JP4057995B2 (ja) 2008-03-05

Family

ID=34718380

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003391263A Expired - Fee Related JP4057995B2 (ja) 2003-11-20 2003-11-20 Pki認証システムにおける代替証明書発行・検証システム

Country Status (1)

Country Link
JP (1) JP4057995B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011007697A1 (ja) 2009-07-13 2011-01-20 日本電気株式会社 匿名認証署名システム、ユーザ装置、検証装置、署名方法、検証方法およびそれらのプログラム
JPWO2014108993A1 (ja) * 2013-01-08 2017-01-19 三菱電機株式会社 認証処理装置、認証処理システム、認証処理方法および認証処理プログラム
JP2021044686A (ja) * 2019-09-11 2021-03-18 富士通株式会社 通信プログラム、通信方法、および、通信装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011007697A1 (ja) 2009-07-13 2011-01-20 日本電気株式会社 匿名認証署名システム、ユーザ装置、検証装置、署名方法、検証方法およびそれらのプログラム
US8949609B2 (en) 2009-07-13 2015-02-03 Nec Corporation Anonymous authentication signature system, user device, verification device, signature method, verification method, and program therefor
JPWO2014108993A1 (ja) * 2013-01-08 2017-01-19 三菱電機株式会社 認証処理装置、認証処理システム、認証処理方法および認証処理プログラム
JP2021044686A (ja) * 2019-09-11 2021-03-18 富士通株式会社 通信プログラム、通信方法、および、通信装置

Also Published As

Publication number Publication date
JP4057995B2 (ja) 2008-03-05

Similar Documents

Publication Publication Date Title
JP5329184B2 (ja) 公開鍵証明書の検証方法及び検証サーバ
CN111092737B (zh) 数字证书管理方法、装置及区块链节点
JP5576985B2 (ja) 署名に用いる暗号アルゴリズムの決定方法、検証サーバおよびプログラム
RU2434340C2 (ru) Инфраструктура верификации биометрических учетных данных
AU2003259136B2 (en) A remote access service enabling trust and interoperability when retrieving certificate status from multiple certification authority reporting components
CN108696358B (zh) 数字证书的管理方法、装置、可读存储介质及服务终端
EP3966997B1 (en) Methods and devices for public key management using a blockchain
JP2023503607A (ja) 自動デジタル証明書検証のための方法およびデバイス
JP4608845B2 (ja) 署名記録の公開方法
JP5012574B2 (ja) 共通鍵自動共有システム及び共通鍵自動共有方法
JP4846464B2 (ja) 複数公開鍵の証明書を発行及び検証するシステム、並びに、複数公開鍵の証明書を発行及び検証する方法
JP4057995B2 (ja) Pki認証システムにおける代替証明書発行・検証システム
KR20240059302A (ko) 분산 id 기반 서비스의 암복호화 통신 방법 및 장치
JP2002132996A (ja) 情報存在証明サーバ、情報存在証明方法、および情報存在証明制御プログラム
CN114844700A (zh) 一种分布式环境中基于可信存储的身份认证方法、系统、设备及存储介质
JP2013225938A (ja) 公開鍵証明書の検証方法及び検証サーバ
JP2020010299A (ja) 本人認証装置及び本人認証方法
JP2004056635A (ja) 証明書失効リストの更新装置、システム及び方法
JP5641493B2 (ja) 公開鍵証明書検証処理システム
KR100969313B1 (ko) 전자문서 증명서 발급 방법 및 이를 위한 전자문서 보관시스템, 상기 방법을 구현하는 프로그램이 저장된 기록매체
KR100925638B1 (ko) 시점 토큰 검증 시스템 및 그 방법
JP2002033729A (ja) 認証方法及び装置並びに認証プログラムを記憶した記憶媒体
KR100776692B1 (ko) 전자문서 내용증명 시스템의 내용증명서 갱신 방법 및 그갱신된 내용증명서의 검증 방법
JP2001265894A (ja) 病院情報システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050812

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071116

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: 20071204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071214

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101221

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101221

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111221

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111221

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121221

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131221

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees