JP2023134108A - Certificate verification device, certificate verification method, program, and certificate verification system - Google Patents
Certificate verification device, certificate verification method, program, and certificate verification system Download PDFInfo
- Publication number
- JP2023134108A JP2023134108A JP2022039464A JP2022039464A JP2023134108A JP 2023134108 A JP2023134108 A JP 2023134108A JP 2022039464 A JP2022039464 A JP 2022039464A JP 2022039464 A JP2022039464 A JP 2022039464A JP 2023134108 A JP2023134108 A JP 2023134108A
- Authority
- JP
- Japan
- Prior art keywords
- certificate
- verification
- trust
- information
- verified
- 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.)
- Pending
Links
- 238000012795 verification Methods 0.000 title claims abstract description 338
- 238000000034 method Methods 0.000 title claims abstract description 152
- 238000012545 processing Methods 0.000 claims description 114
- 230000008569 process Effects 0.000 claims description 109
- 230000004044 response Effects 0.000 claims description 35
- 230000010365 information processing Effects 0.000 claims description 34
- 101000759879 Homo sapiens Tetraspanin-10 Proteins 0.000 description 42
- 102100024990 Tetraspanin-10 Human genes 0.000 description 42
- 238000010586 diagram Methods 0.000 description 33
- 238000010276 construction Methods 0.000 description 24
- 238000004891 communication Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000005401 electroluminescence Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Abstract
Description
本発明は、証明書検証装置、証明書検証方法、プログラム、及び証明書検証システムに関する。 The present invention relates to a certificate verification device, a certificate verification method, a program, and a certificate verification system.
電子証明書は、電子申請等の電子契約に幅広く用いられるようになっている。これに伴い、電子証明書を管理する認証局も多数存在するようになっている。そこで、複数の認証局の間での相互認証を行うためのモデルが提案されている。このような認証局の相互認証の方法の代表的なものとして、例えば、ブリッジモデル、トラストリスト(ないしトラステッドリスト)(Trusted Lists)が知られている。 Electronic certificates are becoming widely used for electronic contracts such as electronic applications. Along with this, there are also many certification authorities that manage electronic certificates. Therefore, a model for performing mutual authentication between multiple certificate authorities has been proposed. Typical methods of mutual authentication between certificate authorities include, for example, a bridge model and a trust list (or trusted list).
トラストリストを用いた相互認証は、ブリッジモデルによる相互認証と比べると、認証局間の認証関係を構築し各証明書を検証する(認証パスの構築及び検証)ための処理負荷が小さいというメリットがある。一方、トラストリストを用いた相互認証では、トラストリスト間の関係の構築及び検証といった、トラストリスト特有の処理が発生する。また、トラストリストでは、証明書(認証局)の信頼の起点であるトラストアンカの管理がブリッジモデルよりも煩雑となる場合がある。特に、トラストリストが複数の国又は地域にまたがって利用されると、それらの管理又は処理の負荷は大きくなることが予想される。 Compared to mutual authentication using a bridge model, mutual authentication using a trust list has the advantage that the processing load for building a certification relationship between certificate authorities and verifying each certificate (construction and verification of a certification path) is small. be. On the other hand, mutual authentication using trust lists involves processing unique to trust lists, such as building and verifying relationships between trust lists. Furthermore, in the trust list, management of the trust anchor, which is the origin of trust in a certificate (certificate authority), may be more complicated than in the bridge model. In particular, when trust lists are used across multiple countries or regions, the burden of managing or processing them is expected to increase.
この点、非特許文献1、2には、トラストリストを用いたモデル(TLモデル)において、EU加盟国内で相互に証明書の相互認証を行う方法が開示されている。
In this regard, Non-Patent
また、特許文献1には、信頼点証明書管理サーバの内部に情報端末の信頼点が発行する公開鍵証明書のデータベースを持ち、情報端末から必要な公開鍵証明書の送付要求を受付けたときは、上記データベース内を検索し、検索の結果当該公開鍵証明書を発見したときは情報端末にその公開鍵証明書を送付することが開示されている。また、特許文献2には、複数の暗号化システムに利用できるデジタル証明書を発行する方法について開示されている。
Furthermore, in
しかしながら、非特許文献1、2には、EU加盟国内以外の地域との間でトラストリストを連携する場合については考慮されていない。
However, Non-Patent
また、特許文献1は、証明書を集約して管理するものであるが、それらの間の信頼関係を確認することはできない。また、特許文献2には、複数の暗号アルゴリズムと署名値を記載した証明書を発行し、検証者が対応可能なアルゴリズムで署名検証する方式が開示されているが、検証方式については証明書の記載事項に埋め込むことができないため、証明書の方式を判定する場合には適用できない。また、市場においてブリッジモデル及びトラストリストが共存する場合、証明書の検証者は、検証対象の証明書を参照するだけでは、その証明書がブリッジモデル及びトラストリストのいずれを用いて検証をすべきなのかを判断することもできない。
Further, although the
本発明は、このような現状に鑑みてなされたものであり、その目的は、複数のトラストリストが存在する場合であっても信頼性の高いトラストアンカに基づき証明書の検証を行うことが可能な証明書検証装置、証明書検証方法、プログラム、及び証明書検証システムを提供することを目的とする。 The present invention was made in view of the current situation, and its purpose is to make it possible to verify certificates based on highly reliable trust anchors even when multiple trust lists exist. The purpose of the present invention is to provide a certificate verification device, a certificate verification method, a program, and a certificate verification system.
上記課題を解決するための本発明の一つは、プロセッサ及びメモリを備え、前記プロセッサが、第1の情報処理装置から受信した複数のトラストリストの情報に基づき、前記複数のトラストリストの間の連結関係及び前記複数のトラストリストの有効性の情報と、前記連結関係及び有効性が確認された前記トラストリストに登録されている認証局の情報とをそれぞれ取得して前記メモリに記憶するトラストリスト取得処理を実行するストア管理処理と、第2の情報処理装置から、検証対象の証明書を含む検証要求を受信した場合に、前記メモリに記憶した情報から特定した認証局の証明書の情報に基づき、前記検証対象の証明書が示す認証局と前記特定した認証局との間の連結関係及び、各前記認証局の証明書の有効性を検証するトラストリスト検証処理を実行する証明書検証共通処理と、前記検証した結果を前記第2の情報処理装置に送信する検証結果応答処理とを実行する、証明書検証装置、である。 One of the present inventions for solving the above-mentioned problems is provided with a processor and a memory, and the processor selects between the plurality of trust lists based on information of the plurality of trust lists received from a first information processing device. a trust list that acquires and stores in the memory information on the connection relationship and the validity of the plurality of trust lists, and information on certificate authorities registered in the trust list whose connection relationship and validity have been confirmed; Store management processing that executes the acquisition processing, and when a verification request including a verification target certificate is received from the second information processing device, information on the certificate of the certificate authority specified from the information stored in the memory is stored. A certificate verification common method that executes a trust list verification process that verifies the connection relationship between the certification authority indicated by the certificate to be verified and the identified certification authority, and the validity of the certificate of each certification authority based on the verification target certificate. and a verification result response process of transmitting the verified result to the second information processing device.
本発明によれば、複数のトラストリストが存在する場合であっても信頼性の高いトラストアンカに基づき証明書の検証を行うことができる。
上記した以外の構成及び効果等は、以下の実施形態の説明により明らかにされる。
According to the present invention, even if a plurality of trust lists exist, a certificate can be verified based on a highly reliable trust anchor.
Structures, effects, etc. other than those described above will be made clear by the description of the embodiments below.
図1は、本実施形態に係る証明書検証システム1の構成の一例を示す図である。証明書検証システム1は、認証局が発行した電子証明書(以下、単に証明書という)を添付した電子文書等のデータを送受信するユーザが利用する複数の検証依頼者端末10(10a,・・・,10n)(第2の情報処理装置)と、証明書を発行する認証局が管理する1又は複数の認証局サーバ20(30a,・・・,30n)と、相互に信頼関係を構築し相互認証した認証局のリストを管理したデータであるトラストリスト(トラステッドリスト)(Trusted List:TL。以下、TLという。)の情報を公開している、複数のTL公開サイト
30(30a,・・・,30n)(第1の情報処理装置)と、TLを検証するための公開鍵証明書を公開している、複数のTL署名用証明書公開サイト40(40a,・・・,40n)と、後述する証明書検証サーバ50(証明書検証装置)の各情報処理装置を含んで構成されている。
FIG. 1 is a diagram showing an example of the configuration of a
検証依頼者端末10、認証局サーバ20、TL公開サイト30、TL署名用証明書公開サイト40、及び証明書検証サーバ50の間は、例えば、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)、又は専用線等の有線又は無線の通信
ネットワーク5により通信可能となっている。
For example, the connection between the verification requester terminal 10, the certificate authority server 20, the TL public site 30, the TL signature certificate public site 40, and the
証明書検証システム1では、各国又は各地域の管理者により信頼された認証局のリストであるTLと、2つの認証局同士で交わされた相互認証証明書のネットワークであるブリッジモデルとによって、各認証局の信頼性(認証局間の連結関係及び各認証局の証明書の有効性)が確保されている。
The
図2は、本実施形態の証明書検証システム1における、ブリッジモデル及び、TLによるモデル(以下、TLモデルという)の構成の一例を示す図である。
FIG. 2 is a diagram showing an example of the configuration of a bridge model and a TL model (hereinafter referred to as TL model) in the
まず、ブリッジモデル500では、認証局CA1と認証局BCAの間、認証局BCAと認証局CA2の間、及び、認証局CA2と認証局CA3の間での相互認証が、相互認証証明書501をそれぞれ取り交わすことにより行われている。相手認証局から自認証局に発行された相互認証証明書と、自認証局が相手認証局へ発行した相互認証証明書をペアの形で格納したものを相互認証証明書ペアと呼ぶ。相互認証証明書ペアはディレクトリーサーバで公開される。なお、認証局CA3は、直属の下位の認証局CA3a、認証局CA3bを直接管理している。また、各認証局(下位の認証局を含む)は、EE証明書503(EE: End Entity)をユーザ(EE)に発行する。
First, in the
TLモデル600は、1又は複数の国又は地域の認証局を管理している。すなわち、TLモデル600は、ブリッジモデル500における認証局CA2及び認証局CA3bの情報と、ブリッジモデル500の対象外の認証局CA4の情報を少なくとも登録した第1TL610と、地域内の1又は複数の国の情報を記憶した第2TL620と、当該地域内の各国の認証局CA5、CA6の情報をそれぞれ記憶した第3TL630とを含んで含んでいる。各TLは、他のTLをポインタ640により特定する。各認証局は、EE証明書650をユーザ(EE)に発行する。
ここで、TLのデータ構成を説明する。
The TL
Here, the data structure of the TL will be explained.
(TL)
図3は、TLのデータ構成の一部を抽出した例を示す図である。各TL300は、他のTLへのポインタ301と、署名304とを含む。ポインタ301は、自身のTL又は自身のTLと信頼関係を有する他のTLを検証するための公開鍵証明書302と、当該他のTLの所在303(本実施形態ではURL)とからなる組み合わせを、1又は複数有する。
(TL)
FIG. 3 is a diagram showing an example in which a part of the data structure of the TL is extracted. Each
同図の例では、起点の「TL C1」は、所在303により「TL A1」を特定し、「TL C1」の「TL A1」に関する公開鍵証明書302から抽出される公開鍵により「TL A1」の署名304を検証する。「TL A1」は、所在303により「TL
C1」、「TL C2」、「TL C3」を特定し、「TL A1」の「TL C1」、「TL C2」、「TL C3」に関する公開鍵証明書から抽出される公開鍵により「TL C1」、「TL C2」、「TL C3」の署名304をそれぞれ検証する。
In the example in the figure, the origin "TL C1" specifies "TL A1" by the
C1", "TL C2", and "TL C3", and use the public keys extracted from the public key certificates related to "TL C1", "TL C2", and "TL C3" of "TL A1" to identify "TL C1". ”, “TL C2”, and “TL C3” are verified.
次に、図1に示すように、証明書検証サーバ50は、検証要求受付部51、検証結果応答部52、証明書検証共通処理部53、TL方式検証追加処理部54、及びストア管理部57の各機能部(プログラム)を備える。
Next, as shown in FIG. 1, the
検証要求受付部51は、検証依頼者端末10から、検証対象の証明書を含む検証要求を受信する。
The verification
検証結果応答部52は、検証要求に応答データである検証応答を、検証依頼者端末10に送信する。
The verification result
ストア管理部57は、TL公開サイト30から受信した複数のトラストリストの情報に基づき、複数のトラストリストの間の連結関係及び複数のトラストリストの有効性の情報(TLのパスの構築及びその検証)と、その連結関係及び有効性が確認されたトラストリストに登録されている認証局の証明書の情報とをそれぞれ取得して、TL管理ストア200及び証明書ストア100に記憶する。
Based on the information on the plurality of trust lists received from the TL public site 30, the
なお、ストア管理部57は、証明書ストア管理部55及びTLストア管理部56を備える。証明書ストア管理部55は、認証局の証明書の解析し、証明書に関わる情報管理に関する処理を行う。TLストア管理部56は、トラストリストの有効性に関する処理や連結性に関する処理(TLの署名検証やTL間のパス構築等)を行う。
Note that the
証明書検証共通処理部53は、検証依頼者端末10から、検証対象の証明書を含む検証要求を受信した場合に、ストア管理部57で記憶したTL管理ストア200及び証明書ストア100から特定した認証局の証明書の情報に基づき、検証対象の証明書が示す認証局と上記特定した認証局との間の連結関係及び、各認証局の証明書の有効性を検証するトラストリスト検証処理を実行する。
When the certificate verification
本実施形態では、証明書検証共通処理部53は、検証要求にブリッジモデルのトラストアンカが付帯していない場合には、証明書ストア100に登録されている認証局の証明書(証明書検証サーバ50が独自に設定したトランスアンカ)の情報に基づき、トラストリスト検証処理を実行する。
In this embodiment, if the verification request does not include a bridge model trust anchor, the certificate verification
TL方式検証追加処理部54は、トラストリスト検証処理の際に認証パスの構築及び検証を行った認証局に係るトラストリストの品質を示す情報を、TL管理ストア200に基づき作成する。
The TL method verification
また、証明書検証サーバ50は、証明書ストア100、TL管理ストア200、及び更新設定値情報270の各データベースを記憶している。
The
TL管理ストア200は、TL管理テーブル210、TLパス管理テーブル230、及びTSP管理テーブル250を記憶している。
The
(TL管理テーブル)
図4は、TL管理テーブル210の一例を示す図である。TL管理テーブル210は、TLの情報を一元管理したデータベースである。
(TL management table)
FIG. 4 is a diagram showing an example of the TL management table 210. The TL management table 210 is a database that centrally manages TL information.
TL管理テーブル210は、TLを管理する国又は地域(以下、TL管理国という)の名称が設定される国名211、そのTLのスキームの名称が設定されるTLスキーム名212、そのTLの発行日時が設定される発行日時213、そのTLの次の更新日時が設定される次期更新日時214、そのTLの配布点が設定される配布点215、及び、そのTLが指し示す他の各TLの情報のリストが設定されるポインタ216の各データ項目を有する。
The TL management table 210 includes a
ポインタ216は、各TLの所在情報(本実施形態ではURL)が設定されるTLロケーション217、及び、各TLの公開鍵証明書を示す情報が設定される証明書218の各小項目を有する。なお、本実施形態では、公開鍵証明書は、X.509証明書であるものとするが、特に形式は限定されない。
The
(TLパス管理テーブル)
図5は、TLパス管理テーブル230の一例を示す図である。TLパス管理テーブル230は、複数のTLによって構成されるTL間のパス(以下、TLパスという)のパターンを格納したテーブルである。
(TL path management table)
FIG. 5 is a diagram showing an example of the TL path management table 230. The TL path management table 230 is a table that stores patterns of paths between TLs (hereinafter referred to as TL paths) made up of a plurality of TLs.
TLパス管理テーブル230は、TLパスの起点が設定される起点231、TLパスの終点が設定される終点232、TLパスをスキーム名により特定した情報が設定されるTLパス(スキーム名)233、及び、TLパスを所在情報(本実施形態ではURL)により特定した情報が設定されるTLパス(URL)234の各データ項目を有する。
The TL path management table 230 includes a
(TSP管理テーブル)
図6は、TSP管理テーブル250の一例を示す図である。TSP管理テーブル250は、TLに登録されている事業者(本実施形態では認証局とする)に関する情報(以下、TSP情報という)が格納されるデータベースである。
(TSP management table)
FIG. 6 is a diagram showing an example of the TSP management table 250. The TSP management table 250 is a database in which information (hereinafter referred to as TSP information) regarding business operators (certified authorities in this embodiment) registered in the TL is stored.
TSP管理テーブル250は、認証局が登録されているTLのTL管理国が設定される国名251、認証局が提供しているサービスの識別子が設定されるサービスタイプ識別子252、認証局のサービスの名称が設定されるサービス名253、認証局の公開鍵証明書が有効であるか否かを示す情報が設定されるステータス254、認証局の証明書(以下、CA証明書ともいう。CA: Certificate Authority。)の品質に関する情報(例えば、適
格性証明書(QC: Qualified Certificate)、適格署名生成装置(QSCD: Qualified Signature Create Device)の判定)が設定されるサービス情報拡張255、及び、認証局の公開鍵証明書を特定する情報が設定される証明書256の各データ項目を有する。サービス情報拡張255には、例えば、証明の品質の程度、署名等の用途が設定されているか、秘密鍵はハードウェアで管理されているか、といった情報が設定される。
The TSP management table 250 includes a
証明書ストア100は、証明書管理テーブル110を記憶している。
(証明書管理テーブル)
図7は、証明書管理テーブル110の一例を示す図である。証明書管理テーブル110は、公開鍵証明書の詳細情報を管理したデータベースである。証明書管理テーブル110は、公開鍵証明書の発行者の情報(国名、組織名等)が設定される発行者名111、発行者が発行した公開鍵の情報が設定される発行者鍵識別子112、証明書による証明の対象となっている主体の情報(国名、組織名等)が設定される主体者名113、証明の対象の主体の公開鍵の情報が設定される主体者鍵識別子114、証明書のシリアル番号が設定されるシリアル番号115、公開鍵証明書が対応している証明書の検証方法(モデルの種類)を示す情報が設定される信頼モデル116、公開鍵証明書がTLに登録されているか否かを示すフラグが設定されるTL掲載有無117、及び、公開鍵証明書がTLに登録されている場合にそのTL管理国が設定される国名118の各データ項目を有する。
The
(Certificate management table)
FIG. 7 is a diagram showing an example of the certificate management table 110. The certificate management table 110 is a database that manages detailed information on public key certificates. The certificate management table 110 includes an
なお、本実施形態では、信頼モデル116には、ブリッジモデル、TLモデル、又はその双方のモデル、のいずれかが設定される。また、信頼モデル116はユーザによって予め設定されるものとする(例えば、証明書検証サーバ50が入力画面を表示し、ユーザからの入力を受け付ける)。
Note that in this embodiment, the
(更新設定値情報)
図8は、更新設定値情報270の一例を示す図である。更新設定値情報270は、証明書検証サーバ50がTLに関する情報を取得して更新するタイミングをあらかじめ設定した情報である。
(Update setting value information)
FIG. 8 is a diagram illustrating an example of updated
更新設定値情報270は、更新の対象となる各TLの識別子271と、そのTLの更新のタイミング272とを含む情報である。
The update setting
ここで、図9は、証明書検証システム1における各情報処理装置が備えるハードウェアの一例を説明する図である。各情報処理装置は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)、FPGA(Field-Programmable Gate Array)等の処理装置61(プロセッサ)と、ROM(Read Only Memory)、RAM(Random Access Memory)等の主記憶装置62(メモリ)と、HDD(Hard Disk Drive)、SSD(Solid State Drive)などの補助記憶装置63(メモリ)と、NIC(Network Interface Card)、
無線通信モジュール、USB(Universal Serial Interface)モジュール、又はシリアル通信モジュール等で構成される通信装置64とを備える。なお、各情報処理装置は、マウスやキーボード等で構成される入力装置65と、液晶ディスプレイまたは有機EL(Electro-Luminescence)ディスプレイ等で構成される出力装置66とを備えていてもよい。
Here, FIG. 9 is a diagram illustrating an example of hardware included in each information processing device in the
The
以上に説明した各情報処理装置の機能は、処理装置61が、主記憶装置62又は補助記憶装置63に格納されているプログラムを読み出して実行することにより実現される。また、プログラムは、例えば、記録媒体に記録して配布することができる。なお、各情報処理装置は、その全部または一部が、例えば、クラウドシステムによって提供される仮想サーバのように、仮想化技術やプロセス空間分離技術等を用いて提供される仮想的な情報処理資源を用いて実現されるものであってもよい。また、各情報処理装置によって提供される機能の全部または一部は、例えば、クラウドシステムがAPI(Application Programming Interface)等を介して提供するサービスによって実現してもよい。
次に、証明書検証システム1で行われる処理について説明する。
The functions of each information processing device described above are realized by the
Next, the processing performed in the
<処理の概要>
図10は、証明書検証システム1で行われる処理の概要を説明する図である。
証明書検証サーバ50は、更新設定値情報270が示すタイミングにて、TLに関する情報を取得し更新するTL取得処理s1を実行する。証明書検証サーバ50は、TL取得処理s1の実行結果を、証明書ストア100及びTL管理ストア200に格納する。
<Processing overview>
FIG. 10 is a diagram illustrating an overview of the processing performed by the
The
また、証明書検証サーバ50は、検証依頼者端末10から、検証対象の公開鍵証明書を含む要求情報(以下、検証要求という)の受信を待機している。証明書検証サーバ50は、検証要求を受信すると、証明書ストア100及びTL管理ストア200に基づき、公開鍵証明書を検証し、その結果の情報(以下、検証結果という)を検証依頼者端末10に返信する証明書検証処理s3を実行する。
次に、TL取得処理s1及び証明書検証処理s3の詳細を説明する。
The
Next, details of the TL acquisition process s1 and the certificate verification process s3 will be explained.
<TL取得処理>
図11は、TL取得処理s1の一例を説明するフロー図である。TL取得処理s1は、更新設定値情報270が指定するタイミングで繰り返し実行される。
<TL acquisition process>
FIG. 11 is a flow diagram illustrating an example of the TL acquisition process s1. The TL acquisition process s1 is repeatedly executed at the timing specified by the update setting
TLストア管理部56は、TLの起点となる国の情報が記録されたデータベース等から、実行対象のTL(起点となるTL。以下、起点TLという。)の所在情報を取得する(s101)。本実施形態では、TLストア管理部56は、所定の国のTLのURLを取得するものとする。
The TL
TLストア管理部56は、s103で取得した所在情報に基づき起点TLの内容を取得する(s103)。具体的には、TLストア管理部56は、s101で取得したURLにより起点TLのTL公開サイト30を特定し、特定したTL公開サイト30から、TLの情報を取得する。本実施形態では、TLの情報は、xml(eXtensible Markup Language)として取得されるものとする。
The TL
TLストア管理部56は、s103で取得した起点TLに関するTL署名用証明書を取得する(s105)。具体的には、TLストア管理部56は、s103で取得したTLに対応づけられるTL署名用証明書公開サイト40から、TL署名用証明書のデータを取得する。
The TL
TLストア管理部56は、s103で取得した起点TLの署名を検証し、起点TLが改竄されていないことを確認する(s107)。具体的には、TLストア管理部56は、s105で取得したTL署名用証明書から公開鍵を抽出し、抽出した公開鍵により、s103で取得した起点TLの署名を復号することにより、起点TLの改竄の有無を確認する。
The TL
TLストア管理部56は、s107で起点TLの署名を検証すると、起点TLの情報をTL管理ストア200に格納する(s109)。例えば、TLストア管理部56は、s101で取得した起点TLのURL、及びs103で取得した起点TLの情報を、TL管理テーブル210に格納する。
After verifying the signature of the origin TL in s107, the TL
TLストア管理部56は、起点TLを起点とするTL間の連結関係(すなわちTLパス)を構築し各TLの有効性を検証するTLパス構築検証処理s111を実行する。TLパス構築検証処理s111の詳細は後述する。
The TL
TLストア管理部56は、TLパス構築検証処理s111で検証したTLパスの各TLについて、各TLから認証局の情報(TSP情報)を抽出し、抽出したTSP情報をTSP管理テーブル250に格納する(s113)。
The TL
TLストア管理部56は、s113で抽出したTSP情報から、認証局の証明書(CA証明書)の情報を抽出し、抽出したCA証明書を証明書管理テーブル110に格納する(s115)。以上でTL取得処理s1は終了する。
ここで、TLパス構築検証処理s111の詳細を説明する。
The TL
Here, details of the TL path construction verification process s111 will be explained.
<TLパス構築検証処理>
図12は、TLパス構築検証処理s111の詳細を説明するフロー図である。
TLストア管理部56は、s103で取得した起点TLが示す、1又は複数の他のTL(以下、第2TLという)へのポインタの取得を試みる(s201)。
<TL path construction verification process>
FIG. 12 is a flow diagram illustrating details of the TL path construction verification process s111.
The TL
TLストア管理部56は、s201でポインタを取得できたか否かを確認する(s203)。ポインタを取得できた場合は(s203:有り)、TLストア管理部56は、s205の処理を実行し、ポインタを取得できなかった場合は(s203:無し)、TLパス構築検証処理s111は終了する。
The TL
s205においてTLストア管理部56は、s201で取得したポインタが示す第2TLのうち一つを選択し、選択した第2TLのURL及び公開鍵証明書を取得する。
In s205, the TL
そして、TLストア管理部56は、s205で取得したURL(TL公開サイト30)にアクセスすることにより、選択した第2TLのTL情報を取得する(s207)。
Then, the TL
TLストア管理部56は、s207で取得した第2TLの署名を検証し、選択した第2TLが改竄されていないことを確認する(s209)。具体的には、TLストア管理部56は、s205で取得した公開鍵証明書から公開鍵を抽出し、抽出した公開鍵により、s207で取得した第2TLの署名を復号することにより、第2TLの改竄の有無を確認する。
The TL
TLストア管理部56は、s209で第2TLの署名を検証できたら、選択した第2TLの情報をTL管理テーブル210に格納する(s211)。例えば、TLストア管理部56は、s205で取得した公開鍵証明書を、TL管理テーブル210の証明書218に格納する。
If the signature of the second TL can be verified in s209, the TL
続いて、TLストア管理部56は、s201で取得した第2TLが示す、1又は複数の、さらに他のTL(以下、第3TLという)のポインタ情報の取得を試みる(s213)。
Subsequently, the TL
TLストア管理部56は、s213でポインタを取得できたか否かを確認する(s215)。ポインタを取得できた場合は(s215:有り)、TLストア管理部56は、s217の処理を実行し、ポインタを取得できなかった場合は(s215:無し)、TLストア管理部56は、s229の処理を実行する。
The TL
s229においてTLストア管理部56は、第1TLでこれまでに選択していない他のTLのポインタの取得を試みる。その後は、s203以降の処理が繰り返される。
In s229, the TL
一方、s217においてTLストア管理部56は、s213で取得したポインタが示す第3TLのうち一つを選択し、選択した第3TLのURL及び公開鍵証明書を取得する。
On the other hand, in s217, the TL
そして、TLストア管理部56は、s217で取得したURL(TL公開サイト30)にアクセスすることにより、第3TLのTL情報を取得する(s219)。
Then, the TL
TLストア管理部56は、s219で取得した第3TLの署名を検証し、第3TLが改竄されていないことを確認する(s221)。具体的には、TLストア管理部56は、s217で取得した公開鍵証明書から公開鍵を抽出し、抽出した公開鍵により、s219で取得した第3TLの署名を復号することにより、第3TLの改竄の有無を確認する。
The TL
TLストア管理部56は、s221で第3TLの署名を検証できたら、選択した第3TLの情報をTL管理テーブル210に格納する(s223)。例えば、TLストア管理部56は、s217で取得した公開鍵証明書を、TL管理テーブル210の証明書218に格納する。
When the TL
TLストア管理部56は、起点TL、選択した第2TL、及び選択した第3TLの所在情報等を、TLパス管理テーブル230に格納する。例えば、TLストア管理部56は、TLパス管理テーブル230のTLパス(URL)234に、起点TLのURL、第2TLのURL、及び第3TLのURLを格納する。また、TLストア管理部56は、TLパス管理テーブル230のTLパス(スキーム名)233に、起点TLのスキーム名、第2TLのスキーム名、及び第3TLのスキーム名を格納する。
The TL
TLストア管理部56は、第3TLの他のポインタの取得を試みる(s227)。その後はs215の処理が行われる。
The TL
このように、本実施形態では、TLストア管理部56は3つのTLからなるTLパスを特定してTL管理テーブル210及びTLパス管理テーブル230を作成するものとしたが、4以上のTLからなるTLパスを特定する場合も同様の処理を行う。
次に、証明書検証処理s3の詳細を説明する。
As described above, in the present embodiment, the TL
Next, details of the certificate verification process s3 will be explained.
<証明書検証処理>
図13は、証明書検証処理s3の一例を説明するフロー図である。証明書検証処理s3は、例えば、証明書検証サーバ50の起動時、証明書検証サーバ50にユーザから所定の入力がなされた場合、所定のタイミング(例えば、所定の時刻、所定の時間間隔)で実行される。
<Certificate verification process>
FIG. 13 is a flow diagram illustrating an example of the certificate verification process s3. The certificate verification process s3 is performed at a predetermined timing (for example, at a predetermined time, at a predetermined time interval) when a predetermined input is made by the user to the
まず、検証要求受付部51は、検証依頼者端末10からの検証要求を受信する(s301)。そして、検証要求受付部51は、受信した検証要求から所定のヘッダ情報等を除去した情報(以下、OCSPリクエストという)を、証明書検証共通処理部53に引き渡す(s303)。
First, the verification
(OCSPリクエスト)
図14は、OCSPリクエスト700のデータ形式の一例を示す図である。OCSPリクエスト700は、検証要求の基本情報が設定されるOCSP基本領域701と、検証要求の拡張情報が設定されるOCSP拡張領域702の各情報領域を有する。OCSP基本領域701には、基本情報の内容703(例えば、RFC2560の規定に従った情報)が設定される。OCSP拡張領域702には、検証対象証明書の情報704(本実施形態では、X.509証明書)が設定される。また、OCSP拡張領域702には、任意的に、ブリッジモデルにおけるトラストアンカ(アンカーポイント)の情報705(本実施形態では、X.509証明書)が付帯している。
トラストアンカの情報705は、検証対象証明書をブリッジモデルにおいて使用する場合に、検証対象者によって付加される情報である。
(OCSP request)
FIG. 14 is a diagram showing an example of the data format of the OCSP request 700. The OCSP request 700 has each information area: an OCSP
次に、図13に示すように、証明書検証共通処理部53は、s305~s313において、ブリッジモデルに基づき検証対象証明書の検証を行うブリッジモデル検証処理を実行する。
Next, as shown in FIG. 13, in s305 to s313, the certificate verification
まず、s305に示すように、証明書検証共通処理部53は、取得したOCSPリクエスト700にブリッジモデルのトラストアンカが設定されているか否かを判定する。具体
的には、証明書検証共通処理部53は、OCSPリクエスト700のOCSP拡張領域702にトラストアンカの情報705が設定されているか否かを判定する。
First, as shown in s305, the certificate verification
OCSPリクエスト700にブリッジモデルのトラストアンカが設定されている場合は(s305:有り)、証明書検証共通処理部53は、s307の処理を実行し、OCSPリクエスト700にブリッジモデルのトラストアンカが設定されていない場合は(s305:無し)、証明書検証共通処理部53は、s315の処理を実行する。
If the bridge model trust anchor is set in the OCSP request 700 (s305: Yes), the certificate verification
s307、s309において証明書検証共通処理部53は、証明書ストア100を検索し、検証要求のトラストアンカの情報が登録されているか否かを判定する。例えば、証明書検証共通処理部53は、証明書管理テーブル110の各レコードを参照し、検証要求に含まれるトラストアンカの情報705が、証明書管理テーブル110の主体者名113、主体者鍵識別子114、及びシリアル番号115の情報に対応しているレコードがあるか否かを確認する。
In s307 and s309, the certificate verification
証明書ストア100に検証要求のトラストアンカの情報が登録されている場合は(s309:有り)、証明書検証共通処理部53はs311の処理を実行し、証明書ストア100に検証要求のトラストアンカの情報が登録されていない場合は(s309:無し)、証明書検証共通処理部53はs313の処理を実行する。
If the trust anchor information of the verification request is registered in the certificate store 100 (s309: Yes), the certificate verification
なお、証明書検証共通処理部53は、証明書管理テーブル110における検証対象証明書に係るレコードの信頼モデル116に「ブリッジモデル」が指定されていない場合も、s313の処理を実行する。
Note that the certificate verification
s313において証明書検証共通処理部53は、証明書ストア100に検証要求のトラストアンカの情報が登録されていないことを示すエラー情報を含むOCSPレスポンス(OCSPリクエスト700に含まれる証明対象証明書の妥当性の検証の結果を示す情報)を作成し、その後はs327の処理を行う。
In s313, the certificate verification
s311において証明書検証共通処理部53は、構築及び検証処理s311を呼び出すことで、OCSPリクエスト700が示す検証者のトラストアンカ(以下、ブリッジモデルトラストアンカという)に基づき、当該検証者(の証明書)から検証対象者(の証明書)までの各認証局(の証明書)の連結関係(認証パス)の構築及びその認証パスにおける各証明書の有効性の検証を行い、OCSPレスポンスを作成する。構築及び検証処理s311の詳細は後述する。その後、証明書検証共通処理部53は、s327の処理を行う。
In s311, the certificate verification
証明書検証共通処理部53は、s315~s325の処理において、トラストリストを用いて検証対象証明書の検証を行うトラストリスト検証処理を実行する。
すなわち、s315、s317において証明書検証共通処理部53は、証明書ストア100を参照し、トラストアンカの証明書(CA証明書)及びそのトラストアンカに係る認証局と信頼関係にある上位の認証局のCA証明書の情報の取得を試みる。証明書検証共通処理部53は、それらのCA証明書が、トラストリストに登録されているか否か及びそのトラストリストの国名(TL管理国)を確認する。
In the processes from s315 to s325, the certificate verification
That is, in s315 and s317, the certificate verification
具体的には、証明書検証共通処理部53は、検証対象証明書の発行者を検索キーとして証明書管理テーブル110の各レコードを検索し、検索がヒットしたレコードの各内容を取得する。また、証明書検証共通処理部53は、取得したレコードのTL掲載有無117及び国名118を確認する。
Specifically, the certificate verification
証明書ストア100にCA証明書が登録されていた場合は(s317:有り)、証明書
検証共通処理部53はs319の処理を実行し、証明書ストア100にCA証明書が登録されていなかった場合は(s317:無し)、証明書検証共通処理部53はs323の処理を実行する。
If the CA certificate is registered in the certificate store 100 (s317: Yes), the certificate verification
なお、証明書検証共通処理部53は、証明書管理テーブル110における検証対象証明書に係るレコードの信頼モデル116に「トラステッドリスト」が指定されていない場合も、s323の処理を実行する。
Note that the certificate verification
s323において証明書検証共通処理部53は、CA証明書が証明書ストア100に登録されていないことを示すエラー情報を含むOCSPレスポンスを作成し、その後はs327の処理を行う。
In s323, the certificate verification
s319において証明書検証共通処理部53は、構築及び検証処理s311を呼び出し、s315で取得した(検索がヒットした)CA証明書(以下、サーバ設定トラストアンカという)に基づき、サーバ設定トラストアンカから検証対象証明書までの各証明書(認証局)の連結関係(認証パス)の構築及びその認証パスにおける各証明書の有効性の検証を行う。
In s319, the certificate verification
続いて、証明書検証共通処理部53は、OCSPリクエスト700に含まれる証明書がトラストリストに登録されているか否かを判定する(s321)。
Subsequently, the certificate verification
OCSPリクエスト700が示す証明書がトラストリストに登録されている場合は(s321:有り)、証明書検証共通処理部53は後述する追加処理s325を実行し、OCSPリクエスト700が示す証明書がトラストリストに登録されていない場合は(s321:無し)、証明書検証共通処理部53はs327の処理を実行する。
If the certificate indicated by the OCSP request 700 is registered in the trust list (s321: Yes), the certificate verification
s327において証明書検証共通処理部53は、作成したOCSPレスポンスを検証結果応答部52に引き渡す。検証結果応答部52は、受けとったOCSPレスポンスに所定のヘッダ情報等を追加することで、検証要求に対応するデータである検証応答を作成し、作成した検証応答を、検証要求受付部51に引き渡す。検証要求受付部51は、受けとった検証応答を、検証依頼者端末10に送信する(s329)。
In s327, the certificate verification
(OCSPレスポンス)
図15は、OCSPレスポンス800のデータ形式の一例を示す図である。OCSPレスポンス800は、検証応答の基本情報が設定されるOCSP基本領域801と、検証応答の拡張情報が設定されるOCSP拡張領域802の各情報領域を有する。OCSP基本領域801には、基本情報の内容803(例えば、RFC2560の規定に従った情報)が設定される。OCSP拡張領域802には、対象証明書の検証結果に関する情報(結果コード804)が設定される。また、OCSP拡張領域802には、検証要求にトラストアンカの情報が設定されておらずサーバ側でトラストアンカを設定した場合(サーバ設定トランスアンカ)に、そのトラストアンカの証明書805が設定される。また、OCSP拡張領域802には、追加処理s325が実行された場合に作成される検証情報806が設定される。
ここで、追加処理s325の詳細を説明する。
(OCSP response)
FIG. 15 is a diagram showing an example of the data format of the OCSP response 800. The OCSP response 800 has each information area: an OCSP
Here, details of the additional process s325 will be explained.
<追加処理>
図16は、追加処理s325の詳細を説明する図である。
<Additional processing>
FIG. 16 is a diagram illustrating details of the additional process s325.
TL方式検証追加処理部54は、TL管理ストア200を参照することで、トラストリストのTLパスを検証する(s401)。具体的には、TL方式検証追加処理部54は、
TLパス管理テーブル230を参照し、既に設定されている(s101)起点TLをTLパスの起点とし、検証要求における検証対象証明書の発行者をTLパスの終点とするTLパスのレコードが存在するか否かを確認する。
The TL method verification
Referring to the TL path management table 230, there is a record of a TL path in which the already set (s101) origin TL is the starting point of the TL path and the issuer of the verification target certificate in the verification request is the end point of the TL path. Check whether or not.
また、TL方式検証追加処理部54は、TL管理ストア200を参照することで、s401で取得したTLパスにおける各トラストリストの有効性を検証する(s403)。具体的には、TL方式検証追加処理部54は、TL管理テーブル210を参照し、s401で特定したTLパスの各TLのスキーム名がTLスキーム名212に設定されているレコードの発行日時213及び次期更新日時214を参照することで、各トラストリストの有効性を検証する。
Further, the TL method verification
また、TL方式検証追加処理部54は、TL管理ストア200を参照することで、s401で特定したTLパスにおける各トラストリストの品質を検証する(s405)。具体的には、TL方式検証追加処理部54は、TSP管理テーブル250を参照し、s401で特定したTLパスの各トラストリストにおける認証局のサービス名がサービス名253に設定されているレコードのサービス情報拡張255を取得する。
Further, the TL method verification
そして、TL方式検証追加処理部54は、s401~s405での検証内容を統合した検証データ(検証レポート)を作成する(s407)。TL方式検証追加処理部54は、作成した検証データを、OCSPレスポンスの一部として当該OCSPレスポンス800に追加する(s409)。なお、TL方式検証追加処理部54は、s401~s405のいずれかで検証に失敗した場合は、そのことを示すエラー情報をOCSPレスポンス800の一部として当該OCSPレスポンス800に追加する。
次に、構築及び検証処理s111の詳細を説明する。
Then, the TL method verification
Next, details of the construction and verification process s111 will be explained.
<構築及び検証処理>
図17は、構築及び検証処理s111のうち、認証パスの構築に係る処理を説明するフロー図である。
<Construction and verification process>
FIG. 17 is a flow diagram illustrating the process related to the construction of a certification path in the construction and verification process s111.
証明書検証共通処理部53は、検証対象証明書を発行した認証局のCA証明書を、認証局サーバ20から取得する(s501)。
The certificate verification
証明書検証共通処理部53は、取得したCA証明書が、自己署名証明書(署名者のトラストアンカ)であるか否かを確認する(s503)。取得したCA証明書が自己署名証明書である場合は(s503:はい)、証明書検証共通処理部53はs507の処理を実行し、取得したCA証明書が自己署名証明書でない場合は(s503:いいえ)、証明書検証共通処理部53はs505の処理を実行する。
The certificate verification
s505において証明書検証共通処理部53は、現在取得中のCA証明書を参照することで、当該CA証明書の上位の認証局のCA証明書を取得する。その後は、s503の処理が繰り返される。
In s505, the certificate verification
s507において証明書検証共通処理部53は、s503で特定した自己署名証明書(署名者のトランスアンカ)と、トラストアンカ(ブリッジモデルトラストアンカ又はサーバ設定トラストアンカ)とが一致するか否かを判定する。
In s507, the certificate verification
s503で特定した自己署名証明書とトラストアンカとが一致する場合は(s507:はい)、証明書検証共通処理部53はs513の処理を実行し、s503で特定した自己署名証明書とトラストアンカとが一致しない場合は(s507:いいえ)、証明書検証共通処理部53はs509の処理を実行する。なお、認証パス中に自己署名証明書を含めず
に検証処理を行う場合は、証明書検証共通処理部53は、一番上位の中間CA証明書までS503、S505の処理を行い、その後、S507以降の処理を行う。
If the self-signed certificate specified in s503 and the trust anchor match (s507: yes), the certificate verification
s509において証明書検証共通処理部53は、OCSPリクエスト700が示す検証者のトランスアンカ(認証局)が相互認証を行った他の認証局に発行した相互認証証明書を、TL公開サイト30等のレポジトリから取得する。
In s509, the certificate verification
さらに、証明書検証共通処理部53は、上記他の認証局が相互認証を行ったさらに他の認証局である署名者のトランスアンカに発行した相互認証証明書を、認証局のリポジトリから取得する(s511)。
Furthermore, the certificate verification
証明書検証共通処理部53は、s509、s511で特定された、検証者のトラストアンカ(認証局)から検証対象証明書までの各証明書を、認証パスとして記憶する(s513)。
The certificate verification
なお、ここでは、相互認証された3つの認証局による認証パスの構築を行う場合について説明したが、4つ以上の認証局による認証パスの構築でも同様の処理が行われる。 Although a case has been described here in which a certification path is constructed by three mutually authenticated certification authorities, the same process is performed when a certification path is constructed by four or more certification authorities.
図18は、構築及び検証処理s111のうち、認証パスの検証(証明書の有効性の検証)に係る処理を説明するフロー図である。この処理は、前記のs513までの処理に引き続いて行われる。 FIG. 18 is a flowchart illustrating processing related to certification path verification (certificate validity verification) in the construction and verification processing s111. This process is performed following the process up to s513 described above.
証明書検証共通処理部53は、s513までの処理で構築した認証パスの各証明書xについて、起点である検証者のトランスアンカ(認証局)の証明書を「証明書1」とし、終点である検証対象証明書を証明書n(n:全証明書の数)とし、「証明書x」(x:1~n)における認証対象が「証明書x+1」における証明書の発行者名となるように、各「証明書x」を整列する(s601)。
The certificate verification
証明書検証共通処理部53は、s601で整列した各「証明書x」について、検証時刻(例えば、現在時刻)が「証明書x」の有効期限であることを確認する。なお、証明書検証共通処理部53は、検証時刻が有効期限でない証明書を検出した場合には、エラー情報を生成してOCSPレスポンス800としてもよい。
The certificate verification
証明書検証共通処理部53は、処理対象の「証明書x」を「証明書2」とする(s605)。
The certificate verification
証明書検証共通処理部53は、処理対象の「証明書x」について、「証明書x-1」の公開鍵に対応する秘密鍵で署名されていることを確認する(s607)。なお、証明書検証共通処理部53は、「証明書x」が「証明書x-1」の公開鍵に対応する秘密鍵で署名されていない場合には、エラー情報を生成してOCSPレスポンス800としてもよい。
The certificate verification
証明書検証共通処理部53は、処理対象の「証明書x」を次の証明書(「証明書x+1」)とする(s609)。そして、証明書検証共通処理部53は、処理対象の「証明書x」が「証明書n」であるか否かを判定する(s611)。
The certificate verification
処理対象の「証明書x」が「証明書n」である場合は(s611:はい)、証明書検証共通処理部53は、s613の処理を実行し、処理対象の「証明書x」が「証明書n」でない場合は(s611:はい)、証明書検証共通処理部53は、s607以降の処理を繰り返す。
If the "certificate x" to be processed is "certificate n" (s611: yes), the certificate verification
s613において証明書検証共通処理部53は、各「証明書x」が失効していないことを確認する。例えば、証明書検証共通処理部53は、各認証局サーバ20から失効情報を取得し、取得した失効情報に基づき、各「証明書x」が失効していないことを確認する。なお、証明書検証共通処理部53は、失効している証明書がある場合には、エラー情報を生成してOCSPレスポンス800としてもよい。
In s613, the certificate verification
なお、証明書検証共通処理部53は、各「証明書x」の拡張領域を参照し、拡張領域に設定されている情報(KeyUsage、所定のポリシ)に従った処理を実行する(s615)。本処理は省略される場合もある。以上で認証パスの構築に係る処理は終了する。
Note that the certificate verification
以上のように、本実施形態の証明書検証サーバ50は、TL公開サイト30から受信した複数のトラストリストの情報に基づき、トラストリスト間の連結関係及び各トラストリストの有効性の情報(TL管理テーブル210及びTLパス管理テーブル230)と、その連結関係及び有効性が確認されたトラストリストに登録されている認証局の情報(TSP管理テーブル250及び証明書管理テーブル110)とをそれぞれ記憶し、検証依頼者端末10から検証要求を受信した場合に、各データベースから特定した認証局の証明書の情報(トラストアンカ)に基づき、検証対象証明書の認証局とトラストアンカとの間の連結関係及び各認証局の証明書の有効性を検証した検証応答を、検証依頼者端末10に送信する。
As described above, the
このように、本実施形態の証明書検証サーバ50は、複数のTLパスの構築及びTLパスの各証明書の検証(署名の検証)が成功したTLの証明書をトラストアンカとして記憶し、そのトラスアンカを用いて、検証対象証明書の検証を行うことができる。すなわち、本実施形態の証明書検証サーバ50によれば、複数のトラストリストが存在する場合であっても信頼性の高いトラストアンカに基づき証明書の検証を行うことができる。
In this way, the
また、本実施形態の証明書検証サーバ50は、検証要求にトラストアンカが付帯していない場合には、トラストリストの検証処理を実行し、検証要求にトラストアンカが付帯している場合には、検証対象証明書及びそのトラストアンカに基づき、認証パスの構築及び検証を行いブリッジモデルによる検証を行う。
Further, the
これにより、検証対象証明書がTLに対応しておらずブリッジモデルにのみ対応している場合であっても、検証要求に付帯するトラストアンカに基づいて、ブリッジモデルによる検証を行うことができる。すなわち、証明書検証サーバ50は、証明書の検証に使用すべき検証方式を自動的に判定することができる。
As a result, even if the verification target certificate does not support the TL but only supports the bridge model, it is possible to perform verification using the bridge model based on the trust anchor attached to the verification request. That is, the
また、本実施形態の証明書検証サーバ50は、更新設定値情報270で予め設定されたタイミングで繰り返し、トラストリスト取得処理を実行する。
Further, the
このように、TLの情報を随時取り込むことにより、TLパスの構築及び検証の処理負担を軽減し、証明書の検証の精度を向上させることができる。 In this way, by importing TL information at any time, it is possible to reduce the processing load of constructing and verifying a TL path and improve the accuracy of certificate verification.
また、本実施形態の証明書検証サーバ50は、連結関係及び有効性が確認されたトラストリストに登録されている認証局の証明書を証明書管理テーブル110に記憶し、検証要求にトラストアンカが付帯していない場合には、証明書管理テーブル110に登録されている認証局の証明書の情報(トラストアンカ)に基づき、トラストリスト検証処理を実行する。
Further, the
このように、連結関係及び有効性が確認されたトラストリストのみが登録されている証明書管理テーブル110を用いてトラストリストによる証明書の検証を行うことで、信頼
性の高い検証を行うことができる。
In this way, by verifying a certificate using a trust list using the certificate management table 110 in which only trust lists whose connection relationships and validity have been confirmed are registered, highly reliable verification can be performed. can.
また、本実施形態の証明書検証サーバ50は、ユーザから、検証対象の証明書が対応している検証方法の入力を受け付けておき(証明書管理テーブル110の信頼モデル116)、検証要求を受信した場合、信頼モデル116にトラストリストによる証明書の検証方法が指定されている場合にのみ、トラストリスト検証処理を実行する。
Further, the
これにより、検証対象の証明書が対応している検証方法に即した証明書の検証を行うことができる。 Thereby, the certificate can be verified in accordance with the verification method supported by the certificate to be verified.
また、本実施形態の証明書検証サーバ50は、トラストリスト検証処理を実行する際に、TLパスの構築及び検証を行ったトラストリストの検証レポートを作成し、検証レポートを含む検証応答を、検証依頼者端末10に送信する。
Furthermore, when executing the trust list verification process, the
これにより、QC/QSCDの判定のようなトラストリストの証明書の品質の情報を検証依頼者端末10に提供することで、トラストリストの信頼性を高めることができる。 Thereby, the reliability of the trust list can be increased by providing the verification requester terminal 10 with information on the quality of the certificate in the trust list, such as QC/QSCD determination.
本発明は上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲内で、任意の構成要素を用いて実施可能である。以上説明した実施形態や変形例はあくまで一例であり、発明の特徴が損なわれない限り、本発明はこれらの内容に限定されるものではない。また、上記では種々の実施形態や変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。 The present invention is not limited to the embodiments described above, and can be implemented using arbitrary components without departing from the spirit thereof. The embodiments and modifications described above are merely examples, and the present invention is not limited to these contents as long as the characteristics of the invention are not impaired. Furthermore, although various embodiments and modifications have been described above, the present invention is not limited to these. Other embodiments considered within the technical spirit of the present invention are also included within the scope of the present invention.
例えば、本実施形態の各装置が備える各機能の一部は他の装置に設けてもよいし、別装置が備える機能を同一の装置に設けてもよい。 For example, some of the functions included in each device of this embodiment may be provided in another device, or functions provided in another device may be provided in the same device.
また、本実施形態で説明したプログラムの構成は一例であり、例えば、プログラムの一部を他のプログラムに組み込み、又は複数のプログラムを一つのプログラムとして構成してもよい。 Further, the configuration of the program described in this embodiment is an example, and for example, a part of the program may be incorporated into another program, or a plurality of programs may be configured as one program.
1 証明書検証システム
10 検証依頼者端末
50 証明書検証サーバ
1 Certificate verification system 10
Claims (14)
第1の情報処理装置から受信した複数のトラストリストの情報に基づき、前記複数のトラストリストの間の連結関係及び前記複数のトラストリストの有効性の情報と、前記連結関係及び有効性が確認された前記トラストリストに登録されている認証局の情報とをそれぞれ取得して前記メモリに記憶するトラストリスト取得処理を実行するストア管理処理と、
第2の情報処理装置から、検証対象の証明書を含む検証要求を受信した場合に、前記メモリに記憶した情報から特定した認証局の証明書の情報に基づき、前記検証対象の証明書が示す認証局と前記特定した認証局との間の連結関係及び、各前記認証局の証明書の有効性を検証するトラストリスト検証処理を実行する証明書検証共通処理と、
前記検証した結果を前記第2の情報処理装置に送信する検証結果応答処理と
を実行する、証明書検証装置。 comprising a processor and a memory, the processor comprising:
Based on the information on the plurality of trust lists received from the first information processing device, information on the connection relationship between the plurality of trust lists and the validity of the plurality of trust lists, and the connection relationship and validity are confirmed. a store management process of executing a trust list acquisition process of acquiring information of each certificate authority registered in the trust list and storing it in the memory;
When a verification request including a certificate to be verified is received from a second information processing device, the certificate to be verified indicates based on the information of the certificate of the certification authority identified from the information stored in the memory. a certificate verification common process that executes a trust list verification process that verifies the connection relationship between the certification authority and the identified certification authority and the validity of the certificate of each certification authority;
A certificate verification device that performs a verification result response process of transmitting the verified result to the second information processing device.
前記受信した前記検証要求に、検証者が信用する証明書であるトラストアンカが付帯しているか否かを判定し、前記検証要求に前記トラストアンカが付帯していない場合には、前記トラストリスト検証処理を実行し、
前記検証要求に前記トラストアンカが付帯している場合には、前記検証対象の証明書及び前記トラストアンカに基づき、前記検証対象の証明書により特定される認証局と前記トラストアンカが示す認証局との間の連結関係及び、各前記認証局の証明書の有効性を検証するブリッジモデル検証処理を実行し、検証した結果を前記第2の情報処理装置に送信する、
請求項1に記載の証明書検証装置。 In the certificate verification common process, the processor:
It is determined whether the received verification request is accompanied by a trust anchor, which is a certificate trusted by the verifier, and if the trust anchor is not attached to the verification request, the trust list verification is performed. execute the process,
If the trust anchor is attached to the verification request, based on the verification target certificate and the trust anchor, the certificate authority specified by the verification target certificate and the certificate authority indicated by the trust anchor are determined. executing a bridge model verification process for verifying the connection relationship between the certificate authorities and the validity of the certificate of each of the certificate authorities, and transmitting the verification results to the second information processing device;
The certificate verification device according to claim 1.
前記ストア管理処理において、予め設定されたタイミングで繰り返し、前記トラストリスト取得処理を実行する、請求項1に記載の証明書検証装置。 The processor includes:
The certificate verification device according to claim 1, wherein in the store management process, the trust list acquisition process is repeatedly executed at a preset timing.
前記ストア管理処理において、前記連結関係及び有効性が確認されたトラストリストに登録されている認証局の証明書を前記メモリに記憶し、
前記証明書検証共通処理において、前記受信した検証要求にトラストアンカが付帯していない場合には、前記メモリに記憶した、前記連結関係及び有効性が確認されたトラストリストに登録されている認証局の証明書の情報に基づき、前記トラストリスト検証処理を実行する、
請求項2に記載の証明書検証装置。 The processor includes:
In the store management process, storing in the memory a certificate of a certification authority registered in the trust list whose connection relationship and validity have been confirmed;
In the certificate verification common processing, if a trust anchor is not attached to the received verification request, the certificate authority registered in the trust list stored in the memory and whose linkage relationship and validity have been confirmed. executing the trust list verification process based on the information of the certificate;
The certificate verification device according to claim 2.
前記プロセッサは、
ユーザから、前記検証対象の証明書が対応している検証方法の入力を前記入力装置により受け付け、
前記証明書検証共通処理において、前記検証要求を受信した場合に、前記入力された検証方法に前記トラストリストによる証明書の検証方法が指定されているか否かを判定し、前記入力された検証方法に前記トラストリストによる証明書の検証方法が指定されている場合にのみ、前記トラストリスト検証処理を実行する、
請求項1に記載の証明書検証装置。 further comprising an input device;
The processor includes:
receiving from a user an input of a verification method supported by the certificate to be verified, using the input device;
In the certificate verification common processing, when the verification request is received, it is determined whether the certificate verification method using the trust list is specified as the input verification method, and the input verification method is Executing the trust list verification process only when a certificate verification method using the trust list is specified in
The certificate verification device according to claim 1.
前記トラストリスト検証処理を実行する際に前記連結関係及び前記有効性を検証した認証局に係るトラストリストの品質を示す情報を、前記メモリに記憶した情報に基づき作成するTL方式検証追加処理を実行し、
前記検証結果応答処理において、前記作成した情報を含んだ、前記検証した結果を、前記第2の情報処理装置に送信する、
請求項1に記載の証明書検証装置。 The processor includes:
Executing a TL method verification additional process that creates information indicating the quality of the trust list related to the certificate authority that verified the connection relationship and the validity when executing the trust list verification process, based on the information stored in the memory. death,
In the verification result response process, transmitting the verified result including the created information to the second information processing device;
The certificate verification device according to claim 1.
他の第1の情報処理装置から受信した複数のトラストリストの情報に基づき、前記複数のトラストリストの間の連結関係及び前記複数のトラストリストの有効性の情報と、前記連結関係及び有効性が確認された前記トラストリストに登録されている認証局の情報とをそれぞれ取得して前記メモリに記憶するトラストリスト取得処理を実行するストア管理処理と、
他の第2の情報処理装置から、検証対象の証明書を含む検証要求を受信した場合に、前記メモリに記憶した情報から特定した認証局の証明書の情報に基づき、前記検証対象の証明書が示す認証局と前記特定した認証局との間の連結関係及び、各前記認証局の証明書の有効性を検証するトラストリスト検証処理を実行する証明書検証共通処理と、
前記検証した結果を前記第2の情報処理装置に送信する検証結果応答処理と
を実行する証明書検証方法。 In an information processing device including a processor and a memory, the processor
Based on the information on the plurality of trust lists received from another first information processing device, information on the connection relationships among the plurality of trust lists and the validity of the plurality of trust lists; a store management process of executing a trust list acquisition process of acquiring information of each of the certificate authorities registered in the confirmed trust list and storing it in the memory;
When a verification request including a certificate to be verified is received from another second information processing device, the certificate to be verified is determined based on the information on the certificate of the certification authority identified from the information stored in the memory. a certificate verification common process that executes a trust list verification process that verifies the connection relationship between the certificate authority indicated by and the identified certificate authority, and the validity of the certificate of each of the certificate authorities;
and transmitting the verified result to the second information processing device.
前記証明書検証共通処理において、前記受信した前記検証要求に、検証者が信用する証明書であるトラストアンカが付帯しているか否かを判定し、前記検証要求に前記トラストアンカが付帯していない場合には、前記トラストリスト検証処理を実行し、
前記検証要求に前記トラストアンカが付帯している場合には、前記検証対象の証明書及び前記トラストアンカに基づき、前記検証対象の証明書により特定される認証局と前記トラストアンカが示す認証局との間の連結関係及び、各前記認証局の証明書の有効性を検証するブリッジモデル検証処理を実行し、検証した結果を前記情報処理装置に送信する、
請求項7に記載の証明書検証方法。 The processor,
In the certificate verification common process, it is determined whether the received verification request is attached with a trust anchor, which is a certificate trusted by the verifier, and the verification request is not attached with the trust anchor. If so, execute the trust list verification process,
If the trust anchor is attached to the verification request, based on the verification target certificate and the trust anchor, the certificate authority specified by the verification target certificate and the certificate authority indicated by the trust anchor are determined. executing a bridge model verification process for verifying the connection relationship between the certificate authorities and the validity of the certificate of each of the certificate authorities, and transmitting the verification results to the information processing device;
The certificate verification method according to claim 7.
前記ストア管理処理において、予め設定されたタイミングで繰り返し、前記トラストリスト取得処理を実行する、請求項7に記載の証明書検証方法。 The processor,
8. The certificate verification method according to claim 7, wherein in the store management process, the trust list acquisition process is repeatedly executed at a preset timing.
前記ストア管理処理において、前記連結関係及び有効性が確認されたトラストリストに登録されている認証局の証明書を前記メモリに記憶し、
前記証明書検証共通処理において、前記受信した検証要求にトラストアンカが付帯していない場合には、前記メモリに記憶した、前記連結関係及び有効性が確認されたトラストリストに登録されている認証局の証明書の情報に基づき、前記トラストリスト検証処理を実行する、
請求項8に記載の証明書検証方法。 The processor,
In the store management process, storing in the memory a certificate of a certification authority registered in the trust list whose connection relationship and validity have been confirmed;
In the certificate verification common processing, if a trust anchor is not attached to the received verification request, the certificate authority registered in the trust list stored in the memory and whose linkage relationship and validity have been confirmed. executing the trust list verification process based on the information of the certificate;
The certificate verification method according to claim 8.
前記プロセッサが、
ユーザから、前記検証対象の証明書が対応している検証方法の入力を前記入力装置により受け付け、
前記証明書検証共通処理において、前記検証要求を受信した場合に、前記入力された検証方法に前記トラストリストによる証明書の検証方法が指定されているか否かを判定し、前記入力された検証方法に前記トラストリストによる証明書の検証方法が指定されている
場合にのみ、前記トラストリスト検証処理を実行する、
請求項7に記載の証明書検証方法。 The information processing device further includes an input device,
The processor,
receiving from a user an input of a verification method supported by the certificate to be verified, using the input device;
In the certificate verification common processing, when the verification request is received, it is determined whether the certificate verification method using the trust list is specified as the input verification method, and the input verification method is Executing the trust list verification process only when a certificate verification method using the trust list is specified in
The certificate verification method according to claim 7.
前記トラストリスト検証処理を実行する際に、前記連結関係及び前記有効性を検証した認証局に係るトラストリストの品質を示す情報を、前記メモリに記憶した情報に基づき作成するTL方式検証追加処理を実行し、
前記検証結果応答処理において、前記作成した情報を含んだ、前記検証した結果を、前記第2の情報処理装置に送信する、
請求項7に記載の証明書検証方法。 The processor,
When executing the trust list verification process, TL method verification additional processing is performed to create information indicating the quality of the trust list related to the connection relationship and the certificate authority that verified the validity based on the information stored in the memory. execute,
In the verification result response process, transmitting the verified result including the created information to the second information processing device;
The certificate verification method according to claim 7.
他の第1の情報処理装置から受信した複数のトラストリストの情報に基づき、前記複数のトラストリストの間の連結関係及び前記複数のトラストリストの有効性の情報と、前記連結関係及び有効性が確認された前記トラストリストに登録されている認証局の情報とをそれぞれ取得して前記メモリに記憶するトラストリスト取得処理を実行するストア管理処理と、
他の第2の情報処理装置から、検証対象の証明書を含む検証要求を受信した場合に、前記メモリに記憶した情報から特定した認証局の証明書の情報に基づき、前記検証対象の証明書が示す認証局と前記特定した認証局との間の連結関係及び、各前記認証局の証明書の有効性を検証するトラストリスト検証処理を実行する証明書検証共通処理と、
前記検証した結果を前記他の第2の情報処理装置に送信する検証結果応答処理と
を実行させるプログラム。 The processor of an information processing device including a processor and a memory,
Based on the information on the plurality of trust lists received from another first information processing device, information on the connection relationships among the plurality of trust lists and the validity of the plurality of trust lists; a store management process of executing a trust list acquisition process of acquiring information of each of the certificate authorities registered in the confirmed trust list and storing it in the memory;
When a verification request including a certificate to be verified is received from another second information processing device, the certificate to be verified is determined based on the information on the certificate of the certification authority identified from the information stored in the memory. a certificate verification common process that executes a trust list verification process that verifies the connection relationship between the certificate authority indicated by and the identified certificate authority, and the validity of the certificate of each of the certificate authorities;
and a verification result response process of transmitting the verified result to the other second information processing device.
検証対象の証明書を含む検証要求を送信する第2の情報処理装置と、
プロセッサ及びメモリを備え、前記プロセッサが、
前記第1の情報処理装置から受信した複数のトラストリストの情報に基づき、前記複数のトラストリストの間の連結関係及び前記複数のトラストリストの有効性の情報と、前記連結関係及び有効性が確認された前記トラストリストに登録されている認証局の情報とをそれぞれ取得して前記メモリに記憶するトラストリスト取得処理を実行するストア管理処理と、
前記第2の情報処理装置から、検証対象の証明書を含む検証要求を受信した場合に、前記メモリに記憶した情報から特定した認証局の証明書の情報に基づき、前記検証対象の証明書が示す認証局と前記特定した認証局との間の連結関係及び、各前記認証局の証明書の有効性を検証するトラストリスト検証処理を実行する証明書検証共通処理と、
前記検証した結果を前記第2の情報処理装置に送信する検証結果応答処理とを実行する証明書検証装置と
を含んで構成される証明書検証システム。 a first information processing device that transmits information on a plurality of trust lists;
a second information processing device that transmits a verification request including a certificate to be verified;
comprising a processor and a memory, the processor comprising:
Based on the information on the plurality of trust lists received from the first information processing device, information on the connection relationship between the plurality of trust lists and the validity of the plurality of trust lists, and the connection relationship and validity are confirmed. a store management process of executing a trust list acquisition process of acquiring and storing information of each certificate authority registered in the trust list in the memory;
When a verification request including a certificate to be verified is received from the second information processing device, the certificate to be verified is verified based on the information of the certificate of the certification authority identified from the information stored in the memory. a certificate verification common process that executes a trust list verification process that verifies the connection relationship between the indicated certificate authority and the specified certificate authority, and the validity of the certificate of each of the certificate authorities;
and a certificate verification device that performs a verification result response process of transmitting the verified result to the second information processing device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022039464A JP2023134108A (en) | 2022-03-14 | 2022-03-14 | Certificate verification device, certificate verification method, program, and certificate verification system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022039464A JP2023134108A (en) | 2022-03-14 | 2022-03-14 | Certificate verification device, certificate verification method, program, and certificate verification system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023134108A true JP2023134108A (en) | 2023-09-27 |
Family
ID=88143729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022039464A Pending JP2023134108A (en) | 2022-03-14 | 2022-03-14 | Certificate verification device, certificate verification method, program, and certificate verification system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023134108A (en) |
-
2022
- 2022-03-14 JP JP2022039464A patent/JP2023134108A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2021206913B2 (en) | Systems and methods for distributed data sharing with asynchronous third-party attestation | |
CN111434085B (en) | Domain name management scheme for cross-chain interaction in blockchain systems | |
JP5576985B2 (en) | Method for determining cryptographic algorithm used for signature, verification server, and program | |
US20040268120A1 (en) | System and method for public key infrastructure based software licensing | |
US20110004763A1 (en) | Certificate validation method and certificate validation server and storage medium | |
JP4594962B2 (en) | Verification server, program, and verification method | |
KR101985029B1 (en) | On-line membership verification utilizing an associated organization certificate | |
KR102118962B1 (en) | Method and server for managing user identity using blockchain network, and method and terminal for verifying user using user identity based on blockchain network | |
US20190303590A1 (en) | Identifying revoked credentials | |
CN110556171B (en) | Medical data management method and device, node of block chain network and storage medium | |
JP5193787B2 (en) | Information processing method, relay server, and network system | |
CN112199721A (en) | Authentication information processing method, device, equipment and storage medium | |
US20210056227A1 (en) | Privacy friendly decentralized ledger based identity management system and methods | |
Ahmed et al. | Turning trust around: smart contract-assisted public key infrastructure | |
JP2006031064A (en) | Session management system and management method | |
JP6688266B2 (en) | Identity verification information provision method and identity verification information provision server | |
JP5743946B2 (en) | Service providing apparatus, joint signature verification apparatus, user identification / authentication method and program | |
KR102118947B1 (en) | Method and server for managing user identity using blockchain network, and method and terminal for verifying user using user identity based on blockchain network | |
JP2003348077A (en) | Method and device for verifying attribute certificate | |
JP2008005090A (en) | System for issuing and verifying certificates of several open keys, and method for issuing and verifying certificates of several open keys | |
JP5417628B2 (en) | Signature server, signature system, and signature processing method | |
US20220271949A1 (en) | Guaranteed control method, information processing device, and storage medium | |
JP2023134108A (en) | Certificate verification device, certificate verification method, program, and certificate verification system | |
US20200076620A1 (en) | Information processing apparatus, communication device, and information processing system | |
KR20200110118A (en) | Method and server for managing user identity using blockchain network, and method and terminal for verifying user using user identity based on blockchain network |