JP7174300B2 - コンテンツ利用システム、許諾端末、閲覧端末、配信端末、および、コンテンツ利用プログラム - Google Patents
コンテンツ利用システム、許諾端末、閲覧端末、配信端末、および、コンテンツ利用プログラム Download PDFInfo
- Publication number
- JP7174300B2 JP7174300B2 JP2021528059A JP2021528059A JP7174300B2 JP 7174300 B2 JP7174300 B2 JP 7174300B2 JP 2021528059 A JP2021528059 A JP 2021528059A JP 2021528059 A JP2021528059 A JP 2021528059A JP 7174300 B2 JP7174300 B2 JP 7174300B2
- Authority
- JP
- Japan
- Prior art keywords
- content
- signature
- access information
- terminal
- public key
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
- G06F21/645—Protecting data integrity, e.g. using checksums, certificates or signatures using a third party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3252—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/68—Special signature format, e.g. XML format
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Description
本発明は、コンテンツ利用システム、許諾端末、閲覧端末、配信端末、および、コンテンツ利用プログラムに関する。
デジタル仮想通貨の取引において、非中央集権型の分散台帳の一種であるブロックチェーンが用いられる。ブロックチェーンでは、参加者間の仮想通貨の取引の情報がブロックという単位でまとめられ、ブロックチェーンを形成する。ブロックチェーンの構造に関し、ブロックチェーンは、チェーンという言葉のとおり、ブロックが直前のブロックと紐付けが行われる形で記録される。具体的には、直前のブロックのハッシュ値をブロックの中に含むことで、各ブロックが紐付けされる。
これにより、ある時点のブロックの中に含まれた取引情報を改竄するには、ブロックのハッシュ値が変わることからそれ以降全てのブロックの改竄が必要となる。また、ブロックを追加する際、それを追加することによってブロックのハッシュ値が特定条件と合致するような付加情報(ナンス)を発見する処理(マイニング)が必要である。この処理の計算量が非常に大きなことも相まって、ブロックチェーンは、改竄に対して極めて強固な仕組みにより形成される。
またEthereum(イーサリアム)において、プログラマブルブロックチェーンが提案されている。コントラクトとも称されるプログラムコードが、予めブロックチェーンに登録される。コントラクトの実行を指定したトランザクションが入力されると、トランザクションがブロックに含まれる際、そのプログラムコードが実行される。実行結果は、ブロックチェーンのステートデータに格納される。
一方、特権的なノードを仮定しない分散ファイル管理システムとして、IPFS(InterPlanetary File System)がある(非特許文献1参照)。IPFSにおいて、ファイルは特定サイズのブロックに分割されて、IPFSに属する端末において管理される。ファイルは、ハッシュ値から生成される識別子により認識され、ファイルの改竄はできない。IPFSは、分散性およびID構造により、透明性および信頼性を確保できる。
またブロックチェーンの改竄に対して極めて強固な仕組みである点に着目し、分散ファイル管理システムと、ブロックチェーンとを融合したシステムがある(非特許文献2参照)。非特許文献2において、ファイルは、チャンクに分割される。各チャンクは、DAG(Directed Acyclic Graph:向非巡回グラフ)でまとめられ、チャンクには、リンク先のチャンクの情報が記載される。非特許文献2においてDAGを形成する全てのチャンクの識別子が、それぞれブロックチェーンに登録される。
Juan Banet,"IPFS - Content Addressed, Versioned, P2P File System (DRAFT 3)",<https://ipfs.io/ipfs/QmR7GSQM93Cx5eAg6a6yRzNde1FQv7uL6X1o4k7zrJa3LX/ipfs.draft3.pdf>
Mathis Steichen, 他、"Blockchain-Based, Decentralized Access Control for IPFS":<https://www.researchgate.net/publication/327034734_Blockchain-Based_Decentralized_Access_Control_for_IPFS>
非特許文献2では、IPFSで管理されるファイルへアクセス可能なユーザのリストは、ブロックチェーン上のスマートコントラクト内で保持される。リストにおいて、ユーザはEthereum上の識別子、すなわちEthereumアドレスによって指定される。アドレスはユーザが生成した楕円曲線暗号による公開鍵から算出され、ユーザが端末で管理する秘密鍵に一意に紐づいている。
非特許文献2では、このリストはブロックチェーン上に共有される。このため、ユーザ自身が当該ファイルのアクセス権を確認可能であると同時に、他の第三者からも本ユーザがアクセス可能であることが判別されるといったプライバシー上の懸念がある。匿名性を高めるための一つの方法は、固定のアドレス(公開鍵)を使い回さずに、ファイルごとに異なるアドレスを使用することである。しかし、この方法は、複数のアドレス分の秘密鍵を生成および管理する必要が生じ、ユーザビリティを損ねる。
本発明は、上記課題を鑑みてなされたものであり、本発明の目的は、ブロックチェーン上で管理されるアクセス情報の匿名性を確保する技術を提供することにある。
上記目的を達成するため、本発明の一態様は、許諾端末と閲覧端末とを備えるコンテンツ利用システムであって、前記許諾端末は、コンテンツのコンテンツ公開鍵と、前記コンテンツの閲覧者のユーザ公開鍵とを用いて、前記コンテンツに対するアクセス情報を生成する生成部と、前記アクセス情報をブロックチェーンに登録する登録部と、を備え、前記アクセス情報は、前記コンテンツ公開鍵と前記ユーザ公開鍵とを集約した集約公開鍵と、前記コンテンツ用のメッセージと、前記メッセージを前記コンテンツ公開鍵に対応するコンテンツ秘密鍵で署名したコンテンツ署名とを含み、前記閲覧端末は、要求するコンテンツのアクセス情報を前記ブロックチェーンから取得し、前記アクセス情報のメッセージをユーザ秘密鍵で署名したユーザ署名と、前記アクセス情報のコンテンツ署名とを集約した集約署名を、前記アクセス情報の集約公開鍵で検証する確認部と、検証に成功した場合、前記ユーザ署名または前記集約署名を含むコンテンツ要求を送信する要求部と、を備える。
本発明の一態様の許諾端末は、コンテンツのコンテンツ公開鍵と、前記コンテンツの閲覧者のユーザ公開鍵とを用いて、前記コンテンツに対するアクセス情報を生成する生成部と、前記アクセス情報をブロックチェーンに登録する登録部と、を備え、前記アクセス情報は、前記コンテンツ公開鍵と前記ユーザ公開鍵とを集約した集約公開鍵と、前記コンテンツ用のメッセージと、前記メッセージを前記コンテンツ公開鍵に対応するコンテンツ秘密鍵で署名したコンテンツ署名とを含む。
本発明の一態様の閲覧端末は、要求するコンテンツのアクセス情報をブロックチェーンから取得し、前記アクセス情報のメッセージをユーザ秘密鍵で署名したユーザ署名と、前記アクセス情報のコンテンツ署名とを集約した集約署名を、前記アクセス情報の集約公開鍵で検証する確認部と、検証に成功した場合、前記ユーザ署名または前記集約署名を含むコンテンツ要求を、送信する要求部と、を備える。
本発明の一態様の配信端末は、要求するコンテンツのアクセス情報をブロックチェーンから取得し、前記アクセス情報のメッセージをユーザ秘密鍵で署名したユーザ署名と、前記アクセス情報のコンテンツ署名とを集約した集約署名を、前記アクセス情報の集約公開鍵で検証する確認部と、検証に成功した場合、前記ユーザ署名を含むコンテンツ要求を、許諾端末に送信する要求部と、コンテンツ要求に応じて、当該コンテンツに対応するアクセス情報を前記ブロックチェーンから取得し、前記アクセス情報のコンテンツ署名と、前記コンテンツ要求に含まれるユーザ署名とを集約した集約署名を前記アクセス情報の集約公開鍵で検証し、前記コンテンツ要求を許諾するか否かを判定する共有制御部と、を備える。
本発明の一態様の配信端末は、要求するコンテンツのアクセス情報をブロックチェーンから取得し、前記アクセス情報のメッセージをユーザ秘密鍵で署名したユーザ署名と、前記アクセス情報のコンテンツ署名とを集約した集約署名を、前記アクセス情報の集約公開鍵で検証する確認部と、検証に成功した場合、前記集約署名を含むコンテンツ要求を、許諾端末に送信する要求部と、コンテンツ要求に応じて、当該コンテンツに対応するアクセス情報を前記ブロックチェーンから取得し、前記コンテンツ要求に含まれる前記集約署名を前記アクセス情報の集約公開鍵で検証し、前記コンテンツ要求を許諾するか否かを判定する共有制御部と、を備える。
本発明の一態様は、上記許諾端末として、コンピュータを機能させることを特徴とするコンテンツ利用プログラムである。
本発明の一態様は、上記閲覧端末として、コンピュータを機能させることを特徴とするコンテンツ利用プログラムである。
本発明の一態様は、上記配信端末として、コンピュータを機能させることを特徴とするコンテンツ利用プログラムである。
本発明によれば、ブロックチェーン上で管理されるアクセス情報の匿名性を確保する技術を提供することができる。
以下、本発明の実施の形態について、図面を参照して説明する。図面の記載において、同一部分には同一符号を付し説明を省略する。
[実施形態の概要]
本実施形態では、通常のブロックチェーン上のアドレスとは別に、匿名化用の公開鍵を定義する。この匿名用公開鍵は、ユーザを識別するための匿名アドレスとしても機能するが、限られた関係者しか知り得ないとする。例えば、アクセス権を与える許諾者は、アクセス権が与えられるユーザから匿名用公開鍵を受け取り、匿名用公開鍵によってユーザを識別する。一方で、この匿名用公開鍵は、関係者以外には配布されないとする。
本実施形態では、通常のブロックチェーン上のアドレスとは別に、匿名化用の公開鍵を定義する。この匿名用公開鍵は、ユーザを識別するための匿名アドレスとしても機能するが、限られた関係者しか知り得ないとする。例えば、アクセス権を与える許諾者は、アクセス権が与えられるユーザから匿名用公開鍵を受け取り、匿名用公開鍵によってユーザを識別する。一方で、この匿名用公開鍵は、関係者以外には配布されないとする。
この匿名用公開鍵は、暗号学的に集約特性を持つ。例えばn個の公開鍵P1,P2,P3,…,Pnが定義されていた場合、その公開鍵は以下のように集約される。
各公開鍵と対となる秘密鍵を使用した署名σ1,σ2,σ3,…,σnを下記のように集約した場合、集約された署名σは、集約された公開鍵Pによって検証可能である。
このような署名鍵の集約が可能な署名アルゴリズムとして、Schnorr署名やBLS(Boneh, Lynn, Shacham)署名などが知られている。
本実施形態では、この集約特性を利用してユーザの匿名化を実現する。匿名化は、ファイルを登録し、アクセス情報(アクセス制御情報)を生成する許諾者の許諾端末によって行われる。まず許諾端末(許諾者)は、コンテンツファイルとユーザの組合せに対して、集約が可能な1つの公開鍵Pc(以降、「匿名用コンテンツ公開鍵」と呼ぶ)を生成する。その後、許諾端末は、匿名用コンテンツ公開鍵Pcと、ユーザから受け取った匿名用ユーザ公開鍵Puとを集約し、匿名化された集約公開鍵Pを生成する。
許諾端末は、この集約公開鍵Pをアクセス権の許諾先としてアクセス情報を作成し、ブロックチェーンに登録する。この時、許諾端末は、アクセス情報として、集約公開鍵Pと、任意のメッセージmと、匿名用コンテンツ秘密鍵scで署名したメッセージmに対する署名値σcとを登録する。
集約の元となる匿名用コンテンツ公開鍵Pcとその秘密鍵scの鍵ペアは、ファイルとユーザの組合せに対し1つランダムに生成される。そのため、例えユーザが匿名用ユーザ公開鍵Puを使い回していたとしても、集約される結果である集約公開鍵Pは毎回異なる値となる。これにより、ユーザが固定の匿名用ユーザ公開鍵Puを用いていたとしても、本実施形態では、匿名性が向上する仕組みを提供できる。
[第1の実施形態]
(コンテンツ利用システムの全体構成)
図1は、本発明の第1の本実施形態に係るコンテンツ利用システムの全体構成を示す図である。本実施形態コンテンツ利用システム1は、ブロックチェーンシステム2(分散台帳システム)と、ファイル管理システム3とを備える。
(コンテンツ利用システムの全体構成)
図1は、本発明の第1の本実施形態に係るコンテンツ利用システムの全体構成を示す図である。本実施形態コンテンツ利用システム1は、ブロックチェーンシステム2(分散台帳システム)と、ファイル管理システム3とを備える。
ブロックチェーンシステム2は、許諾端末4と、閲覧端末5とを備える。これらの端末4、5は、P2P(Peer to Peer)ネットワークであるブロックチェーンのネットワーク21に自律分散的に接続される。なお、ブロックチェーンシステム2は、許諾端末4および閲覧端末5の他にも、複数の制御端末22を備えていてもよい。
ブロックチェーンシステム2に属する各端末4、5、22は、後述するブロックチェーン(分散台帳)と、ブロックチェーンを同期するためのブロックチェーン制御部とを備える。各端末は、ブロックチェーンに記録されたデータおよびトランザクションを相互に検証し、系を維持している。ブロックチェーンは、当該システム2に属する端末間で共有される。ブロックチェーンは、システムに属する端末が発行したトランザクションを含むブロックが繋がったデータである。
なお、本実施形態のブロックチェーンは、スマートコントラクト型ブロックチェーンであって、例えばブロックチェーン基盤技術の1つであるEthereumを用いてもよい。Ethereumは、ブロックチェーンを、状態遷移を記録する分散台帳として用いるためのアプリケーション開発プラットフォームである。ただし、ブロックチェーンは、Ethereumに限定されるものではなく、Ethereum以外を用いてもよい。
ファイル管理システム3は、許諾端末4と、閲覧端末5とを備える。これらの端末4、5は、ファイル管理システム3のネットワーク31に接続される。なお、ファイル管理システム3は、許諾端末4および閲覧端末5の他にも、複数の制御端末32を備えていてもよい。ファイル管理システム3に属する各端末4、5、32は、ネットワーク31を介してP2P接続される。
本実施形態では、ファイル管理システム3は、例えばIPFS等の非中央集権型の分散ファイル管理システムである場合について説明する。分散ファイル管理システムは、当該システムに属する各端末が分散してファイルを管理するシステムである。ただし、ファイル管理システム3は、分散ファイル管理システムに限らない。例えば、ファイル管理システム3に、通常のクラウド型の中央管理されたストレージを利用しても良い。
許諾端末4は、コンテンツへのアクセス(閲覧)を許可する許諾者が利用する端末(ノード)である。許諾端末4は、ブロックチェーンシステム2と、ファイル管理システム3とに接続される。閲覧端末5は、コンテンツの閲覧者が利用する端末であって、ブロックチェーンシステム2と、ファイル管理システム3に接続される。許諾端末4および閲覧端末5は、複数であってもよい。
ブロックチェーンシステム2の制御端末22は、当該システム2を利用するユーザのうち、コンテンツの許諾者および閲覧者以外のユーザが利用する端末である。ファイル管理システム3の制御端末32は、当該システム3を利用するユーザのうち、コンテンツの許諾者および閲覧者以外のユーザが利用する端末である。制御端末22、32の数は、図示する例ではそれぞれ2つであるが、その数に限定されるものではない。また、ブロックチェーンシステム2の制御端末22とファイル管理システム3の制御端末32とは、互いに異なる端末であっても良いし、1つの端末がブロックチェーンの機能と、ファイル管理の機能とを実装しても良い。
(アクセス情報)
本実施形態のブロックチェーンには、コンテンツ利用システム1において利用されるコンテンツデータのアクセス情報(アクセス制御情報)が登録される。アクセス情報は、ファイル管理システム3におけるコンテンツデータの識別子と、閲覧可能なユーザとを紐づける。
本実施形態のブロックチェーンには、コンテンツ利用システム1において利用されるコンテンツデータのアクセス情報(アクセス制御情報)が登録される。アクセス情報は、ファイル管理システム3におけるコンテンツデータの識別子と、閲覧可能なユーザとを紐づける。
図2A、図2Bを参照して、本実施形態のアクセス情報について説明する。アクセス情報は、ファイル管理システム3に登録するコンテンツデータへのアクセス権を管理するための情報である。アクセス情報は、許諾端末4により作成される。アクセス情報は、ブロックチェーン上に公開され、ブロックチェーンのネットワーク21に接続された他の端末からも閲覧可能である。アクセス情報は、各コンテンツの識別子に対して、集約公開鍵と、メッセージと、署名とが対応付けて格納されている。
図2A、図2Bに示すアクセス情報は、コンテンツ識別子と、集約公開鍵と、メッセージと、匿名用コンテンツ秘密鍵によって署名された署名(署名値)とを含む。コンテンツ識別子は、コンテンツデータを一意に特定する。コンテンツ識別子は、例えば、ファイル管理システム3に登録されたコンテンツのハッシュ値などであっても良い。
図2Aに示す例では、コンテンツ識別子Ciが示され、ここでi=1,2,3とし、それぞれ異なるコンテンツを扱うことを示す。このコンテンツ識別子はユーザを認証するための要素セット(Pi,mi,σc
i)と紐づいている。ここでPは集約公開鍵、mは任意のメッセージ、σcはメッセージmに対して匿名用コンテンツ秘密鍵を用いて作成した署名である。
図2Bは、1つのコンテンツ識別子に対して、複数ユーザが紐づいている例を示す。この場合、コンテンツ識別子は、Ciで表現される。このコンテンツ識別子は、ユーザを認証するための要素セット(Pi,j,mi,j,σc
i,j)と紐づいている。ここでi=1,2,3はそれぞれ異なるコンテンツを扱うことを示し、j=1,2は異なるユーザを扱うことを示す。
なお、以降は、複数コンテンツおよび複数のユーザの場合を除き、アクセス情報を、コンテンツ識別子Cと、認証要素セット(P,m,σc)とで表記し、上付き添字を省略して記述する。
以下、署名の集約について説明する。本実施形態では、署名集約を可能とするために双線形写像(ペアリング)を利用した署名アルゴリズムを用いる。
G1,G2を素数位数qの加法巡回群とし、双線形写像eを用いて下記が成り立つ位数qの乗法巡回群GTが存在する。
また任意長の入力Mが写像した先がG1となるようにハッシュ関数を定める。
有限体Fqから秘密鍵sを以下のように選ぶ。
公開パラメータQ ∈G2を生成元として、公開鍵Pは以下となる。
この時、上記の秘密鍵sを用いて、メッセージmのハッシュ値H(m)に対する署名は以下となる。
このとき、以下の式が成り立つかを検証する。
上記検証において、ペアリングの双線形性を利用する。ペアリングの双線形性においては、下記の関係式が成り立つ。
したがって、上記の検証過程では、P=sQ、σ=sH(m)であるからσが正しい署名であるならば、下記の式が成り立つ。
ここでペアリングを用いた署名においては、署名鍵と公開鍵において集約特性が成り立つことを確認する。
例えば公開鍵、秘密鍵、署名の組(P1,s1,σ1)に対して異なる組(P2,s2,σ2)を定義し、次のように集約された署名σと公開鍵Pを作るとする。
この集約署名σと集約公開鍵Pに対しても下記の双線形性を利用して、署名の検証が可能である。
ここで、アクセス情報の説明に戻る。アクセス情報における集約公開鍵Pは、匿名用コンテンツ公開鍵Pcと匿名用ユーザ公開鍵Puとを集約したものである。この時、検証に係る式は下記のようになる。
上記より、ユーザからメッセージmに対する署名値σuが提出されれば、集約公開鍵Pを使って集約署名値が検証可能となる。この署名値σuは、匿名用ユーザ公開鍵Puと対になる秘密鍵suを所持していないと作ることはできない。
従ってアクセス情報を見たユーザは、自身が持つ匿名用ユーザ公開鍵Puを使って、自身にアクセス権があるか否かをブロックチェーン上で確認できる。
(許諾端末)
図3を参照して、本実施形態の許諾端末4を説明する。許諾端末4は、記憶装置41、処理装置42、通信制御装置43を備える。
図3を参照して、本実施形態の許諾端末4を説明する。許諾端末4は、記憶装置41、処理装置42、通信制御装置43を備える。
記憶装置41には、処理装置42が処理を実行するための入力データ、出力データおよび中間データなどの各種データを記憶する。処理装置42は、記憶装置41に記録されたデータを読み書きし、通信制御装置43とデータを入出力して、許諾端末4における処理を実行する。通信制御装置43は、許諾端末4がブロックチェーンのネットワーク21またはファイル管理のネットワーク31に属する端末と通信可能に接続するためのインタフェースである。
記憶装置41は、ブロックチェーン411と、許諾端末4が有するコンテンツデータ412と、鍵管理データ413と、許諾端末4の各機能を実行するための許諾端末用プログラム414とを記憶する。
ブロックチェーンデータ411は、例えばブロックチェーン基盤のEthereumでは、ブロックチェーン本体のデータ(ブロックチェーン)と、ステートデータとを含む。ブロックチェーン本体のデータは、複数のブロックがチェーン状に連結して形成される。各ブロックは、複数のトランザクションを含む。トランザクションは、例えば、スマートコントラクトを設定し、また、スマートコントラクトの関数を実行する。
ステートデータは、スマートコントラクト毎にデータ領域が設けられている。スマートコントラクトの実行に伴って、対応するスマートコントラクトのデータ領域が更新される。本実施形態においては、ステートデータとして、上述したアクセス情報を管理するスマートコントラクトと、そのデータとが記憶装置41に登録される。
コンテンツデータ412は、コンテンツ本体であるコンテンツファイル(コンテンツともいう)と、コンテンツをファイル管理システム3で動作させるために必要な管理データ(ルーティング情報等)と含む。
鍵管理データ413は、本実施形態で使用する署名用の秘密鍵を保管する。本実施形態では2種類の鍵がある。第1の鍵は、ブロックチェーンのトランザクションを生成するための秘密鍵(ブロックチェーン用秘密鍵)である。この秘密鍵は、ブロックチェーンシステム2のプロトコルに従って、トランザクションに署名を付与するための秘密鍵である。Ethereumでは楕円曲線暗号を使用した秘密鍵を保持している。
第2の鍵は、本実施形態特有の匿名化のための秘密鍵(匿名用秘密鍵)である。本実施形態においては、この秘密鍵は、BLS署名を生成するための秘密鍵を用いるものとするが、鍵の集約が可能な署名であればBLS署名に限られない。匿名用秘密鍵には、コンテンツに関する秘密鍵(匿名用コンテンツ秘密鍵)とユーザに関する秘密鍵(匿名用ユーザ秘密鍵)とを含む。
処理装置42は、ブロックチェーン制御部421と、ファイル管理部422と、生成部423と、登録部424と、共有制御部425とを備える。
ブロックチェーン制御部421は、ネットワーク21に接続された端末と自律分散的に協調してブロックチェーンの系を維持する。ブロックチェーン制御部421は、ブロックチェーン411にアクセスし、ブロックチェーン411のデータを読み出し、または、更新する。
ファイル管理部422は、許諾者(ユーザ)からの指示に基づいて、任意のコンテンツをファイル管理システム3に登録し、コンテンツ識別子Cを取得する。本実施形態では、IPFS等の分散型ファイル管理システムを使用しているため、まずは、許諾端末4(ローカル端末)にコンテンツ(コンテンツファイル)が保存される。コンテンツは、共有制御部425の制御によって、必要に応じてファイル管理システム3を介して他の端末に共有可能である。従って、他の端末にコンテンツのありかを共有する際に必要な管理データ(ルーティング情報)などは、通信制御装置43介してファイル管理システム3のネットワーク31で共有される。
生成部423は、コンテンツのコンテンツ公開鍵と、コンテンツの閲覧者のユーザ公開鍵とを用いて、コンテンツに対するアクセス情報を生成する。具体的には、生成部423は、コンテンツへのアクセスを許諾する閲覧者(ユーザ)の匿名用ユーザ公開鍵Puと、コンテンツ識別子Cとのペアを入力として、匿名用コンテンツ鍵ペア(Pc,sc)を生成し、認証要素セット(P,m,σc)を出力する。生成部423は、匿名用ユーザ公開鍵Puをあらかじめ取得しているものとする。
認証要素セットは、匿名用コンテンツ公開鍵Pcと、ユーザ公開鍵Puとを集約した集約公開鍵Pと、コンテンツ用のメッセージmと、メッセージmを匿名用コンテンツ公開鍵Puに対応する匿名用コンテンツ秘密鍵scで署名したコンテンツ署名σcとを含む。なお、匿名用コンテンツ鍵ペアを生成するときに必要な公開パラメータQは事前に設定され、他のユーザと共有しているものとする(すなわちPc=scQ)。
ここで、生成部423は、入力された匿名用ユーザ公開鍵Puと、生成した匿名用コンテンツ公開鍵Pcとを用いて鍵集約(P= Pu+Pc)を行う。σcは、メッセージmを匿名用コンテンツ秘密鍵scで署名した署名値である。すなわち、σc=scH(m)である。
署名用のメッセージmは、(Pu,C)のペア毎(つまり、ユーザとコンテンツの組み合わせ毎)に、異なるmが生成できれば良い。例えば、集約署名Pにコンテンツ識別子Cを結合したデータをmとしても良い。その場合、PとCによりmが決定されるため、敢えてmを指定せずに、認証要素セットとして(P, σc)を出力しても良い。生成部423が生成した匿名用コンテンツ秘密鍵scは、鍵管理データ413として記憶装置41に格納される。
登録部424は、生成部423で生成したアクセス情報を、ブロックチェーン上に登録する。登録部424は、通信制御装置43を介してブロックチェーンネットワーク21にトランザクションを発行することにアクセス情報をブロックチェーン上に登録する。本実施形態では、登録部424は、コンテンツ識別子Cに対して認証要素セット(P,m,σc)または(P,σc)を対応する値として紐づけて登録するためのトランザクションを発行する。
共有制御部425は、コンテンツ要求に応じて、当該コンテンツに対応する認証要素セット(P,m,σc)(すなわち、アクセス情報)をブロックチェーンから取得し、認証要素セットのコンテンツ署名σcと、コンテンツ要求に含まれるユーザ署名σuとを集約した集約署名σを認証要素セットの集約公開鍵Pで検証し、コンテンツ要求を許諾するか否かを判定する。
具体的には、共有制御部425は、許諾者が自端末に登録したコンテンツを、他端末からの共有の要求を受けた際に、要求元にアクセス権があるか否かを判定し、アクセス権がある場合に、共有する。例えばここで、閲覧端末5からファイル管理システム3を介し、コンテンツ識別子を指定してコンテンツ共有の要求があるとする。閲覧端末5は、コンテンツ識別子に対応する、閲覧者の匿名用署名σuを添付して要求を行う。要求を受けた共有制御部425は、ブロックチェーンからアクセス情報を取得し、閲覧者にアクセス権があるか否かを判定する。
判定は以下の手順で行われる。まず、共有制御部425は、コンテンツ識別子に対応する認証要素セット(P,m,σc)に対して、集約署名σ=σc+σuを算出する。次に,共有制御部425は、集約署名σを集約公開鍵Pで検証する。即ち、共有制御部425は、e(H(m),P)=e(σ,Q)が成り立つか否かにより、閲覧者の署名σuを検証する。共有制御部425は、前記式が成り立つ場合、コンテンツ識別子に対応するコンテンツを共有する。
(閲覧端末)
図4を参照して、本実施形態の閲覧端末5を説明する。閲覧端末5は、記憶装置51と、処理装置52と、通信制御装置53とを備える。
図4を参照して、本実施形態の閲覧端末5を説明する。閲覧端末5は、記憶装置51と、処理装置52と、通信制御装置53とを備える。
記憶装置51には、処理装置52が処理を実行するための入力データ、出力データおよび中間データなどの各種データを記憶する。処理装置52は、記憶装置51に記録されたデータを読み書きし、通信制御装置53とデータを入出力して、閲覧端末5における処理を実行する。通信制御装置53は、閲覧端末5がブロックチェーンシステム2のネットワーク21またはファイル管理システムのネットワーク31に属する端末と通信可能に接続するためのインタフェースである。
記憶装置51は、ブロックチェーン511と、コンテンツデータ512と、鍵管理データ513と、閲覧端末5の各機能を実行するための閲覧端末用プログラム514とを記憶する。ブロックチェーン511は、許諾装置4のブロックチェーン411と同様であるため、ここでは説明を省略する。
コンテンツデータ512は、閲覧端末5が有するコンテンツの本体であるコンテンツファイルと、当該コンテンツをファイル管理システム3で動作させるために必要な管理データ(ルーティング情報等)と含む。
鍵管理データ513は、本実施形態で使用する署名用の秘密鍵を保管する。第1の鍵は、ブロックチェーンのトランザクションを生成するための秘密鍵(ブロックチェーン用秘密鍵)である。第2の鍵は、匿名用秘密鍵である。匿名用秘密鍵には、ユーザに関する秘密鍵(匿名用ユーザ秘密鍵)を含む。
処理装置52は、ブロックチェーン制御部521と、鍵管理部522と、確認部523と、要求部524と、同期部525とを備える。ブロックチェーン制御部521は、許諾装置4のブロックチェーン制御部421と同様であるため、ここでは説明を省略する。
鍵管理部522は、閲覧者(ユーザ)からの指示に基づいて、匿名用ユーザ鍵ペア(Pu, su)を生成する。許諾端末4と共有する公開パラメータQにより、Pu=suQが成り立つ。生成した秘密鍵suは、鍵管理データ513として記憶装置51に格納される。
確認部523は、コンテンツ識別子Cで識別されるコンテンツに対して、ブロックチェーン上でアクセス権が設定されているか否かを確認する。具体的には、確認部523は、要求するコンテンツのアクセス情報(認証要素セット(P,m,σc))をブロックチェーンから取得し、アクセス情報のメッセージmをユーザ秘密鍵suで署名したユーザ署名σuと、アクセス情報のコンテンツ署名σcとを集約した集約署名σを、アクセス情報の集約公開鍵Pで検証する。
ここで、閲覧端末5は、事前に許諾端末4に匿名用ユーザ公開鍵Puを共有し、許諾端末4によってブロックチェーン上に,コンテンツ識別子Cに対する匿名用ユーザ公開鍵Puに係るアクセス権が設定されているとする。この場合、確認部523は、コンテンツ識別子Cをクエリとしてブロックチェーン上のスマートコントラクトに問い合わせ、認証要素セット(P,m,σc)を取得する。認証要素セットには、mが明示的に含まれず、PとCを結合して一意に算出される値をmとしても良い。
確認部523は、メッセージmに対する閲覧者の署名σuを生成する。閲覧者の署名σuは、σu=suH(m)となる。確認部523は、集約署名σ=σc+σuを算出する。そして、確認部523は、集約公開鍵Pと、算出した集約署名σとを用いて、e(H(m),P)=e(σ,Q)が成り立つか否かにより、閲覧者の署名σuを検証する。確認部523は、前記式が成り立つ場合、署名検証に成功したことと、検証に用いた閲覧者の署名σuとを出力する。
要求部524は、検証に成功した場合、ユーザ署名σuを含むコンテンツ要求を送信する。具体的には、要求部524は、閲覧者(ユーザ)からの指示に基づいて、任意のコンテンツの取得をファイル管理システム3に要求する。要求には、コンテンツ識別子Cおよび閲覧者のユーザ署名σuが必要である。要求部524は、確認部523を用いて、コンテンツのアクセス権を確認し、閲覧者の署名σuを取得する。そして、要求部524はコンテンツ識別子Cおよび閲覧者の署名σuと含むコンテンツ要求をファイル管理システム3に送信する。ファイル管理システム3は、コンテンツ識別子Cをキーとして、実体となるファイルを所有する許諾端末4にアクセスし、許諾端末4の共有制御部425に対してコンテンツ識別子Cおよび閲覧者の署名σuを含むコンテンツ要求を送信する。
同期部525は、コンテンツ要求に対して、許諾端末4からコンテンツの共有が許諾された場合に、ファイル管理システム3を介してコンテンツファイルを閲覧端末5に同期する。同期されたコンテンツファイルは記憶装置51に格納される。
(コンテンツ利用システムの動作)
次に、本実施形態のコンテンツ利用システムの動作について説明する。
次に、本実施形態のコンテンツ利用システムの動作について説明する。
図5および図6は、コンテンツ利用システムの動作を示すシーケンス図である。S11からS16は、許諾端末4がコンテンツを登録した際に、ブロックチェーン上に対応する認証要素セット(P,m,σc)を登録する処理である。S21からS28は、ブロックチェーン上に登録された(P,m,σc)を閲覧端末5が取得し、コンテンツファイルの共有を閲覧者の署名σuを添えて要求する処理である。S29からS34は、要求を受信した許諾端末4が集約署名を検証し、コンテンツファイルを送信する処理である。以下に、図5および図6を参照して具体的に説明する。
許諾端末4は、許諾者からの指示に基づいて、任意のコンテンツをファイル管理システム3に登録する(S11)。ファイル管理システム3がIPFSなどの分散ファイル管理システムの場合、S11でファイル管理システム3に登録されるのは、端末のネットワークアドレス、コンテンツの場所などを示すルーティング情報であり、コンテンツ本体(コンテンツファイル)は許諾者端末4自身が保持する。なお、ファイル管理システム3が中央集権的なクラウドサーバ等の場合は、S11でコンテンツ本体がファイル管理システム3に登録される。
許諾端末4は、ファイル管理システム3から当該コンテンツに対するコンテンツ識別子Cを取得する(S12)。許諾端末4(生成部423)は、アクセス情報を生成する。具体的には、許諾端末4は、コンテンツへのアクセスを許諾する閲覧者(ユーザ)の匿名用ユーザ公開鍵Puと、コンテンツ識別子Cとのペアを入力として、匿名用コンテンツ鍵ペア(Pc,sc)を生成する(S13)。
そして、許諾端末4は、匿名用ユーザ公開鍵Puと、生成した匿名用コンテンツ公開鍵Pcとを用いて鍵集約(P= Pu+Pc)を行う(S14)。また、許諾端末4は、匿名用コンテンツ鍵ペア(Pc,sc)の秘密鍵scを用いて所定のメッセージmに署名し、署名値σc=scH(m)を生成する(S15)。
そして、許諾端末4は、アクセス情報として、コンテンツ識別子Cと、認証要素セット(P,m,σc)とを、ブロックチェーン上に登録する(S16)。具体的には、許諾端末4は、アクセス情報を登録するトランザクションを生成し、当該トランザクションをブロックチェーンのネットワーク21に発行する。これにより、コンテンツ識別子Cの認証要素セット(P,m,σc)が、ネットワーク21に接続された端末の記憶装置に、ブロックチェーンデータとして登録される。
閲覧端末5は、閲覧者からの指示に基づいて、匿名用ユーザ鍵ペア(Pu, su)を生成する(S21)。なお、許諾端末4と共有する公開パラメータQにより、Pu=suQが成り立つ。
そして、閲覧端末5は、コンテンツ識別子Cのコンテンツを要求するために、当該コンテンツに対して、ブロックチェーン上でアクセス権が設定されているか否かを確認する。具体的には、閲覧端末5は、コンテンツ識別子Cをクエリとして、自身の閲覧端末5のブロックチェーン511上のスマートコントラクトに問い合わせ(S22)、コンテンツ識別子Cに対応する認証要素セット(P,m,σc)を取得する(S23)。
そして、閲覧端末5は、メッセージmに対する閲覧者の署名σu=suH(m)を生成する(S24)。また、閲覧端末5は、集約署名σ=σc+σuを算出し、集約公開鍵Pと、算出した集約署名σとを用いて、e(H(m),P)=e(σ,Q)が成り立つか否かにより、閲覧者の署名σuを検証する(S25)。閲覧端末5は、前記式が成り立つ場合、署名検証に成功したことと、検証に用いた閲覧者の署名σuとを出力する(S26)。
そして、閲覧端末5は、閲覧者からの指示に基づいて、コンテンツをファイル管理システム3に要求する(S27)。すなわち、閲覧端末5は、コンテンツ識別子Cと閲覧者の署名σuとを含むコンテンツ要求をファイル管理システム3に送信する。ファイル管理システム3は、コンテンツ識別子Cをキーとして、コンテンツファイルを所有する許諾端末4にアクセスし、許諾端末4に対してコンテンツ識別子Cおよび閲覧者の署名σuを含むコンテンツ要求を送信する(S28)。
許諾端末4は、許諾者が自端末5に登録したコンテンツを、閲覧端末5からの要求を受けた際に、閲覧端末5にアクセス権があるか否かを判定する。具体的には、許諾端末4は、自端末のブロックチェーン511にアクセスし、コンテンツ識別子Cに対応する認証要素セット(P,m,σc)を、ブロックチェーン511から取得する(S29、S30)。
許諾端末4は、取得した認証要素セット(P,m,σc)に対して、集約署名σ=σc+σuを算出する(S31)。そして、許諾端末4は、集約署名σを集約公開鍵Pで検証する。即ち、許諾端末4は、e(H(m),P)=e(σ,Q)が成り立つか否かを判定し、成り立つ場合、閲覧者にアクセス権があると判定し、コンテンツ識別子Cに対応するコンテンツを閲覧端末5と共有する(S32)。
許諾端末4は、コンテンツを共有する場合、S28のコンテンツ要求に対して許諾する旨の応答と、コンテンツ識別子Cに対応するコンテンツファイルとを、ファイル管理システム3に送信する(S33)。ファイル管理システム3は、S33で受信したコンテンツファイルを要求元の閲覧端末5に送信する(S34)。閲覧端末5は、コンテンツファイルを受信し、は記憶装置51に格納する。
なお、本実施形態において、図2Bに示すように、一つのコンテンツ識別子に対し、複数のユーザが設定されている場合について説明する。コンテンツ識別子Ciに対してi=1で、複数のユーザ(j=1,2,3,・・・,n)に対するアクセス権が設定されている場合、許諾端末4および閲覧端末5は、全ての認証要素セット(P1,j,m1,j,σc
1,j)に対して、総当り的に署名検証を行う(図5:S24、S25、図6:S31、S32)。後述する、第2の実施形態でも同様である。
以上説明した本実施形態では、許諾端末4は、コンテンツ公開鍵Pcとユーザ公開鍵Puとを集約した集約公開鍵Pと、メッセージmと、メッセージmをコンテンツ公開鍵Pcに対応するコンテンツ秘密鍵scで署名したコンテンツ署名σcとを含む認証要素セット(アクセス情報)を、ブロックチェーンに登録する。
これにより、本実施形態では、ブロックチェーンで管理される権限(ここでは、コンテンツへのアクセス権限)を示すアクセス情報の匿名化を確保することができる。したがって、閲覧者(権限を設定される者)が複数のコンテンツに対して固定のユーザ公開鍵を使い回していたとしても、ブロックチェーンに登録されるアクセス情報には、集約公開鍵が設定される。集約公開鍵は、ユーザ公開鍵と、コンテンツ毎に異なるコンテンツ公開鍵とが、許諾者(権限を設定する者)によって集約された公開鍵である。すなわち、本実施形態では、ユーザ公開鍵はブロックチェーンに登録されず、ユーザ公開鍵を匿名化することができる。ブロックチェーンで公開されるアクセス情報(認証要素セット)は、集約公開鍵Pと、メッセージmと、コンテンツ署名σcであるため、第三者は匿名用に用いたユーザ公開鍵Puを取得することができない。
本実施形態では、ブロックチェーンに公開されたアクセス情報を用いて、アクセス権を与える許諾者、および、アクセス権を持つ閲覧者は、当該閲覧者がアクセス権を持つことを判別可能であるが、関係者(許諾者、閲覧者)以外の第三者からは、どのユーザがアクセス可能かを容易に判別できない仕組みを提供することができる。
また、本実施形態では、コンテンツごとに異なるユーザ公開鍵を使用し、ユーザ公開鍵を使い捨てる方式ではなく、固定された特定のユーザ公開鍵を用いることができる。これにより、本実施形態では、複数のユーザ公開鍵の各々の秘密鍵を生成および管理する必要が生じないため、ユーザビリティの低下を回避することができる。
[第2の実施形態]
以下に本発明の第2の実施形態について説明する。本実施形態は、コンテンツの配布が許諾端末以外からも行われる実施形態である。
以下に本発明の第2の実施形態について説明する。本実施形態は、コンテンツの配布が許諾端末以外からも行われる実施形態である。
(コンテンツ利用システムの全体構成)
図7は、第2の実施形態に係るコンテンツ利用システムの全体構成を示す図である。図示するコンテンツ利用システム1Aは、配布端末6を備える点において、図1に示す第1の実施形態のコンテンツ利用システム1と異なり、その他は第1の実施形態のコンテンツ利用システム1と同様である。
図7は、第2の実施形態に係るコンテンツ利用システムの全体構成を示す図である。図示するコンテンツ利用システム1Aは、配布端末6を備える点において、図1に示す第1の実施形態のコンテンツ利用システム1と異なり、その他は第1の実施形態のコンテンツ利用システム1と同様である。
本実施形態において、コンテンツの実体であるコンテンツファイルは、許諾端末4だけでなく配布端末6からも配布される。配布端末6は、コンテンツの共用を閲覧者に許諾する権限を持たないが、コンテンツの実体を保持し、ブロックチェーン上に登録されたアクセス情報に従って、閲覧端末5にコンテンツを共有させる権限を有する。
配布端末6の役割は、まず許諾端末4にコンテンツを要求し、取得したコンテンツを閲覧端末5に再配布することである。これにより、許諾端末4がコンテンツを集中管理することなく、分散して緩やかにコンテンツを流通させることができる。コンテンツの再配布については、アクセス情報に従って、限られたユーザのみに配布される。以下に、配布端末6について説明する。
(配布端末)
図8を参照して、本実施形態の配布端末6を説明する。配布端末6は、記憶装置61と、処理装置62と、通信制御装置63とを備える。
図8を参照して、本実施形態の配布端末6を説明する。配布端末6は、記憶装置61と、処理装置62と、通信制御装置63とを備える。
記憶装置61には、処理装置62が処理を実行するための入力データ、出力データおよび中間データなどの各種データを記憶する。処理装置62は、記憶装置61に記録されたデータを読み書きし、通信制御装置63とデータを入出力して、配布端末6における処理を実行する。通信制御装置63は、配布端末6がブロックチェーンのネットワーク21またはファイル管理のネットワーク31に属する端末と通信可能に接続するためのインタフェースである。
記憶装置61は、ブロックチェーン611と、コンテンツデータ612と、鍵管理データ613と、配布端末6の各機能を実行するための配布端末用プログラム614とを記憶する。ブロックチェーン611は、許諾装置4のブロックチェーン411と同様であるため、ここでは説明を省略する。
コンテンツデータ612は、配布端末6が有するコンテンツの本体であるコンテンツファイルと、当該コンテンツをファイル管理システム3で動作させるために必要な管理データ(ルーティング情報等)と含む。
鍵管理データ613は、本実施形態で使用する署名用の秘密鍵を保管する。第1の鍵は、ブロックチェーンのトランザクションを生成するための秘密鍵(ブロックチェーン用秘密鍵)である。第2の鍵は、匿名用秘密鍵である。匿名用秘密鍵には、配信者の匿名用ユーザ秘密鍵を含む。
処理装置62は、ブロックチェーン制御部621と、鍵管理部622と、確認部623と、要求部624と、同期部625と、共有制御部626とを備える。ブロックチェーン制御部621は、図3に示す許諾装置4のブロックチェーン制御部421と同様であるため、ここでは説明を省略する。
鍵管理部522は、配布者(ユーザ)からの指示に基づいて、匿名用ユーザ鍵ペア(Pd, sd)を生成する。許諾端末4と共有する公開パラメータQにより、Pd=sdQが成り立つ。生成した秘密鍵sdは、鍵管理データ613として記憶装置61に格納される。
許諾端末4は、配布者の匿名用ユーザ公開鍵Pdと、閲覧者の匿名用ユーザ公開鍵Puとを、それぞれ事前に取得している(許諾端末4がこれらの公開鍵を取得する方法および経路は問わない)。許諾端末4が、コンテンツ識別子Cのコンテンツのアクセス権を、配布者および閲覧者に対して設定している場合、それぞれ異なる認証要素セット(P,m,σc)が生成される。ここでは、配布者の認証要素セットをEdとし、閲覧者の認証要素セットをEuと記載する。本実施形態では、認証要素セットEdおよびEuが、ブロックチェーンに登録されている。
確認部623は、コンテンツ識別子Cで識別されるコンテンツに対して、ブロックチェーン上でアクセス権が設定されているか否かを確認する。具体的には、確認部623は、要求するコンテンツのアクセス情報(認証要素セット(P,m,σc))をブロックチェーンから取得し、アクセス情報のメッセージmをユーザ秘密鍵で署名したユーザ署名と、アクセス情報のコンテンツ署名σcとを集約した集約署名σを、アクセス情報の集約公開鍵Pで検証する。
ここでは、配布端末6は、事前に許諾端末4に匿名用ユーザ公開鍵Pdを共有し、許諾端末4によって,ブロックチェーン上にコンテンツ識別子Cに対する匿名用ユーザ公開鍵Pdに係るアクセス権が設定されているとする。この場合、確認部623は、コンテンツ識別子Cをクエリとしてブロックチェーン上のスマートコントラクトに問い合わせ、全ての認証要素セット(P,m,σc)を取得する。認証要素セットには、mが明示的に含まれず、PとCを結合して一意に算出される値をmとしても良い。また、本実施形態では、配布端末6と閲覧端末5の各認証要素セットEd、Euが取得されるが、その他のユーザに対する認証要素セットが含まれていても良い。
確認部623は、Ed、Euを含む全ての認証要素セットに対して、次の処理を繰り返し、いずれかの認証要素セットで下記の式が成り立つ場合、署名検証に成功したと判定する。例えば、認証要素セットEdについて、確認部623は、メッセージmに対する配布者の署名σdを生成する。閲覧者の署名σdは、σd=sdH(m)となる。確認部623は、集約署名σ=σc+σdを算出する。そして、確認部623は、集約公開鍵Pと、算出した集約署名σとを用いて、e(H(m),P)=e(σ,Q)が成り立つか否かにより、配布者の署名σdを検証する。確認部623は、前記式が成り立つ場合、署名検証に成功したことと、検証に用いた配布者の署名σdとを出力する。確認部623は、認証要素セットEdの署名検証に成功した場合は、他の認証要素セットEuの署名検証を行わず、認証要素セットEdの署名検証に失敗した場合は、他の認証要素セットEuについて、同様の処理を繰り返す。
要求部624は、検証に成功した場合、配布者のユーザ署名σdを含むコンテンツ要求を送信する。具体的には、要求部624は、配布者からの指示に基づいて、任意のコンテンツをファイル管理システム3に要求する。要求には、コンテンツ識別子Cおよび配布者の署名σdが必要である。要求部624は、確認部623を用いて、コンテンツのアクセス権を確認し、配布者の署名σdを取得する。そして、要求部624はコンテンツ識別子Cおよび配布者の署名σdと含むコンテンツ要求をファイル管理システム3に送信する。
ファイル管理システム3は、コンテンツ識別子Cをキーとして、コンテンツを所有する許諾端末4にアクセスし、許諾端末4の共有制御部425に対してコンテンツ識別子Cおよび配布者の署名σdを含むコンテンツ要求を送信する。なお、要求部624は、この要求の際にコンテンツ識別子Cと、署名σdに加えて、この署名σdが、いづれの認証要素セットに対する署名かを示すインデックス情報を追加してもよい。
同期部625は、コンテンツ要求に対して、許諾端末4からコンテンツの共有が許諾された場合に、ファイル管理システム3を介してコンテンツファイルを配布端末6に同期する。同期されたコンテンツファイルは記憶装置61に格納される。
共有制御部626は、配布者が自端末に登録したコンテンツを、他端末からの共有の要求を受けた際に、要求元にアクセス権があるか否かを判定し、アクセス権がある場合に、共有する。具体的には、共有制御部626は、コンテンツ要求に応じて、当該コンテンツに対応する閲覧端末5の認証要素セットEu(P,m,σc)(すなわち、アクセス情報)をブロックチェーンから取得し、認証要素セットのコンテンツ署名σcと、コンテンツ要求に含まれるユーザ署名σuとを集約した集約署名σを認証要素セットの集約公開鍵Pで検証し、コンテンツ要求を許諾するか否かを判定する。
例えばここで、閲覧端末5からファイル管理システム3を介し、コンテンツ識別子を指定してコンテンツの要求があるとする。閲覧端末5は、コンテンツ識別子に対応する、閲覧者の匿名用署名σuを添付してコンテンツを要求する。要求を受けた共有制御部626は、ブロックチェーンからアクセス情報を取得し、閲覧者にアクセス権があるか否かを判定する。
判定はコンテンツ識別子に対応する全ての認証要素セット(P,m,σc)に対して次の署名検証を繰り返し、いずれかの認証要素セットで署名検証に成功した場合、閲覧者にアクセス権があると判定する。まず、共有制御部626は、コンテンツ識別子に対応する認証要素セット(P,m,σc)に対して、集約署名σ=σc+σuを計算する。次に,共有制御部425は、集約署名σを集約公開鍵Pで検証する。即ち、共有制御部626は、e(H(m),P)=e(σ,Q)が成り立つか否かにより、閲覧者の署名σuを検証する。共有制御部626は、前記式が成り立つ場合、コンテンツ識別子に対応するコンテンツを共有する。
(コンテンツ利用システムの動作)
次に、本実施形態のコンテンツ利用システムの動作について説明する。
次に、本実施形態のコンテンツ利用システムの動作について説明する。
図9および図10は、コンテンツ利用システムの動作を示すシーケンス図である。ここでは、第1の実施形態と異なる点を中心に記載し、第1の実施形態と同じ処理については簡略化して記載する。
許諾端末4は、許諾者からの指示に基づいて、任意のコンテンツをファイル管理システム3に登録し、ファイル管理システム3から当該コンテンツに対するコンテンツ識別子Cを取得する(S41)。
許諾端末4は、アクセス情報を生成する(S42)。許諾端末4は、配布者の匿名用ユーザ公開鍵Pdと閲覧者の匿名用ユーザ公開鍵Puとを、事前に取得済みであるものとする。許諾端末4は、配布者の匿名用ユーザ公開鍵Pdを用いて、コンテンツ識別子Cのコンテンツに対応する配布者への認証要素セットEd(P,m,σc)を生成する。また、許諾端末4は、閲覧者の匿名用ユーザ公開鍵Puを用いて、コンテンツ識別子Cのコンテンツに対応する閲覧者への認証要素セットEu(P,m,σc)を生成する。なお、認証要素セットの生成については、第1の実施形態と同様である。
そして、許諾端末4は、アクセス情報(コンテンツ識別子Cの認証要素セットEd、Eu)を、ブロックチェーン上に登録する(S43)。
配布端末6は、配布者からの指示に基づいて、匿名用ユーザ鍵ペア(Pd, sd)を生成する(S51)。なお、許諾端末4と共有する公開パラメータQにより、Pd=sdQが成り立つ。生成した秘密鍵sdは、記憶装置61に格納される。
そして、配布端末6は、コンテンツ識別子Cのコンテンツを要求するために、当該コンテンツに対して、ブロックチェーン上でアクセス権が設定されているか否かを確認する。具体的には、配布端末6は、コンテンツ識別子Cをクエリとして、自身の配布端末6のブロックチェーン611上のスマートコントラクトに問い合わせ(S52)、コンテンツ識別子Cに対応する認証要素セットEd、Euを取得する(S53)。
そして、配布端末6は、各認証要素セットE(ここでは、認証要素セットEd、Eu)について、S54~S56の処理をそれぞれ行う。例えば認証要素セットEdの場合、配布端末6は、メッセージmに対する閲覧者の署名σd=sdH(m)を生成する(S54)。また、閲覧端末5は、集約署名σ=σc+σdを算出し、集約公開鍵Pと、算出した集約署名σとを用いて、e(H(m),P)=e(σ,Q)が成り立つか否かにより、配布者の署名σdを検証する(S55)。配布端末6は、前記式が成り立つ場合、署名検証に成功したことと、検証に用いた配布者の署名σdとを出力する(S56)。
配布端末6は、1つの認証要素セットEの署名検証に成功した場合は、残りの認証要素セットEの署名検証を行わない。すなわち、配布端末6は、署名検証に成功するまで、取得した各認証要素セットEの署名検証(S54~S56)を繰り返し行う。
そして、配布端末6は、配布者からの指示に基づいて、コンテンツ識別子Cと配布者の署名σdとを含むコンテンツ要求をファイル管理システム3に送信する(S57)。ファイル管理システム3は、コンテンツ識別子Cをキーとして、コンテンツファイルを所有する許諾端末4にアクセスし、許諾端末4に対してコンテンツ識別子Cおよび配布者の署名σdを含むコンテンツ要求を送信する(S58)。
許諾端末4は、配布端末6からの要求に応じて、自端末4のコンテンツに対して、配布端末6にアクセス権があるか否かを判定する。具体的には、許諾端末4は、コンテンツ識別子Cに対応する全ての認証要素セットE(P,m,σc)をブロックチェーン411から取得する(S59)。
許諾端末4は、取得した各認証要素セットEを用いて配布者の署名σdを検証する(S60)。例えば認証要素セットEd(P,m,σc)の場合、許諾端末4は、集約署名σ=σc+σdを算出し、集約署名σを集約公開鍵Pで検証する。すなわち、許諾端末4は、e(H(m),P)=e(σ,Q)が成り立つか否かを判定し、成り立つ場合、コンテンツ識別子Cのコンテンツに対して配布端末6にアクセス権があると判定し、コンテンツを配布端末6と共有する。許諾端末4は、署名検証に成功するまで、取得した各認証要素セットEの署名検証を行う。
許諾端末4は、アクセス権がある場合、S58のコンテンツ要求に対して許諾する旨の応答と、コンテンツ識別子Cのコンテンツファイルとを、ファイル管理システム3に送信する(S61)。ファイル管理システム3は、受信したコンテンツファイルを要求元の配布端末6に送信する(S62)。配布端末6は、コンテンツファイルを受信し、記憶装置61に格納する。
閲覧端末5は、閲覧者からの指示に基づいて、匿名用ユーザ鍵ペア(Pu, su)を生成する(S71)。許諾端末4と共有する公開パラメータQにより、Pu=suQが成り立つ。そして、閲覧端末5は、コンテンツ識別子Cで識別されるコンテンツに対して、ブロックチェーン上でアクセス権が設定されているか否かを確認する。具体的には、閲覧端末5は、コンテンツ識別子Cをクエリとして、自身の閲覧端末5のブロックチェーン511上のスマートコントラクトに問い合わせ、コンテンツ識別子Cに対応する全ての認証要素セットE(P,m,σc)を取得する(S72)。
そして、閲覧端末5は、取得した各認証要素セットEを用いて閲覧者の署名σuを検証する(S73)。例えば認証要素セットEu(P,m,σc)の場合、閲覧端末5は、メッセージmに対する閲覧者の署名σu=suH(m)を生成すし、集約署名σ=σc+σuを算出する。そして、閲覧端末5は、集約公開鍵Pと、集約署名σとを用いて、e(H(m),P)=e(σ,Q)が成り立つか否かにより、閲覧者の署名σuを検証する。閲覧端末5は、前記式が成り立つ場合、署名検証に成功したことと、検証に用いた閲覧者の署名σuとを出力する。閲覧端末5は、署名検証に成功するまで、取得した各認証要素セットEの署名検証を行う。
そして、閲覧端末5は、閲覧者からの指示に基づいて、コンテンツ識別子Cと閲覧者の署名σuとを含むコンテンツ要求をファイル管理システム3に送信する(S74)。ファイル管理システム3は、コンテンツ識別子Cをキーとして、コンテンツファイルを所有する配布端末6にコンテンツ識別子Cおよび閲覧者の署名σuを含むコンテンツ要求を送信する(S75)。
配布端末6は、閲覧端末5からの要求に応じて、自端末6で保持するコンテンツのアクセス権が閲覧端末5にあるか否かを判定する。具体的には、配布端末6は、自端末6のブロックチェーン611にアクセスし、コンテンツ識別子Cに対応する全ての認証要素セットEd、Euを、ブロックチェーン611から取得する(S76)。
配布端末6は、取得した全ての認証要素セットEd、Euを用いて、閲覧者の署名σuを検証する(S77)。署名σuを検証はS60と同様である。配布端末6は、取得した認証要素セットEd、Euのいずれかを用いた署名σuの検証に成功した場合、コンテンツに対して閲覧端末5にアクセス権があると判定し、コンテンツを閲覧端末5と共有する。
配布端末6は、アクセス権がある場合、S75のコンテンツ要求に対して許諾する旨の応答と、コンテンツ識別子Cのコンテンツファイルとを、ファイル管理システム3に送信する(S78)。ファイル管理システム3は、コンテンツファイルを要求元の閲覧端末5に送信する(S79)。閲覧端末5は、コンテンツファイルを受信し、記憶装置51に格納する。
以上説明した本実施形態の配布端末6は、匿名用コンテンツ鍵Pcを保管する必要はなく、コンテンツを要求された際に、要求元の閲覧端末5が送付したユーザ署名σuと、ブロックチェーンで公開されている認証要素セット(P,m,σc)とを用いて要求元にアクセス権限があるかを判定することができる。
また、本実施形態の配布端末6は、閲覧端末5に匿名用ユーザ公開鍵Puを要求しない。配布端末6が知り得る情報は、認証要素セット(P,m,σc)およびユーザ署名σuのみであり、配布端末6は、これらのデータからは閲覧者の匿名用ユーザ公開鍵Puを取得することはできない。よって、本実施形態では、コンテンツを中継して配布する配布端末6にも、匿名用ユーザ公開鍵Puを知られることなく、閲覧端末5はコンテンツを取得することができる。
なお、上記説明した許諾端末4、閲覧端末5および配布端末6には、例えば、図11に示すような汎用的なコンピュータシステムを用いることができる。図示するコンピュータシステムは、CPU(Central Processing Unit、プロセッサ)901と、メモリ902と、ストレージ903(HDD:Hard Disk Drive、SSD:Solid State Drive)と、通信装置904と、入力装置905と、出力装置906とを備える。メモリ902およびストレージ903は、記憶装置である。このコンピュータシステムにおいて、CPU901がメモリ902上にロードされた所定のプログラムを実行することにより、各装置の各機能が実現される。
なお、許諾端末4、閲覧端末5および配布端末6は、1つのコンピュータで実装されてもよく、あるいは複数のコンピュータで実装されても良い。また、許諾端末4、閲覧端末5および配布端末6は、コンピュータに実装される仮想マシンであっても良い。
許諾端末4用のプログラム、閲覧端末5用のプログラム、および、配布端末6用のプログラムは、HDD、SSD、USB(Universal Serial Bus)メモリ、CD (Compact Disc)、DVD (Digital Versatile Disc)などのコンピュータ読取り可能な記録媒体に記憶することも、ネットワークを介して配信することもできる。
また、本発明は上記実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、以下のような変形例がある。
(変形例1)
BLS署名を使った鍵集約においては、Rouge-key攻撃などの不正な鍵交換の攻撃を防ぐために、署名値や鍵に特定の数を掛けてから集約する対策が行われることがある。本実施形態においても同様の対策を行うことで、より強度の高く匿名性を保つことが可能になる。
BLS署名を使った鍵集約においては、Rouge-key攻撃などの不正な鍵交換の攻撃を防ぐために、署名値や鍵に特定の数を掛けてから集約する対策が行われることがある。本実施形態においても同様の対策を行うことで、より強度の高く匿名性を保つことが可能になる。
この変形例においては、許諾者と閲覧者の間で決定論的に定められた二つの秘密の値tc,tuを用意する。例えば、加法巡回群G1からそれぞれ一意の数値を出力するハッシュ関数H0を匿名用コンテンツ公開鍵Pcと匿名用ユーザ公開鍵Puに適用し、tc,tuとしてもよい。ここで、集約公開鍵を下記のように定義する。
その場合、対応する集約署名は、以下のとおりである。
署名検証では、e(H(m),P')=e(σ',Q)が成り立つか否かを検証し、成り立つ場合に正当な署名であることが確認される。この場合、上記実施形態で記載していたコンテンツ署名σcは、そのtc倍してコンテンツ署名tcσcと置き換えられ、アクセス情報に含まれる認証要素セットは(P',m,tcσc)となる。また閲覧端末5がコンテンツ要求時に添付する閲覧者の情報はtu倍して、tuσuとなる。
(変形例2)
上記実施形態では、閲覧端末5は、コンテンツを要求する際に閲覧者の匿名用ユーザ署名σuを添付しているが、閲覧端末5側で集約署名σ=σc+σuを算出し、集約署名σを添付しても良い。すなわち、閲覧端末5の確認部523は、匿名用ユーザ署名σuの代わりに、集約署名σを含むコンテンツ要求を送信してもよい。この場合、許諾端末4の共有制御部425は、コンテンツ要求に含まれる集約署名σを認証要素セット(アクセス情報)の集約公開鍵で検証し、コンテンツ要求を許諾するか否かを判定する。
上記実施形態では、閲覧端末5は、コンテンツを要求する際に閲覧者の匿名用ユーザ署名σuを添付しているが、閲覧端末5側で集約署名σ=σc+σuを算出し、集約署名σを添付しても良い。すなわち、閲覧端末5の確認部523は、匿名用ユーザ署名σuの代わりに、集約署名σを含むコンテンツ要求を送信してもよい。この場合、許諾端末4の共有制御部425は、コンテンツ要求に含まれる集約署名σを認証要素セット(アクセス情報)の集約公開鍵で検証し、コンテンツ要求を許諾するか否かを判定する。
具体的には、図6のS26においては、「集約署名の検証が成功したら、閲覧者のユーザ署名σuを出力」とあるが、この「ユーザ署名σu」を既に集約された「集約署名σ=σc+σu」と置き換えても良い。この場合、S27およびS28で送信されるコンテンツ要求には、ユーザ署名σuの代わりに集約署名σが含まれる。許諾端末4は、コンテンツ要求に含まれる集約署名σを集約公開鍵Pで検証する。したがって、許諾端末4は、S31の署名集約を計算する必要はなく、演算負荷を低減することができる。
第2の実施形態においても同様である。すなわち、第2の実施形態の閲覧端末5および配布端末6は、匿名用ユーザ署名σu、σdの代わりに、集約署名σを含むコンテンツ要求を送信してもよい(図9、図10:S56-S58、S73-S75)。この場合、第2の実施形態の許諾端末4および配布端末6は、コンテンツ要求に含まれる集約署名σを認証要素セットの集約公開鍵で検証し、コンテンツ要求を許諾するか否かを判定する(図10:S60、S77)。
1、1A:コンテンツ利用システム
2 :ブロックチェーンシステム
3 :ファイル管理システム
4 :許諾端末
421:ブロックチェーン制御部
422:ファイル管理部
423:生成部
424:登録部
425:共有制御部
5 :閲覧端末
521:ブロックチェーン制御部
522:鍵管理部
523:確認部
524:要求部
525:同期部
6 :配布端末
621:ブロックチェーン制御部
622:鍵管理部
623:確認部
624:要求部
625:同期部
626:共有制御部
411、511、611:ブロックチェーン
412、512、612:コンテンツデータ
413、513、613:鍵管理データ
414、514、614:プログラム
2 :ブロックチェーンシステム
3 :ファイル管理システム
4 :許諾端末
421:ブロックチェーン制御部
422:ファイル管理部
423:生成部
424:登録部
425:共有制御部
5 :閲覧端末
521:ブロックチェーン制御部
522:鍵管理部
523:確認部
524:要求部
525:同期部
6 :配布端末
621:ブロックチェーン制御部
622:鍵管理部
623:確認部
624:要求部
625:同期部
626:共有制御部
411、511、611:ブロックチェーン
412、512、612:コンテンツデータ
413、513、613:鍵管理データ
414、514、614:プログラム
Claims (10)
- 許諾端末と閲覧端末とを備えるコンテンツ利用システムであって、
前記許諾端末は、
コンテンツのコンテンツ公開鍵と、前記コンテンツの閲覧者のユーザ公開鍵とを用いて、前記コンテンツに対するアクセス情報を生成する生成部と、
前記アクセス情報をブロックチェーンに登録する登録部と、を備え、
前記アクセス情報は、前記コンテンツ公開鍵と前記ユーザ公開鍵とを集約した集約公開鍵と、前記コンテンツ用のメッセージと、前記メッセージを前記コンテンツ公開鍵に対応するコンテンツ秘密鍵で署名したコンテンツ署名とを含み、
前記閲覧端末は、
要求するコンテンツのアクセス情報を前記ブロックチェーンから取得し、前記アクセス情報のメッセージをユーザ秘密鍵で署名したユーザ署名と、前記アクセス情報のコンテンツ署名とを集約した集約署名を、前記アクセス情報の集約公開鍵で検証する確認部と、
検証に成功した場合、前記ユーザ署名または前記集約署名を含むコンテンツ要求を送信する要求部と、を備えるコンテンツ利用システム。 - コンテンツのコンテンツ公開鍵と、前記コンテンツの閲覧者のユーザ公開鍵とを用いて、前記コンテンツに対するアクセス情報を生成する生成部と、
前記アクセス情報をブロックチェーンに登録する登録部と、を備え、
前記アクセス情報は、前記コンテンツ公開鍵と前記ユーザ公開鍵とを集約した集約公開鍵と、前記コンテンツ用のメッセージと、前記メッセージを前記コンテンツ公開鍵に対応するコンテンツ秘密鍵で署名したコンテンツ署名とを含む許諾端末。 - コンテンツ要求に応じて、当該コンテンツに対応するアクセス情報を前記ブロックチェーンから取得し、前記アクセス情報のコンテンツ署名と、前記コンテンツ要求に含まれるユーザ署名とを集約した集約署名を前記アクセス情報の集約公開鍵で検証し、前記コンテンツ要求を許諾するか否かを判定する共有制御部を備える
請求項2に記載の許諾端末。 - コンテンツ要求に応じて、当該コンテンツに対応するアクセス情報を前記ブロックチェーンから取得し、前記コンテンツ要求に含まれる集約署名を前記アクセス情報の集約公開鍵で検証し、前記コンテンツ要求を許諾するか否かを判定する共有制御部を備える
請求項2に記載の許諾端末。 - 要求するコンテンツのアクセス情報をブロックチェーンから取得し、前記アクセス情報のメッセージをユーザ秘密鍵で署名したユーザ署名と、前記アクセス情報のコンテンツ署名とを集約した集約署名を、前記アクセス情報の集約公開鍵で検証する確認部と、
検証に成功した場合、前記ユーザ署名または前記集約署名を含むコンテンツ要求を送信する要求部と、
を備える閲覧端末。 - 要求するコンテンツのアクセス情報をブロックチェーンから取得し、前記アクセス情報のメッセージをユーザ秘密鍵で署名したユーザ署名と、前記アクセス情報のコンテンツ署名とを集約した集約署名を、前記アクセス情報の集約公開鍵で検証する確認部と、
検証に成功した場合、前記ユーザ署名を含むコンテンツ要求を、許諾端末に送信する要求部と、
コンテンツ要求に応じて、当該コンテンツに対応するアクセス情報を前記ブロックチェーンから取得し、前記アクセス情報のコンテンツ署名と、前記コンテンツ要求に含まれるユーザ署名とを集約した集約署名を前記アクセス情報の集約公開鍵で検証し、前記コンテンツ要求を許諾するか否かを判定する共有制御部と、
を備える配信端末。 - 要求するコンテンツのアクセス情報をブロックチェーンから取得し、前記アクセス情報のメッセージをユーザ秘密鍵で署名したユーザ署名と、前記アクセス情報のコンテンツ署名とを集約した集約署名を、前記アクセス情報の集約公開鍵で検証する確認部と、
検証に成功した場合、前記集約署名を含むコンテンツ要求を、許諾端末に送信する要求部と、
コンテンツ要求に応じて、当該コンテンツに対応するアクセス情報を前記ブロックチェーンから取得し、前記コンテンツ要求に含まれる前記集約署名を前記アクセス情報の集約公開鍵で検証し、前記コンテンツ要求を許諾するか否かを判定する共有制御部と、
を備える配信端末。 - 請求項2から4のいずれか1項に記載の許諾端末として、コンピュータを機能させることを特徴とするコンテンツ利用プログラム。
- 請求項5に記載の閲覧端末として、コンピュータを機能させることを特徴とするコンテンツ利用プログラム。
- 請求項6または7に記載の配信端末として、コンピュータを機能させることを特徴とするコンテンツ利用プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/023904 WO2020255207A1 (ja) | 2019-06-17 | 2019-06-17 | コンテンツ利用システム、許諾端末、閲覧端末、配信端末、および、コンテンツ利用プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2020255207A1 JPWO2020255207A1 (ja) | 2020-12-24 |
JP7174300B2 true JP7174300B2 (ja) | 2022-11-17 |
Family
ID=74040175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021528059A Active JP7174300B2 (ja) | 2019-06-17 | 2019-06-17 | コンテンツ利用システム、許諾端末、閲覧端末、配信端末、および、コンテンツ利用プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US12081675B2 (ja) |
JP (1) | JP7174300B2 (ja) |
WO (1) | WO2020255207A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11588645B1 (en) * | 2019-09-06 | 2023-02-21 | University Of South Florida | Systems and methods for compromise resilient and compact authentication for digital forensics |
CN111104386B (zh) * | 2019-11-04 | 2023-09-01 | 京东科技信息技术有限公司 | 一种文件存储方法、终端及存储介质 |
EP4280537A4 (en) * | 2021-01-14 | 2024-01-24 | Fujitsu Limited | CONTROL METHOD, CONTROL PROGRAM AND INFORMATION PROCESSING DEVICE |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005522968A (ja) | 2002-04-15 | 2005-07-28 | ドコモ コミュニケーションズ ラボラトリーズ ユー・エス・エー インコーポレーティッド | バイリニアマッピングを使用する署名スキーム |
US20180294957A1 (en) | 2017-04-07 | 2018-10-11 | Walmart Apollo, Llc | System for Recording Ownership of Digital Works and Providing Backup Copies |
US20180343126A1 (en) | 2017-05-24 | 2018-11-29 | NXM Labs Inc. | System and method for utilizing connected devices to enable secure and anonymous electronic interaction in a decentralized manner |
JP2019500799A (ja) | 2015-12-23 | 2019-01-10 | ソニー株式会社 | 許可アクセスのためのクライアント装置、サーバー装置及びアクセス制御システム |
US20190050854A1 (en) | 2018-09-28 | 2019-02-14 | Intel Corporation | Blockchain-based digital data exchange |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220053041A1 (en) * | 2016-03-08 | 2022-02-17 | Eagle Eye Networks, Inc. | Methods for sharing private video streams with first responders under facility administrator control |
US20200175590A1 (en) * | 2018-11-29 | 2020-06-04 | Shu Ya Huo | Method to turn digital rental buyer into subscriber and an apparatus to secure access & trade the rental item |
-
2019
- 2019-06-17 US US17/617,838 patent/US12081675B2/en active Active
- 2019-06-17 JP JP2021528059A patent/JP7174300B2/ja active Active
- 2019-06-17 WO PCT/JP2019/023904 patent/WO2020255207A1/ja active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005522968A (ja) | 2002-04-15 | 2005-07-28 | ドコモ コミュニケーションズ ラボラトリーズ ユー・エス・エー インコーポレーティッド | バイリニアマッピングを使用する署名スキーム |
JP2019500799A (ja) | 2015-12-23 | 2019-01-10 | ソニー株式会社 | 許可アクセスのためのクライアント装置、サーバー装置及びアクセス制御システム |
US20180294957A1 (en) | 2017-04-07 | 2018-10-11 | Walmart Apollo, Llc | System for Recording Ownership of Digital Works and Providing Backup Copies |
US20180343126A1 (en) | 2017-05-24 | 2018-11-29 | NXM Labs Inc. | System and method for utilizing connected devices to enable secure and anonymous electronic interaction in a decentralized manner |
US20190050854A1 (en) | 2018-09-28 | 2019-02-14 | Intel Corporation | Blockchain-based digital data exchange |
Non-Patent Citations (1)
Title |
---|
WANG, S., ZHANG, Y. and ZHANG, Y.,A Blockchain-Based Framework for Data Sharing With Fine-Grained Access Control in Decentralized Storage Systems,IEEE Access,Vol.6,[online],2018年07月30日,pp.38437-38450,URL:https://ieeexplore.ieee.org/document/8400511 |
Also Published As
Publication number | Publication date |
---|---|
US12081675B2 (en) | 2024-09-03 |
US20220247570A1 (en) | 2022-08-04 |
WO2020255207A1 (ja) | 2020-12-24 |
JPWO2020255207A1 (ja) | 2020-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sharma et al. | Blockchain technology for cloud storage: A systematic literature review | |
US11281779B2 (en) | Systems and methods for privacy management using a digital ledger | |
CN109144961B (zh) | 授权文件共享方法及装置 | |
JP6877448B2 (ja) | 分散ハッシュテーブル及びブロックチェーンを用いてコンピュータソフトウェアを保証する方法及びシステム | |
JP6370016B2 (ja) | 階層型ネットワークシステム、これに用いられるノード及びプログラム | |
KR102034449B1 (ko) | 콘텐츠 블록체인에서의 콘텐츠 암호키 관리 및 배포 방법 | |
US11048690B2 (en) | Contribution of multiparty data aggregation using distributed ledger technology | |
Fabian et al. | Collaborative and secure sharing of healthcare data in multi-clouds | |
CN103098070B (zh) | 用于监视网络服务中数据位置的方法、装置和系统 | |
US10984410B2 (en) | Entity-sovereign data wallets using distributed ledger technology | |
JP7174300B2 (ja) | コンテンツ利用システム、許諾端末、閲覧端末、配信端末、および、コンテンツ利用プログラム | |
CN113407627A (zh) | 一种基于区块链的智能医疗网络系统及医疗数据共享方法 | |
Sifah et al. | Chain-based big data access control infrastructure | |
EP4152197A1 (en) | Methods and systems for managing user data privacy | |
JP7304963B2 (ja) | プログラム、データ認証方法、およびコンピュータ装置 | |
US20230421543A1 (en) | Method, apparatus, and computer-readable medium for secured data transfer over a decentrlaized computer network | |
Ulybyshev et al. | (WIP) blockhub: Blockchain-based software development system for untrusted environments | |
US20210012447A1 (en) | Method and System for Processing Firearm-Related Data | |
Babu et al. | MediBlocks: secure exchanging of electronic health records (EHRs) using trust-based blockchain network with privacy concerns | |
Abadi et al. | Anylog: a grand unification of the internet of things | |
GB2599416A (en) | Authentication system and method | |
TW202131659A (zh) | 用以儲存已認證資料於區塊鏈上之電腦實行方法及系統 | |
CN115618321A (zh) | 访问控制方法及装置、电子设备、存储介质 | |
JP2024509666A (ja) | ブロックチェーンデータセグリゲーション | |
Kaur et al. | Attribute-based access control scheme for secure storage and sharing of EHRs using blockchain and IPFS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211126 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20221004 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221017 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7174300 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |