(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023132485
(43)【公開日】2023-09-22
(54)【発明の名称】証明書管理装置、証明書管理システム及び証明書管理方法
(51)【国際特許分類】
H04L 9/08 20060101AFI20230914BHJP
H04L 9/32 20060101ALI20230914BHJP
【FI】
H04L9/08 F
H04L9/32 200Z
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2022037837
(22)【出願日】2022-03-11
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000176
【氏名又は名称】弁理士法人一色国際特許事務所
(72)【発明者】
【氏名】西島 直
(57)【要約】 (修正有)
【課題】WEBサーバでの認証や認証局での管理の対象となるユーザの管理コストを低減可能とする。
【解決手段】適宜なネットワークを介してID管理サーバ、認証局サーバ及び機密情報管理サーバと通信可能に結ばれている証明書管理サーバ110であって、ブロックチェーンサービスのネットワークにアクセスし、ブロックチェーンサービスにおけるユーザID管理サーバ100より、所定のユーザ情報を取得して当該ユーザの秘密鍵111の生成を行う処理と、ユーザ情報に基づく証明書の発行依頼を認証局サーバ120に対して行い、当該ユーザの証明書113を取得する処理と、ユーザに関するトランザクション生成機会に向け、秘密鍵111及び証明書113をWEBサーバ140に配信する処理と、を実行する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ブロックチェーンサービスのネットワークにアクセスする通信装置と、
前記ブロックチェーンサービスにおけるユーザIDの管理装置より、所定のユーザ情報を取得して当該ユーザの秘密鍵の生成を行う処理と、前記ユーザ情報に基づく証明書の発行依頼を認証局に対して行い、当該ユーザの証明書を取得する処理と、前記ユーザに関するトランザクション生成機会に向け、前記秘密鍵及び前記証明書を所定装置に配信する処理を実行する演算装置と、
を有することを特徴とする証明書管理装置。
【請求項2】
前記演算装置は、
前記秘密鍵及び前記証明書の配信を、前記ブロックチェーンサービスにおける機密情報管理装置に行うものである、
ことを特徴とする請求項1に記載の証明書管理装置。
【請求項3】
前記演算装置は、
前記秘密鍵の生成及び前記証明書の取得を、前記トランザクション生成機会ごとに実行し、前記秘密鍵及び前記証明書の配信を、前記ブロックチェーンサービスにおいて前記ユーザのログイン処理を行うWEBサーバに対して行うものである、
ことを特徴とする請求項1に記載の証明書管理装置。
【請求項4】
前記演算装置は、
前記ユーザIDの管理装置を監視して、前記ユーザ情報の変更または前記証明書の期限切れを特定した場合、当該ユーザに関する証明書の更新処理を行うものである、
ことを特徴とする請求項3に記載の証明書管理装置。
【請求項5】
ブロックチェーンサービスのネットワークにアクセスする通信装置と、
前記ブロックチェーンサービスにおけるユーザIDの管理装置より、所定のユーザ情報を取得して当該ユーザの秘密鍵の生成を行う処理と、前記ユーザ情報に基づく証明書の発行依頼を認証局に対して行い、当該ユーザの証明書を取得する処理と、前記ユーザに関するトランザクション生成機会に向け、前記秘密鍵及び前記証明書を所定装置に配信する処理を実行する演算装置と、
を有する証明書管理装置を含むことを特徴とする証明書管理システム。
【請求項6】
前記証明書管理装置は、
前記秘密鍵及び前記証明書の配信を、前記ブロックチェーンサービスにおける機密情報管理装置に行うものである、
ことを特徴とする請求項5に記載の証明書管理システム。
【請求項7】
前記証明書管理装置は、
前記秘密鍵の生成及び前記証明書の取得を、前記トランザクション生成機会ごとに実行し、前記秘密鍵及び前記証明書の配信を、前記ブロックチェーンサービスにおいて前記ユーザのログイン処理を行うWEBサーバに対して行うものである、
ことを特徴とする請求項5に記載の証明書管理システム。
【請求項8】
前記証明書管理装置は、
前記ユーザIDの管理装置を監視して、前記ユーザ情報の変更または前記証明書の期限切れを特定した場合、当該ユーザに関する証明書の更新処理を行うものである、
ことを特徴とする請求項7に記載の証明書管理システム。
【請求項9】
前記ブロックチェーンサービスにおいて前記ユーザのログイン処理を行うWEBサーバであって、
ブロックチェーンサービスのネットワークにアクセスする通信装置と、
前記ユーザからのログイン要求に伴う、前記ユーザIDの管理装置での当該ユーザに関する認証処理に成功した場合、当該管理装置からトークンを取得する処理と、当該トークンに基づく前記秘密鍵及び前記証明書の取得要求を、前記秘密鍵及び前記証明書の管理する機密情報管理装置または前記証明書管理装置に行い、前記秘密鍵及び前記証明書を取得する処理と、前記秘密鍵及び前記証明書を用いて前記ユーザのトランザクションに電子署名する処理を実行する演算装置と、
を有するWEBサーバを含むことを特徴とする請求項1に記載の証明書管理システム。
【請求項10】
ブロックチェーンサービスにおける証明書管理装置が、
ブロックチェーンサービスのネットワークにアクセスする通信装置を備えて、
前記ブロックチェーンサービスにおけるユーザIDの管理装置より、所定のユーザ情報を取得して当該ユーザの秘密鍵の生成を行う処理と、前記ユーザ情報に基づく証明書の発行依頼を認証局に対して行い、当該ユーザの証明書を取得する処理と、前記ユーザに関するトランザクション生成機会に向け、前記秘密鍵及び前記証明書を所定装置に配信する処理を実行する、
ことを特徴とする証明書管理方法。
【請求項11】
前記ブロックチェーンサービスにおいて前記ユーザのログイン処理を行うWEBサーバが、
ブロックチェーンサービスのネットワークにアクセスする通信装置を備えて、
前記ユーザからのログイン要求に伴う、前記ユーザIDの管理装置での当該ユーザに関する認証処理に成功した場合、当該管理装置からトークンを取得する処理と、当該トークンに基づく前記秘密鍵及び前記証明書の取得要求を、前記秘密鍵及び前記証明書の管理する機密情報管理装置または前記証明書管理装置に行い、前記秘密鍵及び前記証明書を取得する処理と、前記秘密鍵及び前記証明書を用いて前記ユーザのトランザクションに電子署名する処理を実行する、
ことを特徴とする請求項10に記載の証明書管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、証明書管理装置、証明書管理システム及び証明書管理方法に関するものである。
【背景技術】
【0002】
ブロックチェーンは分散台帳技術の1つである。ブロックチェーンは、各ノードから発行され合意形成されたトランザクションを、一定期間毎にまとめたブロックの連なりであり、一種の分散型データベースである。
上述のブロックチェーンを構成する各ブロックには、タイムスタンプと前のブロックのハッシュ値が含まれる。そのため、ブロックチェーン上における任意の単一ブロックを遡及的に変更することは非常に困難である。つまり、耐改竄性が高いと言える。
【0003】
こうしたブロックチェーンは、分散台帳ネットワーク上の複数の場所、すなわち分散台帳ノードそれぞれに分散し、同じ内容で格納される。換言すると、ブロックチェーンで保持するデータは、従来システムのごとく中央集権的に保持、管理されることがない。
【0004】
また、スマートコントラクトにより、トランザクションを適宜に自動実行、管理し、様々な機能を柔軟に実装することも可能である。トランザクションをスマートコントラクトで実行した結果に対してその正当性を証明するエンドースメントを実装することも可能である。
【0005】
スマートコントラクトは、ブロックに格納されたトランザクションが示すデータ操作の最新情報に対して行われる。この最新情報が保持されるステートデータベースを実装することも可能である。
【0006】
上述のトランザクションの発行は、ユーザがプログラムを直接実行するのではなく、WEBサーバなどを通じて行われることが多い。そのため、当該ユーザによるWEBサーバへのログインを制御するため、ユーザ管理が必要になる。
【0007】
また、トランザクションの実行結果の信頼性は、ユーザがトランザクションに電子署名を行い、スマートコントラクトの実行結果を分散台帳ノードが電子署名を行うことで確保している。そのため、証明書を発行する認証局サーバも、ユーザ管理を行うことが必要になる。
【0008】
なお、ユーザ管理と証明書の管理方法として、いくつかのブロックチェーンサービスが提案されている(非特許文献1および非特許文献2参照)。
【先行技術文献】
【非特許文献】
【0009】
【非特許文献1】https://cloud.ibm.com/docs/blockchain?topic=blockchain-ibp-v2-apis
【非特許文献2】https://cloud.ibm.com/docs/blockchain?topic=blockchain-cert-mgmt
【発明の概要】
【発明が解決しようとする課題】
【0010】
エンタープライズにおける分散台帳システムは、ユーザ自身がコマンドを操作してトラ
ンザクションを投げることは少ない。一方、トランザクション処理の開始は、WEBサーバを介したものとなることが多い。
そのため、当該ユーザに関して、WEBサーバへのアクセスの認証処理が必要になる。さらに、ユーザがトランザクションに付随させる証明書を発行するためには、認証局にもユーザの登録が必要になる。その結果、当該ユーザの二重管理が行われることになる。
【0011】
非特許文献らにおいて、ユーザの管理を行うサービスが提案されているが、WEBもしくはAPIにアクセスするユーザと、認証局が管理するユーザとは別々に管理されており、上述の二重管理は解消されていない。
【0012】
そこで本発明の目的は、WEBサーバでの認証や認証局での管理の対象となるユーザの管理コストを低減可能とする技術を提供することにある。
【課題を解決するための手段】
【0013】
上記課題を解決する本発明の証明書管理装置は、ブロックチェーンサービスのネットワークにアクセスする通信装置と、前記ブロックチェーンサービスにおけるユーザIDの管理装置より、所定のユーザ情報を取得して当該ユーザの秘密鍵の生成を行う処理と、前記ユーザ情報に基づく証明書の発行依頼を認証局に対して行い、当該ユーザの証明書を取得する処理と、前記ユーザに関するトランザクション生成機会に向け、前記秘密鍵及び前記証明書を所定装置に配信する処理を実行する演算装置と、を有することを特徴とする。
また、本発明の証明書管理システムは、ブロックチェーンサービスのネットワークにアクセスする通信装置と、前記ブロックチェーンサービスにおけるユーザIDの管理装置より、所定のユーザ情報を取得して当該ユーザの秘密鍵の生成を行う処理と、前記ユーザ情報に基づく証明書の発行依頼を認証局に対して行い、当該ユーザの証明書を取得する処理と、前記ユーザに関するトランザクション生成機会に向け、前記秘密鍵及び前記証明書を所定装置に配信する処理を実行する演算装置と、を有する証明書管理装置を含むことを特徴とする。
【0014】
また、本発明の証明書管理方法は、ブロックチェーンサービスにおける証明書管理装置が、ブロックチェーンサービスのネットワークにアクセスする通信装置を備えて、前記ブロックチェーンサービスにおけるユーザIDの管理装置より、所定のユーザ情報を取得して当該ユーザの秘密鍵の生成を行う処理と、前記ユーザ情報に基づく証明書の発行依頼を認証局に対して行い、当該ユーザの証明書を取得する処理と、前記ユーザに関するトランザクション生成機会に向け、前記秘密鍵及び前記証明書を所定装置に配信する処理を実行する、ことを特徴とする。
【発明の効果】
【0015】
本発明によれば、WEBサーバでの認証や認証局での管理の対象となるユーザの管理コストを低減可能となる。
【図面の簡単な説明】
【0016】
【
図1】本実施形態における証明書管理サーバの構成例を示す図である。
【
図2】本実施形態における事前登録のシーケンス図である。
【
図3】本実施形態におけるトランザクション送信のシーケンス図である。
【
図4】本実施形態における分散台帳ノードの構成例を示す図である。
【
図5】本実施形態における分散台帳ノードの構成例を示すブロック図である。
【
図6】本実施形態の機密情報管理サーバを用いない事前登録のシーケンス図である。
【
図7】本実施形態の機密情報管理サーバを用いないトランザクション送信のシーケンス図である。
【発明を実施するための形態】
【0017】
[発明の背景と前提について]
ブロックチェーンにおいて、ユーザが保持する秘密鍵や認証局が発行する証明書が、当該ユーザに関する信頼性の源泉である。そのため、当該秘密鍵や証明書が流出することは、ブロックチェーンにおけるデータの信頼性低下に直結する。
【0018】
一方、パーミッション型のエンタープライズブロックチェーンのサービス利用に際しては、当該サービスの提供窓口となるWEBサーバでのユーザ認証が必要である。ブロックチェーンの管理者にしてみれば、上述のユーザの秘密鍵、証明書や認証用情報等の管理対象データが分散している状況であって、サービスやそれを構築するリソースの運用効率の点で課題があった。
[実施例1]
以下に本発明の実施形態について図面を用いて詳細に説明する。
図1は、本実施形態における証明書管理サーバの構成例を示す図である。上述のような背景や前提を踏まえ、本実施形態の証明書管理装置たる証明書管理サーバ110では、ブロックチェーンサービスにおけるユーザIDの管理装置すなわちID管理サーバ100より、所定のユーザ情報を取得して当該ユーザの秘密鍵の生成を行う処理と、上述のユーザ情報に基づく証明書の発行依頼を認証局サーバ120に対して行い、当該ユーザの証明書を取得する処理と、上述のユーザに関するトランザクション生成機会に向け、上述のように得た秘密鍵及び証明書を、機密情報管理サーバ130に配信する処理を実行する。
【0019】
こうした機能を実装する証明書管理サーバ110は、適宜なネットワークを介して、ID管理サーバ100、認証局サーバ120、及び機密情報管理サーバ130と通信可能に結ばれている。
【0020】
このうちID管理サーバ100は、ユーザ情報101のデータベースを有する。このID管理サーバ100は、ブロックチェーンサービスの管理者160の操作を受けて、ユーザの情報(名前、メールアドレス等)を所定の端末等から取得し、ユーザ情報101のデータベースに保存する。
【0021】
また、ID管理サーバ100は、上述のユーザ情報の保存後、当該ユーザ情報を証明書管理サーバ110に通知する。証明書管理サーバ110では、この通知を受けて当該ユーザに関して各種鍵の生成や、認証局サーバ120に対する証明書発行要求を実行することとなる。
【0022】
こうした鍵や証明書が生成されたユーザ170は、ブロックチェーンサービスを利用する場合、自身の端末を操作してWEBサーバ140にアクセスし、ここから認証要求を行う。これに対し、ID管理サーバ100は、当該WEBサーバ140から、上述のユーザ170による認証要求を受信し、これを確認(すなわちユーザ情報101に基づくユーザ認証)してトークンを返す。
【0023】
一方、証明書管理サーバ110は、ユーザの秘密鍵111、公開鍵112、及び証明書113を記憶装置にて保持する。証明書管理サーバ110は、ID管理サーバ100より通知を受信し、認証局サーバ120にユーザ登録を行うとともに、秘密鍵111及び公開鍵112を生成する。
【0024】
また、証明書管理サーバ110は、上述のように生成した公開鍵112を用いて、認証局サーバ120に証明書113の発行要求を行う。証明書管理サーバ110は、認証局サーバ120から証明書113を取得し、これと既に生成している秘密鍵111を機密情報
管理サーバ130に送信する。
【0025】
認証局サーバ120は、ユーザ情報121のデータベースを記憶装置にて保持する。認証局サーバ120は、証明書管理サーバ110からユーザの情報を受信し、ユーザ情報121のデータベースに保存する。
【0026】
また、認証局サーバ120は、証明書管理サーバ110から受け取った公開鍵に基づいて証明書113を発行する。
【0027】
機密情報管理サーバ130は、ユーザの秘密鍵及び証明書を暗号化し、これをセキュアに保存する。機密情報管理サーバ130は、証明書管理サーバ110から秘密鍵111、証明書113を受け取る。
【0028】
また、機密情報管理サーバ130は、WEBサーバ140からトークンを受取り、当該トークンの情報を元に当該ユーザの秘密鍵111と証明書113をWEBサーバ140に応答する。
【0029】
一方、WEBサーバ140は、ユーザ170に対してブラウザを用いたGUIを提供する。WEBサーバ140は、ユーザ170からクレデンシャルを受取り、ID管理サーバ100に確認(すなわちユーザ認証の依頼)を行う、
上述の確認の結果、当該クレデンシャルが正当であった場合、ID管理サーバ100はWEBサーバ140にトークンを応答する。WEBサーバ140は、上述のトークンをID管理サーバ100から受け取り、これを含む所定の取得要求を機密情報管理サーバ130に送信することで、当該ユーザの秘密鍵111及び証明書113を取得することとなる。
【0030】
また、WEBサーバ140は、上述のユーザに関して生成したトランザクションに対し、機密情報管理サーバ130から得た秘密鍵111を用いて電子署名を行い、証明書113と一緒に分散台帳サーバ150に送信する。
【0031】
分散台帳サーバ150は、WEBサーバ140からトランザクションを受取り、スマートコントラクト151を実行して、その結果を分散台帳152に保存する。
【0032】
なお、上述の、各コンポーネント間の通信はhttpsなどのプロトコルを用いて暗号化されているものとする。
<証明書管理方法のシーケンス例:事前登録>
続いて、本実施形態の証明書管理方法に対応したシーケンス例について説明する。
図2は、本実施形態における証明書管理方法に対応したシーケンス図であて、ユーザ登録の処理手順を示す図である。この場合の各機器の動作は以下の通りである。
【0033】
まず、管理者170の操作を受けた所定の端末が、ID管理サーバ100に対してユーザ登録の処理を行う(ステップ201)。このユーザ登録の処理に際しては、当該ユーザの情報(例:氏名や所属、連絡先など)がID管理サーバ100に送信される。
【0034】
続いて、ID管理サーバ100は、登録されたユーザの情報を証明書管理サーバ110に通知する(ステップ202)。
【0035】
証明書管理サーバ110は、ID管理サーバ100からの通知で受け取ったユーザの情報を用いて、認証局サーバ120に対してユーザ登録要求を行う(ステップ203)。認証局サーバ120では、この要求を受けて当該ユーザの情報をユーザ情報121のデータ
ベースに登録する。
【0036】
続いて、証明書管理サーバ110は、秘密鍵111及び公開鍵112を生成する(ステップ204)。こうした鍵の生成処理自体は、既存の鍵生成エンジン等を適宜に利用して実行するものとする。
【0037】
次に、証明書管理サーバ110は、ステップ204で生成した公開鍵112を用いて、認証局サーバ120に対して証明書の発行依頼を行う(ステップ205)。
【0038】
これを受けた認証局サーバ120は、証明書管理サーバ110からの依頼にて受け取った公開鍵112に基づいて証明書を発行し、これを証明書管理サーバ110に応答する(ステップ206)。
【0039】
一方、証明書管理サーバ110は、ステップ204で生成した秘密鍵111と、認証局サーバ120から受け取った証明書113を、機密情報管理サーバ130に送信する(ステップ207)。
【0040】
機密情報管理サーバ130は、証明書管理サーバ110から秘密鍵111及び証明書113を受信し、これらを暗号化して保存し、証明書管理サーバ110に保存完了の通知を行う(ステップ208)。
【0041】
一方、証明書管理サーバ110は、機密情報管理サーバ130から保存完了の通知を受け取り、登録対象のユーザ170に宛てて、ステップ202の通知により取得している連絡先(例:メールアドレス等)への完了通知を実行し(ステップ209)、処理を終了する。
<証明書管理方法のシーケンス例:トランザクション送信>
図3は、本実施形態における証明書管理方法のシーケンス図であり、具体的にはトランザクション送信に伴う各種処理を示すものである。
【0042】
ここで、事前登録を済ませてあるユーザ170が、所定の端末を操作してWEBサーバ140にアクセスしているものとする。この場合、上述の端末は、ユーザ170の操作を受けて、WEBサーバ140に対し、ログインするためにクレデンシャル情報を送信する(ステップ301)。
【0043】
一方、WEBサーバ140は、上述の端末から受け取ったクレデンシャル情報を、ID管理サーバ100に送信する(ステップ302)。この場合、ID管理サーバ100は、WEBサーバ140から受け取ったクレデンシャル情報がユーザ情報101に登録されているか確認し、登録されていればトークンをWEBサーバ140に応答する(ステップ303)。
【0044】
一方、WEBサーバ140は、ID管理サーバ100から応答で得たトークンを含む秘密鍵及び証明書の取得要求を、機密情報管理サーバ130に送信する(ステップ304)。
【0045】
機密情報管理サーバ130は、WEBサーバ140からの取得要求が含むトークンに基づき、保存されている秘密鍵111と証明書113を特定し、これらをWEBサーバ140に応答する(ステップ305)。
【0046】
WEBサーバ140は、機密情報管理サーバ130から受け取った秘密鍵111を用いて、ユーザ170によるトランザクションに電子署名を行う(ステップ306)。
【0047】
また、WEBサーバ140は、電子署名されたトランザクションに証明書113を付けて分散台帳サーバ150に送信し(ステップ307)、処理を終了する。
<分散台帳システムの例>
ここで、本実施形態で想定する分散台帳システム400について説明する。
図4は本実施形態における分散台帳システム400の構成例を示す図である。なお、本実施形態における分散台帳システム400は、1つ以上の組織から構成されている。
【0048】
図4で例示する分散台帳システム400は、3つの組織410、420、430を有する。それぞれの組織、例えば組織410は、秘密情報管理サーバ130、ID管理サーバ100、証明書管理サーバ110、WEBサーバ140、認証局サーバ120を有する。
【0049】
なお、分散台帳サーバ150は、組織ごとに1つ又は複数配置されている。それぞれの分散台帳サーバ150は、ネットワーク440を介して互いに通信することができる。
<ハードウェア構成例>
図5は本実施形態における各機器のハードウェア構成例を示す。すなわち、ID管理サーバ100、証明書管理サーバ110、認証局サーバ120、機密情報管理サーバ130、WEBサーバ140、及び分散台帳サーバ150のハードウェア構成例を示す。
【0050】
なお、ここでは説明の簡便化のため、証明書管理システムを構成する「機器」として説明する。また、こうした機器の各構成は、複数の物理サーバまたは任意の数の方法で実現されても良いし、1つのサーバで実現しても良い。
【0051】
機器は、CPU501、メモリ502、ストレージ503、ネットワークインターフェイス504、及び入出力装置505を含む。また、これら各構成は、内部バスなどのインターフェイス506を介して接続されている。
【0052】
このうちCPU501は、メモリ502に記録されたプログラムを実行することで各種の機能を実現する。メモリ502は、CPU501により実行されるプログラムを記録し、また、プログラム実行時に各種情報を一時的に記録する揮発性の記憶装置である。
【0053】
また、ストレージ503は、各種データ、プログラムを格納する装置であり、HDD(Hard Disk Drive)やSSD(Solid State Drive)などが該当する。
【0054】
また、ネットワークインターフェイス504は、機器をネットワーク507に接続するためのインターフェイスを提供する。
【0055】
また、入出力装置505は、操作者による入力動作を受け付けるキーボードやマウス、CPU501での処理結果を出力するディスプレイ、或いはそれら機能が一体となったタッチパネル等を想定する。
[実施例2]
続いて、機密情報管理サーバ130を用いない構成にて、証明書管理システム及び証明書管理方法を実装する形態について、
図6及び
図7に基づき説明する。なお、ここで示す実施例2におけるシステム構成としては、
図1における機密情報管理サーバ130の有無のみが差異となる。
【0056】
この場合、管理者170の端末が、当該管理者170の操作を受けて、ID管理サーバ100に対して、所定のユーザの情報を含むユーザ登録要求を通知する(ステップ601)。
【0057】
一方、ID管理サーバ100は、上述のユーザ登録要求を受けて、予め定めたユーザ登録処理を実行し、当該ユーザの情報を証明書管理サーバ110に通知する(ステップ602)。
【0058】
証明書管理サーバ110は、ID管理サーバ100から受け取ったユーザの情報を用いて、認証局サーバ120にユーザ登録要求を行う(ステップ603)。認証局サーバ120は、上述のユーザ登録要求を受け、予め規定されたユーザ登録処理を実行する。
【0059】
証明書管理サーバ110は、ユーザ登録完了の通知を認証局サーバ120から得て、これをユーザ170の連絡先(例:メールアドレスなど)に送信する(ステップ604)。
【0060】
続いて、実施例2におけるトランザクション送信に伴うシーケンス例について、
図7に基づき説明する。この場合、ユーザ170の端末は、当該ユーザ170の操作を受けて、ログインのためのクレデンシャル情報をWEBサーバ140に送信する(ステップ701)。
【0061】
WEBサーバ140は、上述の端末から受け取ったクレデンシャル情報を含む認証要求を、ID管理サーバ100に送信する(ステップ702)。
【0062】
一方、ID管理サーバ100は、WEBサーバ140から受け取ったクレデンシャル情報がユーザ情報101に登録されているか確認し、登録されていれば、すなわちユーザ認証に成功すれば、トークンをWEBサーバ140に返す(ステップ703)。
【0063】
WEBサーバ140は、ID管理サーバ100から受け取ったトークンを含む秘密鍵及び証明書の生成依頼を証明書管理サーバ110に送信する(ステップ704)。
【0064】
証明書管理サーバ110は、WEBサーバ140から受け取ったトークンをもとに、秘密鍵111及び公開鍵112を生成し(ステップ705)、これを保存する。
【0065】
また、証明書管理サーバ110は、ステップ705で生成した公開鍵112を用いて、認証局サーバ120に対して証明書発行の依頼を行う(ステップ706)。
【0066】
この場合、認証局サーバ120は、上述の依頼が含む公開鍵に基づいて証明書を発行し、これを証明書管理サーバ110に応答する(ステップ707)。
【0067】
一方、証明書管理サーバ110は、ステップ705で生成している秘密鍵111と、認証局サーバ120からの応答で受け取った証明書113を、WEBサーバ140に送信する(ステップ708)。
【0068】
WEBサーバ140は、認証局サーバ120から受け取った秘密鍵111を用いて、上述のユーザのトランザクションに電子署名を行う(ステップ709)。また、WEBサーバ140は、電子署名を施したトランザクションに証明書113を付与して分散台帳サーバ150に送信し(ステップ710)、処理を終了する。
[実施例3]
なお、上述のように認証局サーバ120が生成した証明書の期限を自動で更新する運用も可能である。この場合、例えば証明書管理サーバ110が定期的に機密情報管理サーバ130にアクセスし、そこで管理されている証明書113の有効期限を確認する。
【0069】
上述の確認の結果、有効期限が切れていれば、当該証明書の更新を行う。この更新は、
例えば、証明書管理サーバ110が認証局サーバ120に対し、あらためて証明書の発行依頼をかけることで実施する。
【0070】
また、証明書管理サーバ110は、定期的にID管理サーバ100のユーザ情報101にアクセスし、そこで登録されているユーザと、認証局サーバ120のユーザ情報121に登録されているユーザとを照合する。
【0071】
上述の照合の結果、ID管理サーバ100のユーザ情報101で、或るユーザが削除されていた場合、証明書管理サーバ110は、認証局サーバ120に対して、当該ユーザに関するユーザ情報121での情報削除または証明書の失効を要求する。また、証明書管理サーバ110は、機密情報管理サーバ130にて当該ユーザに関して保存されている秘密鍵111及び証明書113の削除を、機密情報管理サーバ130に要求する。
【0072】
このように、証明書管理サーバ110が各ユーザのステータスを監視し、その秘密鍵や証明書の期限管理及び更新を自動的に行うことで、証明書や秘密鍵及びユーザの登録状況をセキュアかつ効率的に管理可能である。
【0073】
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【0074】
こうした本実施形態によれば、分散台帳システムのユーザ管理コストを低減し、さらに秘密鍵を安全に保管、証明書の自動失効、更新をすることができる。具体的には、サーバ側でユーザの秘密鍵や証明書を生成して安全に保管し、認証局が発行または失効、更新する証明書に必要な情報を、WEBサーバの認証から引用することで、ユーザ情報の管理コストを低減できる。すなわち、WEBサーバでの認証や認証局での管理の対象となるユーザの管理コストを低減可能となる。
【0075】
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、本実施形態の証明書管理装置において、前記演算装置は、前記秘密鍵及び前記証明書の配信を、前記ブロックチェーンサービスにおける機密情報管理装置に行うものである、としてもよい。
【0076】
これによれば、各ユーザの秘密鍵や証明書といった機密情報をセキュアに管理しつつ、WEBサーバを介した要求に応じて、ユーザのトランザクション生成に際して適宜に提供可能となる。
【0077】
また、本実施形態の証明書管理装置において、前記演算装置は、前記秘密鍵の生成及び前記証明書の取得を、前記トランザクション生成機会ごとに実行し、前記秘密鍵及び前記証明書の配信を、前記ブロックチェーンサービスにおいて前記ユーザのログイン処理を行うWEBサーバに対して行うものである、としてもよい。
【0078】
これによれば、上述の機密情報管理装置の運用を不要とし、かつ、秘密鍵や証明書といった機密情報を、期限付きでの使い捨ての形態で生成、管理することも可能であり、よりセキュアかつ効率的に秘密鍵等の管理を行うことができる。
【0079】
また、本実施形態の証明書管理装置において、前記演算装置は、前記ユーザIDの管理装置を監視して、前記ユーザ情報の変更または前記証明書の期限切れを特定した場合、当該ユーザに関する証明書の更新処理を行うものである、としてもよい。
【0080】
これによれば、上述のような期限付きでの管理形態をさらに精度良く運用することが可能となり、さらにセキュアかつ効率的な形で秘密鍵等の管理を行うことができる。
【0081】
また、本実施形態の証明書管理システムにおいて、前記証明書管理装置は、前記秘密鍵及び前記証明書の配信を、前記ブロックチェーンサービスにおける機密情報管理装置に行うものである、としてもよい。
【0082】
また、本実施形態の証明書管理システムにおいて、前記証明書管理装置は、前記秘密鍵の生成及び前記証明書の取得を、前記トランザクション生成機会ごとに実行し、前記秘密鍵及び前記証明書の配信を、前記ブロックチェーンサービスにおいて前記ユーザのログイン処理を行うWEBサーバに対して行うものである、としてもよい。
【0083】
また、本実施形態の証明書管理システムにおいて、前記証明書管理装置は、前記ユーザIDの管理装置を監視して、前記ユーザ情報の変更または前記証明書の期限切れを特定した場合、当該ユーザに関する証明書の更新処理を行うものである、としてもよい。
【0084】
また、本実施形態の証明書管理システムにおいて、前記ブロックチェーンサービスにおいて前記ユーザのログイン処理を行うWEBサーバであって、ブロックチェーンサービスのネットワークにアクセスする通信装置と、前記ユーザからのログイン要求に伴う、前記ユーザIDの管理装置での当該ユーザに関する認証処理に成功した場合、当該管理装置からトークンを取得する処理と、当該トークンに基づく前記秘密鍵及び前記証明書の取得要求を、前記秘密鍵及び前記証明書の管理する機密情報管理装置または前記証明書管理装置に行い、前記秘密鍵及び前記証明書を取得する処理と、前記秘密鍵及び前記証明書を用いて前記ユーザのトランザクションに電子署名する処理を実行する演算装置と、を有するWEBサーバを含むとしてもよい。
【0085】
また、本実施形態の証明書管理方法において、前記ブロックチェーンサービスにおいて前記ユーザのログイン処理を行うWEBサーバが、ブロックチェーンサービスのネットワークにアクセスする通信装置を備えて、前記ユーザからのログイン要求に伴う、前記ユーザIDの管理装置での当該ユーザに関する認証処理に成功した場合、当該管理装置からトークンを取得する処理と、当該トークンに基づく前記秘密鍵及び前記証明書の取得要求を、前記秘密鍵及び前記証明書の管理する機密情報管理装置または前記証明書管理装置に行い、前記秘密鍵及び前記証明書を取得する処理と、前記秘密鍵及び前記証明書を用いて前記ユーザのトランザクションに電子署名する処理を実行する、としてもよい。
【符号の説明】
【0086】
1 ネットワーク
10 証明書管理システム
100 ID管理サーバ(ユーザIDの管理装置)
101 ユーザ情報
110 証明書管理サーバ
111 秘密鍵
112 公開鍵
113 証明書
120 認証局サーバ
121 ユーザ情報
130 機密情報管理サーバ(機密情報管理装置)
140 WEBサーバ
150 分散台帳サーバ
151 スマートコントラクト
152 分散台帳
400 分散台帳システム
440 ネットワーク
501 CPU(演算装置)
502 メモリ
503 ストレージ
504 ネットワークインターフェイス(通信装置)
505 入出力装置
506 インターフェイス
507 ネットワーク