JP2019029933A - Content distribution device, content distribution system, content distribution program, and content distribution method - Google Patents

Content distribution device, content distribution system, content distribution program, and content distribution method Download PDF

Info

Publication number
JP2019029933A
JP2019029933A JP2017149994A JP2017149994A JP2019029933A JP 2019029933 A JP2019029933 A JP 2019029933A JP 2017149994 A JP2017149994 A JP 2017149994A JP 2017149994 A JP2017149994 A JP 2017149994A JP 2019029933 A JP2019029933 A JP 2019029933A
Authority
JP
Japan
Prior art keywords
content
user
key
common key
block chain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017149994A
Other languages
Japanese (ja)
Inventor
芳樹 東角
Yoshiki Azumakado
芳樹 東角
健 鎌倉
Ken Kamakura
健 鎌倉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017149994A priority Critical patent/JP2019029933A/en
Publication of JP2019029933A publication Critical patent/JP2019029933A/en
Pending legal-status Critical Current

Links

Images

Abstract

To enable a user to browse a content, which was browsed during contract period, even after cancellation of contract.SOLUTION: A content distribution system 10 encrypts a content 5 with a common key 6. Next, the content distribution system 10 encrypts the common key 6 with public keys 3a, 3b, 3c assigned to multiple contract users, respectively. Next, the content distribution system 10 registers the encrypted content 5a and the encrypted common keys 6a, 6b, 6c, respectively, in a block chain 18. Thereafter, the content distribution system 10 updates the information of the contract users. Next, the content distribution system 10 updates the common key 6 and encrypts the updated common key by the public keys, assigned to the multiple contract users, respectively in response to the update of the common key 6. The content distribution system 10 registers the encrypted and updated common keys in the block chain 18, respectively.SELECTED DRAWING: Figure 1

Description

本発明は、コンテンツ配信装置、コンテンツ配信システム、コンテンツ配信プログラム、およびコンテンツ配信方法に関する。   The present invention relates to a content distribution device, a content distribution system, a content distribution program, and a content distribution method.

コンピュータネットワークを介してコンテンツを提供するサービスがある。提供されるコンテンツは、例えばメールマガジンやビデオ情報など様々である。コンテンツの配信サービスでは、サービス提供者が管理するサーバは、コンテンツの送信先の端末装置を使用するユーザが、サービスの契約者であることを確認した後、その端末装置にコンテンツを送信する。例えばビデオ配信サービスの場合、ユーザは、端末装置を用いてサービス提供者のサーバにネットワーク経由でアクセスし、そのサーバにログインする。サーバでは、ログインしたユーザについては、コンテンツ配信の契約が締結されていると認識し、そのユーザの使用する端末装置にコンテンツを送信する。   There are services that provide content over a computer network. The provided contents are various, such as e-mail magazines and video information. In the content distribution service, the server managed by the service provider transmits the content to the terminal device after confirming that the user using the terminal device to which the content is transmitted is a service contractor. For example, in the case of a video distribution service, a user accesses a server of a service provider via a network using a terminal device and logs in to the server. The server recognizes that the content distribution contract is concluded for the logged-in user, and transmits the content to the terminal device used by the user.

なお、配信したコンテンツに対する課金に関する技術としては、例えば投稿者がコンテンツの投稿により簡易に、且つ効率良く収入を得ることを可能とする情報処理装置が考えられている。   As a technique related to billing for distributed content, for example, an information processing apparatus that allows a poster to easily and efficiently earn income by posting content is considered.

特開2016−162431号公報Japanese Patent Laying-Open No. 2006-162431

従来、ユーザは、コンテンツ配信サービスの契約を解除するとサーバへのログイン資格を失い、以後、サーバへの端末装置からのアクセスができなくなる。すなわち、契約を解除すると、ユーザは、契約解除後に配信されるコンテンツのみならず、契約期間中に配信されていたコンテンツについても参照できなくなる。   Conventionally, when the user cancels the contract for the content distribution service, the user loses the login qualification for the server, and thereafter, the user cannot access the server from the terminal device. In other words, when the contract is canceled, the user cannot refer to not only the content distributed after the contract cancellation but also the content distributed during the contract period.

ユーザの契約期間中に配信されていたコンテンツを参照するための適切な対価をユーザが支払い済みの場合、契約を解除したからといって、契約期間中に配信されていた、対価支払い済みのコンテンツまでも参照できなくなると、ユーザの不利益が大きすぎる。しかし、従来のコンテンツ配信技術では、ユーザの契約解除後に、新たに配信するコンテンツへのそのユーザによる参照を抑止しつつ、そのユーザの契約期間中に配信されていたコンテンツに対するそのユーザによる参照を許容することができない。   If the user has paid the appropriate consideration for referring to the content that was delivered during the user's contract period, the paid content that was delivered during the contract period just because the contract was terminated If it becomes impossible to refer to the user, the disadvantage of the user is too great. However, in the conventional content distribution technology, after the user's contract is canceled, the user's reference to the content distributed during the user's contract period is permitted while the user's reference to the newly distributed content is suppressed. Can not do it.

1つの側面では、本件は、契約期間中にユーザが参照できていたコンテンツを契約解除後も参照できるようにすることを目的とする。   In one aspect, the object of the present invention is to make it possible to refer to content that the user was able to refer to during the contract period even after the contract is canceled.

1つの案では、鍵生成部、鍵配布部、暗号化部、登録部、および鍵更新部を有するコンテンツ配信装置が提供される。
鍵生成部は、コンテンツの配信を受けるための契約について契約中のユーザである複数の契約ユーザのそれぞれに公開鍵を生成する。鍵配布部は、公開鍵に対応する秘密鍵を複数の契約ユーザのそれぞれに配布する。暗号化部は、コンテンツを共通鍵で暗号化し、複数の契約ユーザの情報を保有するユーザデータベースを記憶する記憶部を参照し、該共通鍵をユーザデータベースに記憶された複数の契約ユーザのそれぞれに割り当てられた公開鍵のそれぞれで暗号化する。登録部は、共通鍵で暗号化されたコンテンツと暗号化された共通鍵のそれぞれとをブロックチェーンに登録する。鍵更新部は、共通鍵を更新する。
In one proposal, a content distribution apparatus having a key generation unit, a key distribution unit, an encryption unit, a registration unit, and a key update unit is provided.
The key generation unit generates a public key for each of a plurality of contract users who are contracting users for a contract for receiving content distribution. The key distribution unit distributes a secret key corresponding to the public key to each of a plurality of contract users. The encryption unit encrypts the content with a common key, refers to a storage unit that stores a user database that holds information on a plurality of contract users, and stores the common key to each of the plurality of contract users stored in the user database. Encrypt with each assigned public key. The registration unit registers the content encrypted with the common key and each of the encrypted common key in the block chain. The key update unit updates the common key.

なお暗号化部は、共通鍵の更新に応じて、登録部による登録する処理が実行された後に契約ユーザの情報が更新された記憶部を参照し、更新後の共通鍵をユーザデータベースから取得した複数の契約ユーザのそれぞれに割り当てられた公開鍵のそれぞれで暗号化する。また登録部は、暗号化された更新後の共通鍵のそれぞれをブロックチェーンに登録する。   The encryption unit refers to the storage unit in which the contract user information has been updated after the registration process is executed by the registration unit in response to the update of the common key, and acquires the updated common key from the user database. Encryption is performed with each public key assigned to each of a plurality of contract users. The registration unit registers each encrypted updated common key in the block chain.

1態様によれば、契約期間中に登録されたコンテンツを契約解除後も参照できる。   According to one aspect, the content registered during the contract period can be referred to even after the contract is canceled.

第1の実施の形態に係るコンテンツ配信システムの一例を示す図である。It is a figure which shows an example of the content delivery system which concerns on 1st Embodiment. 第2の実施の形態のネットワークシステムの構成の一例を示す図である。It is a figure which shows an example of a structure of the network system of 2nd Embodiment. 第2の実施の形態に用いるブロックチェーンノードのハードウェアの一構成例を示す図である。It is a figure which shows one structural example of the hardware of the block chain node used for 2nd Embodiment. ブロックチェーンネットワークの例を示す図である。It is a figure which shows the example of a block chain network. 各装置の機能の一例を示すブロック図である。It is a block diagram which shows an example of the function of each apparatus. 配布された鍵とコンテンツとの対応関係の一例を示す図である。It is a figure which shows an example of the correspondence of the distributed key and content. 契約期間中のユーザへの共通鍵の配布およびコンテンツ提供の一例を示す図である。It is a figure which shows an example of distribution of the common key to the user during a contract period, and content provision. 一部のユーザが退会した後の共通鍵の配布およびコンテンツ提供の一例を示す図である。It is a figure which shows an example of distribution of the common key and content provision after some users withdraw. 鍵配布エージェントが実行する処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process which a key distribution agent performs. コンテンツ管理エージェントが実行する処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process which a content management agent performs. 入退会管理システムが実行する処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process which an entrance / exit management system performs. コンテンツリーダが実行する処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process which a content reader performs. 第3の実施の形態における契約期間中のユーザへの共通鍵の配布およびコンテンツ提供の一例を示す図である。It is a figure which shows an example of distribution of the common key to the user in the contract period in 3rd Embodiment, and content provision. 第3の実施の形態において一部のユーザが退会した後の共通鍵の配布およびコンテンツ提供の一例を示す図である。It is a figure which shows an example of distribution of a common key and content provision after some users withdraw in 3rd Embodiment. 第3の実施の形態におけるコンテンツ管理エージェントの処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process of the content management agent in 3rd Embodiment. メーラが実行する処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process which a mailer performs. 第4の実施の形態における各装置の機能の一例を示すブロック図である。It is a block diagram which shows an example of the function of each apparatus in 4th Embodiment. 第4の実施の形態における契約期間中のユーザへの共通鍵の配布およびコンテンツ提供の一例を示す図である。It is a figure which shows an example of distribution of the common key to the user in the contract period in 4th Embodiment, and content provision. 第4の実施の形態において一部のユーザが退会した後の共通鍵の配布およびコンテンツ提供の一例を示す図である。It is a figure which shows an example of distribution of the common key and content provision after some users withdraw in 4th Embodiment. 第4の実施の形態におけるコンテンツ管理エージェントの処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process of the content management agent in 4th Embodiment. 再生アプリケーションが実行する処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process which a reproduction | regeneration application performs. コンテンツサーバが実行する処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process which a content server performs. 第5の実施の形態における各装置の機能の一例を示すブロック図である。It is a block diagram which shows an example of the function of each apparatus in 5th Embodiment. ユーザの入会処理の一例を示す図である。It is a figure which shows an example of a user's membership process. 入会エージェントが実行する処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process which an enrollment agent performs. ユーザの退会処理の一例を示す図である。It is a figure which shows an example of a user's withdrawal process. 退会エージェントが実行する処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the process which a withdrawal agent performs. 課金処理の一例を示す図である。It is a figure which shows an example of an accounting process. 自動課金を用いたコンテンツ提供処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the content provision process using automatic billing.

以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第1の実施の形態〕
まず第1の実施の形態について説明する。
Hereinafter, the present embodiment will be described with reference to the drawings. Each embodiment can be implemented by combining a plurality of embodiments within a consistent range.
[First Embodiment]
First, a first embodiment will be described.

図1は、第1の実施の形態に係るコンテンツ配信システムの一例を示す図である。コンテンツ配信システム10は、例えば複数のコンテンツ配信装置10a,10b,10c,・・・を連携して動作させることで実現される。複数のコンテンツ配信装置10a,10b,10c,・・・それぞれは、例えばコンピュータである。   FIG. 1 is a diagram illustrating an example of a content distribution system according to the first embodiment. The content distribution system 10 is realized by operating a plurality of content distribution apparatuses 10a, 10b, 10c,. Each of the plurality of content distribution apparatuses 10a, 10b, 10c,... Is a computer, for example.

コンテンツ配信システム10は、記憶部11、鍵生成部12、鍵配布部13、暗号化部14、登録部15、ユーザ更新部16、および鍵更新部17を有する。記憶部11は、例えば複数のコンテンツ配信装置10a,10b,10c,・・・のうちの少なくとも1台が有するメモリ、またはストレージ装置である。また鍵生成部12、鍵配布部13、暗号化部14、登録部15、ユーザ更新部16、および鍵更新部17それぞれは、例えば複数のコンテンツ配信装置10a,10b,10c,・・・のうちの少なくとも1台が有するプロセッサ、または演算回路である。   The content distribution system 10 includes a storage unit 11, a key generation unit 12, a key distribution unit 13, an encryption unit 14, a registration unit 15, a user update unit 16, and a key update unit 17. The storage unit 11 is, for example, a memory or a storage device included in at least one of the plurality of content distribution devices 10a, 10b, 10c,. Each of the key generation unit 12, the key distribution unit 13, the encryption unit 14, the registration unit 15, the user update unit 16, and the key update unit 17 includes, for example, a plurality of content distribution apparatuses 10a, 10b, 10c,. Is a processor or an arithmetic circuit included in at least one of the above.

記憶部11は、コンテンツの配信を受けるための契約について契約中のユーザである複数の契約ユーザの情報を保有するユーザデータベース(DB)11aを記憶する。
鍵生成部12は、複数の契約ユーザのそれぞれに対応する公開鍵を生成する。例えば鍵生成部12は、複数の契約ユーザのそれぞれに対応する鍵ペア12a,12b,12cを生成する。鍵ペア12a,12b,12cは、それぞれ公開鍵3a,3b,3cと秘密鍵4a,4b,4cとのペアである。図1の例では、3人のユーザ1a,1b,1cが契約ユーザであり、ユーザ1a,1b,1cそれぞれの鍵ペア12a,12b,12cが生成されている。1つの鍵ペアに含まれる公開鍵を暗号鍵として用いて暗号化した暗号データは、その鍵ペアに含まれる秘密鍵を復号鍵として用いることで復号できる。
The storage unit 11 stores a user database (DB) 11a that holds information on a plurality of contract users who are contracting users for contracts for receiving content distribution.
The key generation unit 12 generates a public key corresponding to each of a plurality of contract users. For example, the key generation unit 12 generates key pairs 12a, 12b, and 12c corresponding to each of a plurality of contract users. The key pairs 12a, 12b, and 12c are pairs of public keys 3a, 3b, and 3c and secret keys 4a, 4b, and 4c, respectively. In the example of FIG. 1, three users 1a, 1b, and 1c are contract users, and key pairs 12a, 12b, and 12c for the users 1a, 1b, and 1c are generated. Encryption data encrypted using a public key included in one key pair as an encryption key can be decrypted by using a secret key included in the key pair as a decryption key.

鍵配布部13は、公開鍵3a,3b,3cに対応する秘密鍵4a,4b,4cを、契約中の複数のユーザ1a,1b,1cのそれぞれに配布する。例えば鍵配布部13は、複数のユーザ1a,1b,1cのそれぞれが使用している端末装置2a,2b,2cに、使用しているユーザ1a,1b,1cそれぞれの秘密鍵4a,4b,4cを送信する。   The key distribution unit 13 distributes the secret keys 4a, 4b, and 4c corresponding to the public keys 3a, 3b, and 3c to each of a plurality of users 1a, 1b, and 1c under contract. For example, the key distribution unit 13 sends the secret keys 4a, 4b, 4c of the users 1a, 1b, 1c used to the terminal devices 2a, 2b, 2c used by the plurality of users 1a, 1b, 1c, respectively. Send.

暗号化部14は、コンテンツ5を共通鍵6で暗号化する。これにより暗号化されたコンテンツ5a(暗号データ)が生成される。なおコンテンツ5は、例えばユーザ1a,1b,1cに提供する文書、写真、動画などである。またコンテンツ5は、他のコンテンツの格納場所を示す位置情報であってもよい。暗号化部14は、さらに、共通鍵6を、ユーザDB11aに記憶された複数の契約ユーザ(ユーザ1a,1b,1c)のそれぞれに割り当てられた公開鍵3a,3b,3cのそれぞれで暗号化する。これによりユーザ1aの公開鍵3aで暗号化された共通鍵6a(暗号データ)、ユーザ1bの公開鍵3bで暗号化された共通鍵6b(暗号データ)、およびユーザ1cの公開鍵3cで暗号化された共通鍵6c(暗号データ)が生成される。   The encryption unit 14 encrypts the content 5 with the common key 6. As a result, encrypted content 5a (encrypted data) is generated. The content 5 is, for example, a document, a photograph, a moving image, or the like provided to the users 1a, 1b, 1c. The content 5 may be position information indicating a storage location of other content. The encryption unit 14 further encrypts the common key 6 with each of the public keys 3a, 3b, 3c assigned to each of the plurality of contract users (users 1a, 1b, 1c) stored in the user DB 11a. . Accordingly, the common key 6a (encrypted data) encrypted with the public key 3a of the user 1a, the common key 6b (encrypted data) encrypted with the public key 3b of the user 1b, and the public key 3c of the user 1c are encrypted. A common key 6c (encrypted data) is generated.

登録部15は、共通鍵6で暗号化されたコンテンツ5aと暗号化された共通鍵6a,6b,6cのそれぞれとをブロックチェーン18に登録する。登録部15は、コンテンツ5aと共通鍵6a,6b,6cのそれぞれとを、まとめて1つのブロックでブロックチェーン18に登録してもよく、複数のブロックに分けてブロックチェーン18に登録してもよい。例えば登録部15は、複数の共通鍵6a,6b,6cを含む1つのブロックをブロックチェーン18に登録する。そして登録部15は、コンテンツ5aを含む1つのブロックを、ブロックチェーン18に登録する。   The registration unit 15 registers the content 5a encrypted with the common key 6 and each of the encrypted common keys 6a, 6b, and 6c in the block chain 18. The registration unit 15 may register the content 5a and each of the common keys 6a, 6b, and 6c together into the block chain 18 as a single block, or may register the content 5a and the common keys 6a, 6b, and 6c into the block chain 18 as a plurality of blocks. Good. For example, the registration unit 15 registers one block including a plurality of common keys 6a, 6b, and 6c in the block chain 18. Then, the registration unit 15 registers one block including the content 5a in the block chain 18.

ユーザ更新部16は、登録部15による登録する処理が実行された後に、記憶部11に記憶された契約ユーザの情報を更新する。例えばユーザ更新部16は、契約を解除したユーザがいる場合、そのユーザの情報を、ユーザDB11aから削除する。   The user updating unit 16 updates the contract user information stored in the storage unit 11 after the registration unit 15 performs the registration process. For example, when there is a user who has canceled the contract, the user update unit 16 deletes the user information from the user DB 11a.

鍵更新部17は、共通鍵6を更新する。例えば鍵更新部17は、定期的に共通鍵6を更新する。また鍵更新部17は、ユーザ更新部16により、ユーザDB11aから契約ユーザの削除処理が行われたとき、共通鍵6を更新する。   The key update unit 17 updates the common key 6. For example, the key update unit 17 periodically updates the common key 6. The key update unit 17 also updates the common key 6 when the user update unit 16 deletes the contract user from the user DB 11a.

なお、暗号化部14は、鍵更新部17による共通鍵6の更新に応じて、記憶部11を参照し、更新後の共通鍵をユーザデータベース11aから取得した複数の契約ユーザのそれぞれに割り当てられた公開鍵のそれぞれで暗号化する。すると登録部15は、暗号化された更新後の共通鍵のそれぞれをブロックチェーン18に登録する。   The encryption unit 14 refers to the storage unit 11 in response to the update of the common key 6 by the key update unit 17, and is assigned to each of the plurality of contract users who have acquired the updated common key from the user database 11a. Encrypt with each public key. Then, the registration unit 15 registers each encrypted updated common key in the block chain 18.

このようなコンテンツ配信システム10によれば、3人のユーザ1a,1b,1cのいずれもが契約期間中であれば、ユーザ1a,1b,1cそれぞれの端末装置2a,2b,2cに秘密鍵4a,4b,4cが配布される。そして暗号化されたコンテンツ5aと、ユーザ1a,1b,1cそれぞれの公開鍵3a,3b,3cで暗号化された共通鍵6a,6b,6cがブロックチェーン18に登録される。この場合、例えばユーザ1aは、自身の使用する端末装置2aにより、ブロックチェーン18からコンテンツ5aと共通鍵6aとを取得する。端末装置2aは、秘密鍵4aを用いて、共通鍵6aを復号し、平文の共通鍵6を得る。さらに端末装置2aは、共通鍵6を用いて、コンテンツ5aを復号し、平文のコンテンツ5を得る。そして端末装置2aは、コンテンツ5をモニタに表示する。これによりユーザ1aは、コンテンツ5を参照することができる。同様にユーザ1bは、端末装置2bを用いてブロックチェーン18からコンテンツ5aと共通鍵6bとを取得することで、コンテンツ5を参照することができる。ユーザ1cは、端末装置2cを用いてブロックチェーン18からコンテンツ5aと共通鍵6cとを取得することで、コンテンツ5を参照することができる。   According to such a content distribution system 10, if all of the three users 1a, 1b, and 1c are in the contract period, the secret keys 4a are assigned to the terminal devices 2a, 2b, and 2c of the users 1a, 1b, and 1c, respectively. , 4b, 4c are distributed. Then, the encrypted content 5a and the common keys 6a, 6b, 6c encrypted with the public keys 3a, 3b, 3c of the users 1a, 1b, 1c are registered in the block chain 18. In this case, for example, the user 1a acquires the content 5a and the common key 6a from the block chain 18 by the terminal device 2a used by the user 1a. The terminal device 2a uses the secret key 4a to decrypt the common key 6a and obtain the plaintext common key 6. Further, the terminal device 2 a decrypts the content 5 a using the common key 6 to obtain the plaintext content 5. Then, the terminal device 2a displays the content 5 on the monitor. Thereby, the user 1a can refer to the content 5. Similarly, the user 1b can refer to the content 5 by acquiring the content 5a and the common key 6b from the block chain 18 using the terminal device 2b. The user 1c can refer to the content 5 by acquiring the content 5a and the common key 6c from the block chain 18 using the terminal device 2c.

その後、例えばユーザ1cがコンテンツの提供を受けるための契約が解除されたものとする。契約の解除には、ユーザ1cが契約解除手続きを行った場合や、契約が延長されることなく契約期間が満了した場合が含まれる。ユーザ1cの契約が解除されたことは、例えばコンテンツ配信の管理者により、ユーザ更新部16に入力される。するとユーザ更新部16は、ユーザDB11aにおける契約ユーザの情報からユーザ1cの情報を削除する。例えばユーザ更新部16は、ユーザDB11a内のユーザ1cの情報に対して契約の無効を示すフラグを設定する。これにより、ユーザ1cの情報は、契約ユーザの情報ではなくなる。すなわち契約ユーザの情報から、ユーザ1cの情報が削除されたこととなる。   Thereafter, for example, it is assumed that the contract for the user 1c to receive the provision of content is canceled. The cancellation of the contract includes a case where the user 1c performs the contract cancellation procedure and a case where the contract period expires without the contract being extended. The cancellation of the contract of the user 1c is input to the user update unit 16 by, for example, a content distribution manager. Then, the user update part 16 deletes the information of the user 1c from the contract user information in the user DB 11a. For example, the user update unit 16 sets a flag indicating invalidity of the contract for the information of the user 1c in the user DB 11a. Thereby, the information of the user 1c is no longer the information of the contract user. That is, the information of the user 1c is deleted from the contract user information.

ユーザ更新部16によりユーザDB11aが更新された後、鍵更新部17により共通鍵6が更新される。そして暗号化部14により、契約を解除したユーザ1cを除くユーザ1a,1bの公開鍵3a,3bにより、更新後の共通鍵が暗号化される。そして登録部15により、ユーザ1a,1bそれぞれの公開鍵3a,3bで暗号化された更新後の共通鍵が、ブロックチェーン18に登録される。その後配信されるコンテンツは、暗号化部14により更新後の共通鍵で暗号化され、暗号化されたコンテンツが、登録部15によりブロックチェーン18に登録される。   After the user DB 11 a is updated by the user update unit 16, the common key 6 is updated by the key update unit 17. Then, the updated common key is encrypted by the encryption unit 14 with the public keys 3a and 3b of the users 1a and 1b excluding the user 1c whose contract has been canceled. Then, the updated common key encrypted with the public keys 3 a and 3 b of the users 1 a and 1 b is registered in the block chain 18 by the registration unit 15. The content distributed thereafter is encrypted with the updated common key by the encryption unit 14, and the encrypted content is registered in the block chain 18 by the registration unit 15.

この場合、契約期間中のユーザ1aは、端末装置2aを用いて、ユーザ1aの公開鍵3aで暗号化された更新後の共通鍵と、更新後の共通鍵で暗号化されたコンテンツとを、ブロックチェーン18から取得することで、そのコンテンツを参照できる。同様に契約期間中のユーザ1bは、端末装置2bを用いて、ユーザ1bの公開鍵3bで暗号化された更新後の共通鍵と、更新後の共通鍵で暗号化されたコンテンツとを、ブロックチェーン18から取得することで、そのコンテンツを参照できる。それに対して、契約が解除されたユーザ1cは、ユーザ1cの公開鍵3cで暗号化した更新後の共通鍵を取得することができず、更新後の共通鍵で暗号化されたコンテンツを参照することができない。   In this case, the user 1a during the contract period uses the terminal device 2a to update the updated common key encrypted with the public key 3a of the user 1a and the content encrypted with the updated common key. By acquiring from the block chain 18, the content can be referred to. Similarly, the user 1b during the contract period uses the terminal device 2b to block the updated common key encrypted with the public key 3b of the user 1b and the content encrypted with the updated common key. By acquiring from the chain 18, the content can be referred to. On the other hand, the user 1c whose contract has been canceled cannot obtain the updated common key encrypted with the public key 3c of the user 1c, and refers to the content encrypted with the updated common key. I can't.

なお、ブロックチェーン18には、一度登録されたブロックは、その後に新たなブロックが登録されても、ブロックチェーン18の一部として保持される。従って、ユーザ1cの契約期間中に登録されたコンテンツ5aは、ユーザ1cの契約解除後もブロックチェーン18に登録されている。したがって、ユーザ1cは、端末装置2cにより、契約解除後であっても、契約期間中に提供されたコンテンツ5aと共通鍵6cとをブロックチェーン18から取得することができる。そしてユーザ1cは、端末装置2cに、更新前の共通鍵6を用いてコンテンツ5aを復号させ、復号により得られたコンテンツ5を表示させることができる。すなわち、ユーザ1cは、契約期間中に提供されたコンテンツ5を、契約解除後も参照することができる。   The block once registered in the block chain 18 is held as a part of the block chain 18 even if a new block is registered thereafter. Accordingly, the content 5a registered during the contract period of the user 1c is registered in the block chain 18 even after the contract of the user 1c is canceled. Therefore, the user 1c can acquire the content 5a and the common key 6c provided during the contract period from the block chain 18 by the terminal device 2c even after the contract is canceled. The user 1c can cause the terminal device 2c to decrypt the content 5a using the pre-update common key 6, and display the content 5 obtained by the decryption. That is, the user 1c can refer to the content 5 provided during the contract period even after the contract is canceled.

このように第1の実施の形態によれば、ユーザにログインページにログインさせなくとも、コンテンツの配信を行う際、時間的に継続したコンテンツを契約ユーザのみに配信することができる。そして契約を解約し資格を失ったユーザは、解約以降のコンテンツを参照できなくすることができる。ただし、解約したユーザであっても、契約していた間のコンテンツの情報はブロックチェーンに保存されているので再配信することなく、参照することができる。   As described above, according to the first embodiment, even when a user distributes content without logging in to the login page, the content that has continued in time can be distributed only to contract users. Then, the user who cancels the contract and loses his / her qualification can not refer to the contents after the cancellation. However, even a canceled user can refer to the content information during the contract without redistribution because it is stored in the block chain.

なお記憶部11は、ユーザDB11aを、ユーザ管理用ブロックチェーンによって実現することもできる。この場合、ユーザ更新部16は、コンテンツの配信を受けるための契約を締結したユーザを示すユーザ情報を、契約ユーザの情報としてユーザ管理用ブロックチェーンに登録する。またユーザ更新部16は、コンテンツの配信を受けるための契約を解除した契約ユーザの情報を、ユーザ管理用ブロックチェーンから削除する。このように、ユーザDB11aをユーザ管理用ブロックチェーンで実現することで、契約ユーザを管理するためのコンピュータを、特別に用意せずにすみ、コンテンツ配信システム10の運用コストを低減することができる。   The storage unit 11 can also realize the user DB 11a by a user management block chain. In this case, the user update unit 16 registers user information indicating a user who has concluded a contract for receiving content distribution in the user management block chain as contract user information. Further, the user update unit 16 deletes the information of the contract user who has canceled the contract for receiving the content distribution from the user management block chain. As described above, by realizing the user DB 11a with a user management block chain, it is possible to reduce the operating cost of the content distribution system 10 without preparing a computer for managing contract users.

また、コンテンツ配信システム10では、提供するコンテンツごとに、そのコンテンツを参照するユーザにそのコンテンツの代金の課金を行い、課金が完了したユーザのみ、そのコンテンツを参照できるようにすることもできる。この場合、コンテンツ配信システム10は、例えば、一端末装置から一コンテンツの提供要求を受信すると、一端末装置を使用する一ユーザの仮想通貨に対して課金処理を行う課金部をさらに有する。暗号化部14は、課金処理が正常に完了した場合に、一ユーザに割り当てられた公開鍵で共通鍵を暗号化する。そして登録部15は、一ユーザに割り当てられた公開鍵で暗号化された共通鍵を、ブロックチェーン18に登録する。これにより、コンテンツ配信サービスの課金をコンテンツ単位で行うことができる。コンテンツ配信サービスの課金をコンテンツ単位で行う場合であっても、各ユーザは、その後、ユーザのコンテンツの配信の契約が解除されたとしても、代金を一度支払ったコンテンツについては、契約解除後も継続して参照することができる。   Further, in the content distribution system 10, for each content to be provided, the user who refers to the content can be charged for the content, and only the user who has been charged can refer to the content. In this case, the content distribution system 10 further includes, for example, a charging unit that performs a charging process on the virtual currency of one user who uses one terminal device when receiving a request for providing one content from one terminal device. The encryption unit 14 encrypts the common key with the public key assigned to one user when the charging process is normally completed. Then, the registration unit 15 registers the common key encrypted with the public key assigned to one user in the block chain 18. As a result, the content distribution service can be charged for each content. Even if the content distribution service is charged for each content, each user will continue to pay for the content once paid even if the user's content distribution contract is canceled. You can refer to it.

〔第2の実施の形態〕
次に第2の実施の形態について説明する。
図2は、第2の実施の形態のネットワークシステムの構成の一例を示す図である。第2の実施の形態のネットワークシステムでは、ネットワークスイッチ31〜35を介して、複数のブロックチェーンノード100,100a〜100fが接続されている。ブロックチェーンノード100,100a〜100fそれぞれは、ブロックチェーン上の1ノードとして機能するコンピュータである。
[Second Embodiment]
Next, a second embodiment will be described.
FIG. 2 is a diagram illustrating an example of a configuration of a network system according to the second embodiment. In the network system according to the second embodiment, a plurality of block chain nodes 100 and 100a to 100f are connected via network switches 31 to 35. Each of the block chain nodes 100, 100a to 100f is a computer that functions as one node on the block chain.

またネットワークには、コンテンツ提供サーバ200と複数の端末装置300,300a,300bとが接続されている。コンテンツ提供サーバ200は、コンテンツの配信サービスを行うサービス提供業者が管理するコンピュータである。コンテンツ提供サーバ200では、配信するコンテンツを含むブロックのブロックチェーンへの登録、および配信対象のユーザの管理が行われる。複数の端末装置300,300a,300bは、ネットワークを介した取引を行うユーザ41〜43が使用するコンピュータである。なおユーザ41の名は「A氏」であり、ユーザ42の名は「B氏」であり、ユーザ43の名は「C氏」であるものとする。   The content providing server 200 and a plurality of terminal devices 300, 300a, 300b are connected to the network. The content providing server 200 is a computer managed by a service provider that provides content distribution services. In the content providing server 200, registration of blocks including content to be distributed to the block chain and management of users to be distributed are performed. The plurality of terminal devices 300, 300a, and 300b are computers used by users 41 to 43 who perform transactions via a network. It is assumed that the name of the user 41 is “Mr. A”, the name of the user 42 is “Mr. B”, and the name of the user 43 is “Mr. C”.

なお第2の実施の形態のネットワークシステムには、図示したブロックチェーンノード100,100a〜100f以外にも、図示していない多数のブロックチェーンノードが接続されている。同様に第2の実施の形態のネットワークシステムには、図示した端末装置300,300a,300b以外にも、図示していない多数の端末装置が接続されている。   In addition to the illustrated block chain nodes 100 and 100a to 100f, a number of block chain nodes not shown are connected to the network system of the second embodiment. Similarly, in addition to the illustrated terminal devices 300, 300a, and 300b, a number of terminal devices not shown are connected to the network system of the second embodiment.

図3は、第2の実施の形態に用いるブロックチェーンノードのハードウェアの一構成例を示す図である。ブロックチェーンノード100は、プロセッサ101によって装置全体が制御されている。プロセッサ101には、バス109を介してメモリ102と複数の周辺機器が接続されている。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、またはDSP(Digital Signal Processor)である。プロセッサ101がプログラムを実行することで実現する機能の少なくとも一部を、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現してもよい。   FIG. 3 is a diagram illustrating a configuration example of hardware of a block chain node used in the second embodiment. The entire block chain node 100 is controlled by the processor 101. A memory 102 and a plurality of peripheral devices are connected to the processor 101 via a bus 109. The processor 101 may be a multiprocessor. The processor 101 is, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), or a DSP (Digital Signal Processor). At least a part of the functions realized by the processor 101 executing the program may be realized by an electronic circuit such as an ASIC (Application Specific Integrated Circuit) or a PLD (Programmable Logic Device).

メモリ102は、ブロックチェーンノード100の主記憶装置として使用される。メモリ102には、プロセッサ101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ102には、プロセッサ101による処理に利用する各種データが格納される。メモリ102としては、例えばRAM(Random Access Memory)などの揮発性の半導体記憶装置が使用される。   The memory 102 is used as a main storage device of the block chain node 100. The memory 102 temporarily stores at least part of an OS (Operating System) program and application programs to be executed by the processor 101. Further, the memory 102 stores various data used for processing by the processor 101. As the memory 102, for example, a volatile semiconductor storage device such as a RAM (Random Access Memory) is used.

バス109に接続されている周辺機器としては、ストレージ装置103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、機器接続インタフェース107およびネットワークインタフェース108a,108bがある。   Peripheral devices connected to the bus 109 include a storage device 103, a graphic processing device 104, an input interface 105, an optical drive device 106, a device connection interface 107, and network interfaces 108a and 108b.

ストレージ装置103は、内蔵した記録媒体に対して、電気的または磁気的にデータの書き込みおよび読み出しを行う。ストレージ装置103は、コンピュータの補助記憶装置として使用される。ストレージ装置103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、ストレージ装置103としては、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)を使用することができる。   The storage device 103 writes and reads data electrically or magnetically with respect to a built-in recording medium. The storage device 103 is used as an auxiliary storage device of a computer. The storage device 103 stores an OS program, application programs, and various data. For example, an HDD (Hard Disk Drive) or an SSD (Solid State Drive) can be used as the storage device 103.

グラフィック処理装置104には、モニタ21が接続されている。グラフィック処理装置104は、プロセッサ101からの命令に従って、画像をモニタ21の画面に表示させる。モニタ21としては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置などがある。   A monitor 21 is connected to the graphic processing device 104. The graphic processing device 104 displays an image on the screen of the monitor 21 in accordance with an instruction from the processor 101. Examples of the monitor 21 include a display device using a CRT (Cathode Ray Tube) and a liquid crystal display device.

入力インタフェース105には、キーボード22とマウス23とが接続されている。入力インタフェース105は、キーボード22やマウス23から送られてくる信号をプロセッサ101に送信する。なお、マウス23は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。   A keyboard 22 and a mouse 23 are connected to the input interface 105. The input interface 105 transmits signals sent from the keyboard 22 and the mouse 23 to the processor 101. The mouse 23 is an example of a pointing device, and other pointing devices can also be used. Examples of other pointing devices include a touch panel, a tablet, a touch pad, and a trackball.

光学ドライブ装置106は、レーザ光などを利用して、光ディスク24に記録されたデータの読み取りを行う。光ディスク24は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク24には、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。   The optical drive device 106 reads data recorded on the optical disc 24 using laser light or the like. The optical disc 24 is a portable recording medium on which data is recorded so that it can be read by reflection of light. The optical disc 24 includes a DVD (Digital Versatile Disc), a DVD-RAM, a CD-ROM (Compact Disc Read Only Memory), a CD-R (Recordable) / RW (ReWritable), and the like.

機器接続インタフェース107は、ブロックチェーンノード100に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース107には、メモリ装置25やメモリリーダライタ26を接続することができる。メモリ装置25は、機器接続インタフェース107との通信機能を搭載した記録媒体である。メモリリーダライタ26は、メモリカード27へのデータの書き込み、またはメモリカード27からのデータの読み出しを行う装置である。メモリカード27は、カード型の記録媒体である。   The device connection interface 107 is a communication interface for connecting peripheral devices to the block chain node 100. For example, the memory device 25 and the memory reader / writer 26 can be connected to the device connection interface 107. The memory device 25 is a recording medium equipped with a communication function with the device connection interface 107. The memory reader / writer 26 is a device that writes data to the memory card 27 or reads data from the memory card 27. The memory card 27 is a card type recording medium.

ネットワークインタフェース108a,108bは、それぞれネットワークスイッチ31,33に接続されている。ネットワークインタフェース108aは、ネットワークスイッチ31介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。ネットワークインタフェース108bは、ネットワークスイッチ33を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。   The network interfaces 108a and 108b are connected to network switches 31 and 33, respectively. The network interface 108a transmits / receives data to / from other computers or communication devices via the network switch 31. The network interface 108b transmits / receives data to / from another computer or communication device via the network switch 33.

以上のようなハードウェア構成によって、ブロックチェーンノード100における第2の実施の形態の処理機能を実現することができる。他のブロックチェーンノード100a〜100fも、ブロックチェーンノード100と同様のハードウェアにより実現することができる。   With the hardware configuration as described above, the processing function of the second embodiment in the block chain node 100 can be realized. The other block chain nodes 100 a to 100 f can also be realized by the same hardware as the block chain node 100.

なお、第1の実施の形態に示したコンテンツ配信装置10a,10b,10c,・・・も、図3に示したブロックチェーンノード100と同様のハードウェアにより実現することができる。   Note that the content distribution apparatuses 10a, 10b, 10c,... Shown in the first embodiment can also be realized by hardware similar to the block chain node 100 shown in FIG.

ブロックチェーンノード100は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。ブロックチェーンノード100に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、ブロックチェーンノード100に実行させるプログラムをストレージ装置103に格納しておくことができる。プロセッサ101は、ストレージ装置103内のプログラムの少なくとも一部をメモリ102にロードし、プログラムを実行する。またブロックチェーンノード100に実行させるプログラムを、光ディスク24、メモリ装置25、メモリカード27などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ101からの制御により、ストレージ装置103にインストールされた後、実行可能となる。またプロセッサ101が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。   The block chain node 100 implements the processing functions of the second embodiment by executing a program recorded on a computer-readable recording medium, for example. A program describing the processing contents to be executed by the block chain node 100 can be recorded in various recording media. For example, a program to be executed by the block chain node 100 can be stored in the storage device 103. The processor 101 loads at least a part of the program in the storage apparatus 103 into the memory 102 and executes the program. A program to be executed by the block chain node 100 can also be recorded on a portable recording medium such as the optical disc 24, the memory device 25, and the memory card 27. The program stored in the portable recording medium becomes executable after being installed in the storage apparatus 103 under the control of the processor 101, for example. The processor 101 can also read and execute a program directly from a portable recording medium.

次に、ブロックチェーンノード100,100a〜100fによるブロックチェーンネットワークについて説明する。
図4は、ブロックチェーンネットワークの例を示す図である。ブロックチェーンノード100,100a〜100fは、互いに通信して、3つのブロックチェーンを実現している。コンテンツ管理ブロックチェーン51は、ユーザ鍵とコンテンツの管理に使用するブロックチェーンである。仮想通貨ブロックチェーン52は、課金の管理に使用するブロックチェーンである。ユーザ管理ブロックチェーン53は、ユーザ情報管理に使用するブロックチェーンである。ユーザ管理ブロックチェーン53は、図1に示すユーザDB11aの一例である。すなわち第2の実施の形態では、図1に示したユーザDB11a内の契約ユーザの情報が、ユーザ管理ブロックチェーン53によって管理される。
Next, a block chain network including the block chain nodes 100 and 100a to 100f will be described.
FIG. 4 is a diagram illustrating an example of a block chain network. The block chain nodes 100 and 100a to 100f communicate with each other to realize three block chains. The content management block chain 51 is a block chain used for managing user keys and content. The virtual currency block chain 52 is a block chain used for charge management. The user management block chain 53 is a block chain used for user information management. The user management block chain 53 is an example of the user DB 11a shown in FIG. That is, in the second embodiment, information on contract users in the user DB 11 a shown in FIG. 1 is managed by the user management block chain 53.

次に、各装置が有する機能について説明する。
図5は、各装置の機能の一例を示すブロック図である。コンテンツ提供サーバ200は、OS210と、OS210上で動作する入退会管理システム220とを有している。入退会管理システム220は、コンテンツの配信サービスに対する入会(契約)と退会(解約の解除)とを管理すると共に、提供するコンテンツのブロックチェーンへの登録を行う。例えば入退会管理システム220は、入退会の管理のために、ユーザ管理部222と課金管理部223とを有する。ユーザ管理部222は、ユーザの入会処理を行い、入会したユーザのユーザ情報を、ユーザ管理ブロックチェーン53に格納する。またユーザ管理部222は、ユーザの退会処理を行い、退会したユーザのユーザ情報をユーザ管理ブロックチェーン53から削除する。課金管理部223は、入会したユーザに対する課金処理を行う。
Next, functions of each device will be described.
FIG. 5 is a block diagram illustrating an example of the function of each device. The content providing server 200 has an OS 210 and an entrance / exit management system 220 operating on the OS 210. The entrance / exit management system 220 manages entry (contract) and withdrawal (cancellation of cancellation) for the content distribution service, and registers the provided content in the block chain. For example, the entrance / exit management system 220 includes a user management unit 222 and a charge management unit 223 for managing entrance / exit. The user management unit 222 performs user membership processing, and stores user information of the joined user in the user management block chain 53. In addition, the user management unit 222 performs a user withdrawal process, and deletes the user information of the withdrawn user from the user management block chain 53. The billing management unit 223 performs billing processing for the joined user.

また入退会管理システム220は、コンテンツのブロックチェーンへの登録のために、メール管理部224を有する。メール管理部224は、ユーザに提供するコンテンツが入力された場合、電子メールを用いて、コンテンツ管理ブロックチェーン51に、入力されたコンテンツを含むブロックを登録する。   In addition, the entrance / exit management system 220 includes a mail management unit 224 for registering content in the block chain. When the content to be provided to the user is input, the mail management unit 224 registers a block including the input content in the content management block chain 51 using an email.

ブロックチェーンノード100は、OS110、ブロックチェーンサブシステム120、SMTP(Simple Mail Transfer Protocol)サーバ130、鍵配布エージェント140、およびコンテンツ管理エージェント150を有する。ブロックチェーンサブシステム120、SMTPサーバ130、鍵配布エージェント140、およびコンテンツ管理エージェント150は、OS110上で動作する。   The block chain node 100 includes an OS 110, a block chain subsystem 120, an SMTP (Simple Mail Transfer Protocol) server 130, a key distribution agent 140, and a content management agent 150. The block chain subsystem 120, the SMTP server 130, the key distribution agent 140, and the content management agent 150 operate on the OS 110.

ブロックチェーンサブシステム120は、他のブロックチェーンノード100a,100b,・・・と連携して、ブロックチェーンへのブロックの登録や、ブロック内のコンテンツなどの情報の提供を行う。SMTPサーバ130は、コンテンツ提供サーバ200から、配信するコンテンツを含む電子メールを受信する。またSMTPサーバ130は、受信した電子メールをブロックチェーンサブシステム120に転送する。鍵配布エージェント140は、コンテンツの暗号化および復号を行うための鍵(共通鍵)を管理する。コンテンツ管理エージェント150は、ユーザ41〜43が使用する端末装置300,300a,300bへ配信するコンテンツを管理する。鍵配布エージェント140とコンテンツ管理エージェント150とは、いずれも、例えばブロックチェーンにおけるチェーンコードをブロックチェーンノード100が実行することで実現される。   The block chain subsystem 120 cooperates with other block chain nodes 100a, 100b,... To register blocks in the block chain and provide information such as contents in the blocks. The SMTP server 130 receives an e-mail including content to be distributed from the content providing server 200. Further, the SMTP server 130 transfers the received electronic mail to the block chain subsystem 120. The key distribution agent 140 manages a key (common key) for encrypting and decrypting content. The content management agent 150 manages the content distributed to the terminal devices 300, 300a, and 300b used by the users 41 to 43. Both the key distribution agent 140 and the content management agent 150 are realized by the block chain node 100 executing a chain code in the block chain, for example.

ブロックチェーンノード100aは、OS110a、ブロックチェーンサブシステム120a、HTTP(HyperText Transfer Protocol)サーバ130a、鍵配布エージェント140a、およびコンテンツ管理エージェント150aを有する。ブロックチェーンサブシステム120a、HTTPサーバ130a、鍵配布エージェント140a、およびコンテンツ管理エージェント150aは、OS110a上で動作する。   The block chain node 100a includes an OS 110a, a block chain subsystem 120a, an HTTP (HyperText Transfer Protocol) server 130a, a key distribution agent 140a, and a content management agent 150a. The block chain subsystem 120a, the HTTP server 130a, the key distribution agent 140a, and the content management agent 150a operate on the OS 110a.

ブロックチェーンサブシステム120aは、他のブロックチェーンノード100,100b,・・・と連携して、ブロックチェーンへのブロックの登録や、ブロック内のコンテンツなどの情報の提供を行う。HTTPサーバ130aは、端末装置300,300a,300bに対して、コンテンツ管理ブロックチェーン51に登録されたコンテンツを提供する。鍵配布エージェント140aは、コンテンツの暗号化および復号を行うための共通鍵を管理する。コンテンツ管理エージェント150aは、ユーザ41〜43が使用する端末装置300,300a,300bへ配信するコンテンツを管理する。   The block chain subsystem 120a cooperates with other block chain nodes 100, 100b,... To register blocks in the block chain and provide information such as contents in the blocks. The HTTP server 130a provides the content registered in the content management block chain 51 to the terminal devices 300, 300a, and 300b. The key distribution agent 140a manages a common key for encrypting and decrypting content. The content management agent 150a manages the content distributed to the terminal devices 300, 300a, and 300b used by the users 41 to 43.

ブロックチェーンノード100,100a以外のブロックチェーンノード100b,・・・は、ブロックチェーンノード100aと同様の機能を有している。
端末装置300は、OS310、Webブラウザ320、鍵管理エージェント330、およびコンテンツリーダ340を有する。Webブラウザ320、鍵管理エージェント330、およびコンテンツリーダ340は、OS310上で動作する。
Block chain nodes 100b other than the block chain nodes 100 and 100a have the same functions as the block chain node 100a.
The terminal device 300 includes an OS 310, a web browser 320, a key management agent 330, and a content reader 340. The web browser 320, the key management agent 330, and the content reader 340 operate on the OS 310.

Webブラウザ320は、ブロックチェーンノード100a,100b,・・・からコンテンツを取得する。Webブラウザ320は、取得したコンテンツをコンテンツリーダ340に送信する。鍵管理エージェント330は、暗号化したコンテンツを復号するための共通鍵を管理する。コンテンツリーダ340は、取得したコンテンツをモニタに表示する。   The web browser 320 acquires content from the block chain nodes 100a, 100b,. The web browser 320 transmits the acquired content to the content reader 340. The key management agent 330 manages a common key for decrypting the encrypted content. The content reader 340 displays the acquired content on the monitor.

図4に示した3つのブロックチェーンは、ブロックチェーンサブシステム120,120a,・・・が連係動作することで管理される。ブロックチェーンのそれぞれに含まれるブロックは、同じ内容のブロックが、ブロックチェーンサブシステム120,120a,・・・それぞれで保持される。例えばブロックチェーンサブシステム120,120a,・・・のうちの1つに登録されたブロックは、他のブロックチェーンサブシステムに転送され、ブロックチェーンサブシステムそれぞれで保持される。ユーザ41〜43は、端末装置300,300a,300bを用いて、複数のブロックチェーンノード100,100a,100b,・・・のいずれかから、共通鍵またはコンテンツを含むブロックを取得することができる。   The three block chains shown in FIG. 4 are managed by the block chain subsystems 120, 120a,. As for the blocks included in each of the block chains, blocks having the same contents are held in the block chain subsystems 120, 120a,. For example, a block registered in one of the block chain subsystems 120, 120a,... Is transferred to another block chain subsystem and held in each block chain subsystem. The users 41 to 43 can acquire a block including a common key or content from any of the plurality of block chain nodes 100, 100a, 100b,... Using the terminal devices 300, 300a, and 300b.

なお、図5に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。また、図5に示した各要素の機能は、例えば、その要素に対応するプログラムモジュールをコンピュータに実行させることで実現することができる。   In addition, the line which connects between each element shown in FIG. 5 shows a part of communication path, and communication paths other than the illustrated communication path can also be set. Further, the function of each element shown in FIG. 5 can be realized, for example, by causing a computer to execute a program module corresponding to the element.

第2の実施の形態では、提供されるコンテンツが、暗号化してコンテンツ管理ブロックチェーン51に登録される。コンテンツの暗号化に使用される共通鍵は、所定のタイミングで変更される。例えば、定期的に共通鍵が変更される。またユーザの退会手続きが行われるごとに、共通鍵が変更される。各ユーザ41〜43は、端末装置300,300a,300bを用いて、契約期間中は、その期間中に配信されたコンテンツの暗号化に使用された共通鍵を受け取ることができる。これにより各ユーザ41〜43は、退会後であっても、契約期間中に取得した共通鍵を用いて、契約期間中に提供されたコンテンツを参照することが可能となる。   In the second embodiment, the provided content is encrypted and registered in the content management block chain 51. The common key used for content encryption is changed at a predetermined timing. For example, the common key is periodically changed. In addition, the common key is changed each time a user withdrawal procedure is performed. Each user 41 to 43 can receive the common key used for encrypting the content distributed during the contract period using the terminal devices 300, 300a, and 300b. Thereby, even after the withdrawal, each user 41 to 43 can refer to the content provided during the contract period using the common key acquired during the contract period.

図6は、配布された鍵とコンテンツとの対応関係の一例を示す図である。図6の例では、ユーザ41〜43が、コンテンツの提供を受ける契約期間中であるものとする。この場合、ユーザ41〜43それぞれに共通鍵「sk1」が配布される。例えば、共通鍵「sk1」は、ユーザ41〜43それぞれの公開鍵で暗号化して配布される。そしてコンテンツ提供者は、コンテンツ提供サーバ200を用いて、コンテンツ管理ブロックチェーン51に、共通鍵「sk1」で暗号化したコンテンツ61aを含むブロック61を登録する。ブロック61には、例えばコンテンツ管理ブロックチェーン51に対してブロック61の直前に登録されたブロックのハッシュ値が含まれる。コンテンツ61aには、文書や画像が含まれる。   FIG. 6 is a diagram illustrating an example of a correspondence relationship between a distributed key and content. In the example of FIG. 6, it is assumed that the users 41 to 43 are in a contract period for receiving content. In this case, the common key “sk1” is distributed to each of the users 41 to 43. For example, the common key “sk1” is encrypted and distributed with the public keys of the users 41 to 43. Then, the content provider registers the block 61 including the content 61 a encrypted with the common key “sk1” in the content management block chain 51 using the content providing server 200. The block 61 includes, for example, the hash value of the block registered immediately before the block 61 with respect to the content management block chain 51. The content 61a includes documents and images.

ユーザ41〜43それぞれは、端末装置300,300a,300bを用いて、コンテンツ管理ブロックチェーン51に登録されたブロック61内のコンテンツ61aを、複数のブロックチェーンノード100,100a〜100fのうちの1台から取得する。端末装置300,300a,300bは、ユーザ41〜43それぞれの公開鍵で暗号化された共通鍵「sk1」を、ユーザ41〜43それぞれの秘密鍵で復号する。端末装置300,300a,300bは、復号した共通鍵「sk1」を用いてコンテンツ61aを復号し、コンテンツ61aに含まれる文書や画像を表示する。   Each of the users 41 to 43 uses the terminal devices 300, 300a, and 300b to transfer the content 61a in the block 61 registered in the content management block chain 51 to one of the plurality of block chain nodes 100 and 100a to 100f. Get from. The terminal devices 300, 300a, and 300b decrypt the common key “sk1” encrypted with the public keys of the users 41 to 43 with the secret keys of the users 41 to 43, respectively. The terminal devices 300, 300a, and 300b decrypt the content 61a using the decrypted common key “sk1”, and display a document or an image included in the content 61a.

その後、退会するユーザがいなければ、コンテンツ提供者は、コンテンツ提供サーバ200を用いて、コンテンツ管理ブロックチェーン51に、以前と同じ共通鍵「sk1」で暗号化したコンテンツ62aを含むブロック62を登録する。ユーザ41〜43それぞれは、端末装置300,300a,300bを用いて、ブロック62内のコンテンツ62aを取得する。そして端末装置300,300a,300bは、ユーザ41〜43それぞれの秘密鍵で復号した共通鍵「sk1」を用いてコンテンツ62aを復号し、コンテンツ62aに含まれる文書や画像を表示する。   Thereafter, if there is no user to withdraw, the content provider registers the block 62 including the content 62a encrypted with the same common key “sk1” as before in the content management block chain 51 using the content providing server 200. . Each of the users 41 to 43 acquires the content 62a in the block 62 using the terminal devices 300, 300a, and 300b. Then, the terminal devices 300, 300a, and 300b decrypt the content 62a using the common key “sk1” decrypted with the secret keys of the users 41 to 43, and display the documents and images included in the content 62a.

その後、ユーザ43(C氏)が退会したものとする。すると退会していないユーザ41,42には、新たな共通鍵「sk2」が配布される。例えば、共通鍵「sk2」は、ユーザ41,42それぞれの公開鍵で暗号化して配布される。コンテンツ提供者は、コンテンツ提供サーバ200を用いて、コンテンツ管理ブロックチェーン51に、新たな共通鍵「sk2」で暗号化したコンテンツ63aを含むブロック63を登録する。ユーザ41,42それぞれは、端末装置300,300aを用いて、ブロック63内のコンテンツ63aを取得する。端末装置300,300aは、ユーザ41,42それぞれの公開鍵で暗号化された共通鍵「sk2」を、ユーザ41,42それぞれの秘密鍵で復号する。そして端末装置300,300aは、復号した共通鍵「sk2」を用いてコンテンツ63aを復号し、コンテンツ63aに含まれる文書や画像を表示する。   Thereafter, it is assumed that the user 43 (Mr. C) has withdrawn. Then, a new common key “sk2” is distributed to the users 41 and 42 who have not withdrawn. For example, the common key “sk2” is encrypted with the public keys of the users 41 and 42 and distributed. The content provider registers the block 63 including the content 63 a encrypted with the new common key “sk2” in the content management block chain 51 using the content providing server 200. Each of the users 41 and 42 acquires the content 63a in the block 63 using the terminal devices 300 and 300a. The terminal devices 300 and 300a decrypt the common key “sk2” encrypted with the public keys of the users 41 and 42, with the secret keys of the users 41 and 42, respectively. Then, the terminal devices 300 and 300a decrypt the content 63a using the decrypted common key “sk2”, and display a document or an image included in the content 63a.

他方、ユーザ43は、端末装置300bを用いて、ブロック63内のコンテンツ63aを取得したとしても、ユーザ43の公開鍵で暗号化された共通鍵「sk2」を有していないため、端末装置300bにコンテンツ63aを復号させることができない。なおユーザ43は、退会後であっても、契約期間中に配布された、ユーザ43の公開鍵で暗号化された共通鍵「sk1」を有している。そのためユーザ43は、その共通鍵「sk1」をユーザ43の秘密鍵で復号し、復号した共通鍵「sk1」用いて、退会後に、契約期間中に提供されたコンテンツ61aまたはコンテンツ62aを参照することは可能である。   On the other hand, even if the user 43 acquires the content 63a in the block 63 using the terminal device 300b, the user 43 does not have the common key “sk2” encrypted with the public key of the user 43. Cannot decrypt the content 63a. Note that the user 43 has the common key “sk1” encrypted with the public key of the user 43 distributed during the contract period even after withdrawal. Therefore, the user 43 decrypts the common key “sk1” with the secret key of the user 43, and uses the decrypted common key “sk1” to refer to the content 61a or the content 62a provided during the contract period after withdrawal. Is possible.

第2の実施の形態では、ユーザ41〜43それぞれへの共通鍵の配布も、コンテンツ管理ブロックチェーン51を用いて行われる。以下、図7、図8を参照し、共通鍵の配布およびコンテンツの提供の方法について説明する。   In the second embodiment, distribution of the common key to each of the users 41 to 43 is also performed using the content management block chain 51. Hereinafter, a method for distributing the common key and providing the content will be described with reference to FIGS.

図7は、契約期間中のユーザへの共通鍵の配布およびコンテンツ提供の一例を示す図である。図7の例では、3人のユーザ41〜43がコンテンツ提供者との間で、コンテンツの提供を受けるための契約を締結している。ユーザ41〜43は、それぞれ、契約と同時に、契約者用の鍵ペア(公開鍵、秘密鍵)を、コンテンツ提供者から受け取る。入退会管理システム220は、ユーザ41〜43それぞれの公開鍵「PKA」、「PKB」、「PKC」を、例えば鍵配布エージェント140に渡す。例えば入退会管理システム220は、ユーザ管理ブロックチェーン53に、公開鍵「PKA」、「PKB」、「PKC」を含むブロックを登録する。鍵配布エージェント140は、そのユーザ管理ブロックチェーン53から、ユーザ41〜43それぞれの公開鍵を取得する。 FIG. 7 is a diagram showing an example of common key distribution and content provision to users during a contract period. In the example of FIG. 7, three users 41 to 43 have signed a contract with the content provider for receiving the content. Each of the users 41 to 43 receives a contractor's key pair (public key, secret key) from the content provider at the same time as the contract. The entrance / exit management system 220 passes the public keys “PK A ”, “PK B ”, and “PK C ” of each of the users 41 to 43 to, for example, the key distribution agent 140. For example, the entrance / exit management system 220 registers a block including the public keys “PK A ”, “PK B ”, and “PK C ” in the user management block chain 53. The key distribution agent 140 acquires the public keys of the users 41 to 43 from the user management block chain 53.

鍵配布エージェント140は、共通鍵「sk1」を生成し、生成した共通鍵「sk1」をコンテンツ管理エージェント150に送信する。次に鍵配布エージェント140は、ユーザ41〜43の公開鍵「PKA」、「PKB」、「PKC」それぞれを用いて、共通鍵「sk1」を暗号化する。これにより、A氏の公開鍵「PKA」で暗号化された共通鍵「sk1」、B氏の公開鍵「PKB」で暗号化された共通鍵「sk1」、およびC氏の公開鍵「PKC」で暗号化された共通鍵「sk1」が生成される。鍵配布エージェント140は、3種類の公開鍵それぞれで暗号化された共通鍵「sk1」を含むブロック60を、コンテンツ管理ブロックチェーン51に登録する。例えば鍵配布エージェント140がブロック60を生成する。そして鍵配布エージェント140と他の鍵配布エージェント140a,・・・との間で、ブロック60が正当であるとの合意形成を行う。合意形成が正しく行われると、鍵配布エージェント140は、ブロック60を、ブロックチェーンサブシステム120で管理されているコンテンツ管理ブロックチェーン51に登録する。なお、ブロック60のように、共通鍵を含むブロックを、特に鍵ブロックと呼ぶこととする。 The key distribution agent 140 generates a common key “sk1” and transmits the generated common key “sk1” to the content management agent 150. Next, the key distribution agent 140 encrypts the common key “sk1” using the public keys “PK A ”, “PK B ”, and “PK C ” of the users 41 to 43. Thus, the common key “sk1” encrypted with the public key “PK A ” of Mr. A, the common key “sk1” encrypted with the public key “PK B ” of Mr. B , and the public key “ A common key “sk1” encrypted with “PK C ” is generated. The key distribution agent 140 registers the block 60 including the common key “sk1” encrypted with each of the three types of public keys in the content management block chain 51. For example, the key distribution agent 140 generates the block 60. Then, an agreement is formed between the key distribution agent 140 and the other key distribution agents 140a,... That the block 60 is valid. If the consensus is correctly formed, the key distribution agent 140 registers the block 60 in the content management block chain 51 managed by the block chain subsystem 120. Note that a block including a common key like the block 60 is particularly called a key block.

共通鍵「sk1」を受信したコンテンツ管理エージェント150は、ユーザ41〜43に提供するコンテンツが入力されると、共通鍵「sk1」を使ってコンテンツを暗号化する。コンテンツ管理エージェント150は、暗号化したコンテンツにコンテンツID「1」を付与したブロック61を、コンテンツ管理ブロックチェーン51に登録する。そしてコンテンツ管理エージェント150と他のコンテンツ管理エージェント150a,・・・との間で、ブロック61が正当であるとの合意形成が行われる。合意形成が正しく行われると、コンテンツ管理エージェント150は、ブロック61を、ブロックチェーンサブシステム120で管理されているコンテンツ管理ブロックチェーン51に登録する。なお、ブロック61のように、コンテンツを含むブロックを、特にコンテンツブロックと呼ぶこととする。   The content management agent 150 that has received the common key “sk1” encrypts the content using the common key “sk1” when the content to be provided to the users 41 to 43 is input. The content management agent 150 registers the block 61 in which the content ID “1” is assigned to the encrypted content in the content management block chain 51. Then, an agreement is formed between the content management agent 150 and the other content management agents 150a,... That the block 61 is valid. If the consensus is correctly formed, the content management agent 150 registers the block 61 in the content management block chain 51 managed by the block chain subsystem 120. Note that a block including content, such as the block 61, is particularly referred to as a content block.

コンテンツ管理エージェント150は、共通鍵「sk1」が更新されるまでは、共通鍵「sk1」を、配布するコンテンツの暗号化に使用する。例えばコンテンツ管理エージェント150は、新たに配布するコンテンツを共通鍵「sk1」で暗号化し、暗号化したコンテンツにコンテンツID「2」を付与したブロック62(コンテンツブロック)を、コンテンツ管理ブロックチェーン51に登録する。   The content management agent 150 uses the common key “sk1” for encrypting the content to be distributed until the common key “sk1” is updated. For example, the content management agent 150 encrypts newly distributed content with the common key “sk1”, and registers the block 62 (content block) in which the content ID “2” is added to the encrypted content in the content management block chain 51. To do.

ユーザ41は、コンテンツリーダ340を用いて、自分用の公開鍵「PKA」で暗号化された共通鍵「sk1」を、コンテンツ管理ブロックチェーン51から取得する。例えばユーザ41は、端末装置300においてコンテンツリーダ340を起動する。コンテンツリーダ340は、鍵管理エージェント330(図5参照)に共通鍵の取得を依頼する。鍵管理エージェント330は、ブロックチェーンノード100bのブロックチェーンサブシステム120aから、ユーザ41用の公開鍵「PKA」で暗号化された共通鍵「sk1」を取得する。鍵管理エージェント330は、暗号化された共通鍵「sk1」をコンテンツリーダ340に送信する。コンテンツリーダ340は、取得した共通鍵「sk1」を、ユーザ41の秘密鍵で復号する。 The user 41 uses the content reader 340 to acquire the common key “sk1” encrypted with his / her public key “PK A ” from the content management block chain 51. For example, the user 41 activates the content reader 340 in the terminal device 300. The content reader 340 requests the key management agent 330 (see FIG. 5) to acquire a common key. The key management agent 330 acquires the common key “sk1” encrypted with the public key “PK A ” for the user 41 from the block chain subsystem 120a of the block chain node 100b. The key management agent 330 transmits the encrypted common key “sk1” to the content reader 340. The content reader 340 decrypts the acquired common key “sk1” with the secret key of the user 41.

コンテンツリーダ340は、ユーザ41からコンテンツの参照要求の入力を受け取ると、該当するコンテンツをコンテンツ管理ブロックチェーン51から取得する。そしてコンテンツリーダ340は、取得したコンテンツを、共通鍵「sk1」で復号し、モニタに表示する。これにより、ユーザ41は、コンテンツを参照することができる。   When the content reader 340 receives an input of a content reference request from the user 41, the content reader 340 acquires the corresponding content from the content management block chain 51. Then, the content reader 340 decrypts the acquired content with the common key “sk1” and displays it on the monitor. Thereby, the user 41 can refer to the content.

同様に、他のユーザ42,43も、それぞれコンテンツリーダ340a,340bを用いてコンテンツを参照することができる。
次に、いずれかのユーザが退会した後のユーザへの共通鍵の配布およびコンテンツの提供の処理について説明する。
Similarly, the other users 42 and 43 can refer to the content using the content readers 340a and 340b, respectively.
Next, processing for distributing a common key to a user and providing content after any user has withdrawn will be described.

図8は、一部のユーザが退会した後の共通鍵の配布およびコンテンツ提供の一例を示す図である。図8の例では、ユーザ43(C氏)が退会したものとする。例えば、入退会管理システム220は、ユーザ41とユーザ42との公開鍵「PKA」、「PKB」を含むブロックをユーザ管理ブロックチェーン53に登録する。このブロックには、退会したユーザ43の公開鍵「PKC」は含まれない。鍵配布エージェント140は、そのユーザ管理ブロックチェーン53から、ユーザ41,42それぞれの公開鍵を取得する。 FIG. 8 is a diagram illustrating an example of common key distribution and content provision after some users have withdrawn. In the example of FIG. 8, it is assumed that the user 43 (Mr. C) has withdrawn. For example, the entrance / exit management system 220 registers a block including the public keys “PK A ” and “PK B ” between the user 41 and the user 42 in the user management block chain 53. This block does not include the public key “PK C ” of the user 43 who has withdrawn. The key distribution agent 140 acquires the public keys of the users 41 and 42 from the user management block chain 53.

鍵配布エージェント140は、共通鍵「sk1」を作成してから所定の有効時間が経過したことを確認すると、新たな共通鍵「sk2」を生成し、生成した共通鍵「sk2」をコンテンツ管理エージェント150に送信する。次に、鍵配布エージェント140は、契約期間中のユーザ41,42それぞれの公開鍵「PKA」、「PKB」を使って、新たな共通鍵「sk2」を暗号化する。そして鍵配布エージェント140は、暗号化した共通鍵「sk2」を含むブロック63を、コンテンツ管理ブロックチェーン51に登録する。 When the key distribution agent 140 confirms that a predetermined valid time has elapsed since the creation of the common key “sk1”, the key distribution agent 140 generates a new common key “sk2”, and the generated common key “sk2” is the content management agent. 150. Next, the key distribution agent 140 encrypts the new common key “sk2” using the public keys “PK A ” and “PK B ” of the users 41 and 42 during the contract period. Then, the key distribution agent 140 registers the block 63 including the encrypted common key “sk2” in the content management block chain 51.

共通鍵「sk2」を受信したコンテンツ管理エージェント150は、ユーザ41,42に提供するコンテンツが入力されると、共通鍵「sk2」を使って、新たに提供するコンテンツを暗号化する。コンテンツ管理エージェント150は、暗号化したコンテンツにコンテンツID「3」を付与したブロック64を、コンテンツ管理ブロックチェーン51に登録する。   Upon receiving the content to be provided to the users 41 and 42, the content management agent 150 that has received the common key “sk2” encrypts the newly provided content using the common key “sk2”. The content management agent 150 registers the block 64 in which the content ID “3” is added to the encrypted content in the content management block chain 51.

ユーザ41は、コンテンツリーダ340を用いて、自分用の公開鍵「PKA」で暗号化された共通鍵「sk2」を、コンテンツ管理ブロックチェーン51から取得する。コンテンツリーダ340は、取得した共通鍵「sk2」を、ユーザ41の秘密鍵で復号する。コンテンツリーダ340は、ユーザ41から最新のコンテンツの参照要求の入力を受け取ると、該当するコンテンツ(コンテンツID:3)をコンテンツ管理ブロックチェーン51から取得する。そしてコンテンツリーダ340は、取得したコンテンツを、共通鍵「sk2」で復号し、モニタに表示する。これにより、ユーザ41は、最新のコンテンツを参照することができる。 The user 41 uses the content reader 340 to acquire the common key “sk2” encrypted with his / her public key “PK A ” from the content management block chain 51. The content reader 340 decrypts the acquired common key “sk2” with the secret key of the user 41. When the content reader 340 receives an input of the latest content reference request from the user 41, the content reader 340 acquires the corresponding content (content ID: 3) from the content management block chain 51. Then, the content reader 340 decrypts the acquired content with the common key “sk2” and displays it on the monitor. Thereby, the user 41 can refer to the latest content.

同様に、ユーザ42もコンテンツリーダ340aを用いてコンテンツを参照することができる。退会したユーザ43は、ブロック63に、ユーザ43の公開鍵で暗号化した共通鍵「sk2」が含まれていないため、共通鍵「sk2」を取得できない。そのため、ユーザ43は、退会後に提供されたコンテンツを参照することはできない。   Similarly, the user 42 can refer to the content using the content reader 340a. The user 43 who has withdrawn cannot acquire the common key “sk2” in the block 63 because the common key “sk2” encrypted with the public key of the user 43 is not included in the block 63. Therefore, the user 43 cannot refer to the content provided after withdrawal.

このようにして、退会したユーザ43による、退会後に提供開始されたコンテンツの参照を抑止できると共に、そのユーザ43の契約期間中に提供開始されたコンテンツについては、退会後でもユーザ43による参照を可能とすることができる。なお第2の実施の形態に示す方法では、ユーザ数が多くても、そのユーザに提供するコンテンツは、1つだけコンテンツ管理ブロックチェーン51に登録すればよく、ユーザ数が増加しても、登録するコンテンツ数は増加しない。   In this way, reference to contents started to be provided after withdrawal by the user 43 who has withdrawn can be suppressed, and contents started to be provided during the contract period of the user 43 can be referred to by the user 43 even after withdrawal. It can be. In the method shown in the second embodiment, even if the number of users is large, only one content to be provided to the users needs to be registered in the content management block chain 51. Even if the number of users increases, registration is possible. The number of contents to be increased does not increase.

また共通鍵の有効時間を設定し、有効時間が経過すると自動的に共通鍵を更新するようにしたことで、鍵配布エージェント140において、ユーザの退会の有無の確認処理が不要となる。共通鍵の有効期間は、例えばユーザの契約期間の計算単位に応じて設定される。例えば、ユーザの契約期間の計算を1日単位で行っている場合、共通鍵の有効期間を1日とする。この場合、例えば鍵配布エージェント140は、毎日の午前0時に共通鍵を変更する。これにより、退会したユーザが発生するたびに共通鍵を変更しなくても、退会したユーザについては、契約期間満了後に配布したコンテンツを参照できないようにすることができる。   In addition, since the effective time of the common key is set and the common key is automatically updated when the effective time elapses, the key distribution agent 140 does not need to confirm whether or not the user has withdrawn. The validity period of the common key is set according to, for example, the calculation unit of the user's contract period. For example, when the user's contract period is calculated in units of one day, the effective period of the common key is set to one day. In this case, for example, the key distribution agent 140 changes the common key every day at midnight. Thus, even if the common key is not changed every time a user who has withdrawn occurs, it is possible to prevent the user who has withdrawn from referring to the content distributed after the contract period expires.

なお、共通鍵の変更を、例えばユーザの退会手続きが行われるごとに行うようにしてもよい。
次に、鍵配布エージェント140が実行する処理の手順について具体的に説明する。
The common key may be changed every time a user withdrawal procedure is performed, for example.
Next, a procedure of processing executed by the key distribution agent 140 will be specifically described.

図9は、鍵配布エージェントが実行する処理の手順の一例を示すフローチャートである。以下、図9に示す処理をステップ番号に沿って説明する。
[ステップS101]鍵配布エージェント140は、コンテンツの暗号化および復号用の共通鍵を生成する。
FIG. 9 is a flowchart illustrating an example of a procedure of processing executed by the key distribution agent. In the following, the process illustrated in FIG. 9 will be described in order of step number.
[Step S101] The key distribution agent 140 generates a common key for content encryption and decryption.

[ステップS102]鍵配布エージェント140は、コンテンツ管理エージェント150に共通鍵を送信する。
[ステップS103]鍵配布エージェント140は、契約期間中のユーザごとに、そのユーザの公開鍵で共通鍵を暗号化する。
[Step S102] The key distribution agent 140 transmits a common key to the content management agent 150.
[Step S103] The key distribution agent 140 encrypts the common key with the public key of each user during the contract period.

[ステップS104]鍵配布エージェント140は、暗号化した共通鍵を、コンテンツ管理ブロックチェーン51に登録する。
[ステップS105]鍵配布エージェント140は、共通鍵の使用時間の計測を開始する。
[Step S104] The key distribution agent 140 registers the encrypted common key in the content management block chain 51.
[Step S105] The key distribution agent 140 starts measuring the usage time of the common key.

[ステップS106]鍵配布エージェント140は、ステップS105で計測を開始してからの使用時間が、予め設定された共通鍵の有効時間だけ経過したか否かを判断する。鍵配布エージェント140は、有効時間が経過した場合、処理をステップS101に進める。鍵配布エージェント140は、有効時間が経過していなければ、ステップS106の処理を繰り返す。   [Step S106] The key distribution agent 140 determines whether or not the usage time since the start of the measurement in Step S105 has passed the preset effective time of the common key. If the valid time has elapsed, the key distribution agent 140 proceeds with the process to step S101. If the valid time has not elapsed, the key distribution agent 140 repeats the process of step S106.

このような手順で共通鍵が繰り返し生成され、生成された共通鍵が、その時点で契約期間中であるユーザの公開鍵で暗号化され、コンテンツ管理ブロックチェーン51に登録される。   The common key is repeatedly generated in such a procedure, and the generated common key is encrypted with the public key of the user who is currently contracting and registered in the content management block chain 51.

次に、コンテンツ管理エージェント150が実行する処理について具体的に説明する。
図10は、コンテンツ管理エージェントが実行する処理の手順の一例を示すフローチャートである。以下、図10に示す処理をステップ番号に沿って説明する。
Next, the process executed by the content management agent 150 will be specifically described.
FIG. 10 is a flowchart illustrating an example of a procedure of processing executed by the content management agent. In the following, the process illustrated in FIG. 10 will be described in order of step number.

[ステップS111]コンテンツ管理エージェント150は、鍵配布エージェント140から共通鍵を取得する。
[ステップS112]コンテンツ管理エージェント150は、共通鍵を暗号鍵として使用して、コンテンツを暗号化する。
[Step S111] The content management agent 150 acquires a common key from the key distribution agent 140.
[Step S112] The content management agent 150 encrypts the content using the common key as an encryption key.

[ステップS113]コンテンツ管理エージェント150は、暗号化したコンテンツを含むブロックを、コンテンツ管理ブロックチェーン51に登録する。
図10に示す処理は、例えばコンテンツ提供サーバ200の入退会管理システム220から、提供するコンテンツがブロックチェーンノード100に入力されるごとに実行される。これにより、最新の共通鍵で暗号化したコンテンツが、コンテンツ管理ブロックチェーン51に追加される。
[Step S113] The content management agent 150 registers a block including the encrypted content in the content management block chain 51.
The process shown in FIG. 10 is executed each time content to be provided is input to the block chain node 100 from the entrance / exit management system 220 of the content providing server 200, for example. As a result, the content encrypted with the latest common key is added to the content management block chain 51.

次に、入退会管理システム220が実行する処理について具体的に説明する。
図11は、入退会管理システムが実行する処理の手順の一例を示すフローチャートである。以下、図11に示す処理をステップ番号に沿って説明する。
Next, the processing executed by the entrance / exit management system 220 will be specifically described.
FIG. 11 is a flowchart illustrating an example of a procedure of processing executed by the entrance / exit management system. In the following, the process illustrated in FIG. 11 will be described in order of step number.

[ステップS121]入退会管理システム220は、ユーザからの退会要求を受け付ける。
[ステップS122]入退会管理システム220は、退会を希望するユーザのレコードに削除フラグを立てたユーザ管理情報を、ユーザ管理ブロックチェーン53に登録する。
[Step S121] The entrance / exit management system 220 accepts a withdrawal request from a user.
[Step S122] The entrance / exit management system 220 registers, in the user management block chain 53, user management information in which a deletion flag is set in the record of the user who wishes to withdraw.

これにより、ユーザ管理ブロックチェーン53の最新のブロックを取得することで、最新のユーザ管理情報が参照可能となる。例えば鍵配布エージェント140は、共通鍵を更新した際に、ユーザ管理ブロックチェーン53から最新のブロックに含まれるユーザ管理情報取得する。ユーザ管理情報には、退会したユーザも含め、ユーザの管理情報を示すレコードが登録されている。ユーザのレコードには、そのユーザの公開鍵が含まれる。また退会したユーザのレコードには、削除フラグが含まれる。鍵配布エージェント140は、削除フラグが含まれないレコードの公開鍵を用いて、共通鍵の暗号化を行う。   Thereby, by acquiring the latest block of the user management block chain 53, the latest user management information can be referred to. For example, the key distribution agent 140 acquires user management information included in the latest block from the user management block chain 53 when the common key is updated. In the user management information, a record indicating user management information including registered users is registered. The user's record includes the user's public key. The record of the user who has withdrawn includes a deletion flag. The key distribution agent 140 encrypts the common key using the public key of the record that does not include the deletion flag.

次に、コンテンツリーダ340が実行する処理について具体的に説明する。
図12は、コンテンツリーダが実行する処理の手順の一例を示すフローチャートである。以下、図12に示す処理をステップ番号に沿って説明する。
Next, the process executed by the content reader 340 will be specifically described.
FIG. 12 is a flowchart illustrating an example of a procedure of processing executed by the content reader. In the following, the process illustrated in FIG. 12 will be described in order of step number.

[ステップS131]コンテンツリーダ340は、コンテンツ管理ブロックチェーン51から、端末装置300を使用しているユーザ41の公開鍵で暗号化された共通鍵を取得する。   [Step S131] The content reader 340 acquires a common key encrypted with the public key of the user 41 using the terminal device 300 from the content management block chain 51.

[ステップS132]コンテンツリーダ340は、取得した共通鍵を、ユーザ41の秘密鍵で復号する。コンテンツリーダ340は、復号した共通鍵を、ストレージ装置などの記憶媒体に格納する。   [Step S132] The content reader 340 decrypts the acquired common key with the secret key of the user 41. The content reader 340 stores the decrypted common key in a storage medium such as a storage device.

[ステップS133]コンテンツリーダ340は、ユーザ41からの閲覧対象のコンテンツの指定入力に応じ、指定されたコンテンツのコンテンツIDを指定して、コンテンツ管理ブロックチェーン51からコンテンツを取得する。例えばコンテンツリーダ340は、最後に提供されたコンテンツではなく、そのコンテンツよりも前に提供された古いコンテンツのコンテンツIDを指定することで、古いコンテンツを取得することができる。   [Step S133] The content reader 340 acquires the content from the content management block chain 51 by designating the content ID of the designated content in response to the designation input of the content to be browsed from the user 41. For example, the content reader 340 can acquire the old content by designating the content ID of the old content provided before the content instead of the content provided last.

[ステップS134]コンテンツリーダ340は、取得したコンテンツを共通鍵で復号する。なおコンテンツリーダ340が古いコンテンツを取得した場合、そのコンテンツの暗号化に用いた共通鍵が、最新のものではない可能性がある。コンテンツリーダ340は、古い共通鍵で暗号化された古いコンテンツを取得した場合、以前に取得して格納した、そのコンテンツに対応する共通鍵を用いてコンテンツを復号する。   [Step S134] The content reader 340 decrypts the acquired content with the common key. If the content reader 340 acquires old content, the common key used for encrypting the content may not be the latest. When the content reader 340 acquires the old content encrypted with the old common key, the content reader 340 decrypts the content using the common key corresponding to the content acquired and stored previously.

[ステップS135]コンテンツリーダ340は、復号したコンテンツをモニタに表示する。
これにより、ユーザ41は、閲覧対象として指定したコンテンツを閲覧することができる。すなわちユーザ41は、最新のコンテンツに限らず、ユーザ41の契約期間中に提供されたコンテンツを任意に指定して、そのコンテンツを閲覧できる。ユーザ41のコンテンツの提供を受ける契約が解除された場合であっても、ユーザ41は、契約解除前に提供されていたコンテンツについて、自由に閲覧可能である。
[Step S135] The content reader 340 displays the decrypted content on the monitor.
Thereby, the user 41 can browse the content designated as the browsing target. That is, the user 41 can browse the content by arbitrarily specifying the content provided during the contract period of the user 41 as well as the latest content. Even when the contract for receiving the content of the user 41 is canceled, the user 41 can freely browse the content provided before the contract is canceled.

〔第3の実施の形態〕
次に第3の実施の形態について説明する。第3の実施の形態は、メールマガジンをコンテンツとして提供する場合の例である。以下、第3の実施の形態における第2の実施の形態との相違点について説明する。
[Third Embodiment]
Next, a third embodiment will be described. The third embodiment is an example in which a mail magazine is provided as content. Hereinafter, differences between the third embodiment and the second embodiment will be described.

図13は、第3の実施の形態における契約期間中のユーザへの共通鍵の配布およびコンテンツ提供の一例を示す図である。図13において、第2の実施の形態の要素と同じ機能を有する要素には、第2の実施の形態の対応する要素と同じ符号を付している。   FIG. 13 is a diagram illustrating an example of common key distribution and content provision to users during a contract period according to the third embodiment. In FIG. 13, elements having the same functions as those of the second embodiment are denoted by the same reference numerals as the corresponding elements of the second embodiment.

第3の実施の形態では、コンテンツ管理エージェント150から提供されるコンテンツには、メールマガジンが含まれる。またコンテンツ管理エージェント150は、提供するメールマガジンの価格を示す価格情報を有している。   In the third embodiment, the content provided from the content management agent 150 includes a mail magazine. The content management agent 150 has price information indicating the price of the mail magazine to be provided.

図13の例では、ユーザ41〜43がいずれも契約期間中である。ユーザ41〜43が契約期間中の場合、入退会管理システム220は、仮想通貨ブロックチェーン52から、ユーザ41〜43からコンテンツの代金を引き落とすことができる。また入退会管理システム220は、ユーザ41〜43が契約期間中であることを示すユーザ管理情報を、ユーザ管理ブロックチェーン53に登録する。鍵配布エージェント140は、ユーザ管理ブロックチェーン53からユーザ管理情報を所得して、ユーザ41〜43が契約期間中であることを認識する。   In the example of FIG. 13, all of the users 41 to 43 are in the contract period. When the users 41 to 43 are in the contract period, the entrance / exit management system 220 can withdraw the price of the content from the users 41 to 43 from the virtual currency block chain 52. Also, the entrance / exit management system 220 registers user management information indicating that the users 41 to 43 are in the contract period in the user management block chain 53. The key distribution agent 140 obtains the user management information from the user management block chain 53 and recognizes that the users 41 to 43 are in the contract period.

ユーザ41〜43それぞれが使用する端末装置は、メーラ350,350a,350bを有している。ユーザ41〜43が、いずれも契約期間中の場合、鍵配布エージェント140は、共通鍵「sk1」を生成し、生成した共通鍵「sk1」をコンテンツ管理エージェント150に送信する。次に、鍵配布エージェント140は、ユーザ41〜43それぞれの公開鍵「PKA」、「PKB」、「PKC」を使って共通鍵「sk1」を暗号化する。そして鍵配布エージェント140は、暗号化した共通鍵「sk1」を含むブロック70を、コンテンツ管理ブロックチェーン51に登録する。 The terminal devices used by the users 41 to 43 have mailers 350, 350a, and 350b, respectively. When the users 41 to 43 are all in the contract period, the key distribution agent 140 generates the common key “sk1” and transmits the generated common key “sk1” to the content management agent 150. Next, the key distribution agent 140 encrypts the common key “sk1” using the public keys “PK A ”, “PK B ”, and “PK C ” of each of the users 41 to 43. Then, the key distribution agent 140 registers the block 70 including the encrypted common key “sk1” in the content management block chain 51.

共通鍵「sk1」を受信したコンテンツ管理エージェント150は、ユーザ41〜43に提供するコンテンツとしてメールマガジンが入力されるごとに、共通鍵「sk1」を使って、提供するコンテンツを暗号化する。コンテンツ管理エージェント150は、コンテンツID「1」、「2」が付与された暗号化済みのコンテンツと価格情報とを含むブロック71,72を、コンテンツ管理ブロックチェーン51に登録する。   The content management agent 150 that has received the common key “sk1” encrypts the provided content by using the common key “sk1” every time a mail magazine is input as the content to be provided to the users 41 to 43. The content management agent 150 registers, in the content management block chain 51, blocks 71 and 72 that include encrypted content assigned with content IDs “1” and “2” and price information.

ユーザ41は、メーラ350を用いて、自分用の公開鍵「PKA」で暗号化された共通鍵「sk1」を、コンテンツ管理ブロックチェーン51から取得する。メーラ350は、取得した共通鍵「sk1」を、ユーザ41の秘密鍵で復号する。メーラ350は、ユーザ41からコンテンツの参照要求の入力を受け取ると、該当するコンテンツ(コンテンツID「1」,「2」)と価格情報とをコンテンツ管理ブロックチェーン51から取得する。そしてメーラ350は、価格情報をモニタに表示する。メーラ350は、ユーザ41により、価格情報に示される価格を承認する入力が行われると、取得したコンテンツを共通鍵「sk1」で復号し、メールマガジンをモニタに表示する。これにより、ユーザ41は、メールマガジンを参照することができる。他のユーザ42,43も同様に、それぞれメーラ350a,350bを用いて、メールマガジンを読むことができる。 The user 41 uses the mailer 350 to obtain from the content management block chain 51 the common key “sk1” encrypted with his / her public key “PK A ”. The mailer 350 decrypts the acquired common key “sk1” with the secret key of the user 41. When the mailer 350 receives an input of a content reference request from the user 41, the mailer 350 acquires the corresponding content (content ID “1”, “2”) and price information from the content management block chain 51. Mailer 350 then displays price information on the monitor. When the user 41 receives an input for approving the price indicated in the price information, the mailer 350 decrypts the acquired content with the common key “sk1” and displays the mail magazine on the monitor. Thereby, the user 41 can refer to the mail magazine. Similarly, the other users 42 and 43 can read the mail magazine using the mailers 350a and 350b, respectively.

図14は、第3の実施の形態において一部のユーザが退会した後の共通鍵の配布およびコンテンツ提供の一例を示す図である。図14の例では、ユーザ43(C氏)が退会したものとする。   FIG. 14 is a diagram illustrating an example of common key distribution and content provision after a part of users are unsubscribed in the third embodiment. In the example of FIG. 14, it is assumed that the user 43 (Mr. C) has withdrawn.

鍵配布エージェント140は、公開鍵「sk1」を作成してから所定の有効時間が経過したことを確認すると、新たな共通鍵「sk2」を生成し、生成した共通鍵「sk2」をコンテンツ管理エージェント150に送信する。次に、鍵配布エージェント140は、契約期間中のユーザ41,42それぞれの公開鍵「PKA」、「PKB」を使って、新たな共通鍵「sk2」を暗号化する。そして鍵配布エージェント140は、暗号化した共通鍵「sk2」を含むブロック73を、コンテンツ管理ブロックチェーン51に登録する。 When the key distribution agent 140 confirms that a predetermined valid time has elapsed since the creation of the public key “sk1”, the key distribution agent 140 generates a new common key “sk2” and uses the generated common key “sk2” as the content management agent. 150. Next, the key distribution agent 140 encrypts the new common key “sk2” using the public keys “PK A ” and “PK B ” of the users 41 and 42 during the contract period. Then, the key distribution agent 140 registers the block 73 including the encrypted common key “sk2” in the content management block chain 51.

共通鍵「sk2」を受信したコンテンツ管理エージェント150は、ユーザ41,42に提供するメールマガジンが入力されると、共通鍵「sk2」を使って、新たに提供するメールマガジンを暗号化する。コンテンツ管理エージェント150は、コンテンツID「3」を付与した暗号化済みのコンテンツと価格情報とを含むブロック74を、コンテンツ管理ブロックチェーン51に登録する。   Upon receiving the mail magazine to be provided to the users 41 and 42, the content management agent 150 that has received the common key “sk2” encrypts the newly provided mail magazine using the common key “sk2”. The content management agent 150 registers the block 74 including the encrypted content assigned the content ID “3” and the price information in the content management block chain 51.

ユーザ41は、メーラ350を用いて、自分用の公開鍵「PKA」で暗号化された共通鍵「sk2」を、コンテンツ管理ブロックチェーン51から取得する。メーラ350は、取得した共通鍵「sk2」を、ユーザ41の秘密鍵で復号する。メーラ350は、ユーザ41からコンテンツの参照要求の入力を受け取ると、該当するコンテンツ(コンテンツID「3」)と価格情報とをコンテンツ管理ブロックチェーン51から取得する。そしてメーラ350は、価格情報をモニタに表示する。メーラ350は、ユーザ41により、価格情報に示される価格を承認する入力が行われると、取得したコンテンツを共通鍵「sk2」で復号し、メールマガジンをモニタに表示する。これにより、ユーザ41は、最新のメールマガジンを参照することができる。 The user 41 uses the mailer 350 to obtain from the content management block chain 51 the common key “sk2” encrypted with his / her public key “PK A ”. The mailer 350 decrypts the acquired common key “sk2” with the secret key of the user 41. When the mailer 350 receives an input of a content reference request from the user 41, the mailer 350 acquires the corresponding content (content ID “3”) and price information from the content management block chain 51. Mailer 350 then displays price information on the monitor. When the user 41 receives an input for approving the price indicated by the price information, the mailer 350 decrypts the acquired content with the common key “sk2” and displays the mail magazine on the monitor. Thereby, the user 41 can refer to the latest mail magazine.

同様に、ユーザ42もメーラ350aを用いてメールマガジンを参照することができる。退会したユーザ43は、ブロック73に、ユーザ43の公開鍵で暗号化した共通鍵「sk2」が含まれていないため、共通鍵「sk2」を取得できない。すなわち、ユーザ43は、退会後に提供されたメールマガジンを参照することはできない。   Similarly, the user 42 can refer to the mail magazine using the mailer 350a. The user 43 who has withdrawn cannot acquire the common key “sk2” in the block 73 because the common key “sk2” encrypted with the public key of the user 43 is not included in the block 73. That is, the user 43 cannot refer to the mail magazine provided after the withdrawal.

第3の実施の形態における各要素の処理のうち、鍵配布エージェント140の処理は、図9に示した第2の実施の形態の処理と同じである。また入退会管理システム220の処理は、図11に示した第2の実施の形態の処理と同じである。以下、第2の実施の形態と異なる処理を実行する要素について、実行する処理の手順を具体的に説明する。   Of the processing of each element in the third embodiment, the processing of the key distribution agent 140 is the same as the processing of the second embodiment shown in FIG. Moreover, the process of the entrance / exit management system 220 is the same as the process of 2nd Embodiment shown in FIG. Hereinafter, the procedure of the process to be executed will be specifically described with respect to elements that execute processes different from those of the second embodiment.

図15は、第3の実施の形態におけるコンテンツ管理エージェントの処理の手順の一例を示すフローチャートである。以下、図15に示す処理をステップ番号に沿って説明する。   FIG. 15 is a flowchart illustrating an example of a processing procedure of the content management agent according to the third embodiment. In the following, the process illustrated in FIG. 15 will be described in order of step number.

[ステップS201]コンテンツ管理エージェント150は、鍵配布エージェント140から共通鍵を取得する。
[ステップS202]コンテンツ管理エージェント150は、共通鍵を暗号鍵として使用して、メールマガジンを含むコンテンツを暗号化する。
[Step S201] The content management agent 150 acquires a common key from the key distribution agent 140.
[Step S202] The content management agent 150 encrypts the content including the mail magazine using the common key as the encryption key.

[ステップS203]コンテンツ管理エージェント150は、暗号化したコンテンツと価格情報とを含むブロックを、コンテンツ管理ブロックチェーン51に登録する。
次に、メーラ350が実行する処理について具体的に説明する。
[Step S203] The content management agent 150 registers a block including encrypted content and price information in the content management block chain 51.
Next, the process executed by the mailer 350 will be specifically described.

図16は、メーラが実行する処理の手順の一例を示すフローチャートである。以下、図16に示す処理をステップ番号に沿って説明する。
[ステップS211]メーラ350は、コンテンツ管理ブロックチェーン51から、端末装置300を使用しているユーザ41の公開鍵で暗号化された共通鍵を取得する。
FIG. 16 is a flowchart illustrating an example of a procedure of processing executed by the mailer. In the following, the process illustrated in FIG. 16 will be described in order of step number.
[Step S211] The mailer 350 acquires, from the content management block chain 51, a common key encrypted with the public key of the user 41 using the terminal device 300.

[ステップS212]メーラ350は、取得した共通鍵を、ユーザ41の秘密鍵で復号する。メーラ350は、復号した共通鍵を、ストレージ装置などの記憶媒体に格納する。
[ステップS213]メーラ350は、ユーザ41からの閲覧対象のコンテンツの指定入力に応じ、指定されたコンテンツのコンテンツIDを指定して、コンテンツ管理ブロックチェーン51から該当コンテンツの価格情報を取得する。そしてメーラ350は、価格情報に示されるメールマガジンの価格を表示し、価格に対するユーザ41の承認入力を受け付ける。
[Step S212] The mailer 350 decrypts the acquired common key with the secret key of the user 41. The mailer 350 stores the decrypted common key in a storage medium such as a storage device.
[Step S213] The mailer 350 specifies the content ID of the specified content in response to the input of the content to be browsed from the user 41, and acquires the price information of the content from the content management block chain 51. The mailer 350 then displays the price of the mail magazine indicated in the price information, and accepts an approval input from the user 41 for the price.

[ステップS214]メーラ350は、ユーザ41の承認入力に応じ、指定されたコンテンツのコンテンツIDを指定して、コンテンツ管理ブロックチェーン51からメールマガジンを取得する。   [Step S214] The mailer 350 specifies the content ID of the specified content in response to the approval input from the user 41, and acquires the mail magazine from the content management block chain 51.

[ステップS215]メーラ350は、取得したメールマガジンを共通鍵で復号する。
[ステップS216]メーラ350は、復号したメールマガジンをモニタに表示する。
これにより、ユーザ41は、閲覧対象として指定したメールマガジンを閲覧することができる。
[Step S215] The mailer 350 decrypts the acquired mail magazine with the common key.
[Step S216] The mailer 350 displays the decrypted mail magazine on the monitor.
Thereby, the user 41 can browse the mail magazine designated as the browsing target.

〔第4の実施の形態〕
次に第4の実施の形態について説明する。第4の実施の形態は、共通鍵はコンテンツ管理ブロックチェーン51で管理するが、コンテンツはコンテンツ管理ブロックチェーン51以外で管理するものである。例えば、コンテンツが動画データの場合、1つのコンテンツのデータ量が大きく、コンテンツをブロックチェーンで管理すると、ブロックチェーンノード100,100a,100b・・・のリソースの消費が激しくなる。そこで第4の実施の形態では、コンテンツを、コンテンツ管理ブロックチェーン51とは別に管理できるようにしている。
[Fourth Embodiment]
Next, a fourth embodiment will be described. In the fourth embodiment, the common key is managed by the content management block chain 51, but the content is managed by other than the content management block chain 51. For example, if the content is moving image data, the amount of data of one content is large, and if the content is managed by the block chain, the resource consumption of the block chain nodes 100, 100a, 100b,. Therefore, in the fourth embodiment, the content can be managed separately from the content management block chain 51.

図17は、第4の実施の形態における各装置の機能の一例を示すブロック図である。図17では、第2の実施の形態と同様の機能を有する要素には第2の実施の形態と同じ符号を付している。   FIG. 17 is a block diagram illustrating an example of the function of each device according to the fourth embodiment. In FIG. 17, elements having the same functions as those in the second embodiment are denoted by the same reference numerals as those in the second embodiment.

第4の実施の形態では、コンテンツを記憶するコンテンツサーバ400が設けられている。コンテンツサーバ400は、動画データなどのコンテンツを保持するコンピュータである。コンテンツサーバ400は、例えばコンテンツ提供サービスの契約者であることの署名を検証し、契約者であることが確認できたユーザが使用する端末装置にコンテンツを送信する。   In the fourth embodiment, a content server 400 that stores content is provided. The content server 400 is a computer that holds content such as moving image data. For example, the content server 400 verifies the signature of being a contractor of the content providing service, and transmits the content to the terminal device used by the user who has been confirmed to be the contractor.

第4の実施の形態では、コンテンツ提供サーバ200は、コンテンツサーバ400に格納されたコンテンツの位置情報を、共通鍵で暗号化して、ブロックチェーンノード100を介して、コンテンツ管理ブロックチェーン51に登録する。位置情報は、例えばURL(Uniform Resource Locator)である。端末装置300は、再生アプリケーション360を有している。再生アプリケーション360は、ブロックチェーンノード100aから、コンテンツ管理ブロックチェーン51に登録された位置情報を取得し、取得した位置情報を共通鍵で復号する。そして再生アプリケーション360は、位置情報に基づいてコンテンツサーバ400内のコンテンツにアクセスし、該当コンテンツを再生する。   In the fourth embodiment, the content providing server 200 encrypts the content position information stored in the content server 400 with the common key and registers it in the content management block chain 51 via the block chain node 100. . The location information is, for example, a URL (Uniform Resource Locator). The terminal device 300 has a playback application 360. The playback application 360 acquires position information registered in the content management block chain 51 from the block chain node 100a, and decrypts the acquired position information with a common key. Then, the playback application 360 accesses the content in the content server 400 based on the position information and plays back the content.

図18は、第4の実施の形態における契約期間中のユーザへの共通鍵の配布およびコンテンツ提供の一例を示す図である。第4の実施の形態では、コンテンツ管理エージェント150から提供されるコンテンツには、コンテンツの位置情報としてURLが含まれる。   FIG. 18 is a diagram illustrating an example of common key distribution and content provision to users during a contract period according to the fourth embodiment. In the fourth embodiment, the content provided from the content management agent 150 includes a URL as content location information.

コンテンツ管理ブロックチェーン51には、ユーザ41〜43それぞれの公開鍵を含むブロック80が登録されている。
ユーザ41〜43それぞれが使用する端末装置300,300a,300bは、再生アプリケーション360,360a,360bを有している。ユーザ41〜43が、いずれも契約期間中の場合、鍵配布エージェント140は、共通鍵「sk1」を生成し、生成した共通鍵「sk1」をコンテンツ管理エージェント150に送信する。次に、鍵配布エージェント140は、ユーザ41〜43それぞれの公開鍵「PKA」、「PKB」、「PKC」を使って共通鍵「sk1」を暗号化する。そして鍵配布エージェント140は、暗号化した共通鍵「sk2」を含むブロック81を、コンテンツ管理ブロックチェーン51に登録する。
In the content management block chain 51, a block 80 including the public keys of the users 41 to 43 is registered.
The terminal devices 300, 300a, and 300b used by the users 41 to 43 have playback applications 360, 360a, and 360b, respectively. When the users 41 to 43 are all in the contract period, the key distribution agent 140 generates the common key “sk1” and transmits the generated common key “sk1” to the content management agent 150. Next, the key distribution agent 140 encrypts the common key “sk1” using the public keys “PK A ”, “PK B ”, and “PK C ” of each of the users 41 to 43. Then, the key distribution agent 140 registers the block 81 including the encrypted common key “sk2” in the content management block chain 51.

共通鍵「sk1」を受信したコンテンツ管理エージェント150は、ユーザ41〜43に提供するコンテンツのURLが入力されると、共通鍵「sk1」を使って、提供するコンテンツのURLを暗号化する。コンテンツ管理エージェント150は、コンテンツID「1」が付与された暗号化済みのURLと、コンテンツの価格情報とを含むブロック82を、コンテンツ管理ブロックチェーン51に登録する。   Upon receiving the URL of the content to be provided to the users 41 to 43, the content management agent 150 that has received the common key “sk1” encrypts the URL of the content to be provided using the common key “sk1”. The content management agent 150 registers, in the content management block chain 51, the block 82 including the encrypted URL assigned with the content ID “1” and the price information of the content.

ユーザ41は、再生アプリケーション360を用いて、自分用の公開鍵「PKA」で暗号化された共通鍵「sk1」を、コンテンツ管理ブロックチェーン51から取得する。再生アプリケーション360は、取得した共通鍵「sk1」を、ユーザ41の秘密鍵で復号する。再生アプリケーション360は、ユーザ41からコンテンツの参照要求の入力を受け取ると、該当するコンテンツ(コンテンツID「1」)のURLと価格情報とをコンテンツ管理ブロックチェーン51から取得する。そして再生アプリケーション360は、価格情報をモニタに表示する。再生アプリケーション360は、ユーザ41により、価格情報に示される価格を承認する入力が行われると、取得したURLを共通鍵「sk1」で復号する。再生アプリケーション360は、復号して得られたURLに、ユーザの秘密鍵の署名を添付したアクセス要求をコンテンツサーバ400に送信する。 The user 41 uses the playback application 360 to acquire the common key “sk1” encrypted with his / her public key “PK A ” from the content management block chain 51. The playback application 360 decrypts the acquired common key “sk1” with the secret key of the user 41. When the reproduction application 360 receives an input of a content reference request from the user 41, the reproduction application 360 acquires the URL and price information of the corresponding content (content ID “1”) from the content management block chain 51. Then, the playback application 360 displays price information on the monitor. When the user 41 receives an input for approving the price indicated in the price information, the playback application 360 decrypts the acquired URL with the common key “sk1”. The reproduction application 360 transmits an access request in which the signature of the user's private key is attached to the URL obtained by decryption to the content server 400.

コンテンツサーバ400は、アクセス要求を送信した端末装置300を使用しているユーザ41の公開鍵を、コンテンツ管理ブロックチェーン51から取得し、その公開鍵を用いて署名の正当性を確認する。署名が正当であるとコンテンツサーバ400で認められると、再生アプリケーション360は、送信したURLに示される位置にあるコンテンツをコンテンツサーバ400から取得する。再生アプリケーション360は、取得したコンテンツ(例えば動画データ)を再生し、再生結果をモニタに表示する。これにより、ユーザ41は、コンテンツサーバ400に格納されているコンテンツを閲覧することができる。他のユーザ42,43も同様に、それぞれ再生アプリケーション360a,360bを用いて、コンテンツを閲覧することができる。   The content server 400 acquires the public key of the user 41 using the terminal device 300 that transmitted the access request from the content management block chain 51, and confirms the validity of the signature using the public key. When the content server 400 recognizes that the signature is valid, the playback application 360 acquires the content at the position indicated by the transmitted URL from the content server 400. The playback application 360 plays back the acquired content (for example, moving image data) and displays the playback result on the monitor. Thereby, the user 41 can browse the content stored in the content server 400. Similarly, the other users 42 and 43 can browse the content by using the reproduction applications 360a and 360b, respectively.

図19は、第4の実施の形態において一部のユーザが退会した後の共通鍵の配布およびコンテンツ提供の一例を示す図である。図19の例では、ユーザ43(C氏)が退会したものとする。   FIG. 19 is a diagram illustrating an example of common key distribution and content provision after a part of users have withdrawn in the fourth embodiment. In the example of FIG. 19, it is assumed that the user 43 (Mr. C) has withdrawn.

鍵配布エージェント140は、共通鍵「sk1」を作成してから所定の有効時間が経過したことを確認すると、新たな共通鍵「sk2」を生成し、生成した共通鍵「sk2」をコンテンツ管理エージェント150に送信する。次に、鍵配布エージェント140は、契約期間中のユーザ41,42それぞれの公開鍵「PKA」、「PKB」を使って、新たな共通鍵「sk2」を暗号化する。そして鍵配布エージェント140は、暗号化した共通鍵「sk2」を含むブロック83を、コンテンツ管理ブロックチェーン51に登録する。 When the key distribution agent 140 confirms that a predetermined valid time has elapsed since the creation of the common key “sk1”, the key distribution agent 140 generates a new common key “sk2”, and the generated common key “sk2” is the content management agent. 150. Next, the key distribution agent 140 encrypts the new common key “sk2” using the public keys “PK A ” and “PK B ” of the users 41 and 42 during the contract period. Then, the key distribution agent 140 registers the block 83 including the encrypted common key “sk2” in the content management block chain 51.

共通鍵「sk2」を受信したコンテンツ管理エージェント150は、ユーザ41,42に提供するコンテンツのURLが入力されると、共通鍵「sk2」を使って、新たに提供するコンテンツのURLを暗号化する。コンテンツ管理エージェント150は、コンテンツID「3」を付与した暗号化済みのURLと価格情報とを含むブロック84を、コンテンツ管理ブロックチェーン51に登録する。   Upon receiving the URL of the content to be provided to the users 41 and 42, the content management agent 150 that has received the common key “sk2” encrypts the URL of the newly provided content using the common key “sk2”. . The content management agent 150 registers, in the content management block chain 51, the block 84 including the encrypted URL assigned with the content ID “3” and the price information.

ユーザ41は、再生アプリケーション360を用いて、自分用の公開鍵「PKA」で暗号化された共通鍵「sk2」を、コンテンツ管理ブロックチェーン51から取得する。再生アプリケーション360は、取得した共通鍵「sk2」を、ユーザ41の秘密鍵で復号する。再生アプリケーション360は、ユーザ41からコンテンツの参照要求の入力を受け取ると、該当するコンテンツ(コンテンツID「3」)のURLと価格情報とをコンテンツ管理ブロックチェーン51から取得する。そして再生アプリケーション360は、価格情報をモニタに表示する。再生アプリケーション360は、ユーザ41により、価格情報に示される価格を承認する入力が行われると、取得したURLを共通鍵「sk2」で復号する。再生アプリケーション360は、復号して得られたURLに、ユーザの秘密鍵の署名を添付したアクセス要求をコンテンツサーバ400に送信する。 The user 41 uses the playback application 360 to acquire the common key “sk2” encrypted with his / her public key “PK A ” from the content management block chain 51. The playback application 360 decrypts the acquired common key “sk2” with the secret key of the user 41. When the reproduction application 360 receives an input of a content reference request from the user 41, the reproduction application 360 acquires the URL and price information of the corresponding content (content ID “3”) from the content management block chain 51. Then, the playback application 360 displays price information on the monitor. When the user 41 receives an input for approving the price indicated by the price information, the playback application 360 decrypts the acquired URL with the common key “sk2”. The reproduction application 360 transmits an access request in which the signature of the user's private key is attached to the URL obtained by decryption to the content server 400.

署名が正当であるとコンテンツサーバ400で認められると、再生アプリケーション360は、送信したURLに示される位置にあるコンテンツをコンテンツサーバ400から取得する。再生アプリケーション360は、取得したコンテンツ(例えば動画データ)を再生し、再生結果をモニタに表示する。これにより、ユーザ41は、コンテンツサーバ400に格納されているコンテンツを閲覧することができる。   When the content server 400 recognizes that the signature is valid, the playback application 360 acquires the content at the position indicated by the transmitted URL from the content server 400. The playback application 360 plays back the acquired content (for example, moving image data) and displays the playback result on the monitor. Thereby, the user 41 can browse the content stored in the content server 400.

同様に、ユーザ42も再生アプリケーション360aを用いてコンテンツを参照することができる。退会したユーザ43は、ブロック83に、ユーザ43の公開鍵で暗号化した共通鍵「sk2」が含まれていないため、共通鍵「sk2」を取得できない。すなわち、ユーザ43は、退会後に提供されたコンテンツを参照することはできない。   Similarly, the user 42 can refer to the content using the reproduction application 360a. The user 43 who has withdrawn cannot acquire the common key “sk2” in the block 83 because the common key “sk2” encrypted with the public key of the user 43 is not included in the block 83. That is, the user 43 cannot refer to the content provided after the withdrawal.

第4の実施の形態における各要素の処理のうち、鍵配布エージェント140の処理は、図9に示した第2の実施の形態の処理と同じである。また入退会管理システム220の処理は、図11に示した第2の実施の形態の処理と同じである。以下、第4の実施の形態における第2の実施の形態と異なる処理を実行する要素について、実行する処理の手順を具体的に説明する。   Of the processing of each element in the fourth embodiment, the processing of the key distribution agent 140 is the same as the processing of the second embodiment shown in FIG. Moreover, the process of the entrance / exit management system 220 is the same as the process of 2nd Embodiment shown in FIG. Hereinafter, the procedure of the process to be executed will be specifically described for elements that execute processes different from those of the second embodiment in the fourth embodiment.

図20は、第4の実施の形態におけるコンテンツ管理エージェントの処理の手順の一例を示すフローチャートである。以下、図20に示す処理をステップ番号に沿って説明する。   FIG. 20 is a flowchart illustrating an example of a processing procedure of the content management agent according to the fourth embodiment. In the following, the process illustrated in FIG. 20 will be described in order of step number.

[ステップS301]コンテンツ管理エージェント150は、鍵配布エージェント140から共通鍵を取得する。
[ステップS302]コンテンツ管理エージェント150は、共通鍵を暗号鍵として使用して、コンテンツのURLを暗号化する。
[Step S301] The content management agent 150 acquires a common key from the key distribution agent 140.
[Step S302] The content management agent 150 encrypts the URL of the content using the common key as an encryption key.

[ステップS303]コンテンツ管理エージェント150は、暗号化したURLと価格情報とを含むブロックを、コンテンツ管理ブロックチェーン51に登録する。
次に、再生アプリケーション360が実行する処理について具体的に説明する。
[Step S303] The content management agent 150 registers a block including the encrypted URL and price information in the content management block chain 51.
Next, the process executed by the playback application 360 will be specifically described.

図21は、再生アプリケーションが実行する処理の手順の一例を示すフローチャートである。以下、図21に示す処理をステップ番号に沿って説明する。
[ステップS311]再生アプリケーション360は、コンテンツ管理ブロックチェーン51から、端末装置300を使用しているユーザ41の公開鍵で暗号化された共通鍵を取得する。
FIG. 21 is a flowchart illustrating an example of a procedure of processing executed by the playback application. In the following, the process illustrated in FIG. 21 will be described in order of step number.
[Step S311] The playback application 360 acquires a common key encrypted with the public key of the user 41 using the terminal device 300 from the content management block chain 51.

[ステップS312]再生アプリケーション360は、取得した共通鍵を、ユーザ41の秘密鍵で復号する。再生アプリケーション360は、復号した共通鍵を、ストレージ装置などの記憶媒体に格納する。   [Step S312] The playback application 360 decrypts the acquired common key with the secret key of the user 41. The playback application 360 stores the decrypted common key in a storage medium such as a storage device.

[ステップS313]再生アプリケーション360は、ユーザ41からの閲覧対象のコンテンツの指定入力に応じ、指定されたコンテンツのコンテンツIDを指定して、コンテンツ管理ブロックチェーン51から該当コンテンツの価格情報を取得する。そして再生アプリケーション360は、価格情報に示されるコンテンツの価格を表示し、価格に対するユーザ41の承認入力を受け付ける。   [Step S <b> 313] The playback application 360 specifies the content ID of the specified content in accordance with the designation input of the content to be browsed from the user 41, and acquires the price information of the content from the content management block chain 51. Then, the playback application 360 displays the price of the content indicated in the price information, and accepts an approval input from the user 41 for the price.

[ステップS314]再生アプリケーション360は、ユーザ41の承認入力に応じ、指定されたコンテンツのコンテンツIDを指定して、コンテンツ管理ブロックチェーン51から該当コンテンツのURLを取得する。   [Step S314] The playback application 360 specifies the content ID of the specified content in accordance with the approval input of the user 41, and acquires the URL of the corresponding content from the content management block chain 51.

[ステップS315]再生アプリケーション360は、取得したURLを共通鍵で復号する。
[ステップS316]再生アプリケーション360は、復号したURLにユーザ41に署名を添付したアクセス要求を、コンテンツサーバ400に送信する。例えば再生アプリケーション360は、URLのハッシュ値を、ユーザ41の秘密鍵で暗号化し、そのURLの署名とする。
[Step S315] The playback application 360 decrypts the acquired URL with the common key.
[Step S316] The playback application 360 transmits an access request in which the signature is attached to the user 41 to the decrypted URL to the content server 400. For example, the playback application 360 encrypts the hash value of the URL with the private key of the user 41 and sets it as the signature of the URL.

[ステップS317]再生アプリケーション360は、コンテンツサーバ400においてアクセスが許可された場合、復号したURLにあるコンテンツにアクセスし、このコンテンツを再生、および表示する。   [Step S317] When access is permitted in the content server 400, the playback application 360 accesses the content at the decrypted URL, and plays back and displays this content.

これにより、ユーザ41は、閲覧対象として指定したコンテンツを閲覧することができる。
次に、コンテンツサーバ400が実行する処理について説明する。
Thereby, the user 41 can browse the content designated as the browsing target.
Next, processing executed by the content server 400 will be described.

図22は、コンテンツサーバが実行する処理の手順の一例を示すフローチャートである。以下、図22に示す処理をステップ番号に沿って説明する。
[ステップS321]コンテンツサーバ400は、コンテンツアクセス用のURLと契約者の署名とを含むアクセス要求を受け付ける。
FIG. 22 is a flowchart illustrating an example of a procedure of processing executed by the content server. In the following, the process illustrated in FIG. 22 will be described in order of step number.
[Step S321] The content server 400 accepts an access request including a URL for content access and the signature of the contractor.

[ステップS322]コンテンツサーバ400は、契約者の署名の検証のため、アクセス要求の送信元のユーザの公開鍵を、コンテンツ管理ブロックチェーン51から取得する。   [Step S322] The content server 400 acquires the public key of the user who has transmitted the access request from the content management block chain 51 in order to verify the signature of the contractor.

[ステップS323]コンテンツサーバ400は、アクセス要求に添付された署名が有効か否かを判断する。例えばコンテンツサーバ400は、署名をユーザの公開鍵で復号すると共に、URLのハッシュ値を算出する。コンテンツサーバ400は、復号して得られた値と、算出したハッシュ値とが同一であれば、有効な署名であると判断する。コンテンツサーバ400は、署名が有効であれば、処理をステップS324に進める。またコンテンツサーバ400は、署名が無効であれば、処理をステップS325に進める。   [Step S323] The content server 400 determines whether or not the signature attached to the access request is valid. For example, the content server 400 decrypts the signature with the user's public key and calculates the hash value of the URL. The content server 400 determines that the signature is valid if the decrypted value and the calculated hash value are the same. If the signature is valid, the content server 400 proceeds with the process to step S324. If the signature is invalid, the content server 400 proceeds with the process to step S325.

[ステップS324]コンテンツサーバ400は、コンテンツへのアクセスを許可し、アクセス要求に示されるURLのコンテンツを、アクセス要求の送信元の端末装置に送信する。コンテンツサーバ400は、その後、アクセス要求に応じた処理を終了する。   [Step S324] The content server 400 permits access to the content, and transmits the content of the URL indicated in the access request to the terminal device that has transmitted the access request. Thereafter, the content server 400 ends the process according to the access request.

[ステップS325]コンテンツサーバ400は、コンテンツ要求を送信した端末装置からのコンテンツへのアクセスを拒否する。アクセスを拒否した場合、例えばコンテンツサーバ400は、アクセス要求の送信元の端末装置へ、アクセス拒否の応答を送信する。   [Step S325] The content server 400 denies access to the content from the terminal device that transmitted the content request. When the access is rejected, for example, the content server 400 transmits an access rejection response to the terminal device that has transmitted the access request.

このようにして、ブロックチェーンとは別の場所にコンテンツを保存した場合であっても、コンテンツに対する閲覧の管理を、ブロックチェーンを用いて適切に行うことができる。   In this way, even when content is stored in a location different from the block chain, browsing management of the content can be appropriately performed using the block chain.

〔第5の実施の形態〕
次に第5の実施の形態について説明する。第5の実施の形態は、第4の実施の形態における入退会管理システム220に代えて、ブロックチェーンを用いてユーザの入退会や課金処理を実現するものである。また第5の実施の形態では、ユーザが閲覧を希望するコンテンツの代金を、仮想通貨によって課金し、課金が正常に完了した場合にのみ、ユーザがコンテンツを閲覧できるようにする。
[Fifth Embodiment]
Next, a fifth embodiment will be described. In the fifth embodiment, instead of the entrance / exit management system 220 in the fourth embodiment, user entrance / exit and billing processing are realized using a block chain. Further, in the fifth embodiment, the price of the content that the user desires to browse is charged with virtual currency, and the user can browse the content only when charging is completed normally.

図23は、第5の実施の形態における各装置の機能の一例を示すブロック図である。図23では、第4の実施の形態と同様の機能を有する要素には第4の実施の形態と同じ符号を付している。   FIG. 23 is a block diagram illustrating an example of the function of each device according to the fifth embodiment. In FIG. 23, elements having the same functions as those in the fourth embodiment are denoted by the same reference numerals as those in the fourth embodiment.

第5の実施の形態では、ブロックチェーンノード100に、入会エージェント160、退会エージェント170、および課金エージェント180が追加されている。入会エージェント160は、会員の入会処理を行う。退会エージェント170は、会員の退会処理を行う。課金エージェント180は、会員がコンテンツを参照するごとに、仮想通貨による課金処理を行う。入会エージェント160、退会エージェント170、および課金エージェント180は、例えばチェーンコードをブロックチェーンノード100に実行させることで実現される。同様に、ブロックチェーンノード100aも入会エージェント160a、退会エージェント170a、課金エージェント180aを有する。他のブロックチェーンノード100b,・・・は、ブロックチェーンノード100aと同様の要素を有している。   In the fifth embodiment, an enrollment agent 160, a withdrawal agent 170, and a charging agent 180 are added to the block chain node 100. The enrollment agent 160 performs membership enrollment processing. The withdrawal agent 170 performs membership withdrawal processing. The billing agent 180 performs billing processing using virtual currency each time a member refers to the content. The joining agent 160, the withdrawal agent 170, and the charging agent 180 are realized, for example, by causing the block chain node 100 to execute a chain code. Similarly, the block chain node 100a also has a joining agent 160a, a withdrawal agent 170a, and a charging agent 180a. The other block chain nodes 100b,... Have the same elements as the block chain node 100a.

なお課金エージェントは、第1の実施の形態で説明した課金部の一例である。
図24は、ユーザの入会処理の一例を示す図である。入会エージェント160は、例えばユーザ41が使用する端末装置300のWebブラウザ320からユーザ情報を取得する。例えばユーザ41は、Webブラウザ320により、ブロックチェーンノード100の入会エージェント160にアクセスし、コンテンツサービスへの入会画面のデータを取得する。ユーザ41は、Webブラウザ320によって表示された入会画面に、ログインID、パスワード、ワレットIDなどのユーザ情報を入力する。なお入会画面では、閲覧するコンテンツを選択することができ、選択したコンテンツのコンテンツIDや代金が入会画面に表示される。ユーザ41が入力したユーザ情報は、Webブラウザ320から入会エージェント160に送信される。
The billing agent is an example of the billing unit described in the first embodiment.
FIG. 24 is a diagram illustrating an example of a user joining process. The membership agent 160 acquires user information from the Web browser 320 of the terminal device 300 used by the user 41, for example. For example, the user 41 accesses the enrollment agent 160 of the block chain node 100 through the Web browser 320 and acquires the data of the enrollment screen for the content service. The user 41 inputs user information such as a login ID, a password, and a wallet ID on the membership screen displayed by the web browser 320. Note that on the enrollment screen, the content to be browsed can be selected, and the content ID and price of the selected content are displayed on the enrollment screen. User information input by the user 41 is transmitted from the Web browser 320 to the membership agent 160.

入会エージェント160は、ユーザ管理ブロックチェーン53からユーザ登録用公開鍵501を取得し、Webブラウザ320から送られたユーザ情報を、ユーザ登録用公開鍵501で暗号化する。次に入会エージェント160は、ユーザ41のワレット(電子財布)の有効性を検証する。例えば入会エージェント160は、仮想通貨ブロックチェーン52から、ユーザ41のワレットIDに対応するワレットの情報を取得し、仮想通貨ブロックチェーン52の仕組みを用いてワレットが有効であることの検証を行う。   The enrollment agent 160 acquires the user registration public key 501 from the user management block chain 53 and encrypts the user information sent from the Web browser 320 with the user registration public key 501. Next, the enrollment agent 160 verifies the validity of the user 41's wallet (electronic wallet). For example, the enrollment agent 160 acquires wallet information corresponding to the wallet ID of the user 41 from the virtual currency block chain 52, and verifies that the wallet is valid using the mechanism of the virtual currency block chain 52.

次に入会エージェント160は、ユーザ鍵(秘密鍵502と公開鍵503とのペア)を生成する。入会エージェント160は、生成した秘密鍵502を、ユーザ41が使用している端末装置300内の再生アプリケーション360に送信する。また入会エージェント160は、生成した公開鍵503を含むブロック90(鍵ブロック)を、コンテンツ管理ブロックチェーン51に登録する。   Next, the enrollment agent 160 generates a user key (a pair of the secret key 502 and the public key 503). The enrollment agent 160 transmits the generated secret key 502 to the reproduction application 360 in the terminal device 300 used by the user 41. The enrollment agent 160 registers the block 90 (key block) including the generated public key 503 in the content management block chain 51.

次に入会エージェント160は、暗号化されたユーザ情報に、ユーザ41のログインIDと、ユーザ情報を有効であることを示す有効フラグ「1」を付与する。そして入会エージェント160は、ログインIDと有効フラグを付与したユーザ情報をユーザ管理ブロックチェーン53に登録する。   Next, the enrollment agent 160 gives the login ID of the user 41 and a validity flag “1” indicating that the user information is valid to the encrypted user information. The enrollment agent 160 registers the user information with the login ID and the valid flag in the user management block chain 53.

ユーザ管理ブロックチェーン53に登録されたユーザ情報を復号するためのユーザ登録用秘密鍵は、退会エージェント170と課金エージェント180とのそれぞれで管理されている。退会エージェント170と課金エージェント180は、それぞれ、暗号化されたユーザ情報を復号できる。   The user registration secret key for decrypting the user information registered in the user management block chain 53 is managed by each of the withdrawal agent 170 and the billing agent 180. The withdrawal agent 170 and the billing agent 180 can each decrypt the encrypted user information.

次に、入会エージェント160が実行する処理について具体的に説明する。
図25は、入会エージェントが実行する処理の手順の一例を示すフローチャートである。以下、図25に示す処理をステップ番号に沿って説明する。
Next, the process executed by the membership agent 160 will be specifically described.
FIG. 25 is a flowchart illustrating an example of a procedure of processing executed by the membership agent. In the following, the process illustrated in FIG. 25 will be described in order of step number.

[ステップS401]入会エージェント160は、ユーザが使用する端末装置に入会画面データを送信し、端末装置に入会画面を表示させる。
[ステップS402]入会エージェント160は、ユーザによって入会画面に入力されたログインID、パスワード、ワレットIDを、ユーザ情報として端末装置から取得する。
[Step S401] The membership agent 160 transmits the membership screen data to the terminal device used by the user, and displays the membership screen on the terminal device.
[Step S402] The enrollment agent 160 acquires the login ID, password, and wallet ID entered on the enrollment screen by the user as user information from the terminal device.

[ステップS403]入会エージェント160は、ユーザ管理ブロックチェーン53からユーザ登録用公開鍵501を取得する。そして入会エージェント160は、取得したユーザ登録用公開鍵501を暗号鍵として用いて、端末装置から取得したユーザ情報を暗号化する。   [Step S403] The enrollment agent 160 acquires the user registration public key 501 from the user management block chain 53. The enrollment agent 160 encrypts the user information acquired from the terminal device using the acquired user registration public key 501 as an encryption key.

[ステップS404]入会エージェント160は、仮想通貨ブロックチェーン52にアクセスし、ユーザ情報に示されるワレットIDに対するワレットの有効性を確認する。
[ステップS405]入会エージェント160は、ワレットが有効であれば、処理をステップS406に進める。また入会エージェント160は、ワレットが有効でなければ、処理をステップS401に進める。
[Step S404] The enrollment agent 160 accesses the virtual currency block chain 52 and confirms the validity of the wallet for the wallet ID indicated in the user information.
[Step S405] If the wallet is valid, the enrollment agent 160 advances the process to step S406. If the wallet is not valid, the enrollment agent 160 advances the process to step S401.

[ステップS406]入会エージェント160は、ユーザの鍵ペア(公開鍵+秘密鍵)を生成する。
[ステップS407]入会エージェント160は、生成した鍵ペアを、ユーザが使用する端末装置に送信し、その端末装置に、実装されている再生アプリケーションへの秘密鍵の登録処理を実行させる。
[Step S406] The enrollment agent 160 generates a user key pair (public key + private key).
[Step S407] The enrollment agent 160 transmits the generated key pair to the terminal device used by the user, and causes the terminal device to execute processing for registering the secret key to the implemented reproduction application.

[ステップS408]入会エージェント160は、ユーザの公開鍵を、コンテンツ管理ブロックチェーン51に登録する。
[ステップS409]入会エージェント160は、暗号化したユーザ情報に、ログインIDと「有効(1)」を示す有効フラグとを付与し、ユーザ情報を、ユーザ管理ブロックチェーン53に登録する。
[Step S408] The enrollment agent 160 registers the user's public key in the content management block chain 51.
[Step S409] The enrollment agent 160 adds a login ID and a valid flag indicating “valid (1)” to the encrypted user information, and registers the user information in the user management block chain 53.

このようにして、ユーザの入会処理が完了する。次にユーザの退会処理について説明する。
図26は、ユーザの退会処理の一例を示す図である。例えばユーザ41が端末装置300のWebブラウザ320を介して退会エージェント170にアクセスし、退会画面からログインIDとパスワードとを含む退会要求を入力する。退会要求は、Webブラウザ320から退会エージェント170に送信される。退会エージェント170は、退会要求を受信すると、退会要求に示されるログインIDに対応するユーザ情報を、ユーザ管理ブロックチェーン53から取得する。この時点では、取得したユーザ情報には、「有効」を示す有効フラグ「1」が付与されている。退会エージェント170は、ユーザ登録用秘密鍵504を用いて、ユーザ情報を復号する。
In this way, the user membership process is completed. Next, the user withdrawal process will be described.
FIG. 26 is a diagram illustrating an example of a user withdrawal process. For example, the user 41 accesses the withdrawal agent 170 via the Web browser 320 of the terminal device 300 and inputs a withdrawal request including a login ID and a password from the withdrawal screen. The withdrawal request is transmitted from the web browser 320 to the withdrawal agent 170. When the withdrawal agent 170 receives the withdrawal request, the withdrawal agent 170 acquires user information corresponding to the login ID indicated in the withdrawal request from the user management block chain 53. At this point, the acquired user information is assigned a valid flag “1” indicating “valid”. The withdrawal agent 170 uses the user registration secret key 504 to decrypt the user information.

次に退会エージェント170は、パスワードの有効性を検証し、パスワードが有効であれば、ユーザ管理ブロックチェーン53から、退会するユーザ41のユーザ情報を削除する。例えば退会エージェント170は、ユーザ41のログインIDと、ユーザ情報が無効であることを示す有効フラグ「0」との組をユーザ管理ブロックチェーン53に登録する。さらに退会エージェント170は、ユーザ41の公開鍵を削除したブロック99を、コンテンツ管理ブロックチェーン51に登録する。   Next, the withdrawal agent 170 verifies the validity of the password, and if the password is valid, deletes the user information of the user 41 to be withdrawn from the user management block chain 53. For example, the withdrawal agent 170 registers a set of a login ID of the user 41 and a valid flag “0” indicating that the user information is invalid in the user management block chain 53. Further, the withdrawal agent 170 registers the block 99 from which the public key of the user 41 is deleted in the content management block chain 51.

次に、退会エージェント170が実行する処理について具体的に説明する。
図27は、退会エージェントが実行する処理の手順の一例を示すフローチャートである。以下、図27に示す処理をステップ番号に沿って説明する。
Next, the process executed by the withdrawal agent 170 will be specifically described.
FIG. 27 is a flowchart illustrating an example of a procedure of processing executed by the withdrawal agent. In the following, the process illustrated in FIG. 27 will be described in order of step number.

[ステップS411]退会エージェント170は、ユーザが使用する端末装置から、ログインIDとパスワードとの組を含む退会要求を受信する。
[ステップS412]退会エージェント170は、ユーザ管理ブロックチェーン53から、退会要求に示されるログインIDに対応する有効なユーザ情報を取得する。
[Step S411] The withdrawal agent 170 receives a withdrawal request including a pair of a login ID and a password from a terminal device used by the user.
[Step S412] The withdrawal agent 170 obtains valid user information corresponding to the login ID indicated in the withdrawal request from the user management block chain 53.

[ステップS413]退会エージェント170は、ユーザ登録用秘密鍵を復号鍵として使用し、取得したユーザ情報を復号する。
[ステップS414]退会エージェント170は、退会要求に含まれるログインIDとパスワードとの組に基づいて、パスワードが有効か否かを判断する。例えば退会エージェント170は、復号したユーザ情報に含まれるパスワードと、退会要求に含まれるパスワードとが一致した場合、パスワードが有効であると判断する。退会エージェント170は、パスワードが有効な場合、処理をステップS415に進める。また退会エージェント170は、パスワードが有効でなければ、処理をステップS411に進める。
[Step S413] The withdrawal agent 170 uses the user registration secret key as a decryption key to decrypt the acquired user information.
[Step S414] The withdrawal agent 170 determines whether the password is valid based on the combination of the login ID and the password included in the withdrawal request. For example, the withdrawal agent 170 determines that the password is valid when the password included in the decrypted user information matches the password included in the withdrawal request. If the password is valid, the withdrawal agent 170 advances the process to step S415. If the password is not valid, the withdrawal agent 170 advances the process to step S411.

[ステップS415]退会エージェント170は、ユーザ管理ブロックチェーン53に、退会するユーザのログインIDと有効フラグ「0」(削除)との組を登録する。
[ステップS416]退会エージェント170は、退会するユーザの公開鍵を削除したブロックを、コンテンツ管理ブロックチェーン51に登録する。
[Step S415] The withdrawal agent 170 registers, in the user management block chain 53, a set of a login ID of the user to be withdrawn and a valid flag “0” (deleted).
[Step S416] The withdrawal agent 170 registers the block from which the public key of the user to be removed is deleted in the content management block chain 51.

このようにしてユーザの退会処理が行われる。次に課金エージェント180によるコンテンツごとの課金処理について説明する。
図28は、課金処理の一例を示す図である。図28の例では、コンテンツ管理ブロックチェーン51には、予め会員登録しているユーザの公開鍵を含むブロック90と、共通鍵「sk1」で暗号化したURLおよび価格情報を含むブロック91とが登録されているものとする。
In this way, the user withdrawal process is performed. Next, a charging process for each content by the charging agent 180 will be described.
FIG. 28 is a diagram illustrating an example of the billing process. In the example of FIG. 28, registered in the content management block chain 51 are a block 90 containing the public key of a user who has registered as a member in advance, and a block 91 containing URL and price information encrypted with the common key “sk1”. It is assumed that

ここで、例えばユーザ41がコンテンツを閲覧する場合、Webブラウザ320を用いて課金エージェント180にアクセスし、コンテンツ入手画面を表示させる。ユーザ41は、コンテンツ入手画面で閲覧するコンテンツを選択し、ログインIDとパスワードとを入力する。Webブラウザ320は、入力されたコンテンツIDとユーザ情報(ログインIDとパスワード)とを課金エージェント180に送信する。   Here, for example, when the user 41 browses the content, the accounting agent 180 is accessed using the Web browser 320 to display the content acquisition screen. The user 41 selects content to browse on the content acquisition screen and inputs a login ID and a password. The web browser 320 transmits the input content ID and user information (login ID and password) to the billing agent 180.

課金エージェント180は、ユーザ管理ブロックチェーン53からユーザ41のユーザ情報を取得する。そして課金エージェント180は、ユーザ登録用秘密鍵504を復号鍵として用いて、ユーザ管理ブロックチェーン53から取得したユーザ情報を復号する。次に課金エージェント180は、Webブラウザ320から送られたコンテンツIDに対応するコンテンツの価格情報を、コンテンツ管理ブロックチェーン51から取得する。そして課金エージェント180は、仮想通貨ブロックチェーン52を介して、ユーザ41のワレットに対して、コンテンツの価格分の課金処理を行う。例えば課金エージェント180は、ユーザ41のワレットからコンテンツの価格分の金額を、コンテンツ提供者のワレットに送金することを示すブロックを、仮想通貨ブロックチェーン52に登録する。   The charging agent 180 acquires user information of the user 41 from the user management block chain 53. Then, the billing agent 180 decrypts the user information acquired from the user management block chain 53 using the user registration private key 504 as a decryption key. Next, the billing agent 180 acquires price information of content corresponding to the content ID sent from the Web browser 320 from the content management block chain 51. Then, the billing agent 180 performs billing processing for the content price on the wallet of the user 41 via the virtual currency block chain 52. For example, the billing agent 180 registers in the virtual currency block chain 52 a block indicating that the amount corresponding to the price of the content from the user's 41 wallet is transferred to the content provider's wallet.

課金処理後、課金エージェント180は、ユーザ41の端末装置300によるコンテンツ復号用の共通鍵の登録指示を、鍵配布エージェント140に送信する。鍵配布エージェント140は、共通鍵の登録指示に応じて、ユーザ41の公開鍵「PKX」で暗号化した共通鍵「sk1」を含むブロック92を、コンテンツ管理ブロックチェーン51に登録する。 After the accounting process, the accounting agent 180 transmits to the key distribution agent 140 an instruction to register a common key for content decryption by the terminal device 300 of the user 41. In response to the common key registration instruction, the key distribution agent 140 registers the block 92 including the common key “sk1” encrypted with the public key “PK X ” of the user 41 in the content management block chain 51.

再生アプリケーション360は、コンテンツ管理ブロックチェーン51から、ユーザ41の公開鍵「PKX」で暗号化した共通鍵「sk1」を取得し、その共通鍵「sk1」をユーザ41の秘密鍵で復号する。次に再生アプリケーション360は、コンテンツ管理ブロックチェーン51から共通鍵「sk1」で暗号化されたコンテンツのURLを取得し、そのURLを共通鍵「sk1」で復号する。再生アプリケーション360は、復号により得られたURLを指定して、ユーザ41の署名付きのアクセス要求をコンテンツサーバ400に送信する。コンテンツサーバ400は、コンテンツ管理ブロックチェーン51からユーザ41の公開鍵を取得して、署名の正当性を確認し、署名が正当であれば、コンテンツへのアクセスを許可する。コンテンツへのアクセスが許可された再生アプリケーション360は、コンテンツサーバ400に格納されているコンテンツを取得し、再生および表示する。 The playback application 360 acquires the common key “sk1” encrypted with the public key “PK X ” of the user 41 from the content management block chain 51, and decrypts the common key “sk1” with the private key of the user 41. Next, the playback application 360 acquires the URL of the content encrypted with the common key “sk1” from the content management block chain 51 and decrypts the URL with the common key “sk1”. The playback application 360 transmits the access request with the signature of the user 41 to the content server 400 by specifying the URL obtained by the decryption. The content server 400 obtains the public key of the user 41 from the content management block chain 51, confirms the validity of the signature, and permits access to the content if the signature is valid. The reproduction application 360 permitted to access the content acquires the content stored in the content server 400, and reproduces and displays the content.

次に自動課金を用いたコンテンツの提供処理について具体的に説明する。
図29は、自動課金を用いたコンテンツ提供処理の手順の一例を示すフローチャートである。以下、ユーザ41が端末装置300を用いてコンテンツを参照する場合を想定し、図29に示す処理をステップ番号に沿って説明する。
Next, a content providing process using automatic billing will be specifically described.
FIG. 29 is a flowchart illustrating an example of a content providing process using automatic billing. In the following, assuming that the user 41 refers to the content using the terminal device 300, the processing illustrated in FIG. 29 will be described along step numbers.

[ステップS421]課金エージェント180は、ユーザ41が使用する端末装置300からログインID、パスワード、およびコンテンツIDを取得する。
[ステップS422]課金エージェント180は、ユーザ管理ブロックチェーン53からユーザ情報を取得する。そして課金エージェント180は、取得したユーザ情報を、ユーザ登録用秘密鍵504で復号する。
[Step S421] The accounting agent 180 obtains a login ID, a password, and a content ID from the terminal device 300 used by the user 41.
[Step S422] The billing agent 180 acquires user information from the user management block chain 53. The billing agent 180 decrypts the acquired user information with the user registration secret key 504.

[ステップS423]課金エージェント180は、コンテンツ管理ブロックチェーン51からコンテンツの価格情報を取得する。
[ステップS424]課金エージェント180は、コンテンツの価格情報に示される金額を、仮想通貨ブロックチェーン52におけるユーザ41のワレットに課金する。
[Step S423] The billing agent 180 acquires content price information from the content management block chain 51.
[Step S424] The billing agent 180 charges the wallet of the user 41 in the virtual currency block chain 52 for the amount indicated in the price information of the content.

[ステップS425]課金エージェント180は、課金が正常に終了したか否かを判断する。課金エージェント180は、課金が正常に終了した場合、処理をステップS427に進める。また課金エージェント180は、ユーザ41のワレットの残高不足などにより課金が正常に終了できなかった場合、処理をステップS426に進める。   [Step S425] The billing agent 180 determines whether billing has ended normally. The charging agent 180 proceeds with the process to step S427 when the charging ends normally. Also, the billing agent 180 proceeds with the process to step S426 when billing cannot be completed normally due to a lack of the balance of the wallet of the user 41 or the like.

[ステップS426]課金エージェント180は、課金の異常終了を、ユーザ41が使用する端末装置300に送信し、処理を終了する。
[ステップS427]課金エージェント180は、鍵配布エージェント140にユーザの復号用の共通鍵の登録を指示する。
[Step S426] The charging agent 180 transmits an abnormal end of charging to the terminal device 300 used by the user 41, and ends the process.
[Step S427] The accounting agent 180 instructs the key distribution agent 140 to register a common key for decryption of the user.

[ステップS428]鍵配布エージェント140が、ユーザ41の公開鍵で暗号化した共通鍵を、コンテンツ管理ブロックチェーン51に登録する。
[ステップS429]再生アプリケーション360は、ユーザ41の公開鍵で暗号化した共通鍵をコンテンツ管理ブロックチェーン51から取得し、ユーザ41の秘密鍵で共通鍵を復号する。さらに再生アプリケーション360は、コンテンツ管理ブロックチェーン51からコンテンツの暗号化されたURLを取得し、共通鍵でURLを復号する。
[Step S428] The key distribution agent 140 registers the common key encrypted with the public key of the user 41 in the content management block chain 51.
[Step S429] The playback application 360 acquires the common key encrypted with the public key of the user 41 from the content management block chain 51, and decrypts the common key with the secret key of the user 41. Furthermore, the playback application 360 acquires the encrypted URL of the content from the content management block chain 51 and decrypts the URL with the common key.

[ステップS430]再生アプリケーション360は、URLにユーザ41の署名を添付したアクセス要求を、コンテンツサーバ400に送信する。
[ステップS431]再生アプリケーション360は、コンテンツサーバ400においてアクセスが許可されると、コンテンツサーバ400からコンテンツを取得し、そのコンテンツの再生および表示を行う。
[Step S430] The playback application 360 transmits an access request in which the signature of the user 41 is attached to the URL to the content server 400.
[Step S431] When the content server 400 permits access, the playback application 360 acquires content from the content server 400, and plays back and displays the content.

このようにして、コンテンツごとの自動課金を行うことができる。そして、課金が完了したユーザのみ、コンテンツを復号するための共通鍵を取得し、コンテンツを参照することができる。第5の実施の形態においても、各ユーザは、代金を支払い済みのコンテンツについては、そのコンテンツの暗号化に用いた共通鍵を有しているため、退会後もそのコンテンツを参照可能である。   In this way, automatic charging for each content can be performed. Only the user who has been charged can acquire the common key for decrypting the content and refer to the content. Also in the fifth embodiment, since each user has a common key used for encrypting the content for which the price has been paid, the user can refer to the content even after withdrawal.

〔その他の実施の形態〕
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
[Other Embodiments]
As mentioned above, although embodiment was illustrated, the structure of each part shown by embodiment can be substituted by the other thing which has the same function. Moreover, other arbitrary structures and processes may be added. Further, any two or more configurations (features) of the above-described embodiments may be combined.

1a,1b,1c ユーザ
2a,2b,2c 端末装置
3a,3b,3c 公開鍵
4a,4b,4c 秘密鍵
5,5a コンテンツ
6,6a,6b,6c 共通鍵
10 コンテンツ配信システム
10a,10b,10c,・・・ コンテンツ配信装置
11 記憶部
11a ユーザDB
12 鍵生成部
12a,12b,12c 鍵ペア
13 鍵配布部
14 暗号化部
15 登録部
16 ユーザ更新部
17 鍵更新部
18 ブロックチェーン
1a, 1b, 1c User 2a, 2b, 2c Terminal device 3a, 3b, 3c Public key 4a, 4b, 4c Private key 5, 5a Content 6, 6a, 6b, 6c Common key 10 Content distribution system 10a, 10b, 10c, ... Content distribution device 11 Storage unit 11a User DB
12 Key generation unit 12a, 12b, 12c Key pair 13 Key distribution unit 14 Encryption unit 15 Registration unit 16 User update unit 17 Key update unit 18 Block chain

Claims (9)

コンテンツの配信を受けるための契約について契約中のユーザである複数の契約ユーザのそれぞれに公開鍵を生成する鍵生成部と、
前記公開鍵に対応する秘密鍵を複数の前記契約ユーザのそれぞれに配布する鍵配布部と、
前記コンテンツを共通鍵で暗号化し、複数の前記契約ユーザの情報を保有するユーザデータベースを記憶する記憶部を参照し、該共通鍵を前記ユーザデータベースに記憶された複数の前記契約ユーザのそれぞれに割り当てられた前記公開鍵のそれぞれで暗号化する暗号化部と、
前記共通鍵で暗号化されたコンテンツと暗号化された前記共通鍵のそれぞれとをブロックチェーンに登録する登録部と、
前記共通鍵を更新する鍵更新部と、
を有し、
前記暗号化部は、前記共通鍵の更新に応じて、前記登録部による前記登録する処理が実行された後に前記契約ユーザの情報が更新された前記記憶部を参照し、更新後の共通鍵を前記ユーザデータベースから取得した複数の前記契約ユーザのそれぞれに割り当てられた前記公開鍵のそれぞれで暗号化し、
前記登録部は、暗号化された更新後の共通鍵のそれぞれを前記ブロックチェーンに登録する、
ことを特徴とするコンテンツ配信装置。
A key generation unit for generating a public key for each of a plurality of contract users who are contracting users for a contract for receiving content distribution;
A key distribution unit that distributes a secret key corresponding to the public key to each of the plurality of contract users;
The content is encrypted with a common key, and a storage unit that stores a user database that holds information on the plurality of contract users is referred to, and the common key is assigned to each of the plurality of contract users stored in the user database. An encryption unit for encrypting with each of the public keys provided;
A registration unit that registers the content encrypted with the common key and each of the encrypted common keys in a block chain;
A key update unit for updating the common key;
Have
In response to the update of the common key, the encryption unit refers to the storage unit in which the information on the contract user has been updated after the registration process by the registration unit is executed, and uses the updated common key. Encrypted with each of the public keys assigned to each of the plurality of contract users acquired from the user database,
The registration unit registers each encrypted updated common key in the block chain.
A content distribution apparatus characterized by the above.
前記鍵更新部は、定期的に前記共通鍵を更新することを特徴とする請求項1記載のコンテンツ配信装置。   The content distribution apparatus according to claim 1, wherein the key update unit periodically updates the common key. 前記鍵更新部は、前記記憶部に記憶された前記契約ユーザの情報が更新された場合、前記共通鍵を更新することを特徴とする請求項1記載のコンテンツ配信装置。   The content distribution apparatus according to claim 1, wherein the key update unit updates the common key when the contract user information stored in the storage unit is updated. 前記コンテンツは、他のコンテンツの格納場所を示す位置情報であることを特徴とする請求項1ないし3のいずれかに記載のコンテンツ配信装置。   4. The content distribution apparatus according to claim 1, wherein the content is position information indicating a storage location of other content. 一端末装置から一コンテンツの提供要求を受信すると、前記一端末装置を使用する一ユーザの仮想通貨に対して課金処理を行う課金部をさらに有し、
前記暗号化部は、前記課金処理が正常に完了した場合に、前記一ユーザに割り当てられた前記公開鍵で前記共通鍵を暗号化し、
前記登録部は、前記一ユーザに割り当てられた前記公開鍵で暗号化された前記共通鍵を、前記ブロックチェーンに登録する、
ことを特徴とする請求項1ないし4のいずれかに記載のコンテンツ配信装置。
When a request for providing one content is received from one terminal device, it further includes a billing unit that performs billing processing for the virtual currency of one user who uses the one terminal device,
The encryption unit encrypts the common key with the public key assigned to the one user when the charging process is normally completed,
The registration unit registers the common key encrypted with the public key assigned to the one user in the block chain;
The content distribution device according to claim 1, wherein the content distribution device is a content distribution device.
コンテンツの配信を受けるための契約について契約中のユーザである複数の契約ユーザの情報を保有するユーザデータベースを記憶する記憶部と、
複数の前記契約ユーザのそれぞれに公開鍵を生成する鍵生成部と、
前記公開鍵に対応する秘密鍵を複数の前記契約ユーザのそれぞれに配布する鍵配布部と、
前記コンテンツを共通鍵で暗号化し、該共通鍵を前記ユーザデータベースに記憶された複数の前記契約ユーザのそれぞれに割り当てられた前記公開鍵のそれぞれで暗号化する暗号化部と、
前記共通鍵で暗号化されたコンテンツと暗号化された前記共通鍵のそれぞれとをブロックチェーンに登録する登録部と、
前記登録部による前記登録する処理が実行された後に、前記記憶部に記憶された前記契約ユーザの情報を更新するユーザ更新部と、
前記共通鍵を更新する鍵更新部と、
を有し、
前記暗号化部は、前記共通鍵の更新に応じて、前記記憶部を参照し、更新後の前記共通鍵を前記ユーザデータベースから取得した複数の前記契約ユーザのそれぞれに割り当てられた前記公開鍵のそれぞれで暗号化し、
前記登録部は、暗号化された更新後の共通鍵のそれぞれを前記ブロックチェーンに登録する、
ことを特徴とするコンテンツ配信システム。
A storage unit for storing a user database that holds information on a plurality of contract users who are contracting users for contracts for receiving content distribution;
A key generation unit that generates a public key for each of the plurality of contract users;
A key distribution unit that distributes a secret key corresponding to the public key to each of the plurality of contract users;
An encryption unit that encrypts the content with a common key and encrypts the common key with each of the public keys assigned to each of the plurality of contract users stored in the user database;
A registration unit that registers the content encrypted with the common key and each of the encrypted common keys in a block chain;
A user updating unit that updates the information on the contract user stored in the storage unit after the registration unit performs the registration process;
A key update unit for updating the common key;
Have
The encryption unit refers to the storage unit in response to the update of the common key, and the public key assigned to each of the plurality of contract users who acquired the updated common key from the user database. Encrypt with each
The registration unit registers each encrypted updated common key in the block chain.
A content distribution system characterized by that.
前記記憶部は、前記ユーザデータベースを、ユーザ管理用ブロックチェーンによって実現し、
前記ユーザ更新部は、前記コンテンツの配信を受けるための契約を締結したユーザを示すユーザ情報を、前記契約ユーザの情報として前記ユーザ管理用ブロックチェーンに登録し、前記コンテンツの配信を受けるための契約を解除した前記契約ユーザの情報を、前記ユーザ管理用ブロックチェーンから削除することを特徴とする請求項6記載のコンテンツ配信システム。
The storage unit realizes the user database by a user management block chain,
The user update unit registers user information indicating a user who has signed a contract for receiving the content distribution in the user management block chain as the contract user information, and receives a contract for receiving the content distribution. 7. The content distribution system according to claim 6, wherein the information on the contract user whose license has been canceled is deleted from the user management block chain.
コンピュータに、
コンテンツの配信を受けるための契約について契約中のユーザである複数の契約ユーザのそれぞれに公開鍵を生成し、
前記公開鍵に対応する秘密鍵を複数の前記契約ユーザのそれぞれに配布し、
前記コンテンツを共通鍵で暗号化し、
複数の前記契約ユーザの情報を保有するユーザデータベースを記憶する記憶部を参照し、該共通鍵を前記ユーザデータベースに記憶された複数の前記契約ユーザのそれぞれに割り当てられた前記公開鍵のそれぞれで暗号化し、
前記共通鍵で暗号化されたコンテンツと暗号化された前記共通鍵のそれぞれとをブロックチェーンに登録し、
前記共通鍵を更新し、
前記共通鍵の更新に応じて、前記登録する処理が実行された後に前記契約ユーザの情報が更新された前記記憶部を参照し、更新後の共通鍵を前記ユーザデータベースから取得した複数の前記契約ユーザのそれぞれに割り当てられた前記公開鍵のそれぞれで暗号化し、
暗号化された更新後の共通鍵のそれぞれを前記ブロックチェーンに登録する、
処理を実行させることを特徴とするコンテンツ配信プログラム。
On the computer,
Generate a public key for each of a plurality of contract users who are contracting users for contracts for receiving content distribution,
Distributing a secret key corresponding to the public key to each of the plurality of contract users,
Encrypt the content with a common key,
Reference is made to a storage unit that stores a user database that holds information on the plurality of contract users, and the common key is encrypted with each of the public keys assigned to the plurality of contract users stored in the user database. And
Register the content encrypted with the common key and each of the encrypted common keys in the block chain,
Updating the common key;
In response to the update of the common key, the plurality of contracts obtained by acquiring the updated common key from the user database with reference to the storage unit in which the contract user information is updated after the registration process is executed. Encrypt with each of the public keys assigned to each of the users,
Register each of the encrypted updated common keys in the blockchain;
A content distribution program characterized by causing a process to be executed.
コンピュータが、
コンテンツの配信を受けるための契約について契約中のユーザである複数の契約ユーザのそれぞれに公開鍵を生成し、
前記公開鍵に対応する秘密鍵を複数の前記契約ユーザのそれぞれに配布し、
前記コンテンツを共通鍵で暗号化し、
複数の前記契約ユーザの情報を保有するユーザデータベースを記憶する記憶部を参照し、該共通鍵を前記ユーザデータベースに記憶された複数の前記契約ユーザのそれぞれに割り当てられた前記公開鍵のそれぞれで暗号化し、
前記共通鍵で暗号化されたコンテンツと暗号化された前記共通鍵のそれぞれとをブロックチェーンに登録し、
前記共通鍵を更新し、
前記共通鍵の更新に応じて、前記登録する処理が実行された後に前記契約ユーザの情報が更新された前記記憶部を参照し、更新後の共通鍵を前記ユーザデータベースから取得した複数の前記契約ユーザのそれぞれに割り当てられた前記公開鍵のそれぞれで暗号化し、
暗号化された更新後の共通鍵のそれぞれを前記ブロックチェーンに登録する、
ことを特徴とするコンテンツ配信方法。
Computer
Generate a public key for each of a plurality of contract users who are contracting users for contracts for receiving content distribution,
Distributing a secret key corresponding to the public key to each of the plurality of contract users,
Encrypt the content with a common key,
Reference is made to a storage unit that stores a user database that holds information on the plurality of contract users, and the common key is encrypted with each of the public keys assigned to the plurality of contract users stored in the user database. And
Register the content encrypted with the common key and each of the encrypted common keys in the block chain,
Updating the common key;
In response to the update of the common key, the plurality of contracts obtained by acquiring the updated common key from the user database with reference to the storage unit in which the contract user information is updated after the registration process is executed. Encrypt with each of the public keys assigned to each of the users,
Register each of the encrypted updated common keys in the blockchain;
A content distribution method characterized by the above.
JP2017149994A 2017-08-02 2017-08-02 Content distribution device, content distribution system, content distribution program, and content distribution method Pending JP2019029933A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017149994A JP2019029933A (en) 2017-08-02 2017-08-02 Content distribution device, content distribution system, content distribution program, and content distribution method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017149994A JP2019029933A (en) 2017-08-02 2017-08-02 Content distribution device, content distribution system, content distribution program, and content distribution method

Publications (1)

Publication Number Publication Date
JP2019029933A true JP2019029933A (en) 2019-02-21

Family

ID=65478875

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017149994A Pending JP2019029933A (en) 2017-08-02 2017-08-02 Content distribution device, content distribution system, content distribution program, and content distribution method

Country Status (1)

Country Link
JP (1) JP2019029933A (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111459672A (en) * 2020-03-30 2020-07-28 百度国际科技(深圳)有限公司 Transaction processing method, device, equipment and medium based on block chain network
WO2020184313A1 (en) * 2019-03-13 2020-09-17 ソニー株式会社 Information processing device, information processing method, and program
JP2020190874A (en) * 2019-05-21 2020-11-26 株式会社医療情報技術研究所 Document management system
JP2021131865A (en) * 2020-02-19 2021-09-09 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド Blockchain-based data processing method, apparatus, device, medium, and program
JP2021182315A (en) * 2020-05-20 2021-11-25 株式会社リーチ・ビデオジャパン System for managing motion-image and still-image contents posting in sns
JP7011019B1 (en) 2020-10-30 2022-02-14 サークレイス株式会社 User information management system, user information management method and computer program
JP2022530582A (en) * 2019-06-28 2022-06-30 ビートダップ ソフトウェア インク. Systems and methods for extensible tracking of media playback using blockchain
JP2022552025A (en) * 2020-06-24 2022-12-15 ビートダップ ソフトウェア インク. Systems and Methods for Continuous Tracking of Media Playback Using Blockchain
JP7299576B2 (en) 2019-06-06 2023-06-28 株式会社シティーデジタル Goods management system and goods management method
JP7349616B2 (en) 2019-04-26 2023-09-25 株式会社エーエヌラボ Payment support system, payment support method and payment support program
JP7354877B2 (en) 2020-02-28 2023-10-03 富士通株式会社 Control method, control program and information processing device
JP7368111B2 (en) 2019-06-06 2023-10-24 富士通株式会社 Evaluation program, evaluation method and evaluation device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007060213A (en) * 2005-08-24 2007-03-08 Fuji Xerox Co Ltd Key distribution device and method therefor
WO2014049830A1 (en) * 2012-09-28 2014-04-03 富士通株式会社 Information processing device and semiconductor device
JP5858506B1 (en) * 2015-04-09 2016-02-10 株式会社Orb Virtual currency management program and virtual currency management method
JP2017050763A (en) * 2015-09-03 2017-03-09 日本電信電話株式会社 Permission information management system, user terminal, right holder terminal, permission information management method, and permission information management program
WO2017090329A1 (en) * 2015-11-24 2017-06-01 ソニー株式会社 Information processing device, information processing method, and program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007060213A (en) * 2005-08-24 2007-03-08 Fuji Xerox Co Ltd Key distribution device and method therefor
WO2014049830A1 (en) * 2012-09-28 2014-04-03 富士通株式会社 Information processing device and semiconductor device
JP5858506B1 (en) * 2015-04-09 2016-02-10 株式会社Orb Virtual currency management program and virtual currency management method
JP2017050763A (en) * 2015-09-03 2017-03-09 日本電信電話株式会社 Permission information management system, user terminal, right holder terminal, permission information management method, and permission information management program
WO2017090329A1 (en) * 2015-11-24 2017-06-01 ソニー株式会社 Information processing device, information processing method, and program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ビットバンク株式会社, ブロックチェーンの衝撃, vol. 第1版, JPN6021007880, 13 June 2016 (2016-06-13), JP, pages 219 - 221, ISSN: 0004606869 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020184313A1 (en) * 2019-03-13 2020-09-17 ソニー株式会社 Information processing device, information processing method, and program
JP7349616B2 (en) 2019-04-26 2023-09-25 株式会社エーエヌラボ Payment support system, payment support method and payment support program
JP2020190874A (en) * 2019-05-21 2020-11-26 株式会社医療情報技術研究所 Document management system
JP7299576B2 (en) 2019-06-06 2023-06-28 株式会社シティーデジタル Goods management system and goods management method
JP7368111B2 (en) 2019-06-06 2023-10-24 富士通株式会社 Evaluation program, evaluation method and evaluation device
JP2022530582A (en) * 2019-06-28 2022-06-30 ビートダップ ソフトウェア インク. Systems and methods for extensible tracking of media playback using blockchain
JP2021131865A (en) * 2020-02-19 2021-09-09 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド Blockchain-based data processing method, apparatus, device, medium, and program
JP7066890B2 (en) 2020-02-19 2022-05-13 バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド Data processing methods, devices, devices, media, and programs by blockchain
US11630821B2 (en) 2020-02-19 2023-04-18 Baidu Online Network Technology (Beijing) Co., Ltd. Blockchain-based data processing method and apparatus, device, and medium
JP7354877B2 (en) 2020-02-28 2023-10-03 富士通株式会社 Control method, control program and information processing device
CN111459672A (en) * 2020-03-30 2020-07-28 百度国际科技(深圳)有限公司 Transaction processing method, device, equipment and medium based on block chain network
CN111459672B (en) * 2020-03-30 2023-09-29 百度国际科技(深圳)有限公司 Transaction processing method, device, equipment and medium based on block chain network
JP2021182315A (en) * 2020-05-20 2021-11-25 株式会社リーチ・ビデオジャパン System for managing motion-image and still-image contents posting in sns
JP7308493B2 (en) 2020-06-24 2023-07-14 ビートダップ ソフトウェア インク. Systems and Methods for Continuous Tracking of Media Playback Using Blockchain
JP2022552025A (en) * 2020-06-24 2022-12-15 ビートダップ ソフトウェア インク. Systems and Methods for Continuous Tracking of Media Playback Using Blockchain
JP2022073280A (en) * 2020-10-30 2022-05-17 サークレイス株式会社 User information management system, user information management method and computer program
WO2022091619A1 (en) * 2020-10-30 2022-05-05 サークレイス株式会社 User information management system, user information management method, and computer program
JP7011019B1 (en) 2020-10-30 2022-02-14 サークレイス株式会社 User information management system, user information management method and computer program

Similar Documents

Publication Publication Date Title
JP2019029933A (en) Content distribution device, content distribution system, content distribution program, and content distribution method
US9548859B2 (en) Ticket-based implementation of content leasing
US7343495B2 (en) Information recording apparatus, information reproducing apparatus, and information distribution system
JP4782165B2 (en) Content usage management system, server device used therefor, content usage management method, and license information transmission method
KR20200115514A (en) Systems and methods for privacy management using digital ledger
JP4919944B2 (en) Information processing apparatus and license distribution system
EP1505509A1 (en) Information processing device and method, information processing system, recording medium, and program
US20020107806A1 (en) Content usage management system and content usage management method
US20120130900A1 (en) System and Method for Trading Unused Digital Rights
US20040098348A1 (en) License issuance server, processing device, software execution management device, and license issuing method and program
GB2401965A (en) System for delivering encrypted content
CN111401867A (en) Resource transfer method and device based on block chain, node equipment and storage medium
CN112953930A (en) Cloud storage data processing method and device and computer system
JPWO2019082442A1 (en) Data registration methods, data decryption methods, data structures, computers, and programs
JP2006155500A (en) License management device and content use system
JP2001160109A (en) Device and method for information processing, and recording medium
JPWO2020085226A1 (en) Control methods, content management systems, programs, and data structures
JP2003187101A (en) Information processor, information processing method, storage medium, information processing system and program
JP2002073191A (en) System and method for meter-rate program use permission
JP2004086409A (en) Information management system, information processor, authentication server, issue server, accounting server, community server, restricted access content, executing information, information processing method, information processing program, and recording medium
JP2009094592A (en) Communication system
JP2005243044A (en) Content usage management system and server used for the system
JP2002373261A (en) Information distribution system
JP2009042925A (en) Content use method, method for determining validity of permanent viewing license, download terminal, server, download system, method for managing content, prorgram, and recording medium
JP2003084852A (en) License managing server and license managing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200514

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200529

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200529

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210430

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211005