IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ヤフー株式会社の特許一覧

特開2024-179938情報処理装置、情報処理方法及び情報処理プログラム
<>
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図1
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図2
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図3
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図4
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図5
  • 特開-情報処理装置、情報処理方法及び情報処理プログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024179938
(43)【公開日】2024-12-26
(54)【発明の名称】情報処理装置、情報処理方法及び情報処理プログラム
(51)【国際特許分類】
   G06F 21/64 20130101AFI20241219BHJP
【FI】
G06F21/64
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023099282
(22)【出願日】2023-06-16
(71)【出願人】
【識別番号】500257300
【氏名又は名称】LINEヤフー株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】大神 渉
(72)【発明者】
【氏名】日暮 立
(72)【発明者】
【氏名】五味 秀仁
(72)【発明者】
【氏名】山口 修司
(57)【要約】
【課題】利用者の行動に関する証明書を適切に検証する。
【解決手段】本願にかかる情報処理装置は、利用者の行動に対する推薦者からの推薦情報に基づいて、利用者の行動に関する電子証明書を発行する情報処理装置であって、階層構造の電子証明書の階層構造を遡って検証対象となる対象証明書の内容を検証する検証部と、対象、対象証明書の内容が検証された旨の電子証明書を新たに発行する発行部とを備えることを特徴とする。
【選択図】図4
【特許請求の範囲】
【請求項1】
利用者の行動に対する推薦者からの推薦情報に基づいて、前記利用者の行動に関する電子証明書を発行する情報処理装置であって、
階層構造の電子証明書の階層構造を遡って検証対象となる対象証明書の内容を検証する検証部と、
前記対象証明書の内容が検証された旨の電子証明書を新たに発行する発行部と
を備えることを特徴とする情報処理装置。
【請求項2】
前記発行部は、前記対象証明書の内容が再検証可能な状態の電子証明書を新たに発行する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記発行部は、前記対象証明書の内容を検証可能な参照を含む電子証明書を新たに発行する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記発行部は、すべての属性に検証可能な参照を付与した電子証明書を新たに発行する
ことを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記参照の参照先の実体は、DIDドキュメントあるいはURIで識別されるウェブコンテンツや他の証明書といった検証可能文書である
ことを特徴とする請求項3に記載の情報処理装置。
【請求項6】
前記電子証明書は、前記参照のリンクにより、ツリー状又はグラフ状の構造を形成する
ことを特徴とする請求項3に記載の情報処理装置。
【請求項7】
前記発行部は、上位階層への参照を含む署名情報が記載されている電子証明書を新たに発行する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項8】
前記検証部は、検証ポリシと、前記対象証明書の内容を証明するための情報とに基づいて、前記対象証明書の内容を検証する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項9】
前記検証部は、電子証明書を階層的に検証するためのデータベースを持っており、証明対象の電子証明書を受領すると、前記データベースの階層構造を遡って検証対象となる対象証明書の内容が正しいか否かを検証する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項10】
利用者の行動に対する推薦者からの推薦情報に基づいて、前記利用者の行動に関する電子証明書を発行する情報処理装置が実行する情報処理方法であって、
階層構造の電子証明書の階層構造を遡って検証対象となる対象証明書の内容を検証する検証工程と、
前記対象証明書の内容が検証された旨の電子証明書を新たに発行する発行工程と
を含むことを特徴とする情報処理方法。
【請求項11】
利用者の行動に対する推薦者からの推薦情報に基づいて、前記利用者の行動に関する電子証明書を発行する情報処理装置に実行させるための情報処理プログラムであって、
階層構造の電子証明書の階層構造を遡って検証対象となる対象証明書の内容を検証する検証手順と、
前記対象証明書の内容が検証された旨の電子証明書を新たに発行する発行手順と
を情報処理装置に実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【0002】
従来、電子証明書等の各種の証明書の管理に関する技術が知られている。例えば、電子証明書の発行要求に応じて電子証明書を発行したり、設定に従って電子証明書を削除したりする技術が提供されている(例えば特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2022-153604号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の従来技術には、改善の余地がある。例えば、上記の従来技術では、要求や設定に応じて電子証明書の発行や削除を行っているものの、証明書を要求する主体者である利用者の行動を加味した証明書の発行が行われた際の証明書の検証の点については改善の余地がある。そのため、利用者の行動に関する証明書を適切に検証することが望まれている。
【0005】
本願は、上記に鑑みてなされたものであって、利用者の行動に関する証明書を適切に検証することができる情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本願にかかる情報処理装置は、利用者の行動に対する推薦者からの推薦情報に基づいて、前記利用者の行動に関する電子証明書を発行する情報処理装置であって、階層構造の電子証明書の階層構造を遡って検証対象となる対象証明書の内容を検証する検証部と、前記対象、対象証明書の内容が検証された旨の電子証明書を新たに発行する発行部とを備えることを特徴とする。
【発明の効果】
【0007】
実施形態の一態様によれば、利用者の行動に関する証明書を適切に検証することができるといった効果を奏する。
【図面の簡単な説明】
【0008】
図1図1は、実施形態に係る情報処理の一例を示す図である。
図2図2は、電子証明書の内容に含まれる検証可能な参照を説明する概念図である。
図3図3は、実施形態に係る証明書生成システムの構成例を示す図である。
図4図4は、実施形態に係る情報処理装置の構成例を示す図である。
図5図5は、情報処理装置が実行する情報処理の流れの一例を示すフローチャートである。
図6図6は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0009】
以下に、本願に係る情報処理装置、情報処理方法、情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0010】
(実施形態)
〔1.情報処理〕
以下では、図1を用いて、証明書生成システム1が行う情報処理の一例について説明する。まず、図1を用いて、証明書生成システム1の各装置間での情報の送受信を含む証明書生成システム1における処理の概要を説明する。以下では、証明書生成システム1が証明の発行を要求する利用者(「主体者」ともいう)の行動に関する証明について、主体者の行動に対して推薦する他の利用者(「推薦者」ともいう)からの推薦情報に基づいて、主体者の行動に関する電子証明書の発行可否を決定する場合を示す。ここでいう推薦者は、例えば主体者の行動情報に対して知見を持っていて推薦する利用者等である。
【0011】
なお、ここでいう主体者及び推薦者は、ある証明書の発行における各利用者を明示的に区別して説明するための用語に過ぎず、ある証明書の発行における主体者が他の証明書の発行においては推薦者となり得る。また、ある証明書の発行における推薦者が他の証明書の発行においては主体者となり得る。例えば、ある内容の証明書が発行済みの利用者が、同内容の証明書の発行を要求する利用者(主体者)に対する推薦者となる。
【0012】
また、以下では、利用者が証明書の発行を要求する主体者であるか、推薦者であるかに応じて、その人(利用者)が利用する装置を主体者装置10と推薦者装置20と区別して説明するが、その区別は装置(利用者装置)を利用する人の役割を示すための区別である。そのため、例えば、証明書の発行を要求する主体者が他の主体者に対する推薦者がとなる場合、その主体者(利用者)が利用する主体者装置10は、その主体者が推薦者として利用する推薦者装置20となる。また、推薦者が証明書の発行を要求する主体者となる場合、その推薦者(利用者)が利用する推薦者装置20は、その推薦者が主体者として利用する主体者装置10となる。また、証明書生成システム1が発行する電子証明書は、証明の対象となる主体者の行動やその行動の能力を証明するものであれば、どのような形式であってもよい。
【0013】
〔1-1.証明書生成システムにおける処理概要〕
ここから、図1を用いて、実施形態に係る情報処理の一例について説明する。図1は、実施形態に係る情報処理の一例を示す図である。図1では証明書生成システム1が主体者(人)の行動または行動に関する能力について証明書の発行する場合の情報処理の流れの一例を示す。図1に示す例では、証明書生成システム1は推薦者からの主体者の行動情報に関する評価を参考として主体者に関する証明を行う。
【0014】
まず、主体者(subject)となる利用者(「主体者SB」とする)は、主体者SBの行動情報に関する証明の発行を証明書生成システム1に要求する(ステップS1)。例えば、主体者SBは、主体者SBの行動結果履歴に関する証明の発行を証明書生成システム1に要求する。主体者SBは、証明の対象となる行動(「証明対象」ともいう)に関する電子証明書の発行を証明書生成システム1に要求する。例えば、主体者SBは、主体者SBが利用する主体者装置10を操作して、主体者SBに対して証明対象に関する証明の発行要求を示す情報(リクエスト情報)を証明者装置200に送信する。
【0015】
図1では、主体者SBが大食いコンテストで1時間にラーメン10杯食べたことを証明対象の一例として説明する。なお、証明対象は、上記に限らず主体者の行動に関するものであればどのような対象であってもよい。例えば、証明対象は、主体者の行動能力やスキル等に関するものであってもよい。例えば、証明対象は、Java(登録商標)等の任意のプログラミング言語に関するプログラミング能力が所定のレベル(例えばプロレベル等)であること等であってもよい。
【0016】
主体者SBに対して証明対象に関する証明を行う証明者(certifier)は、主体者SBからの主体者SBに対して証明対象に関する証明の発行要求を受け付ける。例えば、証明者が利用する証明者装置200は、主体者SBに対して証明対象に関する証明の発行要求を示す情報(リクエスト情報)を主体者装置10から受信する。図1では、証明者装置200は、主体者SBが大食いコンテストで1時間にラーメン10杯食べたことを証明対象とする証明の発行要求を示すリクエスト情報を受信する。なお、証明者と後述する発行者は一体(同一)であってもよいが、この点については後述する。
【0017】
そして、証明者は、主体者SBから受け付けた証明の発行要求を示す情報(発行要求情報)を、証明書を発行する機能を有する発行者(issuer)へ提供することにより、発行者に証明書の発行に関する処理を要求する(ステップS2)。例えば、証明者装置200は、証明の発行要求を行った主体者を示す情報、証明対象を示す情報等を含む発行要求情報を、発行者が利用する発行者装置100へ送信する。図1では、証明者装置200は、主体者が主体者SBであり、証明対象が大食いコンテストで1時間にラーメン10杯食べたことであることを示す発行要求情報を発行者装置100へ送信する。これにより、発行者装置100は、主体者が主体者SBであり、証明対象が大食いコンテストで1時間にラーメン10杯食べたことであることを示す発行要求情報を取得する。
【0018】
そして、発行者は、証明対象に関する推薦者(endorser)として選定された利用者(「推薦者ED」とする)に証明対象の推薦情報の提供を要求する(ステップS3)。例えば、発行者装置100は、利用者群から推薦者を選定する。この場合、発行者装置100は、各利用者の利用者情報を参照し、主体者SBの証明対象について推薦者となる利用者を選定する。なお、推薦者の選定は、主体者SBが行なってもよい。この場合、発行者装置100は、主体者SBが選定した推薦者を示す情報を、主体者SBが利用する主体者装置10または証明者装置200から受信する。
【0019】
図1では、発行者装置100は、各利用者のうち、主体者SBが参加した大食いコンテストに参加した利用者または大食いコンテストの会場にいた利用者を推薦者EDとして選定する。発行者装置100は、選定した推薦者EDに対して証明対象の推薦情報の提供を要求する。発行者装置100は、主体者SBが大食いコンテストで1時間にラーメン10杯食べたことを示す推薦情報の提供を推薦者EDに要求する。図1では、発行者装置100は、大食いコンテストで主体者SBが1時間にラーメン10杯食べたことが推薦対象であることを示す情報を、推薦者EDが利用する推薦者装置20に送信することにより、推薦者EDに推薦情報の提供を要求する。
【0020】
そして、推薦者は、情報提供が要求された推薦対象に関する推薦情報を発行者に提供する(ステップS4)。例えば、推薦者EDは、推薦者EDが利用する推薦者装置20を操作して、推薦情報を発行者装置100に送信する。図1では、推薦者装置20は、大食いコンテストで主体者SBが1時間にラーメン10杯食べたことを示す推薦情報を発行者装置100に送信する。例えば、推薦者装置20は、大食いコンテストで主体者SBが1時間にラーメン10杯食べたことを目撃したことを示す推薦情報を発行者装置100に送信する。例えば、推薦者装置20は、大食いコンテストで推薦者EDが撮像した画像や文字情報等、主体者SBが1時間にラーメン10杯食べたことを示す推薦情報を発行者装置100に送信する。
【0021】
そして、発行者装置100は、主体者の行動に対する推薦者からの推薦情報に基づいて、主体者の行動に関する電子証明書を発行するか否かを決定する(ステップS5)。例えば、発行者装置100は、利用者の行動に関する証明を行うためのポリシである証明ポリシに関する情報(証明ポリシ情報)を用いて、主体者の行動に関する電子証明書を発行するか否かを決定する。発行者装置100は、主体者の証明対象に対応する証明ポリシと、推薦者から取得した推薦情報とに基づいて、主体者に対して証明対象に関する電子証明書を発行するか否かを決定する。
【0022】
発行者装置100は、任意の手法により取得した証明ポリシを用いて、主体者に対して証明対象に関する電子証明書を発行するか否かを決定する。例えば、発行者装置100は、ルール等により定義された証明ポリシを用いて、主体者に対して証明対象に関する電子証明書を発行するか否かを決定する。図1では、発行者装置100は、大食いコンテストで1時間にラーメン10杯食べたことの証明には推薦者が5人以上必要であることを示す証明ポリシを基に、主体者SBの証明対象の証明ポリシを推薦者が5人以上であることに決定する。なお、上記は一例に過ぎず、発行者装置100は、機械学習のアプローチなどを使って、データに基づく判断(データドリブン)で動的に証明ポリシを決定してもよいが、この点については後述する。
【0023】
例えば、発行者装置100は、証明の内容及び推薦者の推薦内容が証明ポリシを満たす場合、主体者の電子証明書を発行すると決定する。図1では、発行者装置100は、主体者SBが1時間にラーメン10杯食べたことを示す推薦情報を5人以上の推薦者EDから取得した場合、証明ポリシを満たすと決定し、主体者SBが1時間にラーメン10杯食べたことに関する電子証明書(「電子証明書EC」とする)を発行すると決定する。この場合、発行者装置100は、主体者SBの電子証明書ECを発行し、発行した電子証明書ECを証明者装置200へ送信する(ステップS6)。
【0024】
発行者装置100から電子証明書ECを受信した証明者装置200は、発行要求元である主体者SBが利用する主体者装置10へ証明書発行に関する通知を行う(ステップS7)。図1では、証明者装置200は、大食いコンテストで主体者SBが1時間にラーメン10杯食べたことを証明する電子証明書ECが発行されたことを主体者SBに通知する。例えば、証明者装置200は、電子証明書ECを主体者装置10へ送信する。
【0025】
なお、発行者装置100は、証明の内容及び推薦者の推薦内容が証明ポリシを満たさない場合、主体者の電子証明書を発行しないと決定する。図1では、発行者装置100は、主体者SBが1時間にラーメン10杯食べたことを示す推薦情報を5人以上の推薦者EDから取得できなかった場合、証明ポリシを満たさないと決定し、主体者SBが1時間にラーメン10杯食べたことに関する電子証明書を発行しないと決定する。この場合、発行者装置100は、電子証明書を発行しないことを通知してもよい。例えば、発行者装置100は、主体者SBが1時間にラーメン10杯食べたことについて、電子証明書を発行しないことを示す情報を証明者装置200または主体者装置10へ送信する。
【0026】
〔1-2.効果、限定解除等〕
このように、証明書生成システム1は、主体者(人)の行動または行動に関する能力について証明書の発行する証明者発行サービスを行う。発行者装置100は、利用者の行動に対する推薦者からの推薦情報に基づいて、利用者の行動に関する電子証明書を発行するか否かを決定することにより、利用者の行動に関する証明書の発行可否を適切に決定することができる。
【0027】
上述したように、証明書生成システム1は、利用者の行動に関する証明発行要求を受け付け、行動に対応する推薦者から確認を受領した場合は、電子証明書を発行する。例えば、証明書生成システム1では、発行者が推薦者を選定する。また、証明書生成システム1では、証明内容によって、必要となる推薦者の数や推薦者が有する資格等、証明ポリシ(署名所の発行許可の条件)が変化する。例えば、証明書生成システム1では、証明者が証明ポリシとするルールを設定してもよい。
【0028】
また、証明書生成システム1は、証明の内容に対応する行動を行った実績がある利用者を推薦者として選定してもよい。例えば、証明書生成システム1は、証明の内容に対応する行動のプロフェッショナルである証明がある利用者を推薦者として選定してもよい。例えば、証明書生成システム1は、証明の内容に対応する行動を所定回数以上行った利用者を推薦者として選定してもよい。例えば、証明書生成システム1は、証明の内容に対応する技術ブログ等の投稿回数等が所定回数以上である利用者を推薦者として選定してもよい。
【0029】
また、証明書生成システム1は、証明の内容に対応する行動を主体者が行った日時に、その主体者の周囲(例えば主体者の位置情報が示す位置から所定範囲内等)にいた利用者を推薦者として選定してもよい。証明書生成システム1では、証明者が推薦者を決定してもよい。例えば、証明書生成システム1は、主体者と血縁や面識がある等、主体者に近い利用者(関係者)を除外し、関係者を除外した利用者から推薦者を選定してもよい。例えば、証明書生成システム1は、証明者から推奨者の候補情報を取得し、取得した候補情報が示す利用者から推薦者を選定してもよい。
【0030】
また、証明書生成システム1は、主体者経由で推薦者から推薦を受け付けてもよい。この場合、例えば、証明書生成システム1は、例えばQRコード(登録商標)等の所定のコード情報を主体者に提供し、主体者が提供されたQRコード等の所定のコード情報を、その主体者の周囲にいる利用者(推薦者)に読み込んで推薦をもらってもよい。この場合、証明書生成システム1は、QRコード等の所定のコード情報を推薦者装置20により読み込んだ推薦者の推薦者装置20から取得した推薦情報を用いて、利用者の行動に関する証明書の発行可否を決定してもよい。
【0031】
なお、図1に示す例では、証明書生成システム1は、発行者と証明者に分離する形態を説明したが、形態はこれに限られない。すなわち、上述した処理及び装置構成は一例に過ぎず、証明書生成システム1は、所望の情報処理が実行可能であれば、任意に装置構成であってもよい。例えば、発行者と証明者とが同じ主体である場合、発行者装置100と証明者装置200とは一体であってもよい。この場合、発行機能を有する情報処理装置が証明者としても機能する。
【0032】
また、証明書生成システム1では、証明者が証明内容を推薦者からの推薦情報に基づいて決定してもよい。また、証明書生成システム1では、証明の方法を証明ポリシに応じて決定する。また、証明書生成システム1では、行動情報のトラスト(信用)性の評価及び検証を多段に実施してもよい。例えば、証明書生成システム1では、Aさんが「プロレベルのセキュリティ専門性を持つ」の証明については「A以外の3人のセキュリティ分野の推薦お墨付きが必要」という証明ポリシの場合、その3人の認証とお墨付き許可の意思表示、「専門性と資格と学歴」が必要とすると、その3人の「専門性と資格と学歴」の情報を検証する。
【0033】
証明書生成システム1では、検証可能な情報があれば、多段に深掘りして検証可能なフレームワークを提供する。従来は「鍵」に関してトラストチェーンという考え方があったが、証明書生成システム1では、発行者は、証明内容及び推薦者の推薦内容が証明ポリシを満たすか否かを検証する機能(能力)を有する。
【0034】
上述したように、証明書生成システム1は、行動履歴(実績)、行動能力等の人の行動情報を適切に検証可能な形式で流通するシステムである。例えばX.509、SAML(Security Assertion Markup Language)等の従来の証明書は、人の認証情報、属性情報、権限情報などを記載し証明するスキーマを規定しているが、行動情報に関して記載し、検証する方法はない。一方で、証明書生成システム1は、利用者の行動に関する証明書の発行可否を適切に決定することができる。そのため、証明書生成システム1は、行動に関するトラスト(信用)情報を階層的に評価し、検証できる仕組みを導入することができる。
【0035】
例えば、トラスト(信用)情報を階層的に評価する点については以下のような適用例が挙げられる。まず、Java等のプログラミングスキルの証明を対象とした場合を一例として説明する。この場合、利用者(主体者)自身のスキルを証明するために、推薦者(endorser)自身の推薦(endorsement)を得る場合、その推薦者自身のプログラムスキルの検証可能としたいとする場合において、これ自体もポリシの一つとして、証明書生成システム1が推薦者のスキルの証明を行ってもよい。すなわち、証明書生成システム1では、推薦者(endorser)レベルにおいても証明を可能とすることで、元の利用者(主体者)のスキルの証明について、深くより信頼性を高めることができる。また、例えば、証明書生成システム1では、元の利用者(主体者)と同様に、推薦者(endorser)のスキルを証明する情報として、また別の推薦者(endorser)の情報が用いられてもよいし、証明したという証明書のID(証明書ID等)が含まれてもよい。また、例えば、証明書生成システム1は、階層を何層までにするか等の証明の深さ(階層数等)に対してポリシを設定してよい。また、証明書生成システム1は、利用者(主体者)自身がその主体者の推薦者になることを禁止してもよい。例えば、証明書生成システム1は、推薦者(endorser)が元の利用者(主体者)になることを禁止するポリシが設定されてもよい。証明書生成システム1は、推薦者に対して所定のインセンティブを提供してもよい。この場合、証明書生成システム1は、例えば証明を依頼する主体者から証明に関する料金(手数料等)を受け取り、主体者が支払った料金(手数料等)を原資として推薦者に対してポイント等の所定のインセンティブを提供してもよい。
【0036】
〔1-3.階層的トラスト構築〕
一方で、ブロックチェーン技術によって実現した分散型インターネットであるWeb3の世界観において「推薦」は検証が必要である。例えば、「証明書は本物か?」を検証する必要がある。また、「推薦した人(推薦者)、証明した人(証明者)、電子証明書(証明書)を発行した人(発行者)は適切な人か?」を検証する必要がある。例えば、大学教授からの推薦の場合、推薦証明書を受け取って検証する人は、「このIDは学生の担当教官か?」、「この先生は大学に所属する教官か?」といったことを検証する必要がある。
【0037】
そこで、本実施形態では、図2に示すように、電子証明書に検証可能な参照をつける。図2は、電子証明書の内容に含まれる検証可能な参照を説明する概念図である。図2の(A)に示すように、電子証明書は、参照のリンクにより、ツリー状又はグラフ状などの構造を形成する。例えば、電子証明書には、上位概念(上位階層)への参照を含む署名情報が記載される。参照先の実体は、DID(Decentralized Identifier)で識別される文書(DIDドキュメント)、あるいはURI(Uniform Resource Identifier)で識別されるウェブコンテンツや他の電子証明書などの検証可能文書である。
【0038】
図2の(B)に示す例において、DID controller(図中では「Controller」と表記)は、Subject(図中では「Sub」と表記)に対してDID文書の変更が許可されたエンティティである。例えば、鍵の侵害などに対応してDIDを新たに発行したりする。概ねcontrollerがidentityを確立する主体となる。
【0039】
発行者装置100は、DIDそのものだけでなくすべての属性に参照を付与する。また、参照が付与された電子証明書では、それらをまとめて検証できる。そのため、検証プロセスを省略できる。
【0040】
例えば、「○○大学のAA教授」は「セキュリティの専門家」であり、「研究室に所属しているBさんを推薦している」という内容の場合、本来的には3回(以上)の署名検証が必要だが、必要な検証プロセスをお墨付き事業者(発行者)が肩代わりして、お墨付き事業者(発行者)による検証を信頼する電子証明書が発行される。また、再検証が必要な事項は検証可能な状態の電子証明書が発行される。
【0041】
本実施形態では、お墨付き事業者(発行者)は、階層構造を遡って電子証明書を検証してその結果の電子証明書を発行する。前提としてお墨付き事業者(発行者)は、電子証明書を階層的に検証するためのデータベースを持っており、証明対象の電子証明書を受領すると、データベースの階層構造を遡って検証対象となる電子証明書(対象証明書)の内容が正しいか否かを検証して、その結果の「新たな」電子証明書を発行する。
【0042】
例えば、図1に示すように、発行者装置100は、検証者(verifier)のポリシである検証ポリシを取得する(ステップS11)。例えば、発行者装置100は、検証者から検証ポリシの入力又は設定登録を受け付けてもよいし、検証者装置(図示省略)から検証ポリシを受信してもよい。なお、発行者装置100は、検証ポリシを事前設定していてもよい。また、検証ポリシの内容は、電子証明書を検証する機能を有する検証者が検証を所望する内容又は階層(例えば、所属する大学など)を示す情報であってもよい。
【0043】
続いて、発行者装置100は、階層構造を形成する電子証明書を取得する(ステップS12)。なお、発行者装置100は、他の発行者装置で発行された電子証明書を取得してもよいし、自身が発行した(又は発行予定の)電子証明書を取得してもよい。
【0044】
続いて、発行者装置100は、電子証明書の階層構造に含まれる検証対象となる電子証明書(対象証明書)を特定する(ステップS13)。なお、検証対象となる電子証明書(対象証明書)は、検証ポリシに規定されていてもよい。また、発行者装置100は、検証対象となる電子証明書の内容又はカテゴリの指定又は事前設定に基づいて、階層構造の電子証明書の階層構造を遡って検証対象となる電子証明書(対象証明書)を特定してもよい。また、発行者装置100は、電子証明書を提示する相手(検証者)が判明している場合には、電子証明書を提示する相手(検証者)に応じて検証対象となる電子証明書(対象証明書)を特定してもよい。
【0045】
続いて、発行者装置100は、電子証明書の内容を証明するための情報を取得する(ステップS14)。このとき、発行者装置100は、検証対象となる電子証明書(対象証明書)の内容を証明するための情報のみを取得してもよいし、対象証明書に限らず階層構造に含まれる電子証明書ごとに当該電子証明書の内容を証明するための情報を取得してもよい。また、発行者装置100は、他の発行者装置で発行された電子証明書を取得した場合、その電子証明書の内容を証明するための情報を取得してもよい。なお、電子証明書の内容を証明するための情報は、DIDに限らず、他の電子証明書のURLや、各種ウェブコンテンツのURL等であってもよい。
【0046】
続いて、発行者装置100は、検証ポリシと、電子証明書の内容を証明するための情報とに基づいて、検証対象となる電子証明書(対象証明書)の内容を検証する(ステップS15)。すなわち、発行者装置100は、電子証明書の内容の証拠に基づいて、検証対象となる電子証明書(対象証明書)の内容の正当性を検証する。例えば、発行者装置100は、電子証明書の内容を証明するための情報として、他の電子証明書の内容や、各種ウェブコンテンツの検証を行う。なお、階層関係を特定するのも、検証の1つである。例えば、上位の情報の電子証明書が検証できれば、下位の情報の電子証明書の検証も行える。このとき、発行者装置100は、検証対象となる電子証明書(対象証明書)に限らず、顔層構造において、対象証明書までの経路上に存在する他の電子証明書の内容も検証してもよい。
【0047】
続いて、発行者装置100は、検証対象となる電子証明書(対象証明書)の内容の検証が行われた場合は、検証対象となる電子証明書(対象証明書)の内容が検証された旨の電子証明書を新たに発行する(ステップS16)。なお、発行者装置100により新たに発行された電子証明書の内容には、検証可能な参照が含まれる。すなわち、発行者装置100は、再検証が必要な事項が参照として検証可能な状態の電子証明書を新たに発行する。あるいは、発行者装置100は、図1のステップS6において、主体者SBの電子証明書ECを発行する際に、検証可能な参照をつけた電子証明書を発行してもよい。
【0048】
検証者は、電子証明書の階層構造を全て遡らなくても、発行者装置100により新たに発行された電子証明書の内容に含まれる検証可能な参照に基づいて信頼に足る検証を行うことができる。例えば、大学の所属が確認できれば十分であれば、大学の署名を検証して、それ以上遡る必要はない。すなわち、参照をたどり、再検証が必要な事項の階層まで遡って検証を行う。
【0049】
これにより、本実施形態では、お墨付き事業者(発行者)が検証者のポリシである検証ポリシに叶う検証を代理するお墨付きを行うシステムを実現する。
【0050】
〔1-4.参照(索引)情報を検証するユースケース〕
発行者装置100は、以下の事柄を可能な限り妥当と考えられる方法で検証する。例えば、発行者装置100は、検証した情報を、代理検証者であるお墨付き事業者(発行者)が作った新たな電子証明書に記述してもよい。
【0051】
(1)動画・画像(事実の確認)
発行者装置100は、自動で検証する場合、電子証明書の画像認識及び/又はトラッキングを行う。あるいは、AI(Artificial Intelligence:人工知能)による機械的処理を行う。また、発行者装置100は、「大食いを行った」という電子証明書を検証する場合、実際に主体者が大食いを行ったお店や電子証明書の内容の妥当性などを検証する。
【0052】
(2)証明書・ドキュメントなど(真正性の検証)
発行者装置100は、電子証明書のツリー構造(又はグラフ構造)をたどり、検証対象の電子証明書(対象証明書)の内容の妥当性を検証する。例えば、電子証明書の内容に含まれる大学が間違いなく実在しているか(実在の確認)、などを検証する。
【0053】
(3)ニュース
発行者装置100は、電子証明書の内容に含まれる人物がニュースの著者である、あるいは当事者である、などを検証する。また、発行者装置100は、ニュースに含まれる顔写真が証明書のものと同一か、あるいは人物の所属などが一致するかなどを検証する。
【0054】
(4)コンテンツ(著作物)
発行者装置100は、コンテンツと電子証明書の著者氏名・近影などが一致するかを検証する。例えば、発行者装置100は、GitHubアカウントの所持を確認する。
【0055】
(5)音楽
発行者装置100は、電子証明書の内容に含まれる人物が音楽の著作者である、あるいは最近良く聞いている、昔ながらのファンであるなどを検証する。例えば、発行者装置100は、動画サイトなどにアップロードできる人であるか(認証連携など)を検証する。また、発行者装置100は、視聴履歴の確認を行う。
【0056】
〔2.証明書生成システムの構成〕
次に、図3を用いて、実施形態にかかる発行者装置100が含まれる証明書生成システム1の構成について説明する。図3は、実施形態にかかる証明書生成システム1の構成例を示す図である。証明書生成システム1は、主体者(人)の行動または行動に関する能力を証明する証明書生成システム(情報処理システム)である。
【0057】
図3に例示するように、実施形態にかかる証明書生成システム1には、主体者装置10と、推薦者装置20と、発行者装置100と、証明者装置200とが含まれる。これらの各種装置は、ネットワークN(例えば、インターネット)を介して、有線又は無線により通信可能に接続される。なお、図3に示した証明書生成システム1には、複数の主体者装置10や、複数の推薦者装置20や、複数の発行者装置100や、複数の証明者装置200が含まれてもよい。
【0058】
主体者装置10は、利用者(ユーザ)によって利用されるコンピュータである。例えば、主体者装置10は、証明者の発行を要求する主体者となる利用者が利用するデバイス(端末装置)である。主体者装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PCや、携帯電話機や、PDA等により実現される。図1は、主体者装置10がスマートフォンである場合を示す。なお、主体者装置10を主体者と表記する場合がある。すなわち、主体者を主体者装置10と読み替えることもできる。
【0059】
主体者装置10は、利用者の操作に応じて各種の処理を行うコンピュータである。主体者装置10は、利用者の行動に関する証明の発行要求を証明者装置200等の外部装置へ行う。例えば、主体者装置10は、利用者の操作に応じて、証明の発行を要求する情報を証明者装置200等の外部装置へ送信する。
【0060】
利用者は、主体者装置10を操作することにより、各種コンテンツを閲覧したり、所望の商品等の任意の取引対象を購入したりするための各種の行動を行う。主体者装置10は、利用者の行動に関する情報を収集する。主体者装置10は、収集した利用者の行動に関する情報を発行者装置100、証明者装置200等の外部装置へ送信する。
【0061】
推薦者装置20は、利用者(ユーザ)によって利用されるコンピュータである。例えば、推薦者装置20は、証明書の発行を要求した主体者の行動に対する推薦を行う推薦者となる利用者が利用するデバイス(端末装置)である。推薦者装置20は、例えば、スマートフォンや、タブレット型端末や、ノート型PCや、携帯電話機や、PDA等により実現される。図1は、推薦者装置20がスマートフォンである場合を示す。なお、推薦者装置20を推薦者と表記する場合がある。すなわち、推薦者を推薦者装置20と読み替えることもできる。
【0062】
推薦者装置20は、利用者の操作に応じて各種の処理を行うコンピュータである。推薦者装置20は、利用者の行動に関する推薦者の推薦内容を示す推薦情報を発行者装置100、証明者装置200等の外部装置へ送信する。推薦者装置20は、利用者に関する情報を収集する。推薦者装置20は、収集した利用者に関する情報を発行者装置100、証明者装置200等の外部装置へ送信する。推薦者装置20は、発行者装置100からの要求に対応する利用者に関する情報を、推薦情報として発行者装置100へ送信する。
【0063】
発行者装置100は、証明書の発行に関する各種の情報処理を行うサーバ装置(コンピュータ)である。発行者装置100は、主体者の行動に関する電子証明書を発行するか否かを決定する情報処理装置である。発行者装置100は、証明書生成システム1の各装置から取得した各種の情報を用いて、主体者に対する証明書発行に関する各種の情報処理を行う。発行者装置100は、主体者の行動に関する電子証明書を発行するか否かの決定結果に基づく情報を証明者装置200へ送信する。
【0064】
証明者装置200は、証明に関する各種の情報処理を行うサーバ装置(コンピュータ)である。証明者装置200は、主体者からの要求に応じて、その主体者の証明に関する処理を実行する情報処理装置である。証明者装置200は、主体者装置10から要求を受信した場合、その要求に対応する主体者の行動に関する電子証明書を発行するか否かの決定を発行者装置100に依頼する。そして、証明者装置200は、主体者の行動に関する電子証明書を発行するか否かの決定結果に基づく情報を発行者装置100から受信する。なお、上述したように、証明者装置200は、発行者装置100と一体であってもよい。このように、証明書生成システム1は任意の装置構成であってもよく、上述した説明で証明書生成システム1を処理主体として説明した処理等の各種の処理は、証明書生成システム1に含まれる装置構成に応じて、証明書生成システム1のいずれの装置が行ってもよい。
【0065】
〔3.情報処理装置の構成〕
次に、図4を用いて、情報処理装置の一例である発行者装置100について説明する。図4は、実施形態に係る情報処理装置の構成例を示す図である。図4に示すように、発行者装置100は、通信部110と、記憶部120と、制御部130とを有する。
【0066】
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークNと有線または無線で接続され、例えば、主体者装置10、推薦者装置20、証明者装置200等との間で情報の送受信を行う。
【0067】
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部120は、証明書の発行に関する処理に用いる各種情報を記憶する。記憶部120は、主体者(利用者)に関する情報、推薦者に関する情報、証明ポリシに関する情報等を記憶する。記憶部120は、収集した各利用者の行動に関する情報を記憶する。例えば、記憶部120は、主体者が利用する主体者装置10から収集した各主体者に関する情報を記憶する。また、記憶部120は、収集した各推薦者に関する情報を記憶する。例えば、記憶部120は、推薦者が利用する推薦者装置20から収集した各推薦者に関する情報を記憶する。
【0068】
記憶部120は、証明に関する基準(証明ポリシ)の情報を記憶する。例えば、記憶部120は、証明の発行可否を決定するために用いる基準(証明ポリシ)を示す情報を記憶する。例えば、記憶部120は、証明の内容の各々に証明ポリシを対応付けた証明ポリシ一覧情報を記憶する。例えば、記憶部120は、発行する証明の種別等の内容(証明内容)を示す情報に、その証明内容の証明を発行するために必要な条件を示す情報(証明ポリシ)を対応付けた証明ポリシ一覧情報を記憶する。なお、記憶部120は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
【0069】
(制御部130)
図4の説明に戻って、制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、発行者装置100内部の記憶装置に記憶されている各種プログラム(証明書の発行可否の決定プログラム等の各種の情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0070】
図4に示すように、制御部130は、取得部131と、処理部132と、決定部133と、発行部134とを有し、以下に説明する情報処理の作用を実現または実行する。なお、制御部130の内部構成は、図4に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【0071】
(取得部131)
取得部131は、種々の情報を取得する。取得部131は、主体者装置10、推薦者装置20、証明者装置200等の外部装置から各種情報を取得する。また、取得部131は、記憶部120から各種情報を取得する。
【0072】
取得部131は、通信部110を介して、外部の情報処理装置から各種情報を受信する。取得部131は、受信した情報を記憶部120に格納する。取得部131は、主体者装置10、推薦者装置20、または証明者装置200から各種情報を受信する。取得部131は、主体者装置10から主体者に関する情報を受信する。取得部131は、推薦者装置20から推薦者に関する情報を受信する。取得部131は、証明者装置200から証明に関する情報を受信する。
【0073】
取得部131は、利用者の行動に関する証明の発行要求を示す発行要求情報を取得する。取得部131は、利用者の行動が可能な能力を有することを示す証明の発行要求を示す発行要求情報を取得する。取得部131は、証明に関する証明ポリシを示すポリシ情報を取得する。
【0074】
取得部131は、利用者が選定した推薦者を示す指定推薦者情報を取得する。取得部131は、推薦者の推薦情報を取得する。取得部131は、証明者が利用者から受け付けた証明の発行要求を示す発行要求情報を証明者装置200から取得する。また、取得部131は、証明の発行要求を示す発行要求情報を利用者の主体者装置10から取得してもよい。
【0075】
(処理部132)
処理部132は、証明書の発行に関する各種処理を実行する。処理部132は、主体者が要求する証明書の発行に関する処理を実行する。処理部132は、取得部131により取得された情報を用いて、証明書発行に関する処理を実行する。処理部132は、記憶部120に記憶された各種情報に基づいて、証明書発行に関する処理を実行する。
【0076】
処理部132は、情報の解析に関する種々の従来技術を適宜用いて、解析処理を実行する。処理部132は、推薦情報の解析に関する種々の従来技術を適宜用いて、解析処理を実行する。処理部132は、文字情報の解析に関する技術を適宜用いて、解析処理を実行する。処理部132は、形態素解析等の各種の文字列解析の技術を適宜用いて、解析処理を実行する。処理部132は、画像情報の解析に関する技術を適宜用いて、解析処理を実行する。処理部132は、画像認識、画像解析等の技術を適宜用いて、解析処理を実行する。処理部132は、画像認識、画像解析等の技術を適宜用いて、画像が示す状況等を推定する情報を生成する。処理部132は、推薦情報に含まれる文字解析や画像解析により、解析処理を実行する。
【0077】
処理部132は、各種情報を生成する生成処理を実行する生成部として機能する。処理部132は、決定部133による決定結果に応じて、証明書発行に関する処理を実行する。処理部132は、決定部133により電子証明書を発行すると決定された場合、電子証明書を生成する。例えば、処理部132は、決定部133により決定された証明の内容に対応する、電子証明書を生成する。例えば、処理部132は、記憶部120に記憶された情報に基づいて、電子証明書を生成する。処理部132は、主体者を示す情報、照明の対象となる行動等の証明の内容を示す情報等を含む電子証明書を生成する。
【0078】
処理部132は、証明書の生成に関する種々の従来技術を適宜用いて証明書を生成する。この場合、処理部132は、電子証明書の生成に関する種々の従来技術を適宜用いて、電子証明書を生成する。処理部132は、発行部134からの電子証明書の生成の要求に応じて、電子証明書を生成する。処理部132は、発行部134から電子証明書の生成が要求された場合、電子証明書を生成する。処理部132は、発行部134から要求された電子証明書の照明内容に対応する電子証明書を生成する。
【0079】
処理部132は、機械学習等の学習機能により、各種情報を学習する学習部として機能してもよい。例えば、処理部132は、学習モデル(モデル)を学習する学習処理を実行する。例えば、処理部132は、取得部131により取得された各種情報に基づいて、学習処理を実行する。処理部132は、外部の情報処理装置からの情報や記憶部120に記憶された情報に基づいて、処理部132は、学習により生成したモデルを記憶部120に格納する。例えば、処理部132は、証明ポリシの決定に用いる証明ポリシ決定モデルを学習してもよい。例えば、処理部132は、証明書の発行が要求された照明の内容を示す情報を入力として、入力された照明の内容に対応する証明ポリシを示す情報を出力する証明ポリシ決定モデルを学習する。例えば、処理部132は、過去に証明書の発行が要求された照明の内容を示す情報(入力情報)と、その照明の内容に対応する証明ポリシを示す情報(正解情報)との組み合わせである学習用データを用いて証明ポリシ決定モデルを学習する。この場合、処理部132は、学習用データ中の入力情報を証明ポリシ決定モデルに入力し、その入力情報に対応付けられた正解情報に対応する証明ポリシを示す情報を出力するように証明ポリシ決定モデルを学習する。
【0080】
なお、処理部132は、任意の機械学習の手法により証明ポリシ決定モデル等の各種のモデルを生成してもよい。すなわち、各モデルの生成は、機械学習に関する種々の従来技術を適宜用いて行われてもよい。例えば、モデルの生成は、SVM(Support Vector Machine)等の教師あり学習の機械学習に関する技術を用いて行われてもよい。また、例えば、モデルの生成は、教師なし学習の機械学習に関する技術を用いて行われてもよい。例えば、モデルの生成は、深層学習(ディープラーニング)の技術を用いて行われてもよい。例えば、モデルの生成は、DNN(Deep Neural Network)やRNN(Recurrent Neural Network)やCNN(Convolutional Neural Network)等の種々のディープラーニングの技術を適宜用いて行われてもよい。
【0081】
なお、上記モデルの生成に関する記載は例示であり、モデルの生成は、取得可能な情報等に応じて適宜選択された学習手法により行われてもよい。例えば、処理部132は、発行可否の決定に用いる証明ポリシを決定するために用いる情報を出力する証明ポリシ決定モデルを学習可能であれば、どのような手法により証明ポリシ決定モデルの生成を行ってもよい。
【0082】
(決定部133)
決定部133は、種々の情報を決定する決定処理を実行する。決定部133は、決定処理により決定した情報を記憶部120に格納する。例えば、決定部133は、取得部131により取得された各種情報に基づいて、決定処理を実行する。例えば、決定部133は、処理部132による処理結果に基づいて、決定処理を実行する。決定部133は、処理部132による解析結果を用いて、決定処理を実行する。決定部133は、処理部132による推薦情報の解析結果を用いて、証明ポリシを満たすか否かを決定する。
【0083】
例えば、決定部133は、外部の情報処理装置から受信された各種情報に基づいて、決定処理を実行する。決定部133は、主体者装置10、推薦者装置20、または証明者装置200から受信した情報を用いて、電子証明書の発行可否に関する決定処理を実行する。決定部133は、利用者が発行を要求した証明の内容を示す情報に基づいて、電子証明書の発行可否に関する決定処理を実行する。決定部133は、証明者装置200から受信した情報に基づいて、電子証明書の発行可否に関する決定処理を実行する。決定部133は、推薦者装置20から受信した推薦者の推薦情報に基づいて、電子証明書の発行可否に関する決定処理を実行する。
【0084】
決定部133は、利用者の行動に対する推薦者からの推薦情報に基づいて、利用者の行動に関する電子証明書を発行するか否かを決定する。決定部133は、発行要求情報が示す証明の内容に基づいて、利用者の電子証明書を発行するか否かを決定する。決定部133は、推薦情報が示す推薦者の推薦内容に基づいて、利用者の電子証明書を発行するか否かを決定する。
【0085】
決定部133は、発行要求情報と推薦情報とポリシ情報と基づいて、利用者の電子証明書を発行するか否かを決定する。決定部133は、発行要求情報が示す証明の内容及び推薦情報が示す推薦者の推薦内容と、ポリシ情報が示す証明ポリシとの比較に基づいて、利用者の電子証明書を発行するか否かを決定する。
【0086】
決定部133は、証明の内容及び推薦者の推薦内容が証明ポリシを満たす場合、利用者の電子証明書を発行すると決定する。決定部133は、証明の内容及び推薦者の推薦内容が証明ポリシを満たさない場合、利用者の電子証明書を発行しないと決定する。
【0087】
決定部133は、指定推薦者情報が示す利用者が選定した推薦者の推薦情報に基づいて、利用者の電子証明書を発行するか否かを決定する。決定部133は、推薦者を選定し、選定した推薦者の推薦情報に基づいて、利用者の電子証明書を発行するか否かを決定する。決定部133は、利用者の行動に関する証明者による証明を示す電子証明書を発行するか否かを決定する。決定部133は、利用者の行動に関する証明を示す電子証明書を発行するか否かを決定する。
【0088】
決定部133は、証明ポリシを決定する。例えば、決定部133は、記憶部120に記憶された証明ポリシ一覧情報を用いて、主体者が要求する証明の内容に対応する証明ポリシを決定する。例えば、決定部133は、証明ポリシ一覧情報中の証明の内容の各々と主体者が要求する証明の内容とを比較し、主体者が要求する証明の内容に対応する証明の内容に対応付けられた証明ポリシを、発行可否の決定に用いる証明ポリシ(対象証明ポリシ)に決定する。例えば、決定部133は、証明ポリシ決定モデルを用いて、主体者が要求する証明の内容に対応する証明ポリシを決定してもよい。この場合、決定部133は、主体者が要求する証明の内容を示す情報を証明ポリシ決定モデルに入力し、証明ポリシ決定モデルが出力した情報を用いてその主体者が要求する証明の内容の証明ポリシを決定する。例えば、決定部133は、主体者が要求する証明の内容を示す情報が入力された証明ポリシ決定モデルが出力した情報が示す証明ポリシを、その主体者が要求する証明の内容の証明ポリシとして用いると決定する。
【0089】
(発行部134)
発行部134は、各種情報を発行する。発行部134は、証明書に関する各種情報を発行する。発行部134は、証明に関する各種情報を発行する。例えば、発行部134は、証明書の発行に関する種々の従来技術を適宜用いて証明書を発行する。発行部134は、電子証明書の発行に関する種々の従来技術を適宜用いて、電子証明書を発行する。
【0090】
例えば、発行部134は、処理部132に電子証明書の生成を要求し、処理部132に電子証明書を生成させることにより、電子証明書を発行する。発行部134は、発行する電子証明書の証明の内容に対応する電子証明書の生成を処理部132に要求することにより、主体者が要求する証明の内容に対応する電子証明書を発行する。
【0091】
発行部134は、各種情報を提供する。発行部134は、取得部131により取得された情報を提供する。発行部134は、処理部132により解析された情報を提供する。発行部134は、処理部132により解析された解析結果を証明者装置200へ送信する。例えば、発行部134は、処理部132により生成された情報を証明者装置200へ送信する。発行部134は、決定部133により決定された情報を提供する。例えば、発行部134は、決定部133により生成された情報を提供する。
【0092】
発行部134は、証明に関する各種情報を提供する。発行部134は、電子証明書の発行可否に関する情報を提供する。発行部134は、通信部110を介して、外部の情報処理装へ各種情報を送信する。発行部134は、主体者装置10、推薦者装置20、または証明者装置200へ各種情報を送信する。発行部134は、発行可否の決定処理の結果を証明者装置200へ送信する。
【0093】
発行部134は、決定部133により利用者の電子証明書を発行すると決定された場合、利用者の電子証明書を発行する。発行部134は、利用者の電子証明書を発行した場合、発行した電子証明書を外部装置へ送信する。
【0094】
発行部134は、証明を行う主体となる証明者が利用する証明者装置200へ送信する。発行部134は、証明の発行要求を行った主体者である利用者が利用する主体者装置10へ送信する。
【0095】
発行部134は、決定部133により利用者の電子証明書を発行しないと決定された場合、電子証明書を発行しないことを示す情報を外部装置へ送信する。例えば、発行部134は、決定部133により利用者の電子証明書を発行しないと決定された場合、電子証明書を発行しないことを示す情報を証明者装置200へ送信する。例えば、発行部134は、決定部133により利用者の電子証明書を発行しないと決定された場合、電子証明書を発行しないことを示す情報を主体者装置10へ送信する。
【0096】
(検証部135)
検証部135は、利用者Uの行動に対する推薦者からの推薦情報に基づいて、利用者Uの行動に関する電子証明書を発行する情報処理装置であって、階層構造の電子証明書の階層構造を遡って検証対象となる対象証明書の内容を検証する。
【0097】
このとき、発行部134は、、対象証明書の内容が検証された旨の電子証明書を新たに発行する。例えば、発行部134は、対象証明書の内容が再検証可能な状態の電子証明書を新たに発行する。具体的には、発行部134は、対象証明書の内容を検証可能な参照を含む電子証明書を新たに発行する。また、発行部134は、すべての属性に検証可能な参照を付与した電子証明書を新たに発行する。
【0098】
また、参照の参照先の実体は、DIDドキュメントあるいはURIで識別されるウェブコンテンツや他の証明書といった検証可能文書である。また、電子証明書は、参照のリンクにより、ツリー状又はグラフ状の構造を形成する。このとき、発行部134は、上位階層への参照を含む署名情報が記載されている電子証明書を新たに発行する。
【0099】
また、検証部135は、検証ポリシと、対象証明書の内容を証明するための情報とに基づいて、対象証明書の内容を検証する。また、検証部135は、電子証明書を階層的に検証するためのデータベースを持っており、証明対象の電子証明書を受領すると、データベースの階層構造を遡って対象証明書の内容が正しいか否かを検証する。
【0100】
〔4.処理フロー〕
次に、図5を用いて、実施形態に係る情報処理装置である発行者装置100が実行する情報処理の手順について説明する。図5は、情報処理装置が実行する情報処理の流れの一例を示すフローチャートである。
【0101】
例えば、図5に示すように、発行者装置100の取得部131は、検証者のポリシである検証ポリシを取得する(ステップS101)。また、発行者装置100の取得部131は、証明対象となる階層構造の電子証明書を取得する(ステップS102)。
【0102】
続いて、発行者装置100の検証部135は、検証ポリシに基づいて、電子証明書の階層構造に含まれる検証対象となる電子証明書(対象証明書)を特定する(ステップS103)。続いて、発行者装置100の取得部131は、対象証明書の内容を証明するための情報を取得する(ステップS104)。続いて、発行者装置100の検証部135は、対象証明書の内容を証明するための情報に基づいて、検証対象となる対象証明書の内容を検証する(ステップS105)。
【0103】
続いて、発行者装置100の発行部134は、検証対象となる電子証明書(対象証明書)の内容が検証された旨の電子証明書を新たに発行する(ステップS106)。
【0104】
〔5.効果〕
上述してきたように、実施形態に係る情報処理装置(実施形態では「発行者装置100」。以下同じ)は、利用者Uの行動に対する推薦者からの推薦情報に基づいて、利用者Uの行動に関する電子証明書を発行する情報処理装置であって、階層構造の電子証明書の階層構造を遡って検証対象となる対象証明書の内容を検証する検証部135と、、対象証明書の内容が検証された旨の電子証明書を新たに発行する発行部134とを備えることを特徴とする。
【0105】
このとき、発行部134は、対象証明書の内容が再検証可能な状態の電子証明書を新たに発行する。
【0106】
例えば、発行部134は、対象証明書の内容を検証可能な参照を含む電子証明書を新たに発行する。
【0107】
また、発行部134は、すべての属性に検証可能な参照を付与した電子証明書を新たに発行する。
【0108】
また、参照の参照先の実体は、DIDドキュメントあるいはURIで識別されるウェブコンテンツや他の証明書といった検証可能文書である。
【0109】
また、電子証明書は、参照のリンクにより、ツリー状又はグラフ状の構造を形成する。
【0110】
このとき、発行部134は、上位階層への参照を含む署名情報が記載されている電子証明書を新たに発行する。
【0111】
検証部135は、検証ポリシと、対象証明書の内容を証明するための情報とに基づいて、対象証明書の内容を検証する。
【0112】
検証部135は、電子証明書を階層的に検証するためのデータベースを持っており、証明対象の電子証明書を受領すると、データベースの階層構造を遡って対象証明書の内容が正しいか否かを検証する。
【0113】
上述した各処理のいずれかもしくは組合せにより、本願に係る情報処理装置は、利用者Uの行動に関する証明書を適切に検証することができる。
【0114】
〔6.ハードウェア構成〕
また、上述してきた実施形態に係る発行者装置100等の情報処理装置は、例えば図6に示すような構成のコンピュータ1000によって実現される。図6は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
【0115】
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0116】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、所定の通信網を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを所定の通信網を介して他の機器へ送信する。
【0117】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
【0118】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0119】
例えば、コンピュータ1000が実施形態に係る発行者装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムまたはデータ(例えば証明ポリシ決定モデル)を実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムまたはデータ(例えば証明ポリシ決定モデル)を記録媒体1800から読み取って実行するが、他の例として、他の装置から所定の通信網を介してこれらのプログラムまたはデータ(例えば証明ポリシ決定モデル)を取得してもよい。
【0120】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0121】
〔7.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0122】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0123】
また、上述してきた実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0124】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
【符号の説明】
【0125】
1 証明書生成システム
10 主体者装置
20 推薦者装置
100 発行者装置(情報処理装置)
120 記憶部
131 取得部
132 処理部
133 決定部
134 発行部
135 検証部
200 証明者装置
図1
図2
図3
図4
図5
図6