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

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

▶ 一般財団法人日本医療技術財団の特許一覧

特開2024-57308情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法
<>
  • 特開-情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法 図1
  • 特開-情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法 図2
  • 特開-情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法 図3
  • 特開-情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法 図4
  • 特開-情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法 図5A
  • 特開-情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法 図5B
  • 特開-情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法 図5C
  • 特開-情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法 図6
  • 特開-情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024057308
(43)【公開日】2024-04-24
(54)【発明の名称】情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法
(51)【国際特許分類】
   G06F 21/64 20130101AFI20240417BHJP
   G06F 21/62 20130101ALI20240417BHJP
   H04L 9/32 20060101ALI20240417BHJP
【FI】
G06F21/64
G06F21/62 345
H04L9/32 200B
H04L9/32 200E
【審査請求】有
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2022163953
(22)【出願日】2022-10-12
(71)【出願人】
【識別番号】522400157
【氏名又は名称】一般財団法人日本医療技術財団
(74)【代理人】
【識別番号】110000671
【氏名又は名称】IBC一番町弁理士法人
(72)【発明者】
【氏名】加藤 数人
(57)【要約】
【課題】個人情報の管理者である送信者によって提供された正当な個人情報を、正当な受信者に対して安心安全かつ確実に開示可能とするための情報処理装置を提供する。
【解決手段】情報処理装置200は、対象情報を送信する送信者から対象情報の第1ハッシュ値と第1送信者署名とを取得し、対象情報の受領を希望する受信者から受信者公開鍵を取得して第1受信者署名を生成する。情報処理装置200は、送信者からプライベートチェーンを介して対象情報を取得した受信者によって生成された対象情報の第2ハッシュ値と、受信者によって受信者秘密鍵を用いて生成された第2受信者署名とを、受信者から取得する。情報処理装置200は、第1ハッシュ値と第2ハッシュ値とが一致しているか否かを検証し、第1受信者署名と第2受信者署名とが、一致しているか否かを検証する。
【選択図】図6
【特許請求の範囲】
【請求項1】
個人情報を管理および送信する送信者による個人情報の開示の同意に関する署名と、当該個人情報を受信する受信者による当該個人情報の受領に関する署名とに基づいて、パブリックチェーン上において、プライベートチェーンを用いた個人情報の開示の同意に関するトランザクションを処理するための情報処理装置であって、
前記送信者から、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する前記送信者の第1送信者署名と、を取得して前記パブリックチェーン上において記録されるように送信する第1取得部と、
前記対象情報を受信する受信者から、前記対象情報の受領に関する前記受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて前記第1受信者署名を生成する旨の指示とを含む情報取得申請を取得して前記パブリックチェーン上において記録されるように送信する第2取得部と、
前記第2取得部によって取得された前記情報取得申請に基づいて、前記受信者公開鍵を用いて前記第1受信者署名を生成して前記パブリックチェーン上において記録されるように送信する受信者署名生成部と、
前記送信者から前記プライベートチェーンを介して前記対象情報を取得した前記受信者によって生成された、前記対象情報の第2ハッシュ値と、前記受信者によって受信者秘密鍵を用いて生成された、前記対象情報の受領に関する前記受信者の第2受信者署名とを、前記受信者から取得する第3取得部と、
前記第1取得部によって前記送信者から取得された前記第1ハッシュ値と、前記第3取得部によって前記受信者から取得された前記第2ハッシュ値とが、一致しているか否かを検証するハッシュ検証部と、
前記受信者署名生成部によって生成された前記第1受信者署名と、前記第3取得部によって前記受信者から取得された前記第2受信者署名とが、一致しているか否かを検証する受信者署名検証部と、
を有する情報処理装置。
【請求項2】
前記受信者署名検証部は、前記第1受信者署名と前記第2受信者署名とが一致している場合、前記受信者が正当な受信者であると判断してその旨を前記パブリックチェーン上において記録されるように送信し、前記第1受信者署名と前記第2受信者署名とが一致していない場合、前記受信者が正当な受信者でないと判断してその旨を前記パブリックチェーン上において記録されるように送信する請求項1に記載の情報処理装置。
【請求項3】
前記ハッシュ検証部は、前記第1ハッシュ値と前記第2ハッシュ値とが一致している場合、前記受信者が取得した前記対象情報が正当な情報であると判断してその旨を前記パブリックチェーン上において記録されるように送信し、前記第1ハッシュ値と前記第2ハッシュ値とが一致していない場合、前記受信者が取得した前記対象情報が正当な情報でないと判断してその旨を前記パブリックチェーン上において記録されるように送信する請求項1または2に記載の情報処理装置。
【請求項4】
前記受信者に前記対象情報を取得させた前記送信者から、前記対象情報の開示の同意に関する前記送信者の第2送信者署名を生成するための送信者公開鍵を取得する第4取得部と、
前記第4取得部によって取得された前記送信者公開鍵を用いて前記第2送信者署名を生成する送信者署名生成部と、
前記第1取得部によって前記送信者から取得された前記第1送信者署名と、前記送信者署名生成部によって生成された前記第2送信者署名とが、一致しているか否かを検証する送信者署名検証部と、
をさらに有する請求項1または2に記載の情報処理装置。
【請求項5】
前記送信者署名検証部は、前記第1送信者署名と前記第2送信者署名とが一致している場合、前記送信者が正当な送信者であると判断してその旨を前記パブリックチェーン上において記録されるように送信し、前記第1送信者署名と前記第2送信者署名とが一致していない場合、前記送信者が正当な送信者でないと判断してその旨を前記パブリックチェーン上において記録されるように送信する請求項4に記載の情報処理装置。
【請求項6】
前記第1取得部は、前記送信者から、前記第1ハッシュ値および前記第1送信者署名とあわせて、前記対象情報に含まれる情報の属性または項目名を含むメタ情報をさらに取得する請求項1または2に記載の情報処理装置。
【請求項7】
前記第1取得部は、前記送信者から、前記対象情報を取得させる対象となる前記受信者を指定するための指定開示情報をさらに取得可能であり、
前記第2取得部は、前記第1取得部によって取得された前記指定開示情報において指定された前記受信者からの前記情報取得申請のみを有効な申請として処理する請求項1または2に記載の情報処理装置。
【請求項8】
前記ハッシュ検証部または前記受信者署名検証部によって実行された検証処理の結果に関する情報を、ネットワークを介して報知する報知部をさらに有する請求項1または2に記載の情報処理装置。
【請求項9】
前記報知部は、前記ハッシュ検証部または前記受信者署名検証部によって実行される検証処理がなされる期間に関する情報をさらに報知する請求項8に記載の情報処理装置。
【請求項10】
前記送信者から、前記対象情報の利用停止、消去、および第三者への提供禁止に関する前記送信者の第3送信者署名と、前記対象情報の利用停止、消去、および第三者への提供を禁止する旨の指示とを含む利用停止申請を取得する第5取得部と、
前記第5取得部によって取得された前記利用停止申請に基づいて、前記対象情報の開示が無効化された旨を前記パブリックチェーン上において記録されるように送信する利用停止部と、
をさらに有する請求項1または2に記載の情報処理装置。
【請求項11】
ネットワークを介して接続された送信者端末、情報処理装置、および受信者端末から構成され、個人情報を管理および送信する送信者による個人情報の開示の同意に関する署名と、当該個人情報を受信する受信者による当該個人情報の受領に関する署名とに基づいて、パブリックチェーン上において、プライベートチェーンを用いた個人情報の開示の同意に関するトランザクションを処理するための情報処理システムであって、
前記送信者端末は、
前記送信者の指示に基づいて、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する前記送信者の第1送信者署名と、を生成して送信する第1送信部を有し、
前記情報処理装置は、
前記送信者端末から送信された、前記第1ハッシュ値と、前記第1送信者署名と、を取得して前記パブリックチェーン上において記録されるように送信する第1取得部を有し、
前記受信者端末は、
前記受信者の指示に基づいて、前記対象情報の受領に関する前記受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて前記第1受信者署名を生成する旨の指示と、を含む情報取得申請を生成して送信する第2送信部を有し、
前記情報処理装置は、
前記受信者端末から送信された、前記受信者公開鍵と、前記情報取得申請と、を取得して前記パブリックチェーン上において記録されるように送信する第2取得部と、
前記第2取得部によって取得された前記情報取得申請に基づいて、前記受信者公開鍵を用いて前記第1受信者署名を生成して前記パブリックチェーン上において記録されるように送信する受信者署名生成部と、
をさらに有し、
前記送信者端末は、
前記送信者の指示に基づいて、前記受信者から送信された前記受信者公開鍵を用いて前記対象情報を暗号化し、暗号化された前記対象情報を、前記プライベートチェーンを介して、前記受信者端末に送信する第3送信部をさらに有し、
前記受信者端末は、
前記受信者の指示に基づいて、前記送信者から前記プライベートチェーンを介して受信した暗号化された前記対象情報を取得して、前記受信者の受信者秘密鍵を用いて暗号化された前記対象情報を復号化し、前記対象情報の第2ハッシュ値を生成するとともに、前記受信者秘密鍵を用いて前記対象情報の受領に関する前記受信者の第2受信者署名を生成して送信する第4送信部をさらに有し、
前記情報処理装置は、
前記受信者端末から送信された、前記第2ハッシュ値と、前記第2受信者署名と、を取得する第3取得部と、
前記第1取得部によって前記送信者端末から取得された前記第1ハッシュ値と、前記第3取得部によって前記受信者端末から取得された前記第2ハッシュ値とが、一致しているか否かを検証するハッシュ検証部と、
前記受信者署名生成部によって生成された前記第1受信者署名と、前記第3取得部によって前記受信者端末から取得された前記第2受信者署名とが、一致しているか否かを検証する受信者署名検証部と、
をさらに有する情報処理システム。
【請求項12】
前記送信者端末は、
前記送信者の指示に基づいて、前記対象情報の開示の同意に関する前記送信者の第2送信者署名を生成するための送信者公開鍵を送信する第5送信部をさらに有し、
前記情報処理装置は、
前記送信者端末から送信された、前記送信者公開鍵を取得する第4取得部と、
前記第4取得部によって取得された前記送信者公開鍵を用いて前記第2送信者署名を生成する送信者署名生成部と、
前記第1取得部によって前記送信者端末から取得された前記第1送信者署名と、前記送信者署名生成部によって生成された前記第2送信者署名とが、一致しているか否かを検証する送信者署名検証部と、
をさらに有する請求項11に記載の情報処理システム。
【請求項13】
前記送信者端末は、
前記送信者の指示に基づいて、前記対象情報の利用停止、消去、および第三者への提供禁止に関する前記送信者の第3送信者署名と、前記対象情報の利用停止、消去、および第三者への提供を禁止する旨の指示とを含む利用停止申請を生成して送信する第6送信部をさらに有し、
前記情報処理装置は、
前記送信者端末から送信された、利用停止申請を取得する第5取得部と、
前記第5取得部によって取得された前記利用停止申請に基づいて、前記対象情報の開示が無効化された旨を前記パブリックチェーン上において記録されるように送信する利用停止部と、
をさらに有する請求項11または12に記載の情報処理システム。
【請求項14】
個人情報を管理および送信する送信者による個人情報の開示の同意に関する署名と、当該個人情報を受信する受信者による当該個人情報の受領に関する署名とに基づいて、パブリックチェーン上において、プライベートチェーンを用いた個人情報の開示の同意に関するトランザクションを処理するための情報処理プログラムであって、
前記送信者から、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する前記送信者の第1送信者署名と、を取得して前記パブリックチェーン上において記録されるように送信する第1取得ステップと、
前記対象情報を受信する受信者から、前記対象情報の受領に関する前記受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて前記第1受信者署名を生成する旨の指示とを含む情報取得申請を取得して前記パブリックチェーン上において記録されるように送信する第2取得ステップと、
前記第2取得ステップにおいて取得された前記情報取得申請に基づいて、前記受信者公開鍵を用いて前記第1受信者署名を生成して前記パブリックチェーン上において記録されるように送信する受信者署名生成ステップと、
前記送信者から前記プライベートチェーンを介して前記対象情報を取得した前記受信者によって生成された、前記対象情報の第2ハッシュ値と、前記受信者によって受信者秘密鍵を用いて生成された、前記対象情報の受領に関する前記受信者の第2受信者署名とを、前記受信者から取得する第3取得ステップと、
前記第1取得ステップにおいて前記送信者から取得された前記第1ハッシュ値と、前記第3取得ステップにおいて前記受信者から取得された前記第2ハッシュ値とが、一致しているか否かを検証するハッシュ検証ステップと、
前記受信者署名生成ステップにおいて生成された前記第1受信者署名と、前記第3取得ステップにおいて前記受信者から取得された前記第2受信者署名とが、一致しているか否かを検証する受信者署名検証ステップと、
を情報処理装置に実行させるための情報処理プログラム。
【請求項15】
個人情報を管理および送信する送信者による個人情報の開示の同意に関する署名と、当該個人情報を受信する受信者による当該個人情報の受領に関する署名とに基づいて、パブリックチェーン上において、プライベートチェーンを用いた個人情報の開示の同意に関するトランザクションを処理するための情報処理装置において実行される情報処理方法であって、
前記送信者から、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する前記送信者の第1送信者署名と、を取得して前記パブリックチェーン上において記録されるように送信する第1取得ステップと、
前記対象情報を受信する受信者から、前記対象情報の受領に関する前記受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて前記第1受信者署名を生成する旨の指示とを含む情報取得申請を取得して前記パブリックチェーン上において記録されるように送信する第2取得ステップと、
前記第2取得ステップにおいて取得された前記情報取得申請に基づいて、前記受信者公開鍵を用いて前記第1受信者署名を生成して前記パブリックチェーン上において記録されるように送信する受信者署名生成ステップと、
前記送信者から前記プライベートチェーンを介して前記対象情報を取得した前記受信者によって生成された、前記対象情報の第2ハッシュ値と、前記受信者によって受信者秘密鍵を用いて生成された、前記対象情報の受領に関する前記受信者の第2受信者署名とを、前記受信者から取得する第3取得ステップと、
前記第1取得ステップにおいて前記送信者から取得された前記第1ハッシュ値と、前記第3取得ステップにおいて前記受信者から取得された前記第2ハッシュ値とが、一致しているか否かを検証するハッシュ検証ステップと、
前記受信者署名生成ステップにおいて生成された前記第1受信者署名と、前記第3取得ステップにおいて前記受信者から取得された前記第2受信者署名とが、一致しているか否かを検証する受信者署名検証ステップと、
を有する情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法に関する。
【背景技術】
【0002】
近年の情報処理技術の発達およびデジタル化の進展に伴い、個人情報の利用が著しく拡大している。たとえば、システムによって提供される各種サービスにおいて、各ユーザーの個人情報を有効に活用することによって、各ユーザーに適したサービスを提供することができ、サービスの内容や品質を向上させることができる。
【0003】
このような個人情報を適切に管理するための様々な技術が提案されている(たとえば、特許文献1参照)。特許文献1においては、管理対象の情報を、個人情報が含まれる機微データと、個人情報が含まれない非機微データとに分離し、非機微データについてはブロックチェーン上に記録して、機微データについてはブロックチェーン上に記録しない、あるいは、機微データに含まれる個人情報を匿名化または仮名化した上でブロックチェーン上に記録することが提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特表2022-511393号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、従来のシステムにおいては、各ユーザーが個人情報を提供する際に、自身の個人情報が、いつ、誰に、どのように開示されているか、また、開示する相手に個人情報が安全に送り届けられているかを正確に把握することができないことや個人情報を受け取る受信者が、個人情報を受け取っているのが当該受信者だけなのか、あるいは、他に誰が個人情報を受け取っているのかを把握することができず、これにより、各ユーザーが、個人情報の権利が守られ、プライバシーが適切に保護されているかどうかを把握することが難しいという問題がある。さらに、各ユーザーが提供した個人情報が第三者よって情報が書き換えられていない情報なのかどうかを確認することができず、有効に活用できていないという問題も生じている。
【0006】
本発明は、上記事情に鑑みてなされたものであり、個人情報の管理者である送信者によって提供された正当な個人情報を、正当な受信者に対して安心安全かつ確実に開示可能とするための情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法を提供する。
【課題を解決するための手段】
【0007】
上記目的は、下記の手段によって達成される。
【0008】
(1)個人情報を管理および送信する送信者による個人情報の開示の同意に関する署名と、当該個人情報を受信する受信者による当該個人情報の受領に関する署名とに基づいて、パブリックチェーン上において、プライベートチェーンを用いた個人情報の開示の同意に関するトランザクションを処理するための情報処理装置であって、前記送信者から、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する前記送信者の第1送信者署名と、を取得して前記パブリックチェーン上において記録されるように送信する第1取得部と、前記対象情報を受信する受信者から、前記対象情報の受領に関する前記受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて前記第1受信者署名を生成する旨の指示とを含む情報取得申請を取得して前記パブリックチェーン上において記録されるように送信する第2取得部と、前記第2取得部によって取得された前記情報取得申請に基づいて、前記受信者公開鍵を用いて前記第1受信者署名を生成して前記パブリックチェーン上において記録されるように送信する受信者署名生成部と、前記送信者から前記プライベートチェーンを介して前記対象情報を取得した前記受信者によって生成された、前記対象情報の第2ハッシュ値と、前記受信者によって受信者秘密鍵を用いて生成された、前記対象情報の受領に関する前記受信者の第2受信者署名とを、前記受信者から取得する第3取得部と、前記第1取得部によって前記送信者から取得された前記第1ハッシュ値と、前記第3取得部によって前記受信者から取得された前記第2ハッシュ値とが、一致しているか否かを検証するハッシュ検証部と、前記受信者署名生成部によって生成された前記第1受信者署名と、前記第3取得部によって前記受信者から取得された前記第2受信者署名とが、一致しているか否かを検証する受信者署名検証部と、を有する情報処理装置。
【0009】
(2)前記受信者署名検証部は、前記第1受信者署名と前記第2受信者署名とが一致している場合、前記受信者が正当な受信者であると判断してその旨を前記パブリックチェーン上において記録されるように送信し、前記第1受信者署名と前記第2受信者署名とが一致していない場合、前記受信者が正当な受信者でないと判断してその旨を前記パブリックチェーン上において記録されるように送信する上記(1)に記載の情報処理装置。
【0010】
(3)前記ハッシュ検証部は、前記第1ハッシュ値と前記第2ハッシュ値とが一致している場合、前記受信者が取得した前記対象情報が正当な情報であると判断してその旨を前記パブリックチェーン上において記録されるように送信し、前記第1ハッシュ値と前記第2ハッシュ値とが一致していない場合、前記受信者が取得した前記対象情報が正当な情報でないと判断してその旨を前記パブリックチェーン上において記録されるように送信する上記(1)または(2)に記載の情報処理装置。
【0011】
(4)前記受信者に前記対象情報を取得させた前記送信者から、前記対象情報の開示の同意に関する前記送信者の第2送信者署名を生成するための送信者公開鍵を取得する第4取得部と、前記第4取得部によって取得された前記送信者公開鍵を用いて前記第2送信者署名を生成する送信者署名生成部と、前記第1取得部によって前記送信者から取得された前記第1送信者署名と、前記送信者署名生成部によって生成された前記第2送信者署名とが、一致しているか否かを検証する送信者署名検証部と、をさらに有する上記(1)または(2)に記載の情報処理装置。
【0012】
(5)前記送信者署名検証部は、前記第1送信者署名と前記第2送信者署名とが一致している場合、前記送信者が正当な送信者であると判断してその旨を前記パブリックチェーン上において記録されるように送信し、前記第1送信者署名と前記第2送信者署名とが一致していない場合、前記送信者が正当な送信者でないと判断してその旨を前記パブリックチェーン上において記録されるように送信する上記(4)に記載の情報処理装置。
【0013】
(6)前記第1取得部は、前記送信者から、前記第1ハッシュ値および前記第1送信者署名とあわせて、前記対象情報に含まれる情報の属性または項目名を含むメタ情報をさらに取得する上記(1)または(2)に記載の情報処理装置。
【0014】
(7)前記第1取得部は、前記送信者から、前記対象情報を取得させる対象となる前記受信者を指定するための指定開示情報をさらに取得可能であり、前記第2取得部は、前記第1取得部によって取得された前記指定開示情報において指定された前記受信者からの前記情報取得申請のみを有効な申請として処理する上記(1)または(2)に記載の情報処理装置。
【0015】
(8)前記ハッシュ検証部または前記受信者署名検証部によって実行された検証処理の結果に関する情報を、ネットワークを介して報知する報知部をさらに有する上記(1)または(2)に記載の情報処理装置。
【0016】
(9)前記報知部は、前記ハッシュ検証部または前記受信者署名検証部によって実行される検証処理がなされる期間に関する情報をさらに報知する上記(8)に記載の情報処理装置。
【0017】
(10)前記送信者から、前記対象情報の利用停止、消去、および第三者への提供禁止に関する前記送信者の第3送信者署名と、前記対象情報の利用停止、消去、および第三者への提供を禁止する旨の指示とを含む利用停止申請を取得する第5取得部と、前記第5取得部によって取得された前記利用停止申請に基づいて、前記対象情報の開示が無効化された旨を前記パブリックチェーン上において記録されるように送信する利用停止部と、をさらに有する上記(1)または(2)に記載の情報処理装置。
【0018】
(11)ネットワークを介して接続された送信者端末、情報処理装置、および受信者端末から構成され、個人情報を管理および送信する送信者による個人情報の開示の同意に関する署名と、当該個人情報を受信する受信者による当該個人情報の受領に関する署名とに基づいて、パブリックチェーン上において、プライベートチェーンを用いた個人情報の開示の同意に関するトランザクションを処理するための情報処理システムであって、前記送信者端末は、前記送信者の指示に基づいて、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する前記送信者の第1送信者署名と、を生成して送信する第1送信部を有し、前記情報処理装置は、前記送信者端末から送信された、前記第1ハッシュ値と、前記第1送信者署名と、を取得して前記パブリックチェーン上において記録されるように送信する第1取得部を有し、前記受信者端末は、前記受信者の指示に基づいて、前記対象情報の受領に関する前記受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて前記第1受信者署名を生成する旨の指示と、を含む情報取得申請を生成して送信する第2送信部を有し、前記情報処理装置は、前記受信者端末から送信された、前記受信者公開鍵と、前記情報取得申請と、を取得して前記パブリックチェーン上において記録されるように送信する第2取得部と、前記第2取得部によって取得された前記情報取得申請に基づいて、前記受信者公開鍵を用いて前記第1受信者署名を生成して前記パブリックチェーン上において記録されるように送信する受信者署名生成部と、をさらに有し、前記送信者端末は、前記送信者の指示に基づいて、前記受信者から送信された前記受信者公開鍵を用いて前記対象情報を暗号化し、暗号化された前記対象情報を、前記プライベートチェーンを介して、前記受信者端末に送信する第3送信部をさらに有し、前記受信者端末は、前記受信者の指示に基づいて、前記送信者から前記プライベートチェーンを介して受信した暗号化された前記対象情報を取得して、前記受信者の受信者秘密鍵を用いて暗号化された前記対象情報を復号化し、前記対象情報の第2ハッシュ値を生成するとともに、前記受信者秘密鍵を用いて前記対象情報の受領に関する前記受信者の第2受信者署名を生成して送信する第4送信部をさらに有し、前記情報処理装置は、前記受信者端末から送信された、前記第2ハッシュ値と、前記第2受信者署名と、を取得する第3取得部と、前記第1取得部によって前記送信者端末から取得された前記第1ハッシュ値と、前記第3取得部によって前記受信者端末から取得された前記第2ハッシュ値とが、一致しているか否かを検証するハッシュ検証部と、前記受信者署名生成部によって生成された前記第1受信者署名と、前記第3取得部によって前記受信者端末から取得された前記第2受信者署名とが、一致しているか否かを検証する受信者署名検証部と、をさらに有する情報処理システム。
【0019】
(12)前記送信者端末は、前記送信者の指示に基づいて、前記対象情報の開示の同意に関する前記送信者の第2送信者署名を生成するための送信者公開鍵を送信する第5送信部をさらに有し、前記情報処理装置は、前記送信者端末から送信された、前記送信者公開鍵を取得する第4取得部と、前記第4取得部によって取得された前記送信者公開鍵を用いて前記第2送信者署名を生成する送信者署名生成部と、前記第1取得部によって前記送信者端末から取得された前記第1送信者署名と、前記送信者署名生成部によって生成された前記第2送信者署名とが、一致しているか否かを検証する送信者署名検証部と、をさらに有する上記(11)に記載の情報処理システム。
【0020】
(13)前記送信者端末は、前記送信者の指示に基づいて、前記対象情報の利用停止、消去、および第三者への提供禁止に関する前記送信者の第3送信者署名と、前記対象情報の利用停止、消去、および第三者への提供を禁止する旨の指示とを含む利用停止申請を生成して送信する第6送信部をさらに有し、前記情報処理装置は、前記送信者端末から送信された、利用停止申請を取得する第5取得部と、前記第5取得部によって取得された前記利用停止申請に基づいて、前記対象情報の開示が無効化された旨を前記パブリックチェーン上において記録されるように送信する利用停止部と、をさらに有する上記(11)または(12)に記載の情報処理システム。
【0021】
(14)個人情報を管理および送信する送信者による個人情報の開示の同意に関する署名と、当該個人情報を受信する受信者による当該個人情報の受領に関する署名とに基づいて、パブリックチェーン上において、プライベートチェーンを用いた個人情報の開示の同意に関するトランザクションを処理するための情報処理プログラムであって、前記送信者から、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する前記送信者の第1送信者署名と、を取得して前記パブリックチェーン上において記録されるように送信する第1取得ステップと、前記対象情報を受信する受信者から、前記対象情報の受領に関する前記受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて前記第1受信者署名を生成する旨の指示とを含む情報取得申請を取得して前記パブリックチェーン上において記録されるように送信する第2取得ステップと、前記第2取得ステップにおいて取得された前記情報取得申請に基づいて、前記受信者公開鍵を用いて前記第1受信者署名を生成して前記パブリックチェーン上において記録されるように送信する受信者署名生成ステップと、前記送信者から前記プライベートチェーンを介して前記対象情報を取得した前記受信者によって生成された、前記対象情報の第2ハッシュ値と、前記受信者によって受信者秘密鍵を用いて生成された、前記対象情報の受領に関する前記受信者の第2受信者署名とを、前記受信者から取得する第3取得ステップと、前記第1取得ステップにおいて前記送信者から取得された前記第1ハッシュ値と、前記第3取得ステップにおいて前記受信者から取得された前記第2ハッシュ値とが、一致しているか否かを検証するハッシュ検証ステップと、前記受信者署名生成ステップにおいて生成された前記第1受信者署名と、前記第3取得ステップにおいて前記受信者から取得された前記第2受信者署名とが、一致しているか否かを検証する受信者署名検証ステップと、を情報処理装置に実行させるための情報処理プログラム。
【0022】
(15)個人情報を管理および送信する送信者による個人情報の開示の同意に関する署名と、当該個人情報を受信する受信者による当該個人情報の受領に関する署名とに基づいて、パブリックチェーン上において、プライベートチェーンを用いた個人情報の開示の同意に関するトランザクションを処理するための情報処理装置において実行される情報処理方法であって、前記送信者から、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する前記送信者の第1送信者署名と、を取得して前記パブリックチェーン上において記録されるように送信する第1取得ステップと、前記対象情報を受信する受信者から、前記対象情報の受領に関する前記受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて前記第1受信者署名を生成する旨の指示とを含む情報取得申請を取得して前記パブリックチェーン上において記録されるように送信する第2取得ステップと、前記第2取得ステップにおいて取得された前記情報取得申請に基づいて、前記受信者公開鍵を用いて前記第1受信者署名を生成して前記パブリックチェーン上において記録されるように送信する受信者署名生成ステップと、前記送信者から前記プライベートチェーンを介して前記対象情報を取得した前記受信者によって生成された、前記対象情報の第2ハッシュ値と、前記受信者によって受信者秘密鍵を用いて生成された、前記対象情報の受領に関する前記受信者の第2受信者署名とを、前記受信者から取得する第3取得ステップと、前記第1取得ステップにおいて前記送信者から取得された前記第1ハッシュ値と、前記第3取得ステップにおいて前記受信者から取得された前記第2ハッシュ値とが、一致しているか否かを検証するハッシュ検証ステップと、前記受信者署名生成ステップにおいて生成された前記第1受信者署名と、前記第3取得ステップにおいて前記受信者から取得された前記第2受信者署名とが、一致しているか否かを検証する受信者署名検証ステップと、を有する情報処理方法。
【発明の効果】
【0023】
本実施形態の情報処理装置によれば、個人情報を管理および送信する送信者による個人情報の開示の同意に関する署名と、当該個人情報を受信する受信者による当該個人情報の受領に関する署名とに基づいてブロックチェーン上における個人情報の開示の同意に関するトランザクションを処理する。情報処理装置は、送信者から、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する送信者の第1送信者署名と、を取得する第1取得部を有する。また、情報処理装置は、対象情報を受信する受信者から、対象情報の受領に関する受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて第1受信者署名を生成する旨の指示とを含む情報取得申請を取得する第2取得部を有する。また、情報処理装置は、第2取得部によって取得された情報取得申請に基づいて、受信者公開鍵を用いて第1受信者署名を生成する受信者署名生成部を有する。また、情報処理装置は、送信者から対象情報を取得した受信者によって生成された、対象情報の第2ハッシュ値と、受信者によって受信者秘密鍵を用いて生成された、対象情報の受領に関する受信者の第2受信者署名とを、受信者から取得する第3取得部を有する。さらに、情報処理装置は、第1取得部によって送信者から取得された第1ハッシュ値と、第3取得部によって受信者から取得された第2ハッシュ値とが、一致しているか否かを検証するハッシュ検証部と、受信者署名生成部によって生成された第1受信者署名と、第3取得部によって受信者から取得された第2受信者署名とが、一致しているか否かを検証する受信者署名検証部と、を有する。
【0024】
これにより、送信者から取得された第1ハッシュ値と、受信者から取得された第2ハッシュ値とが、一致しているか否かが検証されるため、受信者が取得した情報が、個人情報の管理者である送信者によって提供された正当な個人情報であるか否かを検証することができる。さらに、受信者署名生成部によって生成された第1受信者署名と、第3取得部によって受信者から取得された第2受信者署名とが、一致しているか否かが検証されるため、情報取得申請を送信した正当な受信者に対して情報が開示されているか否かを検証することができる。したがって、個人情報の管理者である送信者によって提供された正当な個人情報を、正当な受信者に対して安心安全かつ確実に開示可能とすることができる。
【図面の簡単な説明】
【0025】
図1】情報処理装置が適用される情報処理システムの全体構成を示す図である。
図2】送信者端末の概略構成を示すブロック図である。
図3】サーバーの概略構成を示すブロック図である。
図4】受信者端末の概略構成を示すブロック図である。
図5A】情報処理装置の機能構成を示すブロック図である。
図5B】送信者端末の機能構成を示すブロック図である。
図5C】受信者端末の機能構成を示すブロック図である。
図6】情報処理システムにおいて実行される処理の流れを示すシーケンスチャートである。
図7】変形例に係る情報処理システムにおいて実行される処理の流れを示すシーケンスチャートである。
【発明を実施するための形態】
【0026】
以下、添付した図面を参照して、本発明の実施形態を説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0027】
<発明の背景および課題に関する詳細な説明>
近年、様々な業種でデジタル化が進み、世界各国において個人情報の価値が高まってきている。我が国においても、2022年4月の個人情報保護法の改正により、違反した場合の罰則が厳しくなるなど、今まで以上に個人情報の取り扱いが厳格化されている。しかし、商品やサービスを提供する事業者にとっては、厳格化される個人情報保護法に準拠し、高額な対価を支払ったとしても、個人情報を取得することに大きな価値がある。
【0028】
本来、個人情報の開示においては、個人情報権利保持者(以下、「ユーザー」)の個人情報の権利とプライバシーが保護される必要があり、個人情報の第三者提供においては、ユーザーの同意が得られなければならない。しかし、現状では、ユーザーの同意が適切に管理されているかどうかもわからず、またいつ、誰に、どのように開示されているか、また、開示する相手に個人情報が安全に送り届けられているかを、ユーザーは正確に把握することができない。また、形式的には個人情報保護法に準拠してサービスを提供しているものの、本質的には個人情報保護を実現できていないような事例も発生している。たとえば、個人情報保護法に準拠して、個人情報を取得するためにユーザーから個人情報の開示に関する同意書の書面を取得し、その同意書に基づいて個人情報の取得が行われている場合を例に挙げて説明する。この場合、ユーザーは、個人情報の開示に同意した後に、開示した個人情報が、本当に開示に同意した者以外の第三者に提供されていないか、あるいは、開示に同意した用途で使用され、同意した用途以外で利用されていないか、といったことを把握することができない。
【0029】
また、ユーザーが開示に同意して開示された情報が、本当にユーザーによって提供されたものであり、第三者によって書き換えられていないかを、当該情報を取得した受信者が確認できないという問題もある。また、ネットワークに対する不正アクセスによるデータベースの破壊、データの改ざん、個人情報の漏洩などの問題も顕在化している。たとえば、個人情報が漏洩した場合、悪意を持った人間によって個人情報の不適正な取り扱いがなされ、個人の権利利益が侵害されてしまう虞がある。また、本人の知り得ないところで不正に取得された個人情報が不当に売買されることによって深刻な被害がもたらされている事例も発生しており、社会問題となっている。
【0030】
上記のような個人情報に関する問題を解決するためには、開示する情報と受信した情報が同じものであることと、個人情報がいつ、誰に、どのように開示されたのかを明確にする必要がある。
【0031】
しかし、従来の仕組みにおいては、上記のような問題を解決することは困難である。
【0032】
その理由の一つには、大量の情報を管理・運用するためにデータベースが用いられており、基本的には中央集権型による管理方法になっていることが挙げられる。既存のデータベースには、「階層型」、「関係型(リレーショナルデータベース)」、「ネットワーク型」、「NoSQL」等の種類がある。既存のデータベースを用いて上記のような問題を解決しようとする場合、データベースの種類に応じて各種のデメリットが生じてしまう。
【0033】
<データベースを使用する上での問題点>
たとえば、「階層型」については、複数の親ノードが必要となる際のデータの入力の難しさや、データを管理する際の柔軟性に欠けている。「階層型」のデータベースにおいては、基本的に、1つの子ノードに対して親ノードは1つだけ設けられることが原則であるため、複数の親ノードが必要となる場合には、子ノードに対応するデータを重複して登録することが必要であり、不自然なデータ構成となってしまう。また、データの追加や削除などの際に、ルートを再登録する必要があり、データを管理するための柔軟性にも欠けている。
【0034】
「関係型(リレーショナルデータベース)」については、プログラムが複雑化しやすく、処理速度が遅くなる傾向にある。複雑な関係性を持つデータを格納することができるが、大規模なデータを扱ったりする際に、プログラムが複雑化してしまう。
【0035】
「ネットワーク型」については、階層型データベースと同様に、データの柔軟な取り扱いが困難である。たとえば、プログラムがデータ構造に依存しているため、データ構造を理解していないとデータへのアクセスが難しいという問題がある。そのためネットワーク型データベースの使用には、高度な知識が必要になってくる。
【0036】
「NoSQL」については、データの整合性が保てないことや、データの加工が難しいという問題がある。同時実行制御のための機能が不十分であり、大量のデータに素早く対処するために、データの整合性を保つことが困難である。また、SQL言語を使用しないため、複雑な条件を指定した検索などを実行することができず、データの加工が困難である。
【0037】
上記のような問題を解決するためには、複雑化が要求されず、中央集権型の管理ではなく、個人情報の開示の同意に関する署名はオープンな状態でやり取りされ、個人情報自体はオープンではない状態でやり取りされ、かつ不正が発生しないような仕組みが必要になる。そこで、ブロックチェーン技術が必要になってくる。
【0038】
<ブロックチェーン技術について>
ブロックチェーン技術とは、取引履歴を暗号技術によって過去から1本の鎖のようにつなげるかたちで記録するための技術である。各取引の記録は、その取引の記録と、各ブロックを接続させるための情報(前の取引の情報など)により1つの塊(ブロック)として構成されている。ブロックチェーンとは、このブロックが複数連結されたものを指す。また、ブロックチェーン化された取引記録は、特定の管理主体が存在する通常の中央集権管理型システムとは異なり、複数のノードがそれぞれ情報を保有し、常に同期が図られる「非中央集権型」という仕組みで管理されているため、一部のシステムが停止・故障しても、システム全体の運行・稼働に与える影響を抑制することが可能となる。
【0039】
また、ブロックチェーン技術においては、主にプライベートチェーンとパブリックチェーンの2つの種類が存在し、それぞれの特徴によって活用できる領域が異なる。
【0040】
まず、プライベートチェーンは、ネットワークへの参加に承認が必要なブロックチェーンである。ブロックチェーン上に記録される際、可否を決定する承認者が存在するため、悪意のあるデータが記録されるリスクを回避できるといった特徴がある。
【0041】
プライベートチェーンのメリットとしては、以下のような点が挙げられる。
【0042】
1.承認者が少なくてすむため、取引承認におけるファイナリティが早期化される。
【0043】
2.取引承認のインセンティブ(ビットコインなどにおけるマイニング報酬)が不要である。
【0044】
3.ブロックチェーンへの参加者を制限して情報の公開を管理することによってプライベート性を確保できる。
【0045】
一方、プライベートチェーンのデメリットとしては、以下のような点が挙げられる。
【0046】
1.ブロック承認の検閲耐性や透明性が低い。
【0047】
2.ブロックチェーンサービスの開始コストが高い。
【0048】
3.データの可用性や永続性が低い。
【0049】
次に、パブリックチェーンは、インターネットなどのP2Pネットワーク上において、中央集権的な管理者がいなくとも、ネットワークの合意形成ができるプロトコルおよび実装であり、実用的な範囲で実現されているという特徴がある。
【0050】
パブリックチェーンのメリットとしては、以下のような点が挙げられる。
【0051】
1.中央集権的な管理者が不要である。
【0052】
2.合意形成に関して、取引記録の検証と正当性の担保が行われているため、改ざん不可能性や検閲耐性が強く、取引が公開されるため透明性が高い。
【0053】
3.ブロックチェーンの中身を誰もが参照できるという公共性があり正確性が担保される。
【0054】
一方、パブリックチェーンのデメリットとしては、以下のような点が挙げられる。
【0055】
1.合意形成に時間がかかる。
【0056】
2.管理者なしで多数のノードの合意形成により厳格に承認を行う場合は、その代償として多くの時間や計算パワーを消費する。
【0057】
3.管理者なしで運営がなされるため、仕様の変更に関して多くの時間を要する。
【0058】
ここで、個人情報の取り扱いを検討する際には、データの暗号化が破られてしまうという前提でブロックチェーン技術を活用する必要がある。たとえば、パブリックチェーンによって個人情報を取り扱う場合、個人情報が含まれているデータベースを暗号化したとしても、量子暗号技術などによって暗号化が破られたり、暗号化されたデータを複合化できるノードにアクセスされたりしてしまうと、復号化された全てのデータを閲覧することが可能になってしまい、個人情報を適切に保護することはできない。
【0059】
一方、プライベートチェーンによって個人情報を取り扱う場合、オープンではなくクローズド型の仕組みになってしまい、個人情報がオークション方式等によって開示されることになってしまう。その場合、公正性、透明性が担保されない状態で個人情報が開示されることになってしまい、プライバシーが適切に保護されず、個人情報を適切に保護することはできない。
【0060】
そこで、本願発明においては、パブリックチェーンとプライベートチェーンそれぞれの特性を考慮して、パブリックチェーンとプライベートチェーンとを効果的に組み合わせて、上記のような問題を解決している。具体的には、パブリックチェーンを用いて個人情報の開示の同意に関する情報を管理し、プライベートチェーンを用いて個人情報の送受信を実行し、パブリックチェーン上に記録される開示の同意に関する情報とプライベートチェーンで送受信される個人情報とを対応付けている。すなわち、パブリックチェーンとプライベートチェーンという2つのブロックチェーン(二層のブロックチェーン)が、一組みとなって個人情報を適切に開示するための仕組みが構築されている。以下、本発明の一実施形態について具体的に説明する。
【0061】
<実施形態>
<システム構成>
図1は、情報処理装置が適用されるシステムの全体構成を示す図である。
【0062】
本実施形態の情報処理システムは、個人情報を管理および送信する送信者による個人情報の開示の同意に関する署名と、当該個人情報を受信する受信者による当該個人情報の受領に関する署名とに基づいて、パブリックチェーン上において、プライベートチェーンを用いた個人情報の開示の同意に関するトランザクションを処理(有効化または無効化等)するように構成される。送信者による個人情報の開示の同意に関する署名はパブリックチェーン上において公開される。個人情報の開示の同意に関する署名がなければ、個人情報は開示されないため、個人情報の管理者である送信者は、自分の情報がいつ、誰に、どのように開示されているのかを把握することでき、公正かつ透明な仕組みで個人情報を管理することができるようになる。以下においては、送受信の対象となる個人情報を、対象情報とも称する。
【0063】
図1に示すように、情報処理システムは、送信者端末100、情報処理装置200および受信者端末300を有し、各構成はネットワークを介して相互に通信可能に構成されている。
【0064】
送信者端末100は、個人情報を管理して送信する個人情報管理者である送信者が使用するスマートフォン等のモバイル端末やノートPC、デスクトップPCなどの情報端末である。
【0065】
情報処理装置200は、本システムの提供者によって設けられるサーバーである。情報処理装置200は、ピア・ツー・ピアネットワークを介してブロックチェーン(パブリックチェーン)にアクセスするノードとして機能する。
【0066】
受信者端末300は、送信者から個人情報を受信して利用する受信者が使用するスマートフォン等のモバイル端末やノートPC、デスクトップPCなどの情報端末である。
【0067】
以下、情報処理システムの各構成について具体的に説明する。
【0068】
<送信者端末100>
図2は、送信者端末の概略構成を示すブロック図である。
【0069】
図2に示すように、送信者端末100は、CPU(Central Processing Unit)110、ROM(Read Only Memory)120、RAM(Random Access Memory)130、ストレージ140、通信インターフェース150および操作表示部160を有する。各構成は、バス170を介して相互に通信可能に接続されている。
【0070】
CPU110は、ROM120やストレージ140に記録されているプログラムにしたがって、上記各構成の制御や各種の演算処理を行う。CPU110は、ストレージ140に記憶されたプログラムを実行することによって、第1送信部、第3送信部、第5送信部、および第6送信部として機能する。
【0071】
ROM120は、各種プログラムや各種データを格納する。
【0072】
RAM130は、作業領域として一時的にプログラムやデータを記憶する。
【0073】
ストレージ140は、オペレーティングシステムを含む各種プログラムや、各種データを格納する。たとえば、ストレージ140には、ハッシュ値を生成するためのアプリケーション、電子署名を生成するためのアプリケーション、情報を暗号化および復号化するためのアプリケーション、情報を送受信するためのアプリケーション等がインストールされている。また、ストレージ140には、プライベートなブロックチェーン(プライベートチェーン)を用いて暗号化された対象情報を送信するためのアプリケーション等もインストールされている。なお、ブロックチェーン500については、各種の公知のブロックチェーンによって構成され得るため、詳細な説明は割愛する。また、秘密鍵、公開鍵を用いた電子署名の方式についても、公知の技術であるため、詳細な説明は割愛する。
【0074】
通信インターフェース150は、ネットワークを介して他の機器と通信するためのインターフェースであり、たとえば、携帯電話通信用の4G、5G等の規格や、Wi-Fi(登録商標)等の規格が用いられる。
【0075】
操作表示部160は、たとえば、タッチパネル式のディスプレイであり、各種情報を表示すると共に、ユーザーからの各種入力を受け付ける。
【0076】
<情報処理装置200>
図3は、情報処理装置の概略構成を示すブロック図である。
【0077】
図3に示すように、情報処理装置200は、CPU210、ROM220、RAM230、ストレージ240、通信インターフェース250、および操作表示部260を有する。各構成は、バス270を介して相互に通信可能に接続されている。なお、CPU210、ROM220、RAM230、ストレージ240、通信インターフェース250、および操作表示部260は、送信者端末100のCPU110、ROM120、RAM130、ストレージ140、通信インターフェース150、および操作表示部160と同様の機能を有するので、説明の重複を避けるためその説明を省略する。
【0078】
CPU210は、ストレージ240に記憶されたプログラムを実行することによって、第1取得部、第2取得部、受信者署名生成部、第3取得部、ハッシュ検証部、受信者署名検証部、第4取得部、送信者署名生成部、送信者署名検証部、報知部、第5取得部、および利用停止部として機能する。
【0079】
情報処理装置200は、たとえば、ピア・ツー・ピアネットワークに接続するパブリックなブロックチェーン(パブリックチェーン)のノードであり、当該ピア・ツー・ピアネットワークを介して他のノード(不図示))と相互に通信する。パブリックチェーンを構成する各ノードは、共通のパブリックチェーンを記憶する。この場合、情報処理装置200のストレージ240には、パブリックチェーンを構成するブロックチェーン500が記憶される。情報処理装置200は、パブリックチェーンにおける全ての情報を保有するフルノードであってもよく、各データを証明するためのハッシュ値等の情報を保有するライトノードであってもよい。あるいは、情報処理装置200は、パブリックチェーンを記憶せずに、他のノードを介してパブリックチェーンにアクセスしてもよい。この場合、情報処理装置200のストレージ240には、ブロックチェーン500は記憶されない。
【0080】
<受信者端末300>
図4は、受信者端末の概略構成を示すブロック図である。
【0081】
図4に示すように、受信者端末300は、CPU310、ROM320、RAM330、ストレージ340、通信インターフェース350、および操作表示部360を有する。各構成は、バス370を介して相互に通信可能に接続されている。なお、CPU310、ROM320、RAM330、ストレージ340、通信インターフェース350、および操作表示部360は、送信者端末100のCPU110、ROM120、RAM130、ストレージ140、通信インターフェース150、および操作表示部160と同様の機能を有するので、説明の重複を避けるためその説明を省略する。
【0082】
CPU310は、ストレージ340に記憶されたプログラムを実行することによって、第2送信部、および第4送信部として機能する。
【0083】
ストレージ340には、ハッシュ値を生成するためのアプリケーション、電子署名を生成するためのアプリケーション、情報を暗号化および復号化するためのアプリケーション等がインストールされている。また、ストレージ340には、プライベートなブロックチェーン(プライベートチェーン)を用いて暗号化された対象情報を受信するためのアプリケーション等もインストールされている。
【0084】
<機能構成>
図5Aは、情報処理装置の機能構成を示すブロック図である。
【0085】
図5Aに示すように、情報処理装置200は、CPU210がストレージ240に記憶されたプログラムを読み込んで処理を実行することによって、第1取得部211、第2取得部212、受信者署名生成部213、第3取得部214、ハッシュ検証部215、受信者署名検証部216、第4取得部217、送信者署名生成部218、送信者署名検証部219、報知部21A、第5取得部21B、および利用停止部21Cとして機能する。
【0086】
第1取得部211は、送信者から、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する送信者の第1送信者署名と、を取得してパブリックチェーン上において記録されるように送信する。
【0087】
第2取得部212は、対象情報を受信する受信者から、対象情報の受領に関する受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて第1受信者署名を生成する旨の指示とを含む情報取得申請を取得してパブリックチェーン上において記録されるように送信する。
【0088】
受信者署名生成部213は、第2取得部212によって取得された情報取得申請に基づいて、受信者公開鍵を用いて第1受信者署名を生成してパブリックチェーン上において記録されるように送信する。
【0089】
第3取得部214は、送信者からプライベートチェーンを介して対象情報を取得した受信者によって生成された、対象情報の第2ハッシュ値と、受信者によって受信者秘密鍵を用いて生成された、対象情報の受領に関する受信者の第2受信者署名とを、受信者から取得する。
【0090】
ハッシュ検証部215は、第1取得部211によって送信者から取得された第1ハッシュ値と、第3取得部214によって受信者から取得された第2ハッシュ値とが、一致しているか否かを検証する。
【0091】
受信者署名検証部216は、受信者署名生成部213によって生成された第1受信者署名と、第3取得部214によって受信者から取得された第2受信者署名とが、一致しているか否かを検証する。
【0092】
第4取得部217は、受信者に対象情報を取得させた送信者から、対象情報の開示の同意に関する送信者の第2送信者署名を生成するための送信者公開鍵を取得する。
【0093】
送信者署名生成部218は、第4取得部217によって取得された送信者公開鍵を用いて第2送信者署名を生成する。
【0094】
送信者署名検証部219は、第1取得部211によって送信者から取得された第1送信者署名と、送信者署名生成部218によって生成された第2送信者署名と、が、一致しているか否かを検証する。
【0095】
報知部21Aは、ハッシュ検証部215または受信者署名検証部216によって実行された検証処理の結果に関する情報を、ネットワークを介して報知する。また、報知部21Aは、ハッシュ検証部215または受信者署名検証部216によって実行される検証処理がなされる期間に関する情報をさらに報知する。
【0096】
第5取得部21Bは、送信者から、対象情報の利用停止、消去、および第三者への提供禁止に関する送信者の第3送信者署名と、対象情報の利用停止、消去、および第三者への提供を禁止する旨の指示とを含む利用停止申請を取得する。
【0097】
利用停止部21Cは、第5取得部21Bによって取得された利用停止申請に基づいて、対象情報の開示が無効化された旨をパブリックチェーン上において記録されるように送信する。
【0098】
図5Bは、送信者端末の機能構成を示すブロック図である。
【0099】
図5Bに示すように、送信者端末100は、CPU110がストレージ140に記憶されたプログラムを読み込んで処理を実行することによって、第1送信部111、第3送信部112、第5送信部113、および第6送信部114として機能する。
【0100】
第1送信部111は、送信者の指示に基づいて、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する送信者の第1送信者署名とを生成して情報処理装置200に送信する。
【0101】
第3送信部112は、送信者の指示に基づいて、受信者から送信された受信者公開鍵を用いて対象情報を暗号化し、暗号化された対象情報を、プライベートチェーンを介して、受信者端末300に送信する。
【0102】
第5送信部113は、送信者の指示に基づいて、対象情報の開示の同意に関する送信者の第2送信者署名を生成するための送信者公開鍵を情報処理装置200に送信する。
【0103】
第6送信部114は、送信者の指示に基づいて、対象情報の利用停止、消去、および第三者への提供禁止に関する送信者の第3送信者署名と、対象情報の利用停止、消去、および第三者への提供を禁止する旨の指示とを含む利用停止申請を生成して情報処理装置200に送信する。
【0104】
図5Cは、受信者端末の機能構成を示すブロック図である。
【0105】
図5Cに示すように、受信者端末300は、CPU310がストレージ340に記憶されたプログラムを読み込んで処理を実行することによって、第2送信部311、および第4送信部312として機能する。
【0106】
第2送信部311は、受信者の指示に基づいて、対象情報の受領に関する受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて第1受信者署名を生成する旨の指示と、を含む情報取得申請を生成して情報処理装置200に送信する。
【0107】
第4送信部312は、受信者の指示に基づいて、送信者端末100からプライベートチェーンを介して受信した暗号化された対象情報を取得する。第4送信部312は、受信者の受信者秘密鍵を用いて暗号化された対象情報を復号化する。第4送信部312は、対象情報の第2ハッシュ値を生成するとともに、受信者秘密鍵を用いて対象情報の受領に関する受信者の第2受信者署名を生成して情報処理装置200に送信する。
【0108】
なお、情報処理システムの各構成は、それぞれ上記の構成要素以外の構成要素を含んでいてもよく、あるいは、上記の構成要素のうちの一部が含まれていなくてもよい。
【0109】
<処理概要>
以下、情報処理システムにおいて実行される処理の例について説明する。
【0110】
図6は、情報処理システムにおいて実行される処理の流れを示すシーケンスチャートである。図6のシーケンスチャートに示される各装置の処理は、各装置のストレージにプログラムとして記憶されており、各装置のCPUが各部を制御することにより実行される。
【0111】
図6に示すように、送信者端末100は、送信者の指示に基づいて、送信の対象となる個人情報を含む対象情報を取得する(ステップS101)。たとえば、送信者端末100は、ストレージ140に記憶されている対象情報を取得してもよく、あるいは、送信者からの操作表示部160等を介した入力に基づいて対象情報を取得してもよい。
【0112】
送信者端末100は、ステップS101の処理において取得した対象情報のハッシュ値を、第1ハッシュ値として生成する(ステップS102)。
【0113】
送信者端末100は、送信者の秘密鍵を用いて、当該対象情報の開示の同意に関する送信者の署名を、第1送信者署名として生成する(ステップS103)。
【0114】
送信者端末100は、生成した第1ハッシュ値と第1送信者署名を、情報処理装置200に送信する。このとき、送信者端末100は、対象情報に含まれる内容を、受信者が把握できるように、対象情報のデータ項目や属性等を示すメタ情報を、第1ハッシュ値等とあわせて送信してもよい。また、送信者端末100は、対象情報を取得させる対象となる受信者(受信者端末300)を指定するための指定開示情報をあわせて送信してもよい。
【0115】
情報処理装置200は、送信者端末100から送信された第1ハッシュ値、第1送信者署名、メタ情報等の情報を、パブリックチェーン上において記録されるように、ピア・ツー・ピアネットワークに送信する(ステップS201)。当該ピア・ツー・ピアネットワークに接続されたサーバー等のノードによってブロックチェーン500のマイニングが実行されてブロックが生成され、第1ハッシュ値、第1送信者署名等の情報がパブリックチェーン上において記録される。
【0116】
受信者端末300は、パブリックチェーン上において記録されて公開された第1ハッシュ値、第1送信者署名、メタ情報等の情報を確認した受信者から、対象情報の受領に関する指示を受け付ける(ステップS301)。たとえば、パブリックチェーン上において第1ハッシュ値、第1送信者署名、メタ情報等が記録された場合に、受信者端末300に通知が送信され、受信者は通知に基づいて対象情報の要否を判断し、必要と判断した場合に、受領に関する指示を実施し得る。受信者端末300は、たとえば、操作表示部360に表示された画面おける受信者の入力操作を介して、受信者から対象指示の受領に関する指示を受け付ける。
【0117】
受信者端末300は、対象情報の受領に関する受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて第1受信者署名を生成する旨の指示とを含む情報取得申請を生成する(ステップS302)。
【0118】
受信者端末300は、受信者公開鍵と、当該受信者公開鍵を用いて第1受信者署名を生成する旨の指示とを含む情報取得申請を、情報処理装置200に送信する。
【0119】
なお、情報処理装置200は、送信者端末100から対象情報の開示先を指定する指定開示情報を予め受信している場合には、当該指定開示情報において指定された受信者(受信者端末300)からの情報取得申請のみを有効な申請として処理してもよい。この場合、指定開示情報において指定された受信者(受信者端末300)以外からの情報取得申請については、無効な申請として処理される。
【0120】
また、上記の実施形態では、送信者が第1ハッシュ値および第1送信者署名を情報処理装置200に送信し、第1ハッシュ値および第1送信者署名がパブリックチェーン上に記録されてから、受信者が情報取得申請を生成して情報処理装置に送信する例について説明した。しかし、処理の順序は上記の例に限定されない。たとえば、受信者が受領を希望する情報について予め情報取得申請を生成して情報処理装置200に送信してパブリックチェーン上に記録しておき、その後で、送信者が第1ハッシュ値および第1送信者署名を情報処理装置200に送信してもよい。この場合、受信者端末300には、受領を希望する情報に関する第1ハッシュ値および第1送信者署名が登録された旨の通知が送信されてもよい。これにより、受信者は、自身が受領を希望している対象情報が送信者によって提供可能となったことを即座に把握できる。
【0121】
情報処理装置200は、受信者端末300から送信された受信者公開鍵と情報取得申請を取得し、パブリックチェーン上において記録されるようにピア・ツー・ピアネットワークに送信する。また、情報処理装置200は、情報取得申請に基づいて、受信者公開鍵を用いて、対象情報の受領に関する受信者の署名を、第1受信者署名として生成し、パブリックチェーン上において記録されるようにピア・ツー・ピアネットワークに送信する(ステップS202)。受信者による情報取得申請がパブリックチェーン上に記録されるため、送信者は、当該受信者によって情報取得申請が送信されたことを確認できる。情報処理装置200は、受信者によって情報取得申請が送信された場合に、対象となる情報をパブリックチェーン上に記録している送信者の送信者端末100に対して通知を送信してもよい。これにより、送信者は、自身が保有している対象情報を受信者が受領したいという意思を表明したことを即座に把握できる。
【0122】
受信者端末300は、受信者から、受信者公開鍵の送付指示を受け付けると(ステップS303)、受信者公開鍵を、送信者端末100に送信する。
【0123】
送信者端末100は、送信者の指示に基づいて、受信者端末300から送信された受信者公開鍵を用いて、対象情報を暗号化し(ステップS104)、暗号化された対象情報を、プライベートチェーンを介して受信者端末300に送信する。たとえば、送信者端末100は、ピア・ツー・ピアネットワークに接続するプライベートなブロックチェーン(プライベートチェーン)のノードを介して、暗号化された対象情報を送信する。あるいは、送信者端末100は、プライベートチェーンを構成するノードとなり、ピア・ツー・ピアネットワークに接続して暗号化された対象情報を送信してもよい。この場合、送信者端末100のストレージ140には、プライベートチェーンを構成するブロックチェーンが記憶される。送信者端末100は、プライベートチェーンにおける全ての情報を保有するフルノードであってもよく、各データを証明するためのハッシュ値等の情報を保有するライトノードであってもよい。
【0124】
受信者端末300は、受信者の指示に基づいて、送信者端末100からプライベートチェーンを介して送信された暗号化された対象情報を、受信者秘密鍵を用いて復号化する(ステップS304)。たとえば、受信者端末300は、ピア・ツー・ピアネットワークに接続するプライベートなブロックチェーン(プライベートチェーン)のノードを介して、暗号化された対象情報を受信する。あるいは、受信者端末300は、プライベートチェーンを構成するノードとなり、ピア・ツー・ピアネットワークに接続して暗号化された対象情報を受信してもよい。
【0125】
受信者端末300は、ステップS304の処理において復号化された情報のハッシュ値を、対象情報の第2ハッシュ値として生成する(ステップS305)。
【0126】
受信者端末300は、受信者秘密鍵を用いて対象情報の受領に関する受信者の第2受信者署名を生成する(ステップS306)。
【0127】
受信者端末300は、ステップS305およびステップS306の処理において生成された第2ハッシュ値および第2受信者署名を、情報処理装置200に送信する。
【0128】
情報処理装置200は、受信者端末300から送信された第2ハッシュ値および第2受信者署名を取得し、パブリックチェーン上において記録されるようにピア・ツー・ピアネットワークに送信する。また、情報処理装置200は、ステップS201の処理において受信した第1ハッシュ値と、第2ハッシュ値とが一致しているか否か、および、ステップS202の処理において生成された第1受信者署名と、第2受信者署名とが一致しているか否かを検証(マッチング検証)する(ステップS203)。
【0129】
情報処理装置200は、ステップS203のマッチング検証処理の結果を、ピア・ツー・ピアネットワークを介して報知し、パブリックチェーン上に記録する(ステップS204)。具体的には、第1受信者署名と第2受信者署名とが一致している場合、情報処理装置200は、受信者が正当な受信者であると判断してその旨をパブリックチェーン上において記録されるようにピア・ツー・ピアネットワークに送信する。一方、第1受信者署名と第2受信者署名とが一致していない場合、情報処理装置200は、受信者が正当な受信者でないと判断してその旨をパブリックチェーン上において記録されるようにピア・ツー・ピアネットワークに送信する。また、第1ハッシュ値と第2ハッシュ値とが一致している場合、情報処理装置200は、受信者が取得した対象情報が正当な情報であると判断してその旨をパブリックチェーン上において記録されるようにピア・ツー・ピアネットワークに送信する。一方、第1ハッシュ値と第2ハッシュ値とが一致していない場合、情報処理装置200は、受信者が取得した対象情報が正当な情報でないと判断してその旨をパブリックチェーン上において記録されるようにピア・ツー・ピアネットワークに送信する。なお、情報処理装置200は、上記のハッシュ検証または受信者署名検証の処理がなされる期間に関する情報を、ピア・ツー・ピアネットワークを介して報知し、パブリックチェーン上に記録してもよい。
【0130】
情報処理装置200は、マッチング検証の結果を受信者端末300および送信者端末100に通知する。
【0131】
受信者端末300および送信者端末100は、マッチング検証の結果を出力する(ステップS307、ステップS105)。
【0132】
なお、マッチング検証の結果、第1ハッシュ値および第2ハッシュ値が不一致であった場合、または、第1受信者署名および第2受信者署名が不一致であった場合、対象情報の利用停止、消去、および第三者への提供禁止に関する処理が実行される。たとえば、送信者端末100は、対象情報の利用停止、消去、および第三者への提供禁止に関する送信者の第3送信者署名と、対象情報の利用停止、消去、および第三者への提供を禁止する旨の指示とを含む利用停止申請を生成して情報処理装置200に送信する。情報処理装置200は、取得された利用停止申請に基づいて、対象情報の開示が無効化された旨を示す情報をパブリックチェーン上において記録されるようにピア・ツー・ピアネットワークを介して送信する。これにより、対象情報が送信者によって開示された正当な情報でない場合や、対象情報を受信した受信者が正当な受信者でない場合に、対象情報の利用停止、消去、および第三者への提供禁止についてパブリックチェーン上に記録して公開することができる。
【0133】
以上のように、本実施形態に係る情報処理装置200は、送信者から、送信対象の個人情報である対象情報の第1ハッシュ値と、当該対象情報の開示の同意に関する送信者の第1送信者署名と、を取得してパブリックチェーン上において記録されるように送信する。そして、情報処理装置200は、対象情報を受信する受信者から、対象情報の受領に関する受信者の第1受信者署名を生成するための受信者公開鍵と、当該受信者公開鍵を用いて第1受信者署名を生成する旨の指示とを含む情報取得申請を取得してパブリックチェーン上において記録されるように送信する。情報処理装置200は、取得した情報取得申請に基づいて、受信者公開鍵を用いて第1受信者署名を生成してパブリックチェーン上において記録されるように送信する。情報処理装置200は、送信者からプライベートチェーンを介して対象情報を取得した受信者によって生成された、対象情報の第2ハッシュ値と、受信者によって受信者秘密鍵を用いて生成された、対象情報の受領に関する受信者の第2受信者署名とを、受信者から取得する。情報処理装置200は、送信者から取得した第1ハッシュ値と、第3取得部によって受信者から取得された第2ハッシュ値とが、一致しているか否かを検証する。また、情報処理装置200は、生成した第1受信者署名と、受信者から取得した第2受信者署名とが、一致しているか否かを検証する。
【0134】
すなわち、送信者は、対象情報(個人情報)の開示に同意して、対象情報のハッシュ値(第1ハッシュ値)と対象情報の開示の同意に関する署名(第1送信者署名)を生成してパブリックチェーン上において公開し、受信者は受信者公開鍵を用いて対象情報の受領に関する署名(第1受信者署名)を生成してパブリックチェーン上において公開する。その状態で、送信者は、対象情報を暗号化してプライベートチェーンを介して受信者に送信し、受信者は、暗号化された対象情報を復号化して対象情報のハッシュ値(第2ハッシュ値)を生成するとともに、受信者秘密鍵を用いて対象情報の受領に関する署名を生成して情報処理装置200に送信する。そして、情報処理装置200は、第1ハッシュ値と第2ハッシュ値とが一致しているか否かを検証することによって、送信者が開示に同意してパブリックチェーン上にハッシュ値と署名を公開した対象情報と、プライベートチェーンを介して受信者が受信した対象情報とが一致しているか否かを検証することができる。また、情報処理装置200は、第1受信者署名と第2受信者署名とが一致しているか否かを検証することによって、対象情報の受領に関する署名をパブリックチェーン上に公開した受信者と、プライベートチェーンを介して対象情報を受信した受信者とが一致しているか否かを検証することができる。
【0135】
このように、本実施形態に係る情報処理装置によれば、ブロックチェーン技術を用いて、個人情報管理者が個人情報を開示する先を指定することができ、いつ、誰に、どのように個人情報管理者の情報が開示されているのかを明確にし、開示した個人情報と受信した個人情報が同じであること立証可能な、個人情報開示システムを提供することができる。すなわち、パブリックチェーンとプライベートチェーンの2つのブロックチェーンを二層のブロックチェーンとして組み合わせて使用することによって、個人情報の管理者である送信者によって提供された正当な個人情報を、正当な受信者に対して安心安全かつ確実に開示することができる。
【0136】
また、情報処理装置200は、第1受信者署名と第2受信者署名とが一致している場合、受信者が正当な受信者であると判断してその旨をパブリックチェーン上において記録されるように送信し、第1受信者署名と第2受信者署名とが一致していない場合、受信者が正当な受信者でないと判断してその旨をパブリックチェーン上において記録されるように送信する。これにより、対象情報を受信したユーザーが正当な受信者であるか否かがパブリックチェーン上において公開されるため、対象情報が正当な受信者によって受信されたか否かを明確に把握することができる。
【0137】
また、情報処理装置200は、第1ハッシュ値と第2ハッシュ値とが一致している場合、受信者が取得した対象情報が正当な情報であると判断してその旨をパブリックチェーン上において記録されるように送信し、第1ハッシュ値と第2ハッシュ値とが一致していない場合、受信者が取得した対象情報が正当な情報でないと判断してその旨をパブリックチェーン上において記録されるように送信する。これにより、受信者が取得した対象情報が正当な情報であるか否かがパブリックチェーン上において公開されるため、受信者が正当な情報を取得したか否かを明確に把握することができる。
【0138】
また、情報処理装置200は、送信者から、第1ハッシュ値および第1送信者署名とあわせて、対象情報に含まれる情報の属性または項目名を含むメタ情報をさらに取得する。これにより、送信者が開示に同意した対象情報の内容を、受信者がより明確に把握でき、より無駄なく効率的に対象情報の授受が実現される。
【0139】
また、情報処理装置200は、送信者から、対象情報を取得させる対象となる受信者を指定するための指定開示情報を取得可能であり、取得した指定開示情報において指定された受信者からの情報取得申請のみを有効な申請として処理する。これにより、送信者が指定した受信者のみに対象情報を開示することができ、より安心安全な対象情報の授受が実現される。
【0140】
また、情報処理装置200は、ハッシュ検証および署名検証の結果に関する情報を、ネットワークを介して報知する。これにより、関係者がハッシュ検証および署名検証の結果に関する情報を適切に把握することができる。
【0141】
また、情報処理装置200は、送信者から、対象情報の利用停止、消去、および第三者への提供禁止に関する送信者の第3送信者署名と、対象情報の利用停止、消去、および第三者への提供を禁止する旨の指示とを含む利用停止申請を取得し、取得した利用停止申請に基づいて、対象情報の開示が無効化された旨をパブリックチェーン上において記録されるように送信する。これにより、対象情報が不正に開示された場合には、即座に開示を無効化することができる。
【0142】
<変形例>
図7は、変形例に係る情報処理システムにおいて実行される処理の流れを示すシーケンスチャートである。図7のシーケンスチャートに示される各装置の処理は、各装置のストレージにプログラムとして記憶されており、各装置のCPUが各部を制御することにより実行される。
【0143】
図7の変形例に係る処理は、ハッシュ値および受信者署名のマッチング検証に加えて、送信者署名のマッチング検証も実行される点において、図6に示される処理と異なる。具体的には、送信者端末100において実行されるステップS10Aと、情報処理装置200において実行されるステップS20Aの処理が追加されており、情報処理装置200において実行されるステップS20Bの処理が、ステップS203の処理から変更されている。以下では、上記の差異点を中心に説明する。
【0144】
送信者端末100は、ステップS104の処理において暗号化された対象情報を受信者端末300に送信した後、対象情報の開示の同意に関する送信者の第2送信者署名を生成するための送信者公開鍵を、情報処理装置200に送信する旨の指示を、送信者から受け付ける(ステップS10A)。送信者端末100は、送信者から受け付けた指示に基づいて、送信者公開鍵を、情報処理装置200に送信する。
【0145】
情報処理装置200は、送信者端末100から送信された送信者公開鍵を取得し、パブリックチェーン上において記録されるようにピア・ツー・ピアネットワークに送信する。また、情報処理装置200は、送信者公開鍵を用いて、対象情報の開示の同意に関する送信者の署名を、第2送信者署名として生成し、パブリックチェーン上において記録されるようにピア・ツー・ピアネットワークに送信する(ステップS20A)。
【0146】
情報処理装置200は、受信者端末300から第2ハッシュ値および第2受信者署名を受信した後、第1ハッシュ値および第2ハッシュ値、第1受信者署名および第2受信者署名が一致しているか否かを検証するとともに、送信者署名のマッチング検証も実施する(ステップS20B)。具体的には、情報処理装置200は、ステップS201の処理において受信した第1送信者署名と、ステップS20Aの処理において生成された第2送信者署名とが一致しているか否かを検証する。
【0147】
以上のように、変形例に係る情報処理装置200は、受信者に対象情報を取得させた送信者から、前記対象情報の開示の同意に関する送信者の第2送信者署名を生成するための送信者公開鍵を取得し、取得した送信者公開鍵を用いて第2送信者署名を生成する。そして、情報処理装置200は、送信者から取得した第1送信者署名と、生成した第2送信者署名とが、一致しているか否かを検証する。
【0148】
これにより、第1ハッシュ値および第1送信者署名を送信した送信者と、暗号化された対象情報を送信した送信者とが、一致していることを確認することができる。すなわち、対象情報の開示に同意した人物と、実際に対象情報を開示した人物が同一であることを確認することができる。
【0149】
また、情報処理装置200は、第1送信者署名と第2送信者署名とが一致している場合、送信者が正当な送信者であると判断してその旨をパブリックチェーン上において記録されるように送信し、第1送信者署名と第2送信者署名とが一致していない場合、送信者が正当な送信者でないと判断してその旨をパブリックチェーン上において記録されるように送信する。これにより、送信者が正当であるか否かがパブリックチェーン上において公開されるため、正当な送信者によって対象情報が送信されているか否かを明確に把握することができる。
【0150】
本発明は、上述した実施形態および変形例のみに限定されるものではなく、特許請求の範囲内において、種々改変することができる。
【0151】
例えば、情報処理装置200が有する機能の一部または全部を、送信者端末100または受信者端末300の機能として実装してもよい。
【0152】
また、送信者端末100、情報処理装置200、受信者端末300は、それぞれ複数の装置により構成されてもよく、あるいはいずれかの装置が他の装置に含まれて単一の装置として構成されてもよい。
【0153】
また、上述したシーケンスチャートは、一部のステップが省略されてもよく、他のステップが追加されてもよい。また各ステップの一部は同時に実行されてもよく、一つのステップが複数のステップに分割されて実行されてもよい。また各ステップの実行順序が変更されてもよい。
【0154】
上述した実施形態に係るシステムにおける各種処理を行う手段および方法は、専用のハードウェア回路、またはプログラムされたコンピューターのいずれによっても実現することが可能である。上記プログラムは、たとえば、フレキシブルディスクおよびCD-ROM等のコンピューター読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピューター読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶部に転送され記憶される。また、上記プログラムは、単独のアプリケーションソフトとして提供されてもよいし、システムの一機能としてその装置のソフトウェアに組み込まれてもよい。
【0155】
なお、以下の実施形態も本発明の範囲に含まれる:請求項2の特徴を有する請求項1に記載の情報処理装置;請求項3の特徴を有する請求項1または2に記載の情報処理装置;請求項4の特徴を有する請求項1~3のいずれかに記載の情報処理装置;請求項5の特徴を有する請求項4に記載の情報処理装置;請求項6の特徴を有する請求項1~5のいずれかに記載の情報処理装置;請求項7の特徴を有する請求項1~6のいずれかに記載の情報処理装置;請求項8の特徴を有する請求項1~7のいずれかに記載の情報処理装置;請求項9の特徴を有する請求項8に記載の情報処理装置;請求項10の特徴を有する請求項1~9のいずれかに記載の情報処理装置;請求項12の特徴を有する請求項11に記載の情報処理装置;請求項13の特徴を有する請求項11または請求項12に記載の情報処理装置;コンピューターを請求項1~10のいずれかに記載の情報処理装置として機能させるための情報処理プログラム;請求項1~10のいずれかに記載の情報処理装置において実行される情報処理方法。
【符号の説明】
【0156】
100 送信者端末、
110 CPU、
111 第1送信部、
112 第2送信部、
113 第5送信部、
114 第6送信部、
120 ROM、
130 RAM、
140 ストレージ、
150 通信インターフェース、
160 操作表示部、
170 バス、
200 情報処理装置、
210 CPU、
211 第1取得部、
212 第2取得部、
213 受信者署名生成部、
214 第3取得部、
215 ハッシュ検証部、
216 受信者署名検証部、
217 第4取得部、
218 送信者署名生成部、
219 送信者署名検証部、
21A 報知部、
21B 第5取得部、
21C 利用停止部、
220 ROM、
230 RAM、
240 ストレージ、
250 通信インターフェース、
260 操作表示部、
270 バス、
300 受信者端末、
310 CPU、
311 第2送信部、
312 第4送信部、
320 ROM、
330 RAM、
340 ストレージ、
350 通信インターフェース、
360 操作表示部、
370 バス、
500 ブロックチェーン。
図1
図2
図3
図4
図5A
図5B
図5C
図6
図7