Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5284119B2 - Server, information processing method and program - Google Patents
[go: Go Back, main page]

JP5284119B2 - Server, information processing method and program - Google Patents

Server, information processing method and program Download PDF

Info

Publication number
JP5284119B2
JP5284119B2 JP2009008149A JP2009008149A JP5284119B2 JP 5284119 B2 JP5284119 B2 JP 5284119B2 JP 2009008149 A JP2009008149 A JP 2009008149A JP 2009008149 A JP2009008149 A JP 2009008149A JP 5284119 B2 JP5284119 B2 JP 5284119B2
Authority
JP
Japan
Prior art keywords
piece
node
key
identification information
information
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.)
Expired - Fee Related
Application number
JP2009008149A
Other languages
Japanese (ja)
Other versions
JP2010166432A (en
Inventor
春彦 外山
晋爾 山中
聡 伊藤
英樹 松本
達 上林
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2009008149A priority Critical patent/JP5284119B2/en
Publication of JP2010166432A publication Critical patent/JP2010166432A/en
Application granted granted Critical
Publication of JP5284119B2 publication Critical patent/JP5284119B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、サーバ、情報処理方法及びプログラムに関する。   The present invention relates to a server, an information processing method, and a program.

P2P(Peer−to−Peer)技術を用いたコンテンツ配信では、端末が受信したコンテンツを他の端末へ二次配信を行うことでサービス提供者の配信コストを抑えることが期待される。二次配信を促進し配信コストを抑えるには、二次配信を担った端末のユーザにインセンティブを与えることが重要である。近年では、このようなインセンティブを付与する技術が各種開発されている(例えば特許文献1〜4参照)。特許文献1の技術では、P2Pでの二次配信を担うことを選択した端末に対して、最初に配信を行う一次配信サーバから優先順位をあげて送信する。特許文献2の技術では、P2Pでの二次配信を担うことを選択した端末に対して、コンテンツ課金の額を減ずる。特許文献3の技術では、二次配信を担う端末が二次配信の配信量を、サービスを提供するサーバへ予め通知してインセンティブの支払いを受ける。特許文献4の技術では、配信を仲介する業者に利益配分する技術として、配信を仲介した端末を特定する経路情報をコンテンツと共に二次配信し、コンテンツを再生する端末がライセンスキーを取得する際に、この経路情報をライセンスサーバに通知し、その経路情報で特定された端末へ利益を分配する。   In content distribution using P2P (Peer-to-Peer) technology, it is expected that the distribution cost of a service provider is suppressed by performing secondary distribution of content received by a terminal to another terminal. In order to promote secondary distribution and reduce distribution costs, it is important to provide incentives to users of terminals that are responsible for secondary distribution. In recent years, various techniques for providing such incentives have been developed (see, for example, Patent Documents 1 to 4). In the technique of Patent Document 1, a primary distribution server that first performs transmission is transmitted with a higher priority to a terminal that has selected to perform secondary distribution in P2P. With the technology of Patent Document 2, the amount of content charging is reduced for a terminal that has selected to take charge of secondary delivery in P2P. In the technique of Patent Literature 3, a terminal responsible for secondary distribution notifies the server that provides the service of the distribution volume of the secondary distribution in advance and receives incentive payment. In the technique of Patent Document 4, as a technique for distributing profits to a distributor that mediates distribution, when route information specifying a terminal that mediates distribution is secondarily distributed together with content, and a terminal that reproduces the content acquires a license key The route information is notified to the license server, and the profit is distributed to the terminals specified by the route information.

ところで、配信量が増えても配信コストを抑えるには、二次配信を担う各端末は平均で受信量以上の配信量を担う必要がある。一方、各端末がP2Pの二次配信を担ったとしても、上り回線の容量が不十分な場合や、ダウンロード後に早期にネットワークから離脱する場合などがあるため、十分な量を二次配信できない場合がある。また、P2P技術ではひとつのコンテンツを複数のピースに分割して、各端末が各ピースを複数の端末から受信することで効率と耐障害性とを高める場合が多い。この場合、同じ二次配信を担う端末でも配信量が異なる。   By the way, in order to suppress the distribution cost even if the distribution amount increases, each terminal responsible for the secondary distribution needs to bear a distribution amount that is equal to or greater than the reception amount on average. On the other hand, even if each terminal is responsible for secondary delivery of P2P, there is a case where the capacity of the uplink is insufficient, or there is a case where the terminal is disconnected from the network early after downloading. There is. In the P2P technology, in many cases, one terminal is divided into a plurality of pieces, and each terminal receives each piece from a plurality of terminals, thereby improving efficiency and fault tolerance. In this case, the amount of distribution is different even for terminals that carry the same secondary distribution.

特許第3962372号公報Japanese Patent No. 3962372 特許第4127753号公報Japanese Patent No. 41277753 特許第4066448号公報Japanese Patent No. 4066448 特開2002−229960号公報JP 2002-229960 A

しかし、特許文献1〜4の技術では、配信量に応じてインセンティブを付与することができないため、十分な量の二次配信を担う端末の奨励に結びつかない恐れがあった。特に、最後尾のピースを二次配信する端末へのインセンティブを高めることが困難であった。例えば、コンテンツをストリーミング方式で再生する場合、途中で再生を止めることがあるため、コンテンツの先頭に比べ最後尾のほうのピースを保持している端末が少ないからである。また、最後尾のピースを保持している端末であっても、再生終了後のネットワーク離脱までの時間が短い場合には、二次配信する可能性が低くなるからである。また、特許文献3の技術では、二次配信した配信量を送信元の端末がサーバへ通知する際に、実際に二次配信した配信量以上を通知するなどの不正が行われる恐れがあった。   However, in the techniques of Patent Documents 1 to 4, since incentives cannot be given according to the distribution amount, there is a fear that it may not lead to encouragement of a terminal responsible for a sufficient amount of secondary distribution. In particular, it has been difficult to increase the incentive to the terminal that secondarily distributes the last piece. For example, when the content is played back by the streaming method, the playback may be stopped in the middle, so that there are few terminals holding the last piece compared to the top of the content. Moreover, even if the terminal holds the last piece, the possibility of secondary distribution is reduced if the time until the network disconnection after the end of reproduction is short. Further, in the technique of Patent Document 3, when the transmission source terminal notifies the server of the amount of secondary delivery, there is a risk of fraud such as notifying of the amount of delivery actually delivered more than the secondary delivery. .

本発明は、上記に鑑みてなされたものであって、データの一部であるピースを配信するデータ配信システムにおいて、送信を行った通信装置に対して配信量に応じたインセンティブを付与することが可能であり且つ不正を防止可能なサーバ、情報処理方法及びプログラムを提供することを目的とする。   The present invention has been made in view of the above, and in a data distribution system that distributes pieces that are a part of data, an incentive according to a distribution amount can be given to a communication device that has performed transmission. An object of the present invention is to provide a server, an information processing method, and a program that are capable of preventing fraud.

上述した課題を解決し、本発明は、サーバであって、ピースは、データの一部であり、通信装置で暗号化され前記通信装置から前記他の通信装置へ送信されるものであって、当該ピースを復号するための復号鍵を要求する鍵要求は、前記データを識別するためのデータ識別情報と、前記復号鍵を生成するための鍵生成情報とを含むものであり、且つ前記他の通信装置から送信されるものであって、前記鍵生成情報は、前記通信装置に割り当てられた装置識別情報を含み、前記鍵要求に含まれる前記データ識別情報と前記鍵生成情報とを取得する取得手段と、前記データ識別情報と前記鍵生成情報とを用いて、前記通信装置によって送信された前記ピースのデータ量である配信量を計算する第1計算手段と、前記配信量を用いて、前記通信装置に対して付与する報酬ポイントを計算する第2計算手段と、前記報酬ポイントを前記装置識別情報と対応付けて記憶する第1記憶手段とを備えることを特徴とする。   In order to solve the above-described problems, the present invention is a server, wherein a piece is a part of data, is encrypted by a communication device, and transmitted from the communication device to the other communication device, The key request for requesting a decryption key for decrypting the piece includes data identification information for identifying the data and key generation information for generating the decryption key, and the other Obtained from the communication device, wherein the key generation information includes device identification information assigned to the communication device, and acquires the data identification information and the key generation information included in the key request Means, using the data identification information and the key generation information, a first calculation means for calculating a delivery amount that is a data amount of the piece transmitted by the communication device, and using the delivery amount, Communication device A second calculating means for calculating a reward point given for, characterized by comprising a first storage means for storing the reward points in association with the device identification information.

また、本発明は、サーバで実行される情報処理方法であって、ピースは、データの一部であり、通信装置で暗号化され前記通信装置から前記他の通信装置へ送信されるものであって、当該ピースを復号するための復号鍵を要求する鍵要求は、前記データを識別するためのデータ識別情報と、前記復号鍵を生成するための鍵生成情報とを含むものであり、且つ前記他の通信装置から送信されるものであって、前記鍵生成情報は、前記通信装置に割り当てられた装置識別情報を含み、前記鍵要求に含まれる前記データ識別情報と前記装置識別情報とを取得する取得ステップと、前記データ識別情報と前記鍵生成情報とを用いて、前記通信装置によって送信された前記ピースのデータ量である配信量を計算する第1計算ステップと、前記配信量を用いて、前記通信装置に対して付与する報酬ポイントを計算する第2計算ステップと、前記報酬ポイントを前記装置識別情報と対応付けて記憶手段に記憶させる第1記憶制御ステップとを含むことを特徴とする。   The present invention is also an information processing method executed by a server, wherein a piece is a part of data, is encrypted by a communication device, and is transmitted from the communication device to the other communication device. The key request for requesting a decryption key for decrypting the piece includes data identification information for identifying the data and key generation information for generating the decryption key, and The key generation information is transmitted from another communication device, and includes the device identification information allocated to the communication device, and acquires the data identification information and the device identification information included in the key request. A first calculation step of calculating a distribution amount that is a data amount of the piece transmitted by the communication device using the data identification information and the key generation information, and using the distribution amount. A second calculation step of calculating reward points to be given to the communication device, and a first storage control step of storing the reward points in association with the device identification information in a storage means. To do.

また、本発明は、プログラムであって、ピースは、データの一部であり、通信装置で暗号化され前記通信装置から前記他の通信装置へ送信されるものであって、当該ピースを復号するための復号鍵を要求する鍵要求は、前記データを識別するためのデータ識別情報と、前記復号鍵を生成するための鍵生成情報とを含むものであり、且つ前記他の通信装置から送信されるものであって、前記鍵生成情報は、前記通信装置に割り当てられた装置識別情報を含み、前記鍵要求に含まれる前記データ識別情報と前記鍵生成情報とを取得する取得手段と、前記データ識別情報と前記鍵生成情報とを用いて、前記通信装置によって送信された前記ピースのデータ量である配信量を計算する第1計算手段と、前記配信量を用いて、前記通信装置に対して付与する報酬ポイントを計算する第2計算手段と、前記報酬ポイントを前記装置識別情報と対応付けて記憶手段に記憶させる第1記憶制御手段としてコンピュータを機能させる。   The present invention is also a program, wherein a piece is a part of data, is encrypted by a communication device, transmitted from the communication device to the other communication device, and decrypts the piece A key request for requesting a decryption key includes data identification information for identifying the data and key generation information for generating the decryption key, and is transmitted from the other communication device. The key generation information includes device identification information assigned to the communication device, and obtains the data identification information and the key generation information included in the key request, and the data First identification means for calculating a distribution amount that is a data amount of the piece transmitted by the communication device using the identification information and the key generation information, and using the distribution amount, the communication device Grant That a second calculating means for calculating a reward points, causes a computer to the reward points as first storage control means for storing in the storage means in association with the device identification information.

本発明によれば、データの一部であるピースを配信するデータ配信システムにおいて、送信を行った通信装置に対して配信量に応じたインセンティブを付与することが可能であり且つ不正を防止可能になる。   Advantageous Effects of Invention According to the present invention, in a data distribution system that distributes pieces that are part of data, it is possible to give an incentive according to the distribution amount to a communication device that has transmitted, and to prevent fraud Become.

図1は、第1の実施の形態にかかるデータ配信システムの構成を示す図である。FIG. 1 is a diagram illustrating a configuration of a data distribution system according to the first embodiment. 図2は、同実施の形態にかかるノード50の機能的構成を例示する図である。FIG. 2 is a diagram illustrating a functional configuration of the node 50 according to the embodiment. 図3は、同実施の形態にかかるノード51の機能的構成を例示する図である。FIG. 3 is a diagram illustrating a functional configuration of the node 51 according to the embodiment. 図4は、同実施の形態にかかるノード50からノード51Aに送信される情報を模式的に示す図である。FIG. 4 is a diagram schematically showing information transmitted from the node 50 to the node 51A according to the embodiment. 図5は、同実施の形態にかかるノード51Aからノード51Bに送信される情報を模式的に示す図である。FIG. 5 is a diagram schematically illustrating information transmitted from the node 51A to the node 51B according to the embodiment. 図6は、同実施の形態にかかるノード51Aからノード51Bに送信される情報を模式的に示す図である。FIG. 6 is a diagram schematically illustrating information transmitted from the node 51A to the node 51B according to the embodiment. 図7は、同実施の形態にかかるノード51Bから鍵サーバ53に送信される情報を模式的に示す図である。FIG. 7 is a diagram schematically illustrating information transmitted from the node 51B to the key server 53 according to the embodiment. 図8は、同実施の形態にかかる鍵サーバ53からノード51Bに送信される情報を模式的に示す図である。FIG. 8 is a diagram schematically showing information transmitted from the key server 53 to the node 51B according to the embodiment. 図9は、同実施の形態にかかる鍵サーバ53からノード51Bに送信される情報を模式的に示す図である。FIG. 9 is a diagram schematically showing information transmitted from the key server 53 to the node 51B according to the embodiment. 図10は、同実施の形態にかかる鍵サーバ53の機能的構成を例示する図である。FIG. 10 is a diagram illustrating a functional configuration of the key server 53 according to the embodiment. 図11は、同実施の形態にかかる価格情報格納部539に記憶される、各配信データの価格を例示する図である。FIG. 11 is a diagram illustrating the price of each distribution data stored in the price information storage unit 539 according to the embodiment. 図12は、同実施の形態にかかる報酬ポイント格納部541に記憶される報酬ポイントの合計を例示する図である。FIG. 12 is a diagram illustrating the total of reward points stored in the reward point storage unit 541 according to the embodiment. 図13は、同実施の形態にかかるピース情報格納部535に記憶されるピース情報を例示する図である。FIG. 13 is a diagram illustrating piece information stored in the piece information storage unit 535 according to the embodiment. 図14は、報酬ポイント換算情報格納部540が記憶する換算ポイントを例示する図である。FIG. 14 is a diagram illustrating conversion points stored in the reward point conversion information storage unit 540. 図15は、同実施の形態にかかる配信開始ノードであるノード50が行う配信処理の手順を示すフローチャートである。FIG. 15 is a flowchart showing a procedure of distribution processing performed by the node 50 which is the distribution start node according to the embodiment. 図16は、同実施の形態にかかるノード51がノード50又は他のノード51から暗号化ピースを受信する受信処理の手順を示すフローチャートである。FIG. 16 is a flowchart illustrating a procedure of a reception process in which the node 51 according to the embodiment receives an encrypted piece from the node 50 or another node 51. 図17は、同実施の形態にかかるノードに受信される情報を模式的に示す図である。FIG. 17 is a diagram schematically illustrating information received by the node according to the embodiment. 図18は、同実施の形態にかかる配信開始ノード以外のノード51が行う配信処理の手順を示すフローチャートである。FIG. 18 is a flowchart showing a procedure of distribution processing performed by a node 51 other than the distribution start node according to the embodiment. 図19は、同実施の形態にかかるノードが送信する情報を模式的に示す図である。FIG. 19 is a diagram schematically illustrating information transmitted by the node according to the embodiment. 図20は、同実施の形態にかかるノード51が鍵サーバ53から復号鍵を取得しこれを用いて暗号化ピースを復号する復号処理の手順を示すフローチャートである。FIG. 20 is a flowchart illustrating a procedure of a decryption process in which the node 51 according to the embodiment acquires a decryption key from the key server 53 and decrypts the encrypted piece using the decryption key. 図21は、同実施の形態にかかるノードが送信する情報を模式的に示す図である。FIG. 21 is a diagram schematically illustrating information transmitted by the node according to the embodiment. 図22は、同実施の形態にかかるノードが受信する対称鍵を模式的に示す図である。FIG. 22 is a diagram schematically illustrating a symmetric key received by the node according to the embodiment. 図23は、同実施の形態にかかる鍵サーバ53がノード51からの鍵要求に応じて復号鍵を送信する鍵送信処理の手順を示すフローチャートである。FIG. 23 is a flowchart illustrating a key transmission process procedure in which the key server 53 according to the embodiment transmits a decryption key in response to a key request from the node 51. 図24は、同実施の形態にかかる課金処理の手順を示すフローチャートである。FIG. 24 is a flowchart showing the procedure of the accounting process according to the embodiment. 図25は、同実施の形態にかかる報酬ポイント計算処理の手順を示すフローチャートである。FIG. 25 is a flowchart showing a procedure of reward point calculation processing according to the embodiment. 図26は、同実施の形態にかかる復号鍵生成処理の手順を示すフローチャートである。FIG. 26 is a flowchart showing the procedure of the decryption key generation process according to the embodiment. 図27は、第2の実施の形態にかかる鍵サーバ53が鍵送信処理を行う際に行う報酬ポイント計算処理の手順を示すフローチャートである。FIG. 27 is a flowchart of a reward point calculation process performed when the key server 53 according to the second embodiment performs a key transmission process. 図28は、第3の実施の形態にかかる報酬ポイント換算情報格納部540が記憶する換算ポイント及び重み係数を例示する図である。FIG. 28 is a diagram illustrating conversion points and weighting factors stored in the reward point conversion information storage unit 540 according to the third embodiment. 図29は、同実施の形態にかかる鍵サーバ53が鍵送信処理を行う際に行う報酬ポイント計算処理の手順を示すフローチャートである。FIG. 29 is a flowchart illustrating a procedure of reward point calculation processing performed when the key server 53 according to the embodiment performs key transmission processing. 図30は、一変形例にかかる価格情報格納部539に記憶される価格及び交換ポイントを例示する図である。FIG. 30 is a diagram exemplifying prices and exchange points stored in the price information storage unit 539 according to a modification. 図31は、同変形例にかかる課金処理の手順を示すフローチャートである。FIG. 31 is a flowchart showing the procedure of the billing process according to the modification. 図32は、一変形例にかかる鍵送信処理の手順を示すフローチャートである。FIG. 32 is a flowchart illustrating a procedure of key transmission processing according to a modification. 図33は、一変形例にかかる報酬ポイント格納部541に記憶される報酬ポイントを例示する図である。FIG. 33 is a diagram illustrating the reward points stored in the reward point storage unit 541 according to a modification.

以下に添付図面を参照して、この発明にかかるサーバ、情報処理方法及びプログラムの最良な実施の形態を詳細に説明する。
[第1の実施の形態]
(1)構成
<データ配信システムの構成>
図1は、本実施の形態にかかるデータ配信システムの構成を示す図である。本実施の形態にかかるデータ配信システムにおいては、複数のノード50,51A〜51BがP2PネットワークNTを介して接続されている。図示しないがこの他のノードもP2PネットワークNTを介して接続され得る。また、各ノード50,51A〜51Bは鍵サーバ53と接続されている。各ノード50,51A〜51Bは、各ノードに一意に割り当てられた装置識別情報であるノードIDと、各ノードに一意に割り当てられた割当情報として秘密鍵を保持している。各ノード50,51A〜51Bに割り当てられたノードIDを各々ID#0,ID#1,ID#2とし、秘密鍵を各々s_0,s_1,s_2とする。尚、各ノード50,51A〜51Bのうちノード50は、データの配信の基点となる配信開始ノードであり、配信対象のデータ(配信データという)を保持している。配信データは、平文である場合も既に暗号化された暗号文である場合もある。例えば、当該配信データは、暗号化として何らかのDRM (Digital Right Management) Systemによって保護されたビデオデータであっても良い。鍵サーバ53は、各ノード50,51A〜51Bに各々割り当てられた秘密鍵を保持している。尚、以降、ノード51A〜51Bを各々区別する必要がない場合、単にノード51と記載する。
Exemplary embodiments of a server, an information processing method, and a program according to the present invention are explained in detail below with reference to the accompanying drawings.
[First embodiment]
(1) Configuration <Data distribution system configuration>
FIG. 1 is a diagram showing a configuration of a data distribution system according to the present embodiment. In the data distribution system according to the present embodiment, a plurality of nodes 50, 51A to 51B are connected via a P2P network NT. Although not shown, other nodes can also be connected via the P2P network NT. Each node 50, 51 </ b> A to 51 </ b> B is connected to the key server 53. Each of the nodes 50 and 51A to 51B holds a node ID, which is device identification information uniquely assigned to each node, and a secret key as assignment information uniquely assigned to each node. The node IDs assigned to the nodes 50, 51A to 51B are ID # 0, ID # 1, and ID # 2, respectively, and the secret keys are s_0, s_1, and s_2, respectively. Of the nodes 50 and 51A to 51B, the node 50 is a distribution start node serving as a data distribution base, and holds data to be distributed (referred to as distribution data). The distribution data may be plaintext or already encrypted ciphertext. For example, the distribution data may be video data protected by some DRM (Digital Right Management) System as encryption. The key server 53 holds a secret key assigned to each of the nodes 50 and 51A to 51B. Hereinafter, when it is not necessary to distinguish the nodes 51A to 51B, they are simply referred to as the node 51.

ここで、各ノード50,51と、鍵サーバ53との各装置のハードウェア構成について説明する。各装置は各々、装置全体を制御するCPU(Central Processing Unit)等の制御装置と、各種データや各種プログラムを記憶するROM(Read Only Memory)やRAM(Random Access Memory)等の記憶装置と、各種データや各種プログラムを記憶するHDD(Hard Disk Drive)やCD(Compact Disk)ドライブ装置等の外部記憶装置と、これらを接続するバスとを備えており、通常のコンピュータを利用したハードウェア構成となっている。また、各装置には各々、情報を表示する表示装置と、ユーザの指示入力を受け付けるキーボードやマウス等の入力装置と、外部装置の通信を制御する通信I/F(interface)とが有線又は無線により接続される。   Here, the hardware configuration of each device including the nodes 50 and 51 and the key server 53 will be described. Each device is a control device such as a CPU (Central Processing Unit) that controls the entire device, a storage device such as a ROM (Read Only Memory) or a RAM (Random Access Memory) that stores various data and various programs, and a variety of devices. It has an external storage device such as an HDD (Hard Disk Drive) or CD (Compact Disk) drive device that stores data and various programs, and a bus that connects them, and has a hardware configuration that uses a normal computer. ing. Each device includes a display device that displays information, an input device such as a keyboard and a mouse that accepts user instruction input, and a communication I / F (interface) that controls communication with an external device. Connected by.

<配信開始ノードの構成>
次に、上述したハードウェア構成において、配信開始ノードであるノード50のCPUが記憶装置や外部記憶装置に記憶された各種プログラムを実行することにより実現される各種機能について説明する。図2は、ノード50の機能的構成を例示する図である。ノード50は、固有情報格納部500と、乱数生成部501と、一時対称鍵生成部502と、ピース暗号化部503と、ピース化部504と、データ送信部505と、送信要求受付部506とを有する。尚、固有情報格納部500は、例えばノード50のHDDなどの外部記憶装置に記憶領域として確保されるものである。乱数生成部501と、一時対称鍵生成部502と、ピース化部504と、ピース暗号化部503と、データ送信部505と、送信要求受付部506との実体は、ノード50のCPUのプログラム実行時にRAMなどの記憶装置上に生成されるものである。尚、ノード50の外部記憶装置には、配信データが予め記憶されている。
<Configuration of distribution start node>
Next, in the hardware configuration described above, various functions realized when the CPU of the node 50 that is the distribution start node executes various programs stored in the storage device or the external storage device will be described. FIG. 2 is a diagram illustrating a functional configuration of the node 50. The node 50 includes a unique information storage unit 500, a random number generation unit 501, a temporary symmetric key generation unit 502, a piece encryption unit 503, a piece generation unit 504, a data transmission unit 505, and a transmission request reception unit 506. Have The unique information storage unit 500 is reserved as a storage area in an external storage device such as an HDD of the node 50, for example. The entity of the random number generation unit 501, the temporary symmetric key generation unit 502, the piece generation unit 504, the piece encryption unit 503, the data transmission unit 505, and the transmission request reception unit 506 is executed by the CPU of the node 50. Sometimes generated on a storage device such as a RAM. Note that distribution data is stored in advance in the external storage device of the node 50.

固有情報格納部500は、当該ノード50に割り当てられたノードID及び秘密鍵を記憶する。ピース化部504は、配信データを複数のピースに分割する。分割の方法は、例えば、固定のデータサイズ毎に先頭から配信データを分割する方法があるが、その限りではない。固定のデータサイズで配信データを分割した場合にはその余りを最後尾のピースとし、この最後尾のピースのデータサイズのみ可変となるようにしても良いし、その余りにパディングとしてダミーデータを挿入して最後尾のピースを形成し各ピースのデータサイズを固定にするようにしても良い。各ピースのデータサイズは鍵サーバ53と予め共有しておく。共有の方法は例えばファイルコピーやネットワークを介した通信によるなどであって特に限定されない。また、各配信データには、各配信データを識別するためのコンテンツ種類ID(CID)が予め割り当てられており、ピース化部504は、配信データを分割する際に当該配信データのコンテンツ種類IDを各ピースに各々対応付けるものとする。更に、ピース化部504は、配信データを分割する際に、各ピースを特定するピース特定情報を各ピースに対して割り当てる。具体的には、ピース化部504は、配信データを分割する際に、その先頭から最後尾まで順にピース番号を各ピースに割り当てるものとする。このピース番号は、各ピースが配信データのどの部分であるかを特定するピース特定情報となる。ピース化部504は、これらのコンテンツ種類IDやピース番号を例えばピースのヘッダなどに書き込むようにしても良いし、暗号化されない状態でピースに別途付加するようにしても良い。   The unique information storage unit 500 stores the node ID and secret key assigned to the node 50. The piece unit 504 divides the distribution data into a plurality of pieces. As a division method, for example, there is a method of dividing distribution data from the beginning for each fixed data size, but the method is not limited thereto. When distribution data is divided with a fixed data size, the remainder may be the last piece, and only the data size of this last piece may be variable, or dummy data may be inserted as padding for the remainder. The last piece may be formed and the data size of each piece may be fixed. The data size of each piece is shared with the key server 53 in advance. The sharing method is not particularly limited, for example, by file copy or communication via a network. Each distribution data is pre-assigned a content type ID (CID) for identifying each distribution data, and the piece unit 504 assigns the content type ID of the distribution data when dividing the distribution data. Assume that each piece is associated with each piece. Further, when the piece unit 504 divides the distribution data, piece specifying information for specifying each piece is assigned to each piece. Specifically, the piece unit 504 assigns a piece number to each piece in order from the head to the tail when dividing the distribution data. This piece number is piece specifying information that specifies which part of the distribution data each piece is. The piece unit 504 may write the content type ID and the piece number in a piece header, for example, or may add the content type ID and piece number separately to the piece without being encrypted.

送信要求受付部506は、ピース化部504が分割したピースを要求するピース要求を他のノード51から受信する。乱数生成部501は、送信要求受付部506がピース要求を受信した場合、その発生毎に異なり得る一時情報である乱数を生成する。一時情報とは、ノードで生成される度に異なり得る値となれば良く、例えば、乱数やタイムスタンプ、通信のシーケンス番号、ノードに固有のカウンタの値、Time Variant Parameterである。Time Variant Parameterについては、例えば文献ISO9798-1に記載されている。   The transmission request receiving unit 506 receives a piece request for requesting the piece divided by the piece forming unit 504 from the other node 51. When the transmission request reception unit 506 receives a piece request, the random number generation unit 501 generates a random number that is temporary information that can be different for each occurrence. The temporary information only needs to be a value that can be different every time it is generated at the node, and is, for example, a random number, a time stamp, a communication sequence number, a counter value unique to the node, or a time variant parameter. The Time Variant Parameter is described in, for example, the document ISO9798-1.

一時対称鍵生成部502は、乱数生成部501が生成した乱数と、固有情報格納部500に記憶された秘密鍵とを用いて関数Fにより一時対称鍵を生成する。これを式により表すと以下のように表される。
k_0 = F(s_0, r_0)
Temporary symmetric key generation unit 502 generates a temporary symmetric key by function F using the random number generated by random number generation unit 501 and the private key stored in unique information storage unit 500. This can be expressed by the following formula.
k_0 = F (s_0, r_0)

尚、関数Fは一方向性関数あるいは共通鍵暗号あるいは擬似乱数生成器であり、入力値である秘密鍵や乱数を知るものであってもこれらから出力値である一時対称鍵を推測できないものである。一時対称鍵とは、関数Fであって、関数Fの入力値と出力値との関係が一意に定められれば良く、例えば、SHA−1やSHA256といったハッシュ関数であっても良く、AES、Hierocryptといった共通鍵暗号方式であっても良く、Mersenne twisterといった疑似乱数生成器であっても良い。ハッシュ関数には、乱数と秘密鍵を結合した値が入力されても良い。共通鍵暗号方式では、乱数を秘密鍵で暗号化しても良く、秘密鍵を乱数で暗号化しても良い。共通鍵暗号方式では、乱数を秘密鍵で復号しても良く、秘密鍵を乱数で復号しても良い。擬似乱数生成器には、乱数と秘密鍵を結合した値が入力されても良い。   Note that the function F is a one-way function, a common key encryption, or a pseudo-random number generator, and even if a secret key or random number that is an input value is known, a temporary symmetric key that is an output value cannot be estimated from these. is there. The temporary symmetric key is a function F, and it is only necessary that the relationship between the input value and the output value of the function F is uniquely determined. For example, it may be a hash function such as SHA-1 or SHA256, such as AES, Hiercrypt. Or a pseudo-random number generator such as Mersenne twister. A value obtained by combining a random number and a secret key may be input to the hash function. In the common key cryptosystem, the random number may be encrypted with a secret key, or the secret key may be encrypted with a random number. In the common key cryptosystem, the random number may be decrypted with the secret key, or the secret key may be decrypted with the random number. A value obtained by combining a random number and a secret key may be input to the pseudo-random number generator.

ピース暗号化部503は、一時対称鍵生成部502が生成した一時対称鍵を用いてピースを暗号化して、暗号化ピースを出力する。尚、一時対称鍵は暗号化に用いられる暗号鍵でもあり、暗号化ピースに対して行われている暗号化を復号するための復号鍵にもなる。データ送信部505は、ピース要求を送信した他のノード51に対して、固有情報格納部500に記憶されているノードIDと、乱数生成部501が生成した乱数と、ピース暗号化部503が出力した暗号化ピースとを送信する。   The piece encryption unit 503 encrypts the piece using the temporary symmetric key generated by the temporary symmetric key generation unit 502 and outputs an encrypted piece. The temporary symmetric key is also an encryption key used for encryption, and is also a decryption key for decrypting the encryption performed on the encrypted piece. The data transmission unit 505 outputs the node ID stored in the unique information storage unit 500, the random number generated by the random number generation unit 501, and the piece encryption unit 503 to the other node 51 that has transmitted the piece request. And send the encrypted piece.

<配信開始ノード以外のノードの構成>
次に、配信開始ノード以外であるノード51のCPUが記憶装置や外部記憶装置に記憶された各種プログラムを実行することにより実現される各種機能について説明する。図3は、ノード51の機能的構成を例示する図である。ノード51は、固有情報格納部510と、乱数生成部511と、一時対称鍵生成部512と、ピース暗号化部513と、データ受信部514と、データ送信部515と、送信要求受付部516と、データ格納部517と、送信要求送信部518と、鍵要求送信部519と、ピース復号部520と、暗号化決定部521と、乱数代替生成部522とを有する。尚、固有情報格納部510とデータ格納部517とは、例えばノード51のHDDなどの外部記憶装置に記憶領域として確保されるものである。乱数生成部511と、一時対称鍵生成部512と、ピース暗号化部513と、データ送信部515と、送信要求受付部516と、データ受信部514と、鍵要求送信部519と、ピース復号部520と、暗号化決定部521と、乱数代替生成部522との実体は、ノード51のCPUのプログラム実行時にRAMなどの記憶装置上に生成されるものである。
<Configuration of nodes other than the distribution start node>
Next, various functions realized when the CPU of the node 51 other than the distribution start node executes various programs stored in the storage device or the external storage device will be described. FIG. 3 is a diagram illustrating a functional configuration of the node 51. The node 51 includes a unique information storage unit 510, a random number generation unit 511, a temporary symmetric key generation unit 512, a piece encryption unit 513, a data reception unit 514, a data transmission unit 515, and a transmission request reception unit 516. A data storage unit 517, a transmission request transmission unit 518, a key request transmission unit 519, a piece decryption unit 520, an encryption determination unit 521, and a random number alternative generation unit 522. The unique information storage unit 510 and the data storage unit 517 are reserved as storage areas in an external storage device such as an HDD of the node 51, for example. Random number generation unit 511, temporary symmetric key generation unit 512, piece encryption unit 513, data transmission unit 515, transmission request reception unit 516, data reception unit 514, key request transmission unit 519, piece decryption unit The entities 520, the encryption determination unit 521, and the random number alternative generation unit 522 are generated on a storage device such as a RAM when the CPU of the node 51 executes the program.

固有情報格納部510は、当該ノード51に割り当てられたノードID及び秘密鍵を記憶する。送信要求受付部516の構成は上述のノード50の有する送信要求受付部506の構成と同様である。送信要求送信部518は、ピースを要求するピース要求をノード50又は他のノード51に対して送信する。データ受信部514は、送信要求送信部518がピース要求を送信した相手であるノード50又は他のノード51から、ピースが暗号化された暗号化ピースと、当該暗号化ピースの送信を仲介した少なくとも1つの他のノード50,51に割り当てられた各ノードIDを含むノードID列と、当該他のノード50,51が生成した各乱数を含む乱数列とを受信する。なおこの乱数には、当該ピースについて暗号化に用いられる一時対称鍵の生成に用いられた乱数と、代替的に生成された乱数(代替的な乱数という)とがある。後者については後述する。データ格納部517は、データ受信部514が受信したノードID列、乱数列及び暗号化ピースを対応付けて記憶する。   The unique information storage unit 510 stores the node ID and secret key assigned to the node 51. The configuration of the transmission request receiving unit 516 is the same as the configuration of the transmission request receiving unit 506 included in the node 50 described above. The transmission request transmission unit 518 transmits a piece request for requesting a piece to the node 50 or another node 51. The data reception unit 514 transmits at least the encrypted piece in which the piece is encrypted and the transmission of the encrypted piece from the node 50 or another node 51 to which the transmission request transmission unit 518 has transmitted the piece request. A node ID sequence including each node ID assigned to one other node 50, 51 and a random number sequence including each random number generated by the other node 50, 51 are received. This random number includes a random number used to generate a temporary symmetric key used for encryption of the piece and a randomly generated random number (referred to as an alternative random number). The latter will be described later. The data storage unit 517 stores the node ID sequence, the random number sequence, and the encrypted piece received by the data reception unit 514 in association with each other.

暗号化決定部521は、送信要求受付部516がピース要求を他のノード51から受信した場合、所定の確率に従って、送信対象の暗号化ピースを暗号化するか否かを決定する。この所定の確率の値は例えば外部記憶装置に記憶されている。乱数生成部511は、送信対象の暗号化ピースを暗号化すると暗号化決定部521が決定した場合、乱数を生成する。一時対称鍵生成部512は、送信対象の暗号化ピースを暗号化すると暗号化決定部521が決定した場合、乱数生成部511が生成した乱数と、固有情報格納部510に記憶された秘密鍵とを用いて上述した関数Fにより一時対称鍵を生成する。ピース暗号化部513は、送信対象の暗号化ピースを暗号化すると暗号化決定部521が決定した場合、一時対称鍵生成部512が生成した一時対称鍵を用いて、データ格納部517に記憶されている1つの暗号化ピースを更に暗号化して、新たな暗号化ピースを出力する。   When the transmission request reception unit 516 receives a piece request from another node 51, the encryption determination unit 521 determines whether to encrypt the transmission target encrypted piece according to a predetermined probability. The predetermined probability value is stored in, for example, an external storage device. The random number generation unit 511 generates a random number when the encryption determination unit 521 determines to encrypt the encrypted piece to be transmitted. When the encryption determination unit 521 determines that the encrypted piece to be transmitted is encrypted, the temporary symmetric key generation unit 512 generates the random number generated by the random number generation unit 511, the secret key stored in the unique information storage unit 510, and Is used to generate a temporary symmetric key by the function F described above. The piece encryption unit 513 is stored in the data storage unit 517 using the temporary symmetric key generated by the temporary symmetric key generation unit 512 when the encryption determination unit 521 determines that the encrypted piece to be transmitted is encrypted. One encrypted piece is further encrypted, and a new encrypted piece is output.

乱数代替生成部522は、送信対象の暗号化ピースを暗号化しないと暗号化決定部521が決定した場合、当該暗号化ピースに対応付けられてデータ格納部517に記憶されているノード列と、固有情報格納部510に記憶された秘密鍵とを用いて関数Fにより代替的な乱数を生成する。   When the encryption determining unit 521 determines that the encrypted piece to be transmitted is not encrypted, the random number alternative generation unit 522 stores a node string associated with the encrypted piece and stored in the data storage unit 517, and An alternative random number is generated by the function F using the secret key stored in the unique information storage unit 510.

例えば、ノード51Aのデータ格納部517にノードID列ID#0, …, ID#(j-1)(jは1以上の整数)が記憶されているとする。固有情報格納部510には秘密鍵s_1が記憶されている。ここで生成される代替的な乱数をr_1として式により表すと以下のように表さられる。
r_1 = F(s_1 , ID#0, … , ID#(j-1) )
尚、関数Fは一方向性関数、共通鍵暗号、あるいは擬似乱数生成器であり、出力結果である乱数から入力値である秘密鍵やノード列を推測できないものである。
For example, it is assumed that node ID string ID # 0,..., ID # (j−1) (j is an integer of 1 or more) is stored in the data storage unit 517 of the node 51A. The unique information storage unit 510 stores a secret key s_1. The alternative random number generated here is expressed as follows as r_1.
r_1 = F (s_1, ID # 0,…, ID # (j-1))
The function F is a one-way function, a common key encryption, or a pseudo-random number generator, and cannot secrete a secret key or a node string that is an input value from a random number that is an output result.

データ送信部515は、送信要求受付部516が受信したピース要求を送信した他のノード51に対して、暗号化決定部521の決定結果に応じて以下のデータを送信する。送信対象の暗号化ピースを暗号化すると暗号化決定部521が決定した場合に送信されるデータは、当該暗号化ピースに対応付けられてデータ格納部517に記憶されたノードID列に加え固有情報格納部510に記憶されたノードIDを含む新たなノードID列と、当該暗号化ピースに対応付けられてデータ格納部517に記憶された乱数列に加え乱数生成部511が生成した乱数を含む新たな乱数列と、ピース暗号化部513が出力した新たな暗号化ピースとである。送信対象の暗号化ピースを暗号化しないと暗号化決定部521が決定した場合に送信されるデータは、当該暗号化ピースに対応付けられてデータ格納部517に記憶されたノードID列に加え固有情報格納部510に記憶されたノードIDを含む新たなノードID列と、当該暗号化ピースに対応付けられてデータ格納部517に記憶された乱数列に加え乱数代替生成部522が生成した代替的な乱数を含む新たな乱数列と、データ格納部517に記憶された当該暗号化ピースとである。尚、データ格納部517に暗号化ピースが記憶されていない場合には、送信要求受付部516がピース要求を受信したとしても、ピース暗号化部513は暗号化ピースを出力せず、データ送信部515は暗号化ピースを送信しない。   The data transmission unit 515 transmits the following data according to the determination result of the encryption determination unit 521 to the other node 51 that has transmitted the piece request received by the transmission request reception unit 516. When the encryption determining unit 521 determines that the encrypted piece to be transmitted is encrypted, the data to be transmitted is associated with the node ID string stored in the data storage unit 517 in association with the encrypted piece, and the unique information A new node ID sequence including the node ID stored in the storage unit 510 and a new random number generated by the random number generation unit 511 in addition to the random number sequence associated with the encrypted piece and stored in the data storage unit 517 Random number sequence and a new encrypted piece output by the piece encryption unit 513. The data transmitted when the encryption determining unit 521 determines that the encrypted piece to be transmitted is not encrypted is unique in addition to the node ID string stored in the data storage unit 517 in association with the encrypted piece. The alternative node ID generated by the random number alternative generation unit 522 in addition to the new node ID sequence including the node ID stored in the information storage unit 510 and the random number sequence associated with the encrypted piece and stored in the data storage unit 517 A new random number sequence including a random number and the encrypted piece stored in the data storage unit 517. When the encrypted piece is not stored in the data storage unit 517, even if the transmission request receiving unit 516 receives the piece request, the piece encryption unit 513 does not output the encrypted piece, and the data transmission unit 515 does not send the encrypted piece.

ここで、ノード50,51から送信されるノードID列、乱数列及び暗号化ピースについて具体的に説明する。尚、ノード50から1つの暗号化ピースに対してこれと共に送信されるノードID及び乱数は各々1つであるが、ここでは説明の便宜上、これらをノード列及び乱数列と各々記載する場合がある。暗号化ピースの配信経路としてここではノード50からノード51A、更にノード51Aからノード51Bに暗号化ピースを送信し、ノード51Bから鍵サーバ53に鍵要求を送信する場合について説明する。この場合、ノード51Aが暗号化を行う場合とノード51Aが暗号化を行わない場合とがあるが、まず前者の場合について説明する。例えば、あるピースPについてノード51Aからのピース要求に応じて、ノード50が、乱数r_0と秘密鍵s_0とを用いて一時対称鍵k_0を生成し、これを用いてピースPを暗号化して暗号化ピースEP(k_0)Pを出力したとする。そして、ノード50が、当該暗号化ピースEP(k_0)PをノードIDID #0及び乱数r_0と共にノード51Aに送信したとする。図4は、ノード50からノード51Aに送信される情報を模式的に示す図である。当該ノード51Aは、これらのノードIDID #0、乱数r_0及び暗号化ピースE(k_0)Pを対応付けてデータ格納部517に記憶することになる。尚、データ格納部517は、ノードIDと当該ノードIDが割り当てられたノードが生成した乱数との対応関係を保持した状態で各ノードID列及び各乱数列を記憶する。また、ノードID列に含まれる各ノードIDは、暗号化ピースの送信を仲介したノード50,51の送信順序が判定可能に保持されるものとする。例えば、ノードID列において、最初に送信を行ったノード50から最後に送信を行ったノードの順に各ノードIDが配列される。   Here, the node ID sequence, the random number sequence, and the encrypted piece transmitted from the nodes 50 and 51 will be specifically described. In addition, although the node ID and the random number transmitted together with this from the node 50 to one encrypted piece are one each, here, for convenience of explanation, these may be described as a node sequence and a random number sequence, respectively. . Here, a case will be described in which the encrypted piece is transmitted from the node 50 to the node 51A, the encrypted piece is transmitted from the node 51A to the node 51B, and the key request is transmitted from the node 51B to the key server 53. In this case, the node 51A performs encryption and the node 51A does not perform encryption. First, the former case will be described. For example, in response to a piece request from the node 51A for a piece P, the node 50 generates a temporary symmetric key k_0 using a random number r_0 and a secret key s_0, and encrypts the piece P using this to encrypt the piece P Suppose that piece EP (k_0) P is output. Then, it is assumed that the node 50 transmits the encrypted piece EP (k_0) P together with the node ID ID # 0 and the random number r_0 to the node 51A. FIG. 4 is a diagram schematically illustrating information transmitted from the node 50 to the node 51A. The node 51A stores the node ID ID # 0, the random number r_0, and the encrypted piece E (k_0) P in the data storage unit 517 in association with each other. Note that the data storage unit 517 stores each node ID string and each random number string in a state where the correspondence between the node ID and the random number generated by the node to which the node ID is assigned is held. In addition, each node ID included in the node ID string is held so that the transmission order of the nodes 50 and 51 that mediate transmission of the encrypted pieces can be determined. For example, in the node ID column, the node IDs are arranged in the order of the node 50 that transmitted first to the node that last transmitted.

そして、当該ノード51Aが、ノード51Bからのピース要求に応じてピースPに対する暗号化ピースを送信する場合、乱数r_1を生成し、これと秘密鍵s_1とを用いて一時対称鍵k_1を生成し、これを用いて暗号化ピースE(k_0)Pを更に暗号化して暗号化ピースE(k_1)E(k_0)Pを出力したとする。E(k_1)E(k_0)Pは、順に一時対称鍵k_0, k_1でピースPを多重に暗号化したものを示す。このとき、ノード51Aは、ノード51Bに対して、データ格納部517に記憶されている、ノード50に割り当てられたノードIDID #0に加え固有情報格納部510に記憶されている、自身に割り当てられたノードIDID #1と、データ格納部517に記憶されている乱数r_0に加え自身が生成した乱数r_1と、暗号化ピースE(k_1)E(k_0)Pとを送信する。図5は、ノード51Aからノード51Bに送信される情報を模式的に示す図である。ノード51Bは、これらのノードID列ID #0,ID #1、乱数列r_0,r_1及び暗号化ピースE(k_1)E(k_0)Pを対応付けてデータ格納部517に記憶する。   When the node 51A transmits an encrypted piece for the piece P in response to the piece request from the node 51B, the node 51A generates a random number r_1, generates a temporary symmetric key k_1 using this and the secret key s_1, Assume that the encrypted piece E (k_0) P is further encrypted using this and the encrypted piece E (k_1) E (k_0) P is output. E (k_1) E (k_0) P indicates that the piece P is encrypted with the temporary symmetric keys k_0 and k_1 in order. At this time, the node 51A is assigned to the node 51B and is stored in the unique information storage unit 510 in addition to the node ID ID # 0 stored in the data storage unit 517 and assigned to the node 50. In addition to the node ID ID # 1, the random number r_0 stored in the data storage unit 517, the random number r_1 generated by itself and the encrypted piece E (k_1) E (k_0) P are transmitted. FIG. 5 is a diagram schematically showing information transmitted from the node 51A to the node 51B. The node 51B stores the node ID string ID # 0, ID # 1, the random number string r_0, r_1, and the encrypted piece E (k_1) E (k_0) P in association with each other in the data storage unit 517.

次にノード51Aが暗号化を行わない場合について説明する。この場合、当該ノード51Aが、ノード51Bからのピース要求に応じてピースPに対する暗号化ピースを送信する場合、乱数r_1として上述したように代替的な乱数を生成する。そして、この場合ノード51Aは、当該ピースPについての暗号化を行わず、ノード51Bに対して、データ格納部517に記憶されている、ノード50に割り当てられたノードIDID #0に加え固有情報格納部510に記憶されている、自身に割り当てられたノードIDID #1と、データ格納部517に記憶されている乱数r_0に加え自身が生成した乱数r_1と、暗号化ピースE(k_0)Pとを送信する。図6は、ノード51Aからノード51Bに送信される情報を模式的に示す図である。ノード51Bは、これらのノードID列ID #0,ID #1、乱数列r_0,r_1及び暗号化ピースE(k_0)Pを対応付けてデータ格納部517に記憶する。   Next, a case where the node 51A does not perform encryption will be described. In this case, when the node 51A transmits an encrypted piece for the piece P in response to the piece request from the node 51B, an alternative random number is generated as described above as the random number r_1. In this case, the node 51A does not encrypt the piece P, and stores the unique information in addition to the node ID ID # 0 assigned to the node 50 stored in the data storage unit 517 for the node 51B. Node IDID # 1 assigned to itself, stored in unit 510, random number r_1 generated by itself in addition to random number r_0 stored in data storage unit 517, and encrypted piece E (k_0) P Send. FIG. 6 is a diagram schematically illustrating information transmitted from the node 51A to the node 51B. The node 51B associates the node ID string ID # 0, ID # 1, the random number string r_0, r_1, and the encrypted piece E (k_0) P and stores them in the data storage unit 517.

このように、ノード51は、暗号化ピースに暗号化を重ねるか否かを所定の確率に従って決定することにより、当該暗号化ピースについての更なる暗号化を選択的に行い、他のノード51に暗号化ピースを送信する。このとき、ノード51は、当該暗号化ピースの配信を仲介するものとなり、当該暗号化ピースの配信経路を示すものとして、配信開始ノードであるノード50を基点として当該暗号化ピースの配信を仲介する各ノード50,51の各ノードIDを含むノードID列及び当該各ノード50,51が生成した乱数を含む乱数列を暗号化ピースと共に他のノード51に送信する。   In this way, the node 51 selectively performs further encryption on the encrypted piece by deciding whether or not to encrypt the encrypted piece according to a predetermined probability. Send the encrypted piece. At this time, the node 51 mediates the distribution of the encrypted piece, and mediates the distribution of the encrypted piece from the node 50 that is the distribution start node as the distribution path of the encrypted piece. The node ID sequence including the node IDs of the nodes 50 and 51 and the random number sequence including the random numbers generated by the nodes 50 and 51 are transmitted to the other nodes 51 together with the encrypted pieces.

図3の説明に戻る。鍵要求送信部519は、鍵要求を鍵サーバ53に送信する。鍵要求とは、ピースの復号鍵を要求するための情報であって、復号鍵を生成するための鍵生成情報と、コンテンツを識別するための情報と、ピースを識別するための情報とを含むものである。ここでは、鍵要求送信部519は、データ格納部517に記憶された暗号化ピースを復号するための復号鍵を要求すると共に、当該復号鍵を生成するための鍵生成情報、当該暗号化ピースに対応付けられているコンテンツ種類ID及び当該暗号化ピースに対応付けられているピース番号を含む鍵要求を鍵サーバ53に送信する。鍵生成情報とは、ピースの暗号鍵を生成する際に使用した情報であって、そのピースの復号鍵を生成するために必要な情報である。ここでは、鍵生成情報は、当該暗号化ピースに対応してデータ格納部517に記憶されているノードID列及び乱数列を含む。また、鍵要求送信部519は、自身のノード51を識別するために自身のノードIDも鍵サーバ53に送信する。尚、自身のノードIDを、鍵サーバ53は、鍵要求に含めて送信するようにして良いし、鍵要求とは別に送信するようにしても良い。また、コンテンツ種類ID及びピース番号についても同様に、鍵サーバ53は、鍵要求とは別に送信するようにしても良い。   Returning to the description of FIG. The key request transmission unit 519 transmits a key request to the key server 53. The key request is information for requesting a decryption key for a piece, and includes key generation information for generating a decryption key, information for identifying content, and information for identifying a piece. It is a waste. Here, the key request transmission unit 519 requests a decryption key for decrypting the encrypted piece stored in the data storage unit 517, and also generates key generation information for generating the decryption key, and the encrypted piece. A key request including the associated content type ID and the piece number associated with the encrypted piece is transmitted to the key server 53. The key generation information is information used when generating an encryption key for a piece, and is information necessary for generating a decryption key for the piece. Here, the key generation information includes a node ID sequence and a random number sequence stored in the data storage unit 517 corresponding to the encrypted piece. The key request transmission unit 519 also transmits its own node ID to the key server 53 in order to identify its own node 51. The key server 53 may transmit the node ID included in the key request, or may transmit the node ID separately from the key request. Similarly, the content server ID and the piece number may be transmitted separately from the key request by the key server 53.

例えば、ノード51Bが、ノード51Aが暗号化を行った場合に出力された図5に示した暗号化ピースE(k_1)E(k_0)Pを復号するための復号鍵を要求する鍵要求を鍵サーバ53に送信する場合、ノード51Bの鍵要求送信部519は、ノードID列ID #0,ID #1と、乱数列r_0,r_1と、コンテンツ種類IDCIDと、ピース番号mとを含む鍵要求を送信する。図7は、ノード51Bから鍵サーバ53に送信される情報を模式的に示す図である。また、ノード51Bが、ノード51Aが暗号化を行わなかった場合に出力された図6に示した暗号化ピースE(k_0)Pを復号するための復号鍵を要求する鍵要求を鍵サーバ53に送信する場合も、図7に示されるように、ノード51Bの鍵要求送信部519は、ノードID列ID #0,ID #1と、乱数列r_0,r_1と、コンテンツ種類IDCIDと、ピース番号mとを含む鍵要求を送信する。このように、ノード51は、暗号化ピースを復号するための復号鍵を鍵サーバ53に要求する際に、当該暗号化ピースの配信経路を示すものとして、配信開始ノードであるノード50を基点として当該暗号化ピースの配信を仲介する各ノード50,51の各ノードIDを含むノードID列、当該各ノード50,51が生成した各乱数を含む乱数列と、当該暗号化ピースを特定するものとして、コンテンツ種類ID及びピース番号とを鍵サーバ53に送信する。尚、これらの送信に際し、鍵要求送信部519は、各ノードIDと当該各ノードIDが割り当てられたノードが生成した乱数との対応関係を保持した状態で送信する。   For example, the node 51B receives a key request for requesting a decryption key for decrypting the encrypted piece E (k_1) E (k_0) P shown in FIG. 5 output when the node 51A performs encryption. When transmitting to the server 53, the key request transmission unit 519 of the node 51B generates a key request including the node ID string ID # 0, ID # 1, the random number string r_0, r_1, the content type IDCID, and the piece number m. Send. FIG. 7 is a diagram schematically showing information transmitted from the node 51B to the key server 53. As shown in FIG. Also, the node 51B sends a key request to the key server 53 for requesting a decryption key for decrypting the encrypted piece E (k_0) P shown in FIG. 6 output when the node 51A does not perform encryption. Also in the case of transmission, as shown in FIG. 7, the key request transmission unit 519 of the node 51B performs the node ID string ID # 0, ID # 1, the random number string r_0, r_1, the content type IDCID, and the piece number m. Send a key request containing As described above, when the node 51 requests the key server 53 for a decryption key for decrypting the encrypted piece, the node 51 indicates the distribution path of the encrypted piece, with the node 50 that is the distribution start node as a base point. A node ID string including the node IDs of the nodes 50 and 51 that mediate the distribution of the encrypted pieces, a random number sequence including the random numbers generated by the nodes 50 and 51, and the encrypted pieces are identified. The content type ID and the piece number are transmitted to the key server 53. At the time of these transmissions, the key request transmission unit 519 performs transmission while maintaining the correspondence between each node ID and the random number generated by the node to which each node ID is assigned.

ピース復号部520は、鍵要求送信部519が送信した鍵要求に応じて鍵サーバ53から送信された一時対称鍵を復号鍵として受信し、当該一時対称鍵を用いて暗号化ピースを復号する。例えば、上述の例では、ノード51Aが暗号化を行っていた場合には、ノード51Bは、図7に示したノードID列及び乱数列を含む鍵要求に応じて鍵サーバ53から送信された一時対称鍵k_0,k_1を受信する。ここで、即ち、ピースに対して少なくとも1回以上行われている各暗号化を復号するための各復号鍵が受信される。図8は、鍵サーバ53からノード51Bに送信される情報を模式的に示す図である。同図に示される一時対称鍵によりピースPが復号される。一方、ノード51Aが暗号化を行っていなかった場合には、ノード51Bは、図7に示したノードID列及び乱数列を含む鍵要求に応じて鍵サーバ53から送信された一時対称鍵k_0を受信する。図9は、鍵サーバ53からノード51Bに送信される情報を模式的に示す図である。このように暗号化ピースについて選択的に行われた暗号化に応じて各暗号化を復号するための復号鍵を鍵サーバ53からノード51は取得する。尚、鍵サーバ53がどのように一時対称鍵を生成するのかは後述する。   The piece decryption unit 520 receives the temporary symmetric key transmitted from the key server 53 in response to the key request transmitted from the key request transmission unit 519 as a decryption key, and decrypts the encrypted piece using the temporary symmetric key. For example, in the above-described example, when the node 51A performs encryption, the node 51B transmits the temporary request transmitted from the key server 53 in response to the key request including the node ID string and the random number string illustrated in FIG. Symmetric keys k_0 and k_1 are received. In other words, each decryption key for decrypting each encryption performed at least once on the piece is received. FIG. 8 is a diagram schematically showing information transmitted from the key server 53 to the node 51B. Piece P is decrypted with the temporary symmetric key shown in FIG. On the other hand, when the node 51A has not performed encryption, the node 51B receives the temporary symmetric key k_0 transmitted from the key server 53 in response to the key request including the node ID sequence and the random number sequence illustrated in FIG. Receive. FIG. 9 is a diagram schematically showing information transmitted from the key server 53 to the node 51B. In this way, the node 51 obtains a decryption key for decrypting each encryption according to the encryption selectively performed on the encrypted piece from the key server 53. Note that how the key server 53 generates the temporary symmetric key will be described later.

尚、ノード51が、複数のピースのそれぞれについてどのような順番やタイミングでどのノードから取得するかは特に限定されないが、以上のようにして、ノード51は、複数のピースのそれぞれが暗号化された各暗号化ピースをピース要求によって他のノード50,51から取得する。また、ノード51は、各暗号化ピースについて鍵要求によって各一時対称鍵を鍵サーバ53から受信し、各暗号化ピースを復号することにより、上述の配信データを得る。   Note that the order in which the node 51 obtains each of the plurality of pieces from which node and from which node is not particularly limited, but as described above, the node 51 encrypts each of the plurality of pieces. Each encrypted piece is acquired from the other nodes 50 and 51 by a piece request. Further, the node 51 receives each temporary symmetric key from the key server 53 by a key request for each encrypted piece, and obtains the distribution data described above by decrypting each encrypted piece.

<鍵サーバの構成>
次に、鍵サーバ53のCPUが記憶装置や外部記憶装置に記憶された各種プログラムを実行することにより実現される各種機能について説明する。図10は、鍵サーバ53の機能的構成を例示する図である。鍵サーバ53は、秘密鍵格納部530と、データ受信部531と、暗号化スキップ判定部532と、一時対称鍵生成部533と、データ送信部534と、ピース情報格納部535と、配信量計算部536と、課金処理部537と、報酬ポイント計算部538と、価格情報格納部539と、報酬ポイント換算情報格納部540と、報酬ポイント格納部541とを有する。尚、秘密鍵格納部530と、ピース情報格納部535と、価格情報格納部539と、報酬ポイント格納部541と、報酬ポイント換算情報格納部540とは、例えば鍵サーバ53のHDDなどの外部記憶装置に記憶領域として確保されるものである。データ受信部531と、暗号化スキップ判定部532と、一時対称鍵生成部533と、データ送信部534と、課金処理部537と、配信量計算部536と、報酬ポイント計算部538との実体は、鍵サーバ53のCPUのプログラム実行時にRAMなどの記憶装置上に生成されるものである。
<Key server configuration>
Next, various functions realized when the CPU of the key server 53 executes various programs stored in the storage device or the external storage device will be described. FIG. 10 is a diagram illustrating a functional configuration of the key server 53. The key server 53 includes a secret key storage unit 530, a data reception unit 531, an encryption skip determination unit 532, a temporary symmetric key generation unit 533, a data transmission unit 534, a piece information storage unit 535, and a distribution amount calculation. Unit 536, billing processing unit 537, reward point calculation unit 538, price information storage unit 539, reward point conversion information storage unit 540, and reward point storage unit 541. The secret key storage unit 530, the piece information storage unit 535, the price information storage unit 539, the reward point storage unit 541, and the reward point conversion information storage unit 540 are external storage such as an HDD of the key server 53, for example. This is reserved as a storage area in the apparatus. The substance of the data reception unit 531, the encryption skip determination unit 532, the temporary symmetric key generation unit 533, the data transmission unit 534, the charging processing unit 537, the delivery amount calculation unit 536, and the reward point calculation unit 538 is When the program of the CPU of the key server 53 is executed, it is generated on a storage device such as a RAM.

秘密鍵格納部530は、各ノード50,51に割り当てられた秘密鍵を、各ノード50,51に割り当てられたノードIDと対応付けて記憶する。データ受信部531は、暗号化ピースを復号するための復号鍵を要求すると共に、上述したノードID列、乱数列、コンテンツ種類ID及びピース番号を含む鍵要求をノード51から受信する。また、データ受信部531は、鍵要求を送信したノード51自身のノードIDもノード51から受信する。   The secret key storage unit 530 stores the secret key assigned to each node 50, 51 in association with the node ID assigned to each node 50, 51. The data receiving unit 531 requests a decryption key for decrypting the encrypted piece, and receives a key request including the above-described node ID sequence, random number sequence, content type ID, and piece number from the node 51. The data receiving unit 531 also receives from the node 51 the node ID of the node 51 itself that transmitted the key request.

暗号化スキップ判定部532は、データ受信部531が受信した鍵要求に含まれるノードID列に含まれる各ノードIDに対応付けられて秘密鍵格納部530に記憶されている秘密鍵を読み出しこれと、当該鍵要求に含まれる乱数列に含まれる各乱数について以下の検査式が成立するか否かを判定する。例えば、ノードID列に含まれる各ノードIDがID#0, … , ID#(j)であり、各ノードIDID#m(0≦m≦j)にr_m,s_mが各々対応しているものとする。この場合、全ての乱数r_m(0≦m≦j)について以下の検査式が成立するか否かを一時対称鍵生成部533は判定する。
r_ m = F(s_m , ID#0, … , ID# m )・・・(検査式)
The encryption skip determination unit 532 reads out the secret key stored in the secret key storage unit 530 in association with each node ID included in the node ID string included in the key request received by the data reception unit 531. Then, it is determined whether or not the following check expression is satisfied for each random number included in the random number sequence included in the key request. For example, each node ID included in the node ID column is ID # 0,..., ID # (j), and each node IDID # m (0 ≦ m ≦ j) corresponds to r_m and s_m, respectively. To do. In this case, the temporary symmetric key generation unit 533 determines whether or not the following check expression holds for all random numbers r_m (0 ≦ m ≦ j).
r_ m = F (s_m, ID # 0,…, ID # m) ... (inspection formula)

尚、当該暗号化ピースの配信に際してノード51が乱数を代替的に生成した場合には上述の検査式が成立することになる。即ち、当該検査式によって、各乱数が暗号化ピースの暗号化に関っているか否かが判定される。   In addition, when the node 51 generates a random number alternatively when distributing the encrypted piece, the above-described checking formula is established. That is, whether or not each random number is related to the encryption of the encrypted piece is determined by the check expression.

一時対称鍵生成部533は、上述の検査式が成立しない全ての乱数mについて関数Fにより復号鍵k_mを生成する。これを式により表すと以下のように表される。尚、関数Fは上述のノード51が一時対称鍵を生成する際に用いたものと同じである。従って、ここでは、一時情報と秘密鍵とを用いて当該関数Fにより一時対称鍵を復元することになる。
k_m=F(s_ m,r_ m)
The temporary symmetric key generation unit 533 generates the decryption key k_m using the function F for all random numbers m for which the above-described check expression is not satisfied. This can be expressed by the following formula. The function F is the same as that used when the node 51 described above generates a temporary symmetric key. Therefore, here, the temporary symmetric key is restored by the function F using the temporary information and the secret key.
k_m = F (s_ m, r_ m)

一方、上述の検査式が成立する乱数を生成したノード51は、暗号化ピースの配信を仲介するものの暗号化を行っていない。このため、当該乱数に対して復号鍵は生成されないことになる。   On the other hand, the node 51 that has generated a random number that satisfies the above check expression mediates the distribution of the encrypted piece, but does not perform encryption. For this reason, a decryption key is not generated for the random number.

データ送信部534は、一時対称鍵生成部533が復号鍵として生成した一時対称鍵を、データ受信部531が受信した鍵要求を送信したノード51に対して送信する。例えば、上述の例では、ノード51Aが暗号化を行っていた場合には、鍵サーバ53は、図7に示されるノードID列及び乱数列を含む鍵要求に応じて、図8に示されるように、各乱数r_0,r_1に対して一時対称鍵k_0,k_1を得て、これをノード51Bに対して送信する。また、鍵サーバ53は、ノード51Aが暗号化を行っていない場合には、図7に示されるノードID列及び乱数列を含む鍵要求に応じて、図9に示されるように、乱数r_0に対してのみ一時対称鍵k_0を得て、これをノード51Bに対して送信する。このように、1つのピースが暗号化された暗号化ピースを復号するための復号鍵としての一時対称鍵の数は、当該ピースについて選択的に行われた暗号化の回数に応じて異なる。この数は1つであったり複数であったりする。当該ピースについて行われた全ての暗号化のそれぞれを復号するための各対称鍵がノード51Bに対して送信されることにより、ノード51Bは当該暗号化ピースの暗号化を完全に復号することができる。   The data transmission unit 534 transmits the temporary symmetric key generated as the decryption key by the temporary symmetric key generation unit 533 to the node 51 that has transmitted the key request received by the data reception unit 531. For example, in the above example, when the node 51A performs encryption, the key server 53 is as shown in FIG. 8 in response to the key request including the node ID string and the random number string shown in FIG. Then, temporary symmetric keys k_0, k_1 are obtained for the random numbers r_0, r_1 and transmitted to the node 51B. Further, when the node 51A does not perform encryption, the key server 53 sets the random number r_0 as shown in FIG. 9 in response to the key request including the node ID sequence and the random number sequence shown in FIG. Only for this, a temporary symmetric key k_0 is obtained and transmitted to the node 51B. Thus, the number of temporary symmetric keys as a decryption key for decrypting an encrypted piece in which one piece is encrypted differs depending on the number of times of encryption performed selectively for the piece. This number may be one or plural. Each symmetric key for decrypting each encryption performed on the piece is transmitted to the node 51B, so that the node 51B can completely decrypt the encryption of the encrypted piece. .

価格情報格納部539は、各配信データの価格をコンテンツ種類ID毎に記憶する。図11は、価格情報格納部539に記憶される、各配信データの価格を例示する図である。同図に示されるように、コンテンツ種類IDと、価格とが対応付けられて記憶される。報酬ポイント格納部541は、各ノード51が二次配信を行ったことにより付与された報酬ポイントの合計をノードID毎に記憶する。この報酬ポイントは、二次配信へのインセンティブとなるものである。具体的には、当該報酬ポイントは、当該報酬ポイントが付与されたノード51が鍵要求を鍵サーバ53に送信した際に課金される金額(課金額という)から値引きをするために用いられる。図12は、報酬ポイント格納部541に記憶される報酬ポイントの合計を例示する図である。同図に示されるように、ノードIDと、報酬ポイントの合計とが対応付けられて記憶される。ピース情報格納部535は、各配信データのピース数と、最後尾のピース以外の各ピースのデータサイズと、最後尾のピースのデータサイズとを示すピース情報をコンテンツ種類ID毎に記憶する。図13は、ピース情報格納部535に記憶されるピース情報を例示する図である。同図に示されるように、コンテンツ種類IDと、ピース情報とが対応付けられて記憶される。報酬ポイント換算情報格納部540は、配信量に応じた報酬ポイントを計算するための単位量当たりの報酬ポイント(換算ポイントという)をコンテンツ種類ID毎に記憶する。図14は、報酬ポイント換算情報格納部540が記憶する換算ポイントを例示する図である。ここでは単位量を1キロバイトとする。同図に示されるように、コンテンツ種類IDと、キロバイト当たりの換算ポイントとが対応付けられて記憶される。   The price information storage unit 539 stores the price of each distribution data for each content type ID. FIG. 11 is a diagram illustrating the price of each distribution data stored in the price information storage unit 539. As shown in the figure, the content type ID and the price are stored in association with each other. The reward point storage unit 541 stores the total of reward points given by each node 51 performing secondary distribution for each node ID. This reward point is an incentive to secondary distribution. Specifically, the reward points are used for discounting from the amount charged when the node 51 to which the reward points are given transmits a key request to the key server 53 (referred to as a charge amount). FIG. 12 is a diagram illustrating the total of reward points stored in the reward point storage unit 541. As shown in the figure, the node ID and the total reward points are stored in association with each other. The piece information storage unit 535 stores piece information indicating the number of pieces of each piece of distribution data, the data size of each piece other than the last piece, and the data size of the last piece for each content type ID. FIG. 13 is a diagram illustrating piece information stored in the piece information storage unit 535. As shown in the figure, the content type ID and piece information are stored in association with each other. The reward point conversion information storage unit 540 stores reward points per unit amount (referred to as conversion points) for calculating reward points according to the distribution amount for each content type ID. FIG. 14 is a diagram illustrating conversion points stored in the reward point conversion information storage unit 540. Here, the unit amount is 1 kilobyte. As shown in the figure, the content type ID and the conversion point per kilobyte are stored in association with each other.

図10の説明に戻る。課金処理部537は、鍵要求を送信したノード51のノードIDと対応付けられて報酬ポイント格納部541に記憶された報酬ポイントを読み出し、鍵要求に含まれるコンテンツ種類IDと同一のコンテンツ種類IDと対応付けられて価格情報格納部539に記憶された価格を読み出して、当該報酬ポイント及び価格を用いて、当該ノード51に対して課金額を計算する。そして、課金処理部537は、課金額の計算に用いた報酬ポイントの値に基づいて、当該ノードIDと対応付けられて報酬ポイント格納部541に記憶された報酬ポイントを更新する。   Returning to the description of FIG. The charging processing unit 537 reads the reward points stored in the reward point storage unit 541 in association with the node ID of the node 51 that transmitted the key request, and the content type ID that is the same as the content type ID included in the key request. The price associated with and stored in the price information storage unit 539 is read, and the charge amount for the node 51 is calculated using the reward points and the price. Then, the charging processing unit 537 updates the reward points associated with the node ID and stored in the reward point storage unit 541 based on the value of the reward points used for calculating the charge amount.

配信量計算部536は、鍵要求により復号鍵を要求されているピースの配信量を計算する。具体的には、配信量計算部536は、鍵要求に含まれるコンテンツ種類IDと対応付けられてピース情報格納部535に記憶されたピース情報を読み出し、鍵要求に含まれるピース番号が割り当てられたピースのデータサイズを判別することにより、配信量を計算する。   The distribution amount calculation unit 536 calculates the distribution amount of the piece for which the decryption key is requested by the key request. Specifically, the delivery amount calculation unit 536 reads the piece information stored in the piece information storage unit 535 in association with the content type ID included in the key request, and is assigned the piece number included in the key request. The distribution amount is calculated by determining the data size of the piece.

報酬ポイント計算部538は、鍵要求により復号鍵を要求されているピースを最後に配信したノード51の報酬ポイントを計算して、当該ノード51の報酬ポイントの合計を更新する。具体的には、報酬ポイント計算部538は、まず、鍵要求に含まれるコンテンツ種類IDと対応付けられて報酬ポイント換算情報格納部540に記憶されている換算ポイントを読み出しこれを、配信量計算部536が計算した配信量と掛け合わせることにより、報酬ポイントを計算する。例えば、報酬ポイントをBとし、換算ポイントをρとし、配信量をSとすると、以下の式1により報酬ポイントが計算される。   The reward point calculation unit 538 calculates the reward points of the node 51 that has finally delivered the piece whose decryption key is requested by the key request, and updates the total of the reward points of the node 51. Specifically, the reward point calculation unit 538 first reads out the conversion points associated with the content type ID included in the key request and stored in the reward point conversion information storage unit 540, and this is read as the distribution amount calculation unit. Reward points are calculated by multiplying the distribution amount calculated by 536. For example, if the reward point is B, the conversion point is ρ, and the delivery amount is S, the reward point is calculated by the following equation 1.

Figure 0005284119
Figure 0005284119

そして、報酬ポイント計算部538は、鍵要求に含まれるノードID列のうち最後に送信を行ったノード51のノードIDと対応付けられて報酬ポイント格納部541に記憶されている報酬ポイントに、計算した報酬ポイントを加えることにより、当該ノード51の報酬ポイントの合計を計算する。そして、報酬ポイント計算部538は、当該ノードIDと対応付けられて報酬ポイント格納部541に記憶されている報酬ポイントを、計算した報酬ポイントの合計と置き換えることにより、報酬ポイント格納部541に記憶されている報酬ポイントの合計を更新する。このようにして報酬ポイント計算部538は、あるピースについて鍵要求を行ったノード51に対して最後に送信を行った他のノード51に対して報酬ポイントを付与する。尚、当該ノードIDと対応付けられている報酬ポイントが報酬ポイント格納部541にまだ記憶されていない場合には、報酬ポイント計算部538は、鍵要求により復号鍵を要求されているピースに対して計算した報酬ポイントを、当該ピースを最後に配信したノード51のノードIDと対応付けて報酬ポイント格納部541に記憶させる。   The reward point calculation unit 538 calculates the reward points stored in the reward point storage unit 541 in association with the node ID of the node 51 that transmitted the last in the node ID string included in the key request. The total reward points of the node 51 are calculated by adding the reward points. And the reward point calculation part 538 is memorize | stored in the reward point storage part 541 by replacing the reward point matched with the said node ID and memorize | stored in the reward point storage part 541 with the total of the calculated reward point. Update the total reward points you have. In this way, the reward point calculation unit 538 gives reward points to the other node 51 that has transmitted the last to the node 51 that has requested the key for a piece. If the reward point associated with the node ID has not yet been stored in the reward point storage unit 541, the reward point calculation unit 538 makes the decryption key requested for the piece requested by the key request. The calculated reward points are stored in the reward point storage unit 541 in association with the node ID of the node 51 that last distributed the piece.

以上のような構成により、鍵サーバ53は、ノード51からの鍵要求に応じて、復号鍵が要求されているピースに対する課金処理を行い、当該ピースを最後に送信した他のノード51に対して当該ピースのデータサイズに相当する配信量に応じた報酬ポイントを計算する報酬ポイント計算処理を行う。そして、鍵サーバ53は、当該復号鍵を生成する復号鍵生成処理を行って、当該復号鍵をノード51に送信する。   With the configuration as described above, the key server 53 performs a billing process for the piece for which the decryption key is requested in response to the key request from the node 51, and sends it to the other node 51 that last transmitted the piece. Reward point calculation processing is performed for calculating reward points according to the distribution amount corresponding to the data size of the piece. Then, the key server 53 performs a decryption key generation process for generating the decryption key, and transmits the decryption key to the node 51.

(2)動作
<配信開始ノード:配信処理>
次に、本実施の形態にかかるデータ配信システムで行われる処理の手順について説明する。まず、配信開始ノードであるノード50が行う配信処理の手順について図15を用いて説明する。ノード50は、配信データを複数のピースに分割する(ステップS1)。そして、ノード50は、ピースを要求するピース要求を他のノード51から受信すると(ステップS2:YES)、乱数r_0を生成する(ステップS3)。次いで、ノード50は、乱数r_0と固有情報格納部500に記憶された秘密鍵s_0とを用いて関数Fにより対称鍵k_0を生成する(ステップS4)。そして、ノード50は、ステップS4で生成した対称鍵を用いて、送信対象となるピースPを暗号化して、暗号化ピースE(k_0)Pを出力する(ステップS5)。尚、送信対象となるピースをどのように決定するかは特に限定されない。そして、ノード50は、ステップS2で受信されたピース要求を送信した他のノード51に対して、例えば図4に示されるように、固有情報格納部500に記憶されているノードIDID#0と、ステップS4で生成した乱数r_0と、ステップS5で出力した暗号化ピースE(k_0)Pとを送信する(ステップS6)。その後ステップS2に戻り、ノード50は、新たなピース要求の受信を待機する。尚、ステップS2で受信されるピース要求は、同一のノード51であるとは限らず、当該ピース要求によって要求されるピースPは、同一のピースであるとは限らない。また、ステップS3で生成する乱数は基本的にステップS3の処理毎に異なる。
(2) Operation <Distribution start node: distribution processing>
Next, a procedure of processing performed in the data distribution system according to the present embodiment will be described. First, the procedure of the distribution process performed by the node 50 that is the distribution start node will be described with reference to FIG. The node 50 divides the distribution data into a plurality of pieces (step S1). When the node 50 receives a piece request for requesting a piece from another node 51 (step S2: YES), the node 50 generates a random number r_0 (step S3). Next, the node 50 generates a symmetric key k_0 by the function F using the random number r_0 and the secret key s_0 stored in the unique information storage unit 500 (step S4). Then, the node 50 encrypts the piece P to be transmitted using the symmetric key generated in step S4, and outputs the encrypted piece E (k_0) P (step S5). In addition, how to determine the piece to be transmitted is not particularly limited. Then, the node 50, for example, as shown in FIG. 4 with respect to the other node 51 that has transmitted the piece request received in step S2, node IDID # 0 stored in the unique information storage unit 500, The random number r_0 generated in step S4 and the encrypted piece E (k_0) P output in step S5 are transmitted (step S6). Thereafter, the process returns to step S2, and the node 50 waits for reception of a new piece request. Note that the piece requests received in step S2 are not necessarily the same node 51, and the pieces P requested by the piece requests are not necessarily the same piece. Further, the random number generated in step S3 basically differs for each process in step S3.

<受信処理>
次に、ノード51がノード50又は他のノード51から暗号化ピースを受信する受信処理の手順について図16を用いて説明する。ノード51は、ピースを要求するピース要求をノード50又は他のノード51に対して送信する(ステップS10)。次いで、ノード51は、ステップS10でピース要求を送信した相手であるノード50又は他のノード51から、ノードID列と、乱数列と、暗号化ピースとを受信する(ステップS11)。そして、ノード51は、ステップS11で受信したノードID列、乱数列及び暗号化ピースを対応付けて記憶する(ステップS12)。
<Reception processing>
Next, a reception processing procedure in which the node 51 receives an encrypted piece from the node 50 or another node 51 will be described with reference to FIG. The node 51 transmits a piece request for requesting a piece to the node 50 or another node 51 (step S10). Next, the node 51 receives the node ID string, the random number string, and the encrypted piece from the node 50 or the other node 51 that is the partner that transmitted the piece request in step S10 (step S11). Then, the node 51 stores the node ID sequence, random number sequence, and encrypted piece received in step S11 in association with each other (step S12).

尚、ノード51がノード50にピース要求を送信した場合は、ステップS11ではピースPについて図4に示されるノードID列と、乱数列と、暗号化ピースとを受信する。ここで、図示はしないが、P2PネットワークNTに接続されるノードであって、fを1以上の整数として、f番目にピースPを受信するノードについて一般化して説明する。説明の便宜上、当該ノードのノードIDをID# fとする。ノードIDID# fが割り当てられたノードは、(f -1)番目のノードIDID#(f-1)が割り当てられたノードから、図17に示されるように、ピースPについて、ノードID列ID#0, …, ID#(f-1)と、乱数r_0, …, r_{f-1}と、暗号化ピースE(k_{t})…E(k_0)Pとを受信する。ただしtは1≦t≦f-1の整数とする。これは即ち暗号化ピースには必ずしも(f-1)回ではなくそれ以下の回数の暗号化が行われていることを意味する。ノードID列ID#0, …, ID#(f-1)によっては、暗号化ピースがどのノードによって暗号化されて送信されたかが各々特定されるため、暗号化ピースの配信経路が示されることになる。   When the node 51 transmits a piece request to the node 50, the node ID sequence, random number sequence, and encrypted piece shown in FIG. Here, although not shown in the figure, a node connected to the P2P network NT, where f is an integer equal to or greater than 1, will be generalized and described. For convenience of explanation, the node ID of the node is ID # f. The node to which the node ID ID # f is assigned is the node ID string ID # for the piece P as shown in FIG. 17 from the node to which the (f-1) th node IDID # (f-1) is assigned. 0, ..., ID # (f-1), random numbers r_0, ..., r_ {f-1} and encrypted pieces E (k_ {t}) ... E (k_0) P are received. However, t is an integer satisfying 1 ≦ t ≦ f−1. This means that the encrypted piece is not necessarily (f-1) times encrypted but the number of times of encryption. Depending on the node ID string ID # 0,..., ID # (f-1), it is specified by which node the encrypted piece was encrypted and transmitted, so that the delivery path of the encrypted piece is indicated. Become.

<配信開始ノード以外のノード:配信処理>
次に、配信開始ノード以外のノード51が行う配信処理の手順について図18を用いて説明する。ノード51は、ピースを要求するピース要求を他のノード51から受信すると(ステップS20:YES)、所定の確率に従って、送信対象の暗号化ピースを暗号化するか否かを決定する(ステップS21)。そして、ノード51は、送信対象の暗号化ピースを暗号化すると決定した場合(ステップS21:YES)、乱数を生成する(ステップS22)。次いでノード51は、ステップS22で生成した乱数と、固有情報格納部510に記憶された秘密鍵とを用いて関数Fにより一時対称鍵を生成する(ステップS23)。そしてノード51は、ステップS23で生成した一時対称鍵を用いて、あるピースPが暗号化された暗号化ピースであってデータ格納部517に記憶されている暗号化ピースを更に暗号化して、新たな暗号化ピースを出力する(ステップS24)。その後ノード51は、ステップS20で受信されたピース要求を送信した他のノード51に対して、送信対象である暗号化ピースに対応付けられてデータ格納部517に記憶されたノードIDに加え固有情報格納部510に記憶されたノードIDを含む新たなノードID列と、当該暗号化ピースに対応付けられてデータ格納部517に記憶された乱数列に加えステップS22で生成した乱数を含む新たな乱数列と、ステップS24で出力した新たな暗号化ピースとを送信する(ステップS25)。
<Nodes other than the distribution start node: distribution processing>
Next, the procedure of the distribution process performed by the nodes 51 other than the distribution start node will be described with reference to FIG. When receiving a piece request for requesting a piece from another node 51 (step S20: YES), the node 51 determines whether or not to encrypt the encrypted piece to be transmitted according to a predetermined probability (step S21). . When the node 51 determines to encrypt the encrypted piece to be transmitted (step S21: YES), the node 51 generates a random number (step S22). Next, the node 51 generates a temporary symmetric key by the function F using the random number generated in step S22 and the secret key stored in the unique information storage unit 510 (step S23). The node 51 uses the temporary symmetric key generated in step S23 to further encrypt an encrypted piece that is an encrypted piece obtained by encrypting a piece P and is stored in the data storage unit 517, and newly The encrypted piece is output (step S24). Thereafter, the node 51 transmits the unique information in addition to the node ID stored in the data storage unit 517 in association with the encrypted piece to be transmitted to the other node 51 that has transmitted the piece request received in step S20. A new node ID sequence including the node ID stored in the storage unit 510 and a new random number including the random number generated in step S22 in addition to the random number sequence associated with the encrypted piece and stored in the data storage unit 517 The sequence and the new encrypted piece output in step S24 are transmitted (step S25).

一方、ステップS21でノード51は、送信対象の暗号化ピースを暗号化しないと決定した場合(ステップS21:NO)、当該暗号化ピースに対応付けられてデータ格納部517に記憶されているノード列と、固有情報格納部510に記憶された秘密鍵とを用いて関数Fにより代替的な乱数を生成する(ステップS26)。その後ノード51は、ステップS24で行った暗号化を行わずに、ステップS20で受信されたピース要求を送信した他のノード51に対して、送信対象である暗号化ピースであってデータ格納部517に記憶された暗号化ピースと、当該暗号化ピースに対応付けられてデータ格納部517に記憶されたノードIDに加え固有情報格納部510に記憶されたノードIDを含む新たなノードID列と、当該暗号化ピースに対応付けられてデータ格納部517に記憶された乱数列に加えステップS26で生成した代替的な乱数を含む新たな乱数列とを送信する(ステップS27)。   On the other hand, when the node 51 determines in step S21 that the encrypted piece to be transmitted is not encrypted (step S21: NO), the node string stored in the data storage unit 517 in association with the encrypted piece. Then, an alternative random number is generated by the function F using the secret key stored in the unique information storage unit 510 (step S26). After that, the node 51 does not perform the encryption performed in step S24, and is an encrypted piece to be transmitted to the other node 51 that has transmitted the piece request received in step S20, and the data storage unit 517. And a new node ID string including a node ID stored in the unique information storage unit 510 in addition to the node ID stored in the data storage unit 517 in association with the encrypted piece, In addition to the random number sequence associated with the encrypted piece and stored in the data storage unit 517, a new random number sequence including the alternative random number generated in step S26 is transmitted (step S27).

例えば、上述したノードIDID#fが割り当てられたノードは、(f+1)番目となるノードIDID#(f+1)が割り当てられたノードに対して、図19に示されるように、ピースPについて、ノードID列ID#0, …, ID#(f-1),ID#fと、乱数列r_0, …, r_fと、暗号化ピースE(k_t´)…E(k_0)Pとを送信する。ただしt´は1≦t´≦fの整数である。これは即ち暗号化ピースには必ずしもf回ではなくそれ以下の回数の暗号化が行われていることを意味する。   For example, as shown in FIG. 19, the node assigned the node ID ID # f described above is assigned to the node P assigned the (f + 1) th node IDID # (f + 1) as shown in FIG. Node ID string ID # 0, ..., ID # (f-1), ID # f, random number string r_0, ..., r_f, and encrypted piece E (k_t ') ... E (k_0) P To do. However, t ′ is an integer of 1 ≦ t ′ ≦ f. This means that the encrypted piece has been encrypted not necessarily f times but less.

<復号処理>
次に、ノード51が鍵サーバ53から復号鍵を取得しこれを用いて暗号化ピースを復号する復号処理の手順について図20を用いて説明する。ノード51は、データ格納部517に記憶された暗号化ピースに対応付けられているノードID列及び乱数列を読み出し(ステップS30)、当該暗号化ピースを復号するための復号鍵を要求すると共に、当該ノードID列及び乱数列と、当該暗号化ピースのコンテンツ種類ID及びピース番号とを含む鍵要求を鍵サーバ53に送信する(ステップS31)。このときノード51は、自身のノードIDも鍵サーバ53に送信する。このノードIDは課金処理に用いられる。次いで、ノード51は、ステップS30で送信された鍵要求に応じて鍵サーバ53から送信された一時対称鍵を復号鍵として受信し(ステップS32)、当該一時対称鍵を用いて暗号化ピースを復号する(ステップS33)。
<Decryption process>
Next, the procedure of the decryption process in which the node 51 obtains the decryption key from the key server 53 and decrypts the encrypted piece using this will be described with reference to FIG. The node 51 reads the node ID sequence and random number sequence associated with the encrypted piece stored in the data storage unit 517 (Step S30), requests a decryption key for decrypting the encrypted piece, A key request including the node ID sequence and random number sequence, and the content type ID and piece number of the encrypted piece is transmitted to the key server 53 (step S31). At this time, the node 51 also transmits its own node ID to the key server 53. This node ID is used for billing processing. Next, the node 51 receives the temporary symmetric key transmitted from the key server 53 in response to the key request transmitted in step S30 as a decryption key (step S32), and decrypts the encrypted piece using the temporary symmetric key. (Step S33).

例えば、上述したノードIDID#(f+1)が割り当てられたノードは、鍵サーバ53に対して、図21に示されるように、ピースPについて、ノードID列ID#0, …, ID#(f-1),ID#fと、乱数列r_0, …,r_{f-1},r_fと、コンテンツ種類IDCIDと、ピース番号mとを送信する。そして、当該ノードは、鍵サーバ53から、図22に示されるように、ピースPについて、一時対称鍵k_0, …, k_t´を受信し、これらを用いて暗号化ピースE(k_t´)…E(k_0)Pを復号して、ピースPを得る。このようにして、各ノード51は、各ピースについて行われている暗号化を復号するための一時対称鍵を全て得ることにより、当該ピースについて行われている暗号化を復号することができ、当該暗号化ピースを完全に復号することが可能になる。このようにして、各ノード51は、複数のピースのそれぞれが暗号化された各暗号化ピースについて鍵要求によって各一時対称鍵を鍵サーバ53から受信し、各暗号化ピースを復号することにより、上述の配信データを得ることができる。   For example, the node to which the above-described node ID ID # (f + 1) is assigned, with respect to the key server 53, as shown in FIG. 21, the node ID string ID # 0,..., ID # ( f-1), ID # f, random number sequence r_0,..., r_ {f-1}, r_f, content type IDCID, and piece number m are transmitted. Then, the node receives temporary symmetric keys k_0,..., K_t ′ for the piece P from the key server 53 as shown in FIG. 22, and uses them to encrypt the encrypted piece E (k_t ′). (k_0) P is decoded to obtain piece P. In this way, each node 51 can decrypt the encryption performed for the piece by obtaining all the temporary symmetric keys for decrypting the encryption performed for each piece, It becomes possible to completely decrypt the encrypted piece. In this way, each node 51 receives each temporary symmetric key from the key server 53 by a key request for each encrypted piece in which each of the plurality of pieces is encrypted, and decrypts each encrypted piece, The above distribution data can be obtained.

<鍵サーバ:鍵送信処理>
次に、鍵サーバ53がノード51からの鍵要求に応じて復号鍵を送信する鍵送信処理の手順について図23を用いて説明する。ここでは、鍵サーバ53は、暗号化ピースを復号するための復号鍵を要求すると共に、ノードID列、乱数列、コンテンツ種類ID及びピース番号を含む鍵要求と当該ノード51のノードIDとをノード51から受信すると(ステップS40:YES)、まず、課金処理を行う(ステップS41)。尚、ここでは、鍵サーバ53は、ピース毎に鍵要求を受信し、ピース毎に以降の処理を行うものとする。図24は、課金処理の手順を示すフローチャートである。鍵サーバ53は、鍵要求を送信したノード51のノードIDと対応付けられて報酬ポイント格納部541に記憶された報酬ポイントを読み出し(ステップS60)、鍵要求に含まれるコンテンツ種類IDと同一のコンテンツ種類IDと対応付けられて価格情報格納部539に記憶された価格を読み出す(ステップS61)。そして、鍵サーバ53は、当該価格と当該報酬ポイントとのうち値の小さい方を値引き額として設定し(ステップS62)、当該価格から当該値引き額を差し引くことにより、当該ノード51に対して課金額を計算する(ステップS63)。その後、鍵サーバ53は、当該報酬ポイントから当該値引き額を差し引いた値を当該ノード51に対する新たな報酬ポイントの値として、当該ノードIDと対応付けられて報酬ポイント格納部541に記憶された報酬ポイントを更新する(ステップS64)。尚、当該ノード51のノードIDと対応付けられた報酬ポイントが報酬ポイント格納部541に記憶されていない場合には、鍵サーバ53は、報酬ポイントの値を‘0’として計算を行い、課金額の計算後の報酬ポイントの更新は行わない。
<Key server: Key transmission processing>
Next, a key transmission process procedure in which the key server 53 transmits a decryption key in response to a key request from the node 51 will be described with reference to FIG. Here, the key server 53 requests a decryption key for decrypting the encrypted piece, and sends a key request including a node ID sequence, a random number sequence, a content type ID and a piece number, and a node ID of the node 51 to the node If received from 51 (step S40: YES), first, a billing process is performed (step S41). Here, it is assumed that the key server 53 receives a key request for each piece and performs the subsequent processing for each piece. FIG. 24 is a flowchart showing the procedure of the charging process. The key server 53 reads the reward points stored in the reward point storage unit 541 in association with the node ID of the node 51 that transmitted the key request (step S60), and the same content as the content type ID included in the key request The price associated with the type ID and stored in the price information storage unit 539 is read (step S61). Then, the key server 53 sets the smaller value of the price and the reward point as a discount amount (step S62), and subtracts the discount amount from the price, thereby charging the node 51 with the charge amount. Is calculated (step S63). Thereafter, the key server 53 sets the value obtained by subtracting the discount amount from the reward point as a new reward point value for the node 51, and stores the reward points stored in the reward point storage unit 541 in association with the node ID. Is updated (step S64). If the reward point associated with the node ID of the node 51 is not stored in the reward point storage unit 541, the key server 53 performs the calculation with the value of the reward point set to “0”, and the charge amount Reward points are not updated after the calculation of.

図23の説明に戻る。ステップS41の後、鍵サーバ53は、報酬ポイント計算処理を行う(ステップS42)。図25は、報酬ポイント計算処理の手順を示すフローチャートである。鍵サーバ53は、まず、鍵要求に含まれるノードID列に含まれるノードIDを読み出して(ステップS70)、最後に送信を行ったノードが配信開始ノードであるか否かを判定する(ステップS71)。上述したように、例えば、送信順序に応じてノードIDが配列されている場合、鍵サーバ53は、最後尾のノードIDが配信開始ノードのノードIDか否かを判定する。当該ノードが配信開始ノードである場合(ステップS71:YES)、鍵サーバ53は処理を終了する。一方、当該ノードが配信開始ノードでない場合(ステップS71:NO)、鍵サーバ53は、鍵要求に含まれるコンテンツ種類IDと対応付けられてピース情報格納部535に記憶されたピース情報を読み出し(ステップS72)、鍵要求に含まれるピース番号が割り当てられたピースのデータサイズを求めることにより、配信量を計算する(ステップS73)。例えば、図13の例では、コンテンツ種類IDが‘12500012’であり、ピース番号が‘230’である場合、ピースのデータサイズは‘262144’であり、これが配信量となる。また、コンテンツ種類IDが‘12500012’であり、ピース番号が‘2351’である場合、ピースのデータサイズは‘143’であり、これが配信量となる。   Returning to the description of FIG. After step S41, the key server 53 performs a reward point calculation process (step S42). FIG. 25 is a flowchart illustrating a procedure of reward point calculation processing. The key server 53 first reads the node ID included in the node ID string included in the key request (step S70), and determines whether or not the last transmitting node is the distribution start node (step S71). ). As described above, for example, when the node IDs are arranged according to the transmission order, the key server 53 determines whether or not the last node ID is the node ID of the distribution start node. If the node is a distribution start node (step S71: YES), the key server 53 ends the process. On the other hand, when the node is not a distribution start node (step S71: NO), the key server 53 reads piece information stored in the piece information storage unit 535 in association with the content type ID included in the key request (step S71). S72) The distribution amount is calculated by obtaining the data size of the piece to which the piece number included in the key request is assigned (step S73). For example, in the example of FIG. 13, when the content type ID is “12500012” and the piece number is “230”, the data size of the piece is “262144”, which is the distribution amount. Further, when the content type ID is “12500012” and the piece number is “2351”, the data size of the piece is “143”, which is the distribution amount.

次いで鍵サーバ53は、鍵要求に含まれるコンテンツ種類IDと対応付けられて報酬ポイント換算情報格納部540に記憶されている換算ポイントを読み出しこれを、ステップS73で計算した配信量と掛け合わせることにより、報酬ポイントを計算する(ステップS74)。そして、鍵サーバ53は、最後に送信を行ったノード51のノードID、即ち、ステップS70で参照したノードID、と対応付けられて報酬ポイント格納部541に記憶されている報酬ポイントに、ステップS74で計算した報酬ポイントを加えることにより、当該ノード51の報酬ポイントの合計を計算する。そして、鍵サーバ53は、計算した報酬ポイントの合計と、当該ノードIDと対応付けられて報酬ポイント格納部541に記憶されている報酬ポイントの合計を置き換えることにより、報酬ポイント格納部541に記憶されている報酬ポイントの合計を更新する(ステップS75)。尚、当該ノードIDと対応付けられている報酬ポイントが報酬ポイント格納部541にまだ記憶されていない場合には、鍵サーバ53は、ステップS74で計算した報酬ポイントを、当該ピースを最後に配信したノード51のノードIDと対応付けて報酬ポイント格納部541に記憶させる。   Next, the key server 53 reads the conversion points associated with the content type ID included in the key request and stored in the reward point conversion information storage unit 540, and multiplies this with the distribution amount calculated in step S73. The reward points are calculated (step S74). Then, the key server 53 assigns the reward point stored in the reward point storage unit 541 in association with the node ID of the node 51 that has transmitted last, that is, the node ID referenced in step S70, to step S74. The total reward points of the node 51 are calculated by adding the reward points calculated in (1). And the key server 53 is memorize | stored in the reward point storage part 541 by replacing the total of the calculated reward point, and the sum of the reward point matched with the said node ID, and memorize | stored in the reward point storage part 541. The total of reward points being updated is updated (step S75). If the reward point associated with the node ID is not yet stored in the reward point storage unit 541, the key server 53 distributes the reward point calculated in step S74 at the end of the piece. The reward point storage unit 541 stores the node ID in association with the node ID of the node 51.

図23の説明に戻る。ステップS42の後、鍵サーバ53は、復号鍵生成処理を行う(ステップS43)。図26は、復号鍵生成処理の手順を示すフローチャートである。鍵サーバ53は、ステップS40で受信した鍵要求に含まれるノードID列に含まれる各ノードIDに対応付けられて秘密鍵格納部530に記憶されている秘密鍵をノードID毎に読み出す(ステップS80)。そして、鍵サーバ53は、乱数列に含まれる全ての乱数のそれぞれについて、当該乱数と、当該乱数に対応する秘密鍵とを用いて関数Fにより上述の検査式が成立するか否かを判定する(ステップS81)。そして鍵サーバ53は、検査式が成立しない全てのノードIDに対する乱数と、ステップS80で読み出した秘密鍵とを用いてノードID毎に関数Fにより一時対称鍵を復号鍵として生成する(ステップS82)。   Returning to the description of FIG. After step S42, the key server 53 performs a decryption key generation process (step S43). FIG. 26 is a flowchart showing the procedure of the decryption key generation process. The key server 53 reads, for each node ID, the secret key stored in the secret key storage unit 530 in association with each node ID included in the node ID string included in the key request received in step S40 (step S80). ). Then, the key server 53 determines, for each of all random numbers included in the random number sequence, whether or not the above-described check expression is established by the function F using the random number and the secret key corresponding to the random number. (Step S81). Then, the key server 53 generates a temporary symmetric key as a decryption key by the function F for each node ID using the random numbers for all the node IDs for which the check expression is not satisfied and the secret key read in step S80 (step S82). .

図23の説明に戻る。ステップS43の後、鍵サーバ53は、ステップS82で復号鍵として生成した一時対称鍵を、ステップS40で受信した鍵要求を送信したノード51に対して送信する(ステップS44)。   Returning to the description of FIG. After step S43, the key server 53 transmits the temporary symmetric key generated as the decryption key in step S82 to the node 51 that transmitted the key request received in step S40 (step S44).

例えば、鍵サーバ53は、上述したノードIDID#(f+1)が割り当てられたノードに対して、ピースPについて、図21に示されるようなノードID列及び乱数列と、コンテンツ種類ID及びピース番号とを含む鍵要求に応じて、図22に示されるような一時対称鍵k_0, …, k_t´を送信する。   For example, the key server 53 has a node ID sequence and a random number sequence as shown in FIG. 21, a content type ID and a piece for the piece P with respect to the node to which the node ID ID # (f + 1) is assigned. In response to a key request including a number, temporary symmetric keys k_0,..., K_t ′ as shown in FIG.

以上のようにして、各ピースに対して各ノードが各々固有の暗号鍵を用いて暗号化を重ねてP2PネットワークNTを介して配信するデータ配信システムにおいて、各ピースの暗号化を解くための復号鍵の生成に用いる情報を用いて、二次配信を担ったノード51に対して配信量に応じてインセンティブを付与する。即ち、鍵要求に含まれる乱数列及びノードID列を用いて、復号鍵を生成すると共に、最後に送信を行ったノード51を特定し、コンテンツ種類ID及びピース番号を用いて、当該ノード51の配信量を計算して、当該ノード51に対する報酬ポイントを計算することにより、付与すべきノードに対して正しい配信量に応じたインセンティブが付与される。このように、二次配信を行った側のノードが配信量を通知するのではなく、二次配信を受けた側のノードが鍵サーバ53に復号鍵を要求する際に送信する情報を用いて鍵サーバ53がインセンティブを付与されることにより、配信量が不正に通知されたり、実際には二次配信を担っていないノードがインセンティブを不正に取得したりすることを防止することができる。例えば、あるノード51が、あるピースについて最後に送信を行ったノードのノードIDを偽ったノードID列を含む鍵要求を鍵サーバ53に送信した場合、鍵サーバ53は当該ノードIDを用いて正しい復号鍵を生成することはできないため、当該あるノード51は当該ピースを復号することができない。このため、ピースを復号するために偽ることのできない情報をインセンティブの付与に用いることで、インセンティブを正しく付与することができ、不正を防止することができる。   As described above, in the data distribution system in which each node performs encryption using a unique encryption key for each piece and distributes it via the P2P network NT, decryption for decrypting each piece Using the information used for key generation, an incentive is given to the node 51 responsible for secondary distribution according to the distribution amount. In other words, the decryption key is generated using the random number sequence and the node ID sequence included in the key request, the node 51 that has transmitted the last is specified, and the content type ID and the piece number are used to determine the node 51 By calculating the distribution amount and calculating the reward points for the node 51, an incentive corresponding to the correct distribution amount is given to the node to be given. In this way, the node that has performed the secondary distribution does not notify the distribution amount, but uses information transmitted when the node that has received the secondary distribution requests the key server 53 for a decryption key. By providing the key server 53 with an incentive, it is possible to prevent an amount of distribution from being illegally notified or a node that is not actually in charge of secondary distribution from acquiring an incentive illegally. For example, when a certain node 51 transmits to the key server 53 a key request including a node ID string in which the node ID of the node that last transmitted a certain piece is false, the key server 53 is correct using the node ID. Since a decryption key cannot be generated, the certain node 51 cannot decrypt the piece. For this reason, by using information that cannot be falsified in order to decrypt pieces for granting incentives, it is possible to correctly grant incentives and prevent fraud.

また、インセンティブとして、課金処理での値引きに用いる報酬ポイントを付与することにより、二次配信の奨励を効果的に行うことができる。また、配信量に応じたインセンティブを付与することができることにより、上り回線の容量が大きいノードやピースの受信後もP2Pネットワークに接続されたままの状態であるノードを増やことができる。特に、受信量より配信量が多いノードを増やすことができる。この結果、配信量が増大しても、配信データの提供者の配信コストを低減することが期待できる。   Further, by providing reward points used for discounting in the billing process as an incentive, secondary distribution can be effectively encouraged. In addition, since an incentive according to the amount of distribution can be given, it is possible to increase the number of nodes that remain connected to the P2P network even after receiving a node or piece having a large uplink capacity. In particular, it is possible to increase the number of nodes having a larger distribution amount than the reception amount. As a result, even if the distribution amount increases, it can be expected that the distribution cost of the distribution data provider is reduced.

[第2の実施の形態]
次に、サーバ、情報処理方法及びプログラムの第2の実施の形態について説明する。なお、上述の第1の実施の形態と共通する部分については、同一の符号を使用して説明したり、説明を省略したりする。
[Second Embodiment]
Next, a second embodiment of the server, the information processing method, and the program will be described. In addition, about the part which is common in the above-mentioned 1st Embodiment, it demonstrates using the same code | symbol or abbreviate | omits description.

(1)構成
上述の第1の実施の形態においては、配信開始ノード以外で、最後に送信を行ったノード51に対してのみインセンティブとして報酬ポイントを付与するようにした。本実施の形態においては、最後に送信を行ったノード51だけではなく、配信開始ノード以外で送信を仲介した各ノード51に対して報酬ポイントを付与するようにする。
(1) Configuration In the first embodiment described above, reward points are given as incentives only to the node 51 that has transmitted the last, other than the distribution start node. In the present embodiment, reward points are given not only to the node 51 that transmitted the last but also to each node 51 that mediates transmission other than the distribution start node.

本実施の形態にかかる鍵サーバ53の構成は、上述の第1の実施の形態にかかる鍵サーバ53の構成とは以下の点で異なる。報酬ポイント計算部538は、まず、上述の第1の実施の形態と同様にして、鍵要求に含まれるコンテンツ種類IDと対応付けられて報酬ポイント換算情報格納部540に記憶されている換算ポイントを読み出しこれを、配信量計算部536が計算した配信量と掛け合わせることにより、報酬ポイントを計算する。そして、報酬ポイント計算部538は、鍵要求に含まれるノードIDに含まれる各ノードIDと対応付けられて報酬ポイント格納部541に記憶されている各々報酬ポイントに、計算した報酬ポイントを加えることにより、各ノード51の報酬ポイントの合計を各々計算する。そして、報酬ポイント計算部538は、各ノードIDと対応付けられて報酬ポイント格納部541に各々記憶されている報酬ポイントを、計算した報酬ポイントの合計と各々置き換えることにより、報酬ポイント格納部541に各々記憶されている報酬ポイントの合計を各々更新する。尚、ノードIDと対応付けられている報酬ポイントが報酬ポイント格納部541にまだ記憶されていない場合には、報酬ポイント計算部538は、鍵要求により復号鍵を要求されているピースに対して計算した報酬ポイントを、当該ノードIDと対応付けて報酬ポイント格納部541に記憶させる。その他の構成は上述の第1の実施の形態と同様である。   The configuration of the key server 53 according to the present embodiment differs from the configuration of the key server 53 according to the first embodiment described above in the following points. The reward point calculation unit 538 first calculates converted points stored in the reward point conversion information storage unit 540 in association with the content type ID included in the key request in the same manner as in the first embodiment described above. Reward points are calculated by multiplying this by the distribution amount calculated by the distribution amount calculation unit 536. Then, the reward point calculation unit 538 adds each calculated reward point to each reward point stored in the reward point storage unit 541 in association with each node ID included in the node ID included in the key request. The total of reward points of each node 51 is calculated. Then, the reward point calculation unit 538 replaces the reward points associated with each node ID and stored in the reward point storage unit 541 with the total of the calculated reward points. Each of the stored reward points is updated. When the reward point associated with the node ID is not yet stored in the reward point storage unit 541, the reward point calculation unit 538 calculates the decryption key requested for the piece by the key request. The reward points are stored in the reward point storage unit 541 in association with the node ID. Other configurations are the same as those in the first embodiment.

(2)動作
次に、本実施の形態にかかる鍵サーバ53が上述の鍵送信処理を行う際に行う報酬ポイント計算処理の手順について図27を用いて説明する。その他の処理の手順は上述の第1の実施の形態と同様である。鍵サーバ53は、まず、上述の第1の実施の形態と同様にして、ステップS70〜S74を行って、鍵要求によって復号鍵が要求されたピースの配信量に応じた報酬ポイントを計算する。その後、ステップS75´では、鍵サーバ53は、ノードID列に含まれるノードIDであって配信開始ノード以外のノード51のノードIDと対応付けられて報酬ポイント格納部541に各々記憶されている報酬ポイントに、ステップS74で計算した報酬ポイントを各々加えることにより、当該各ノード51の報酬ポイントの合計を計算する。そして、鍵サーバ53は、当該各ノードIDと対応付けられて報酬ポイント格納部541に記憶されている各報酬ポイントを、各々計算した報酬ポイントの合計と置き換えることにより、報酬ポイント格納部541に各々記憶されている報酬ポイントの合計を各々更新する。尚、報酬ポイントが報酬ポイント格納部541にまだ記憶されていないノードIDについては、鍵サーバ53は、ステップS74で計算した報酬ポイントを、当該ノードIDと対応付けて報酬ポイント格納部541に記憶させる。以上のようにして、鍵サーバ53は、配信開始ノード以外でピースの送信を仲介した各ノード51に対して報酬ポイントを付与する。
(2) Operation Next, a procedure of reward point calculation processing performed when the key server 53 according to the present embodiment performs the above-described key transmission processing will be described with reference to FIG. Other processing procedures are the same as those in the first embodiment. The key server 53 first performs steps S70 to S74 in the same manner as in the first embodiment described above, and calculates reward points according to the distribution amount of pieces for which a decryption key is requested by a key request. Thereafter, in step S75 ′, the key server 53 is a node ID included in the node ID string and is associated with the node ID of the node 51 other than the distribution start node and stored in the reward point storage unit 541. The total reward points of each node 51 are calculated by adding the reward points calculated in step S74 to the points. Then, the key server 53 replaces each reward point associated with each node ID and stored in the reward point storage unit 541 with the total of the calculated reward points, thereby causing the reward point storage unit 541 to respectively Each of the stored reward points is updated. For node IDs whose reward points are not yet stored in the reward point storage unit 541, the key server 53 causes the reward point storage unit 541 to store the reward points calculated in step S74 in association with the node ID. . As described above, the key server 53 grants reward points to each node 51 that mediates transmission of pieces other than the distribution start node.

以上のように、配信開始ノード以外で、最後に送信を行ったノード51だけではなく、送信を仲介した各ノード51に対して配信量に応じた報酬ポイントを付与することによっても、二次配信の奨励を効果的に行うことができる。   As described above, secondary distribution is also possible by giving reward points according to the distribution amount to each node 51 that mediates transmission, not just the node 51 that performed the transmission at the end other than the distribution start node. Can be effectively encouraged.

[第3の実施の形態]
次に、サーバ、情報処理方法及びプログラムの第2の実施の形態について説明する。なお、上述の第1の実施の形態又は第2の実施の形態と共通する部分については、同一の符号を使用して説明したり、説明を省略したりする。
[Third embodiment]
Next, a second embodiment of the server, the information processing method, and the program will be described. In addition, about the part which is common in the above-mentioned 1st Embodiment or 2nd Embodiment, it demonstrates using the same code | symbol or abbreviate | omits description.

(1)構成
上述の第2の実施の形態においては、ある配信データについて、配信開始ノード以外で送信を仲介した各ノード51に対して付与する報酬ポイントは、配信量が同じであれば全て同じであるとした。本実施の形態においては、鍵サーバ53は、配信量に応じるだけでなく、送信順序及びピース番号に応じて各ノード51に対して利益配分率を決定して、利益配分率に応じた報酬ポイントを各々付与する。
(1) Configuration In the above-described second embodiment, for certain distribution data, reward points to be given to each node 51 that mediates transmission other than the distribution start node are all the same if the distribution amount is the same. It was said that. In the present embodiment, the key server 53 determines not only the distribution amount but also the profit distribution rate for each node 51 according to the transmission order and the piece number, and reward points according to the profit distribution rate. Is assigned to each.

本実施の形態にかかる鍵サーバ53の構成は、上述の第1の実施の形態にかかる鍵サーバ53の構成とは以下の点で異なる。報酬ポイント換算情報格納部540は、配信量に応じた報酬ポイントを計算するための単位量当たりの報酬ポイント(換算ポイント)と、利益配分率を決定するための重み係数とをコンテンツ種類ID毎に記憶する。図28は、報酬ポイント換算情報格納部540が記憶する換算ポイント及び重み係数を例示する図である。ここでは単位量をキロバイトとする。同図に示されるように、コンテンツ種類IDと、キロバイト当たりの換算ポイントと、重み関数と、当該重み関数の重みを指定する添数とが対応付けられて記憶される。この重み関数の引数は、各ノード51の送信順序と、ピース番号とになる。各ノード51の送信順序は、パラメータiに対応する。   The configuration of the key server 53 according to the present embodiment differs from the configuration of the key server 53 according to the first embodiment described above in the following points. The reward point conversion information storage unit 540 calculates a reward point (converted point) per unit amount for calculating a reward point according to the distribution amount and a weighting factor for determining a profit distribution rate for each content type ID. Remember. FIG. 28 is a diagram illustrating conversion points and weighting factors stored in the reward point conversion information storage unit 540. Here, the unit amount is kilobytes. As shown in the figure, the content type ID, the conversion point per kilobyte, the weight function, and the index specifying the weight of the weight function are stored in association with each other. The arguments of this weight function are the transmission order of each node 51 and the piece number. The transmission order of each node 51 corresponds to the parameter i.

報酬ポイント計算部538は、鍵要求に含まれるコンテンツ種類IDと対応付けられて報酬ポイント換算情報格納部540に記憶されている換算ポイント、重み関数Φr及び添数r,tを読み出すと共に、鍵要求に含まれるコンテンツ種類IDと対応付けられてピース情報格納部535に記憶されたピース情報を読み出してピース数Mを取得する。更に、報酬ポイント計算部538は、送信が仲介された回数、即ち、鍵要求に含まれるノードID列に含まれるノードIDの数Nを取得する。そして、報酬ポイント計算部538は、鍵要求に含まれるノードID列に含まれる各ノードIDに対して報酬ポイントを各々付与するためのパラメータiとピース番号mとを重み関数の引数に設定する。このパラメータiの値は、送信を仲介したノード50,51の送信順序に対応する。そして、報酬ポイント計算部538は、ノードID列に含まれパラメータiに対応する送信順序のノードIDが割り当てられたノード51に対する重みをパラメータi毎に計算する。この重みが利益配分率に相当する。従って、重み関数Φr、添数r,t、ピース数M、ノードIDの数N、パラメータi及びピース番号mが、以下の式2を満たすように、重み関数Φr及び添数r,tを設定することが望ましいが、これに限らない。尚、図21に示される鍵要求を鍵サーバ53が受信した場合、‘N=f+1’である。   The reward point calculation unit 538 reads the conversion point, the weight function Φr, and the indices r and t stored in the reward point conversion information storage unit 540 in association with the content type ID included in the key request, and the key request The piece information stored in the piece information storage unit 535 in association with the content type ID included in is read out and the number M of pieces is acquired. Furthermore, the reward point calculation unit 538 acquires the number of times that transmission has been mediated, that is, the number N of node IDs included in the node ID string included in the key request. Then, the reward point calculation unit 538 sets a parameter i and a piece number m for giving reward points to each node ID included in the node ID string included in the key request as arguments of the weight function. The value of the parameter i corresponds to the transmission order of the nodes 50 and 51 that mediate transmission. Then, the reward point calculation unit 538 calculates, for each parameter i, the weight for the node 51 that is included in the node ID string and to which the node ID in the transmission order corresponding to the parameter i is assigned. This weight corresponds to the profit distribution rate. Accordingly, the weight function Φr and the indices r and t are set so that the weight function Φr, the indices r and t, the number of pieces M, the number N of node IDs, the parameter i and the piece number m satisfy the following formula 2. Although it is desirable to do, it is not restricted to this. When the key server 53 receives the key request shown in FIG. 21, “N = f + 1”.

Figure 0005284119
Figure 0005284119

そして、報酬ポイント計算部538は、計算した重みと、配信量計算部536が計算した配信量と、換算ポイントとを用いて、パラメータiに対応する送信順序のノードIDが割り当てられたノード51に対する報酬ポイントをパラメータi毎に例えば以下の式3により計算する。尚、報酬ポイントをBとし、配信量をSとし、換算ポイントをρとする。   Then, the reward point calculation unit 538 uses the calculated weight, the distribution amount calculated by the distribution amount calculation unit 536, and the conversion point, for the node 51 to which the node ID of the transmission order corresponding to the parameter i is assigned. Reward points are calculated for each parameter i, for example, using Equation 3 below. The reward point is B, the delivery amount is S, and the conversion point is ρ.

Figure 0005284119
Figure 0005284119

そして、報酬ポイント計算部538は、当該ノード51のノードIDと対応付けられて報酬ポイント格納部541に記憶されている各々報酬ポイントに、計算した報酬ポイントを加えることにより、各ノード51の報酬ポイントの合計を各々計算する。そして、報酬ポイント計算部538は、各ノードIDと対応付けられて報酬ポイント格納部541に各々記憶されている報酬ポイントの合計を、計算した報酬ポイントの合計と各々置き換えることにより、報酬ポイント格納部541に各々記憶されている報酬ポイントの合計を各々更新する。尚、報酬ポイントが報酬ポイント格納部541にまだ記憶されていないノードIDについては、報酬ポイント計算部538は、鍵要求により復号鍵を要求されているピースに対して計算した報酬ポイントを、当該ノードIDと対応付けて報酬ポイント格納部541に記憶させる。その他の構成は上述の第1の実施の形態又は第2の実施の形態と同様である。   Then, the reward point calculation unit 538 adds the calculated reward points to each of the reward points associated with the node ID of the node 51 and stored in the reward point storage unit 541, so that the reward points of each node 51 The total of each is calculated. Then, the reward point calculation unit 538 replaces the total of the reward points associated with each node ID and stored in the reward point storage unit 541 with the calculated total of reward points. Each of the total reward points stored in 541 is updated. For node IDs whose reward points are not yet stored in the reward point storage unit 541, the reward point calculation unit 538 calculates the reward points calculated for the piece for which the decryption key is requested by the key request. The reward point storage unit 541 stores it in association with the ID. Other configurations are the same as those of the first embodiment or the second embodiment.

(2)動作
次に、本実施の形態にかかる鍵サーバ53が上述の鍵送信処理を行う際に行う報酬ポイント計算処理の手順について図29を用いて説明する。その他の処理の手順は上述の第1の実施の形態又は第2の実施の形態と同様である。鍵サーバ53は、まず、鍵要求に含まれるノードID列に含まれる各ノードIDを読み出し(ステップS80)、各ノードIDに対して報酬ポイントを各々付与するためのパラメータiを設定する(ステップS81)。図22の鍵要求の例では、鍵サーバ53は、まず‘i=f’と設定する。そして、鍵サーバ53は、ノードID列に含まれパラメータiに対応する送信順序のノードIDを参照して、当該ノードIDが割り当てられたノードが配信開始ノードであるか否かを判定する(ステップS82)。当該ノードが配信開始ノードである場合(ステップS82:YES)、鍵サーバ53は、処理を終了する。当該ノードが配信開始ノードでない場合(ステップS82:NO)、鍵サーバ53は、上述の第1の実施の形態と同様のステップS71〜S72を行って、鍵要求によって復号鍵が要求されたピースの配信量を計算する。次いで、鍵サーバ53は、鍵要求に含まれるコンテンツ種類IDと対応付けられて報酬ポイント換算情報格納部540に記憶されている換算ポイント、重み関数Φr及び添数r,tを読み出すと共に、鍵要求に含まれるコンテンツ種類IDと対応付けられてピース情報格納部535に記憶されたピース情報を読み出してピース数Mを取得し、鍵要求に含まれるノードID列に含まれる各ノードIDの数Nを取得する(ステップS83)。そして、鍵サーバ53は、ピース数M及びノードIDの数Nを重み関数Φrの添数とする。次いで鍵サーバ53は、ステップS83で読み出した重み関数の引数にパラメータiとピース番号mとを設定して、当該ノード51に対する重みを計算する(ステップS84)。
(2) Operation Next, a procedure of reward point calculation processing performed when the key server 53 according to the present embodiment performs the above-described key transmission processing will be described with reference to FIG. Other processing procedures are the same as those in the first or second embodiment described above. First, the key server 53 reads each node ID included in the node ID string included in the key request (step S80), and sets a parameter i for giving reward points to each node ID (step S81). ). In the example of the key request in FIG. 22, the key server 53 first sets “i = f”. Then, the key server 53 refers to the node ID of the transmission order included in the node ID string and corresponds to the parameter i, and determines whether or not the node to which the node ID is assigned is the distribution start node (step) S82). If the node is a distribution start node (step S82: YES), the key server 53 ends the process. If the node is not a distribution start node (step S82: NO), the key server 53 performs steps S71 to S72 similar to those in the first embodiment described above, and the piece of the piece for which the decryption key is requested by the key request. Calculate delivery volume. Next, the key server 53 reads the conversion point, the weight function Φr, and the indices r and t stored in the reward point conversion information storage unit 540 in association with the content type ID included in the key request, and the key request The piece information stored in the piece information storage unit 535 associated with the content type ID included in the piece information is read out to obtain the number M of pieces, and the number N of each node ID included in the node ID column included in the key request is obtained. Obtain (step S83). Then, the key server 53 uses the number of pieces M and the number N of node IDs as indices of the weight function Φr. Next, the key server 53 sets the parameter i and the piece number m in the argument of the weight function read in step S83, and calculates the weight for the node 51 (step S84).

そして、鍵サーバ53は、ステップS84で計算した重みと、ステップS72で計算した配信量と、ステップS83で読み出した換算ポイントと、ステップS83で読み出した重み関数Φr及び添数r,tと、添数として設定したピース数M及びノードIDの数Nとを用いて、パラメータiに対応する順序のノードIDが割り当てられたノード51に対する報酬ポイントを計算する(ステップS85)。そして、鍵サーバ53は、当該ノードIDと対応付けられて報酬ポイント格納部541に記憶されている報酬ポイントを、ステップS85で計算した報酬ポイントの合計と置き換えることにより、報酬ポイント格納部541に記憶されている報酬ポイントの合計を更新する(ステップS86)。尚、報酬ポイントが報酬ポイント格納部541にまだ記憶されていないノードIDについては、鍵サーバ53は、ステップS85で計算した報酬ポイントを、当該ノードIDと対応付けて報酬ポイント格納部541に記憶させる。その後、鍵サーバ53は、‘i=i-1’としてパラメータiを再設定して(ステップS87)、パラメータiに対応する送信順序のノードIDを参照して、当該ノードIDが割り当てられたノードが配信開始ノードであるか否かを判定する(ステップS88)。パラメータiに対応する送信順序のノードIDが割り当てられたノードが配信開始ノードであると判定する(ステップS88:YES)まで、鍵サーバ53は、ステップS84〜S87の処理を繰り返す。即ち、図22の鍵要求の例では、パラメータiの値が‘f’から ’1’になるまで、鍵サーバ53は、ステップS84〜S87の処理を繰り返して、配信開始ノード以外でピースの送信を仲介した各ノード51に対して、送信順序及びピース番号に応じて利益配分率を決定し、当該利益配分率及び配信量に応じた報酬ポイントを各々付与する。   Then, the key server 53 calculates the weight calculated in step S84, the distribution amount calculated in step S72, the conversion point read in step S83, the weight function Φr and the indices r and t read in step S83, and the index. Using the number M of pieces and the number N of node IDs set as numbers, the reward points for the node 51 to which the node IDs in the order corresponding to the parameter i are assigned are calculated (step S85). And the key server 53 memorize | stores in the reward point storage part 541 by replacing the reward point matched with the said node ID and memorize | stored in the reward point storage part 541 with the total of the reward point calculated at step S85. The total of the reward points being updated is updated (step S86). For node IDs whose reward points are not yet stored in the reward point storage unit 541, the key server 53 stores the reward points calculated in step S85 in the reward point storage unit 541 in association with the node IDs. . Thereafter, the key server 53 resets the parameter i as 'i = i-1' (step S87), refers to the node ID of the transmission order corresponding to the parameter i, and is assigned to the node ID of the node Is a distribution start node (step S88). Until it is determined that the node to which the node ID of the transmission order corresponding to the parameter i is assigned is the distribution start node (step S88: YES), the key server 53 repeats the processes of steps S84 to S87. That is, in the example of the key request of FIG. 22, the key server 53 repeats the processing of steps S84 to S87 until the value of the parameter i changes from “f” to “1”, and transmits the pieces other than the distribution start node. The profit distribution rate is determined according to the transmission order and the piece number, and reward points according to the profit distribution rate and the distribution amount are assigned to each node 51 that mediates the above.

以上のように、配信量、送信順序及びピース番号に応じた報酬ポイントを各ノード51に各々付与することで、二次配信の奨励を効果的且つ柔軟に行うことができる。   As described above, it is possible to effectively and flexibly encourage secondary distribution by giving each node 51 reward points according to the distribution amount, transmission order, and piece number.

尚、上述の例では、重み係数の引数として、送信順序に対応するパラメータiと、ピース番号mとを設定したが、重み係数の引数はこれらに限らない。また、重み係数の添数として、予め定められた添数r,tと、ピース数M及びノードIDの数Nとを用いたが、添数はこれらに限らない。   In the above example, the parameter i corresponding to the transmission order and the piece number m are set as arguments of the weighting factor, but the argument of the weighting factor is not limited thereto. Further, as the indices of the weighting coefficients, predetermined indices r and t, the number of pieces M, and the number N of node IDs are used, but the indices are not limited to these.

(3)重み関数の例
ここで、重み関数の例について説明する。例えば、上述の第1の実施の形態と同様に、最後に送信を行ったノード51に対してのみ報酬ポイントを付与する場合の重み関数は例えば、以下の式4により表される。
(3) Example of Weight Function Here, an example of the weight function will be described. For example, as in the first embodiment described above, the weight function when reward points are given only to the node 51 that has transmitted the last is represented by, for example, the following Expression 4.

Figure 0005284119
Figure 0005284119

また、上述の第2の実施の形態と同様に、ピースの送信を仲介した各ノード51に対して報酬ポイントを等分に付与する場合の重み関数は例えば、以下の式5により表される。   Similarly to the above-described second embodiment, a weighting function in the case where reward points are equally assigned to each node 51 that mediates transmission of a piece is represented by, for example, the following Expression 5.

Figure 0005284119
Figure 0005284119

また、送信順序が早いほど(ここではパラメータiの値が小さいほど)小さく、送信順序が遅いほど(ここではパラメータiの値が大きいほど)大きくなるように報酬ポイントを付与する場合の重み関数は例えば、以下の式6により表される。   Also, the weighting function for giving reward points so that the earlier the transmission order is, the smaller the value of parameter i is, and the larger the transmission order is, the slower the transmission order is (here, the larger the value of parameter i) is, For example, it is represented by the following formula 6.

Figure 0005284119
Figure 0005284119

また、最後に送信を行ったノード51に対してのみ報酬ポイントを付与する場合であり且つピースが先頭に近いほど(ここではピース番号が小さいほど)小さく、ピースが最後尾に近いほど(ここではピース番号が大きいほど)大きくなるように報酬ポイントを付与する場合の重み関数は例えば、以下の式7により表される。   Moreover, it is a case where reward points are given only to the node 51 that sent the last, and the smaller the piece is, the smaller the piece is (the smaller the piece number is here), and the closer the piece is to the tail (here, For example, the weighting function in the case of giving reward points so as to be larger (as the piece number is larger) is expressed by the following Expression 7.

Figure 0005284119
Figure 0005284119

また、送信順序が早いほど小さく、送信順序が遅いほど大きく且つピースが先頭に近いほど(ここではピース番号が小さいほど)小さく、ピースが最後尾に近いほど(ここではピース番号が大きくなるほど)大きくなるように報酬ポイントを付与する場合の重み関数は例えば、以下の式8により表される。尚、式8は、式6の右辺及び左辺を掛け合わせたものである。   Also, the earlier the transmission order is, the smaller the transmission order is, and the larger the piece is, the closer the piece is to the beginning (the smaller the piece number is here), and the smaller the piece is, the closer the piece is to the end (here, the larger the piece number is). For example, the weighting function in the case of giving reward points is expressed by the following Expression 8. Expression 8 is obtained by multiplying the right side and the left side of Expression 6.

Figure 0005284119
Figure 0005284119

例えば、式7,8の重み関数によって、同じ配信量であっても、ピースが最後尾に近いほど大きくなるように報酬ポイントが計算されることにより、二次配信されにくい最後尾のピースの二次配信をより効果的に奨励することができる。   For example, by calculating the reward points so that the closer the piece is to the end, even if the amount of delivery is the same, the reward points of Equations 7 and 8 are calculated so that the second piece of the last piece that is difficult to be distributed secondarily. The next delivery can be encouraged more effectively.

尚、各ノード51が二次配信を行なった配信データ毎に配信量を計算して、この配信量と、単位量当たりの換算ポイントと、送信順序に応じた重み係数とを用いて、各ノード51に対して付与する報酬ポイントを計算するようにしても良い。この場合の報酬ポイントを計算するための計算式は、例えば、以下の式9により表される。尚、Diは、パラメータiに対応する送信順序のノードIDが割り当てられたノード51が当該配信データについて送信を行なった配信量である。Cは、配信データの単位量当たりの換算ポイントであり、定数又は関数により計算された値である。Nは、送信が仲介された回数であり、wi,Nは、パラメータiに対応する送信順序のノードIDが割り当てられたノード51に対する重み係数である。尚、重み係数wi,Nは、以下の式10を満たすことが望ましいが、これに限らない。 In addition, each node 51 calculates a delivery amount for each delivery data that has been subjected to secondary delivery, and uses each delivery amount, a conversion point per unit amount, and a weighting factor according to the transmission order to each node. Reward points to be given to 51 may be calculated. The calculation formula for calculating the reward points in this case is expressed by, for example, the following formula 9. Note that D i is the distribution amount that the node 51 to which the node ID in the transmission order corresponding to the parameter i is assigned transmits the distribution data. C is a conversion point per unit amount of distribution data, and is a value calculated by a constant or a function. N is the number of times the transmission has been mediated, and w i, N is a weighting factor for the node 51 to which the node ID of the transmission order corresponding to the parameter i is assigned. The weight coefficient w i, N preferably satisfies the following expression 10, but is not limited thereto.

Figure 0005284119
Figure 0005284119

この重み係数wi,Nを算出する具体的な計算式は、例えば、式11〜式13に表される。式11によれば、二次配信を行なった各ノード51の重みが等分になる。 Specific calculation formulas for calculating the weighting coefficients w i, N are expressed by, for example, Expressions 11 to 13. According to Equation 11, the weight of each node 51 that has performed the secondary distribution is equally divided.

Figure 0005284119
Figure 0005284119

式12におけるrは、比例係数であり、‘0<r<1’なる定数である。この式12によれば、各ノード51の重みは、送信順序が早いほど小さく送信順序が遅いほど大きくなる。   R in Equation 12 is a proportionality coefficient, and is a constant “0 <r <1”. According to Equation 12, the weight of each node 51 is smaller as the transmission order is earlier and larger as the transmission order is later.

式13におけるrは、比例係数であり、‘0<r<1/2’なる定数である。この式13によれば、各ノード51の重みは、送信順序が早いほど小さく送信順序が遅いほど大きくなるが、i=1’のパラメータiに対応する送信順序のノードIDが割り当てられたノード51、即ち、配信開始ノードであるノード50から配信データを直接受信したノード51の重みも例外的に大きくなる。   R in Equation 13 is a proportionality coefficient and is a constant such that ‘0 <r <1/2’. According to Equation 13, the weight of each node 51 is smaller as the transmission order is earlier and smaller as the transmission order is later, but the node 51 to which the node ID of the transmission order corresponding to the parameter i of i = 1 ′ is assigned. That is, the weight of the node 51 that directly receives the distribution data from the node 50 that is the distribution start node is exceptionally large.

[変形例]
なお、本発明は前記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、前記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。また、以下に例示するような種々の変形が可能である。
[Modification]
Note that the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. Moreover, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined. Further, various modifications as exemplified below are possible.

<変形例1>
上述した実施の形態において、各ノード50で実行される各種プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また当該プログラムを、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成しても良い。この場合には、プログラムは、各ノード50において上記記録媒体から読み出して実行することにより主記憶装置(例えばRAM)上にロードされ、上記機能的構成において説明した各部が主記憶装置上に生成される。鍵サーバ53で実行される各種プログラムについても同様である。
<Modification 1>
In the above-described embodiment, various programs executed in each node 50 may be stored on a computer connected to a network such as the Internet and provided by being downloaded via the network. In addition, the program is recorded in a computer-readable recording medium such as a CD-ROM, a flexible disk (FD), a CD-R, a DVD (Digital Versatile Disk) in a file in an installable or executable format. You may comprise so that it may provide. In this case, the program is loaded onto the main storage device (for example, RAM) by being read from the recording medium at each node 50 and executed, and each unit described in the functional configuration is generated on the main storage device. The The same applies to various programs executed by the key server 53.

また、上述した実施の形態において、各ノード50の機能的構成において説明した各部のうち全部又は一部をハードウェアにより構成しても良い。鍵サーバ53の機能的構成において説明した各部のうち全部又は一部についても同様である。   In the above-described embodiment, all or a part of the units described in the functional configuration of each node 50 may be configured by hardware. The same applies to all or some of the components described in the functional configuration of the key server 53.

<変形例2>
上述した実施の形態において、装置識別情報は、ノードIDであるとしたが、これに限らず、各ノードを一意に識別可能な情報であれば良く、例えば、各ノードのIPアドレスや、MACアドレスや、URLなどであっても良い。
<Modification 2>
In the above-described embodiment, the device identification information is a node ID. However, the present invention is not limited to this, and any information that can uniquely identify each node may be used. For example, the IP address or MAC address of each node Or a URL.

また、上述した実施の形態において、ピース特定情報は、コンテンツの先頭から順に割り付けたピース番号であるとしたが、ピースを識別するための情報であればどのようなものであっても良く、例えば、先頭からのバイト数や、ピースのハッシュ値などであっても良い。   In the above-described embodiment, the piece specifying information is the piece number assigned in order from the top of the content. However, any piece of information may be used as long as it is information for identifying the piece. It may be the number of bytes from the beginning or a hash value of a piece.

<変形例3>
上述した実施の形態のデータ配信システムにおいては、配信開始ノードの数は複数であっても良い。また、P2PネットワークNTに接続されるこの他のノードの数も特に限定されない。
<Modification 3>
In the data distribution system of the embodiment described above, the number of distribution start nodes may be plural. Further, the number of other nodes connected to the P2P network NT is not particularly limited.

また、上述した実施の形態においては、鍵サーバ53は、配布開始ノードなどの他のノード50、51と物理的に同じ装置であっても良い。   In the embodiment described above, the key server 53 may be physically the same device as the other nodes 50 and 51 such as the distribution start node.

また、上述した実施の形態においては、鍵サーバ53は、課金処理、報酬ポイント計算処理及び復号鍵生成処理の順に処理を行ったが、処理の順序はこの順に限らない。   In the above-described embodiment, the key server 53 performs processing in the order of charging processing, reward point calculation processing, and decryption key generation processing, but the processing order is not limited to this order.

また、上述した実施の形態においては、鍵サーバ53が、課金処理部537と、ピース情報格納部535と、配信量計算部536と、価格情報格納部539と、報酬ポイント計算部538と、報酬ポイント格納部541と、報酬ポイント換算情報格納部540とを有するように構成した。しかし、これら各部を鍵サーバ53が備えるのではなく、これらの各部を備えるサーバをデータ配信システムに別途備え、このサーバと鍵サーバ53とが接続される構成であっても良い。このような構成においては、鍵サーバ53は、鍵要求に含まれるノードID列に含まれるノードIDの全部又は一部、乱数列、コンテンツ種類ID及びピース番号と、当該鍵要求を送信したノード51のノードIDとを当該サーバに送信する。これらを受信したサーバは、上述の鍵サーバ53と同様にして、課金処理及び報酬ポイント計算処理を行えば良い。尚、当該サーバを1つの装置として構成するのではなく、例えば、課金処理部537を少なくとも備えるサーバと、配信量計算部536及び報酬ポイント計算部538を少なくとも備えるサーバとの複数の装置で構成するようにしても良い。   In the above-described embodiment, the key server 53 includes the billing processing unit 537, the piece information storage unit 535, the delivery amount calculation unit 536, the price information storage unit 539, the reward point calculation unit 538, the reward A point storage unit 541 and a reward point conversion information storage unit 540 are provided. However, the key server 53 may not include these units, but a server including these units may be separately provided in the data distribution system, and the server and the key server 53 may be connected. In such a configuration, the key server 53 includes all or part of the node IDs included in the node ID sequence included in the key request, the random number sequence, the content type ID and the piece number, and the node 51 that has transmitted the key request. Are sent to the server. The server that has received these may perform billing processing and reward point calculation processing in the same manner as the key server 53 described above. The server is not configured as a single device, but is configured by a plurality of devices, for example, a server including at least a charging processing unit 537 and a server including at least a delivery amount calculation unit 536 and a reward point calculation unit 538. You may do it.

<変形例4>
上述の実施の形態においては、1つのピース要求によって複数のピースが要求されるようにしても良い。この場合、ノード50,51は、複数のピースのそれぞれについて上述したように暗号化ピース、ノードID列及び乱数列の組を、ピース要求を送信した他のノード51に送信すれば良い。
<Modification 4>
In the above-described embodiment, a plurality of pieces may be requested by one piece request. In this case, the nodes 50 and 51 may transmit the pair of the encrypted piece, the node ID sequence, and the random number sequence to the other nodes 51 that transmitted the piece request as described above for each of the plurality of pieces.

また、上述の実施の形態においては、ノード50,51は、ピース要求に応じて暗号化ピースを送信する構成としたが、これに限らず、ピース要求を受信しなくとも、他のノード51に暗号化ピースと共にノードID列及び乱数列を送信するようにしても良い。   In the above-described embodiment, the nodes 50 and 51 are configured to transmit the encrypted piece in response to the piece request. However, the present invention is not limited to this, and the other nodes 51 may receive the piece request without receiving the piece request. The node ID sequence and the random number sequence may be transmitted together with the encrypted piece.

<変形例5>
上述の実施の形態においては、ノード51は、配布データを構成する全てのピースについて暗号化ピースが取得されデータ格納部517に記憶された場合に、各暗号化ピースを復号するための鍵要求を鍵サーバ53に送信するようにしても良い。この場合、ノード51は、ピース番号を鍵サーバ53に送信しなくても良い。又は、ノード51は、配布データを構成する全てのピースについて暗号化ピースが取得されていない場合であっても、データ格納部517に記憶された暗号化ピースを復号するための鍵要求を鍵サーバ53に送信するようにしても良い。また、ノード51は、1つの鍵要求によって、1つの暗号化ピースを復号するための復号鍵を要求するようにしても良いし、複数の暗号化ピースを復号するための各復号鍵を要求するようにしても良い。
<Modification 5>
In the above-described embodiment, the node 51 sends a key request for decrypting each encrypted piece when the encrypted pieces are acquired and stored in the data storage unit 517 for all pieces constituting the distribution data. You may make it transmit to the key server 53. FIG. In this case, the node 51 may not transmit the piece number to the key server 53. Alternatively, the node 51 sends a key request for decrypting the encrypted piece stored in the data storage unit 517 to the key server even if the encrypted pieces are not acquired for all pieces constituting the distribution data. You may make it transmit to 53. Further, the node 51 may request a decryption key for decrypting one encrypted piece by one key request, or request each decryption key for decrypting a plurality of encrypted pieces. You may do it.

尚、ノード51は復号を、ピースを全部受信した後に行なっても良いし、ピースを受信する度に行なっても良い。また、配信データが画像データや音楽データであって、当該配信データを復号して再生する場合、ノード51は全てのピースを再生しても良いし、一部のピースのみを再生しても良いし、ピース毎に再生しても良い。   Note that the node 51 may perform decoding after receiving all the pieces, or may perform it every time a piece is received. In addition, when the distribution data is image data or music data and the distribution data is decoded and reproduced, the node 51 may reproduce all pieces or only some pieces. However, you may reproduce | regenerate for every piece.

<変形例6>
上述の実施の形態においては、ノード50,51は、データ格納部517に記憶された暗号化ピースを他のノード51に送信する場合、その都度、乱数を生成するようにした。しかし、ノード50,51は、乱数をその都度生成するのではなく、例えば、暗号化ピースの送信回数に応じて発生させるようにしても良い。例えば、ノード50,51は、暗号化ピースの送信を所定の回数(例えば5回)行う毎に新たな乱数を生成するようにしても良い。また、ノード50,51が乱数を生成するタイミングは、他のノード51からピース要求を受信したときであっても良いし、所定の時間毎であっても良い。
<Modification 6>
In the above-described embodiment, each time the nodes 50 and 51 transmit the encrypted pieces stored in the data storage unit 517 to the other nodes 51, a random number is generated. However, the nodes 50 and 51 may generate random numbers according to the number of times of transmission of encrypted pieces, for example, instead of generating random numbers each time. For example, the nodes 50 and 51 may generate a new random number every time the encrypted piece is transmitted a predetermined number of times (for example, 5 times). The timing at which the nodes 50 and 51 generate random numbers may be when a piece request is received from another node 51, or may be every predetermined time.

また、上述の実施の形態においては、ノード51は、データ格納部517に記憶された暗号化ピースを暗号化して他のノード51に送信する場合、当該暗号化ピースのデータの全部ではなく一部のデータについて暗号化するようにしても良い。この場合、当該暗号化ピースの配信を仲介する各ノード51が暗号化するデータが、同じく当該暗号化ピースの配信を仲介する他のノード51が暗号化するデータと重複部分が生じるように、各ノード51は当該暗号化ピースの一部のデータを暗号化するようにすれば良い。このような構成によれば、各ノード51が行う暗号化に関する処理負担を軽減させることができると共に、暗号化部分を重複させることにより、復号鍵が暴露された場合の影響を抑制することが可能になる。   Further, in the above-described embodiment, when the node 51 encrypts the encrypted piece stored in the data storage unit 517 and transmits the encrypted piece to the other node 51, a part of the encrypted piece of data is not the whole. The data may be encrypted. In this case, the data encrypted by each node 51 that mediates the distribution of the encrypted piece is overlapped with the data encrypted by the other node 51 that also mediates the distribution of the encrypted piece. The node 51 may encrypt part of the data of the encrypted piece. According to such a configuration, it is possible to reduce the processing load related to encryption performed by each node 51, and it is possible to suppress the influence when the decryption key is exposed by duplicating the encrypted part. become.

<変形例7>
上述の実施の形態においては、ノード51が他のノード51に暗号化ピースと共に送信するノードID列及び乱数列は、例えば、(ID#0, r_0),(ID#1,r_1)…(ID#f, r_f)などのように、ノードIDと当該ノードIDに対応する乱数との組をノードID毎に示す形態であっても良い。
<Modification 7>
In the above-described embodiment, the node ID sequence and the random number sequence that the node 51 transmits to the other nodes 51 together with the encrypted pieces are, for example, (ID # 0, r_0), (ID # 1, r_1). As in (#f, r_f), etc., a form in which a set of a node ID and a random number corresponding to the node ID is shown for each node ID may be used.

<変形例8>
上述の実施の形態においては、ピースの暗号化には、暗号鍵でもあり、暗号化を復号するための復号鍵でもある一時対称鍵を用いた。しかし、ピースの暗号化に用いる暗号鍵と、暗号化ピースに対して行われている暗号化を復号するための復号鍵とは各々別であるとしても良い。
<Modification 8>
In the above-described embodiment, the piece symmetric key is a temporary symmetric key that is both an encryption key and a decryption key for decrypting the encryption. However, the encryption key used for encrypting the piece may be different from the decryption key for decrypting the encryption performed on the encrypted piece.

また、上述した各実施の形態においては、各ノード50,51は、ピースの暗号化に用いる一時対称鍵を、乱数及び秘密鍵を用いて生成したが、これに限らず、例えば、秘密鍵自体や乱数自体を一時対称鍵として用いても良いし、乱数とピース番号とを用いて一時対称鍵を生成しても良い。   In each of the above-described embodiments, each of the nodes 50 and 51 generates a temporary symmetric key used for piece encryption using a random number and a secret key. Alternatively, the random number itself may be used as a temporary symmetric key, or a temporary symmetric key may be generated using a random number and a piece number.

また、上述の実施の形態においては、各ノード50,51に一意に割当られた秘密情報として秘密鍵を用いたが、これに限らない。   In the above-described embodiment, the secret key is used as the secret information uniquely assigned to each of the nodes 50 and 51. However, the present invention is not limited to this.

また、上述の実施の形態においては、秘密鍵は、各ノード50,51に一意に割当られているとしたが、これに限らない。例えば、各ノード50,51のうち一部のノードに同一の秘密鍵が割り当てられるようにしても良い。   In the above embodiment, the secret key is uniquely assigned to each of the nodes 50 and 51. However, the present invention is not limited to this. For example, the same secret key may be assigned to some of the nodes 50 and 51.

また、上述の実施の形態においては、秘密情報を各ノード50,51と鍵サーバ53とを共有する方法は限定されず、例えば、秘密情報を事前に共有する方法や、公開鍵で暗号化してピースの配信時に秘密情報をノード51及び鍵サーバ53に同時に配信する方法などであっても良い。また、秘密情報を各ノード50,51と鍵サーバ53とを共有するのではなく、非対称鍵を用いて秘密情報を共有しない構成であっても良い。   In the above-described embodiment, the method for sharing the secret information between the nodes 50 and 51 and the key server 53 is not limited. For example, the secret information may be encrypted in advance using a public key or a method for sharing the secret information. A method of simultaneously distributing secret information to the node 51 and the key server 53 at the time of piece distribution may be used. Further, the secret information may not be shared between the nodes 50 and 51 and the key server 53, but the secret information may not be shared using an asymmetric key.

<変形例9>
上述の実施の形態においては、上述した暗号化ピース、ノードID列及び乱数列をパッケージ化したパッケージデータの形態で配布されるように構成しても良い。この場合、パッケージデータはコンピュータで読み取り可能な記録媒体に記録されてノードに提供されるようにしても良いし、サーバを介してノードにダウンロードされるように構成しても良い。当該パッケージデータを取得したノードは、ピース要求に応じて、上述の実施の形態と同様にして、当該パッケージデータに含まれる暗号化ピースに対して暗号化を選択的に行った暗号化ピースと、パッケージデータに含まれるノードID及び自身のノードIDと、パッケージデータに含まれる乱数列及び自身が生成した乱数とを他のノードに送信すれば良い。
<Modification 9>
In the above-described embodiment, the above-described encrypted piece, node ID string, and random number string may be distributed in the form of package data. In this case, the package data may be recorded on a computer-readable recording medium and provided to the node, or may be configured to be downloaded to the node via the server. In response to the piece request, the node that has acquired the package data, in the same manner as in the above-described embodiment, an encrypted piece that is selectively encrypted with respect to the encrypted piece included in the package data; The node ID included in the package data and its own node ID, the random number sequence included in the package data, and the random number generated by itself may be transmitted to other nodes.

<変形例10>
上述の実施の形態においては、配信開始ノードであるノード50は、暗号化ピースを送信する際に、ノード51と同様にして、所定の確率に従って暗号化を選択的に行うようにしても良い。この場合、ノード50は、上述のノード51の有する暗号化決定部521及び乱数代替生成部522と同様の機能を有するように構成すれば良い。
<Modification 10>
In the above-described embodiment, the node 50 that is the distribution start node may selectively perform encryption according to a predetermined probability in the same manner as the node 51 when transmitting the encrypted piece. In this case, the node 50 may be configured to have the same functions as the encryption determination unit 521 and the random number alternative generation unit 522 included in the node 51 described above.

また、上述の実施の形態においては、ノード51が暗号化を選択的に行う際の確率は所定であるとしたが、これを可変にしても良い。例えば、暗号化ピースについての配信が仲介された回数(経由回数という)に応じて当該確率を変更するようにしても良いし、固定値と可変値とを使い分けるようにしても良い。   In the above-described embodiment, the probability that the node 51 selectively performs encryption is predetermined, but this may be variable. For example, the probability may be changed according to the number of times the distribution of the encrypted piece is mediated (referred to as the number of vias), or a fixed value and a variable value may be used properly.

<変形例11>
上述した各実施の形態にかかる鍵サーバ53を、各ノード51がピースを送信する際に暗号化するか否かを決定して決定結果に従ってピースに対して暗号化を行って送信するデータ配信システムに適用したが、これに限らず、各ノード51がピースを送信する毎に暗号化を行うデータ配信システムに適用するようにしても良い。
<Modification 11>
Data distribution system for determining whether to encrypt key server 53 according to each embodiment described above when each node 51 transmits a piece, encrypting the piece according to the determination result, and transmitting the piece However, the present invention is not limited to this, and the present invention may be applied to a data distribution system that performs encryption every time each node 51 transmits a piece.

また、このようにピースに対して各ノード51が暗号化を重ねて送信するのではなく、各ノード51が他のノード50,51から暗号化ピースを受信し、更に当該暗号化ピースを復号するための復号鍵を受信して、当該復号鍵を用いて当該暗号化ピースを一旦復号した後、復号したピースを新たに暗号化して新たな暗号化ピースを出力し、当該新たな暗号化ピースを他のノード51に送信するデータ配信システムに適用しても良い。この場合、各ノード51は、復号鍵を鍵サーバ53から受信するようにしても良いし、ピースの暗号化を行ったノード51自体から受信するようにしても良い。また、この復号鍵自体が暗号化されて送信されるようにしても良い。   In addition, each node 51 does not transmit the encrypted data with respect to the piece in this way, but each node 51 receives the encrypted piece from the other nodes 50 and 51 and further decrypts the encrypted piece. The decryption key is received, the encrypted piece is once decrypted using the decryption key, the decrypted piece is newly encrypted, a new encrypted piece is output, and the new encrypted piece is You may apply to the data delivery system which transmits to the other node 51. FIG. In this case, each node 51 may receive the decryption key from the key server 53, or may receive it from the node 51 itself that has encrypted the piece. Further, the decryption key itself may be transmitted after being encrypted.

<変形例12>
上述した各実施の形態において、配信データ毎に報酬ポイントが可変に設定されるようにし、鍵サーバ53は配信データ毎の報酬ポイントを記憶する報酬ポイント格納部541を備えるようにしたが、これに限らず、全ての配信データに同一の報酬ポイントが設定されるようにしても良い。この場合、鍵サーバ53は、報酬ポイント格納部541を備えなくても良く、ノード51は、鍵サーバ53に鍵要求を送信する際、コンテンツ種類IDを含めなくても良い。
<Modification 12>
In each embodiment described above, reward points are set variably for each distribution data, and the key server 53 is provided with a reward point storage unit 541 for storing reward points for each distribution data. Not limited to this, the same reward point may be set for all distribution data. In this case, the key server 53 may not include the reward point storage unit 541, and the node 51 may not include the content type ID when transmitting the key request to the key server 53.

また、上述した各実施の形態において、ピース情報格納部535においては、最後尾のピースについては、それ以外のピースと別にデータサイズが記憶されるようにし、このデータサイズを用いて配信量を計算するようにしたが、最後尾ピースについてもそれ以外のピースと同様のデータサイズを用いて配信量を計算するようにしても良い。   In each of the above-described embodiments, the piece information storage unit 535 stores the data size separately from the other pieces for the last piece, and calculates the delivery amount using this data size. However, the delivery amount may be calculated for the last piece using the same data size as the other pieces.

また、各配信データの各ピースのデータサイズが固定であり全て同一である場合、鍵サーバ53はピース情報格納部535を備えず、ノード51は、鍵サーバ53に鍵要求を送信する際、コンテンツ種類IDを含めなくても良い。   When the data size of each piece of each piece of distribution data is fixed and all the same, the key server 53 does not include the piece information storage unit 535, and the node 51 transmits the key request to the key server 53 when the content is transmitted. The type ID may not be included.

<変形例13>
上述した各実施の形態において、鍵サーバ53は、鍵要求を受信する度に課金処理を行うようにしたが、これに限らない。例えば、鍵サーバ53は、鍵要求に含まれるピース番号が特定の値である場合にのみ課金処理を行うようにしても良い。
<Modification 13>
In each of the above-described embodiments, the key server 53 performs the billing process every time a key request is received. However, the present invention is not limited to this. For example, the key server 53 may perform the billing process only when the piece number included in the key request is a specific value.

また、上述した各実施の形態において、価格情報格納部539は、各配信データの価格だけではなく、当該価格と等価なポイントとして交換可能な報酬ポイントの値である交換ポイントを記憶するようにしても良い。図30は、本変形例にかかる価格情報格納部539に記憶される価格及び交換ポイントを例示する図である。同図に示されるように、コンテンツ種類IDと、配信データの価格と、交換ポイントとが対応付けられて記憶される。例えば、コンテンツ種類IDが‘12500013’の配信データについては、1000ポイントの報酬ポイントと等価でありこのポイントを交換ポイントとして当該交換ポイントと交換可能である。このような構成において、課金処理部537は、報酬ポイント、価格及び交換ポイントを用いて、鍵要求を送信したノード51に対して課金額を計算する。   Further, in each of the above-described embodiments, the price information storage unit 539 stores not only the price of each distribution data, but also exchange points that are values of reward points that can be exchanged as points equivalent to the price. Also good. FIG. 30 is a diagram exemplifying prices and exchange points stored in the price information storage unit 539 according to the present modification. As shown in the figure, the content type ID, the price of the distribution data, and the exchange point are stored in association with each other. For example, the distribution data whose content type ID is “12500013” is equivalent to a reward point of 1000 points, and can be exchanged for the exchange point with this point as an exchange point. In such a configuration, the billing processing unit 537 calculates a billing amount for the node 51 that transmitted the key request, using the reward points, the price, and the exchange points.

図31は、本変形例にかかる課金処理の手順を示すフローチャートである。鍵サーバ53は、鍵要求を送信したノード51のノードIDと対応付けられて報酬ポイント格納部541に記憶された報酬ポイントを読み出し(ステップS60)、鍵要求に含まれるコンテンツ種類IDと同一のコンテンツ種類IDと対応付けられて価格情報格納部539に記憶された価格及び交換ポイントを読み出す(ステップS61´)。そして、鍵サーバ53は、交換ポイントが報酬ポイント以下であるか否かを判定し(ステップS65)、交換ポイントが報酬ポイント以下である場合(ステップS65:YES)、報酬ポイントから交換ポイントを差し引いた値を新たな報酬ポイントの値として、当該ノードIDと対応付けられて報酬ポイント格納部541に記憶された報酬ポイントを更新して(ステップS66)、課金処理を終了する。一方、交換ポイントが報酬ポイントより大きい場合(ステップS65:NO)は、鍵サーバ53は、上述の第1の実施の形態と同様にしてステップS62〜S64の処理を行う。   FIG. 31 is a flowchart showing the procedure of the billing process according to this modification. The key server 53 reads the reward points stored in the reward point storage unit 541 in association with the node ID of the node 51 that transmitted the key request (step S60), and the same content as the content type ID included in the key request The price and exchange point associated with the type ID and stored in the price information storage unit 539 are read (step S61 ′). Then, the key server 53 determines whether or not the exchange point is equal to or less than the reward point (step S65). When the exchange point is equal to or less than the reward point (step S65: YES), the exchange point is subtracted from the reward point. Using the value as the value of the new reward point, the reward point associated with the node ID and stored in the reward point storage unit 541 is updated (step S66), and the accounting process is terminated. On the other hand, when the exchange point is larger than the reward point (step S65: NO), the key server 53 performs the processes of steps S62 to S64 in the same manner as in the first embodiment described above.

以上のような構成によっても、二次配信を担ったノード51に対して配信量に応じてインセンティブを正しく付与することができる。   Even with the configuration as described above, the incentive can be correctly given to the node 51 responsible for the secondary distribution according to the distribution amount.

<変形例14>
上述した各実施の形態において、インセンティブとして付与する報酬ポイントは、次回以降の課金処理での値引きに用いられるようにしたが、これに限らず、例えば、特典のおまけなどと交換可能にするようにしても良い。この場合、例えば、鍵サーバ53が、鍵要求を送信したノード51に対して、当該ノード51に付与された報酬ポイントに応じて特典を提供する提供部を備えるようにしても良い。又は、このような提供部を備えるサーバをデータ配信システムに別途備えるようにしても良い。
<Modification 14>
In each of the above-described embodiments, the reward points to be given as incentives are used for discounting in the subsequent billing process. However, the present invention is not limited to this. For example, the reward points can be exchanged for bonus benefits. May be. In this case, for example, the key server 53 may include a providing unit that provides a privilege to the node 51 that has transmitted the key request according to the reward points given to the node 51. Or you may make it provide separately the server provided with such a provision part in a data delivery system.

尚、鍵サーバ53が、報酬ポイントを値引きとして用いるか特典との交換に用いるかを判定して、当該判定結果に応じて、課金処理を行うようにしても良い。図32は、本変形例にかかる鍵送信処理の手順を示すフローチャートである。ステップS40の後、ステップS100では、鍵サーバ53は、鍵要求によって復号鍵が要求されているピースが有料か無料か又は報酬ポイントが特典との交換により用いられるかを判定する。尚、各ピースが有料か無料か又は報酬ポイントが特典との交換により用いられるかは、例えば、各ピースのピース番号と対応付けて鍵サーバ53に予め記憶されるようにすれば良い。そして、当該ピースが無料である場合、鍵サーバ53は、上述の各実施の形態と同様のステップS42〜S44の処理を行う。一方、当該ピースが有料か又は報酬ポイントが特典との交換により用いられる場合、上述の各実施の形態と同様のステップS41の課金処理を行い、次いで、課金が可能である否かを判定する(ステップS101)。課金が可能である場合(ステップS101:YES)、鍵サーバ53は、ステップS42〜S44の処理を行い、課金が可能でない場合(ステップS101:NO)、復号鍵の送信が不可である旨を示すメッセージを、鍵要求を送信したノード51に送信する(ステップS102)。   Note that the key server 53 may determine whether to use the reward points as a discount or to exchange them for a privilege, and perform the charging process according to the determination result. FIG. 32 is a flowchart illustrating a procedure of key transmission processing according to the present modification. After step S40, in step S100, the key server 53 determines whether the piece for which the decryption key is requested by the key request is charged or free, or whether reward points are used in exchange for a privilege. In addition, what is necessary is just to make it memorize | store in advance in the key server 53 in association with the piece number of each piece, for example whether each piece is paid or free, or a reward point is used by exchange with a privilege. And when the said piece is free, the key server 53 performs the process of step S42-S44 similar to each above-mentioned embodiment. On the other hand, when the piece is charged or the reward points are used by exchanging with a privilege, the billing process in step S41 similar to each of the above embodiments is performed, and then it is determined whether billing is possible ( Step S101). When charging is possible (step S101: YES), the key server 53 performs the processing of steps S42 to S44, and when charging is not possible (step S101: NO), it indicates that the decryption key cannot be transmitted. The message is transmitted to the node 51 that transmitted the key request (step S102).

また、報酬ポイントには、有効期限が設定されるようにしても良い。図33は、本変形例にかかる報酬ポイント格納部541に記憶される報酬ポイントを例示する図である。同図に示されるように、ノード毎の報酬ポイントに対して有効期限が対応付けられて記憶される。このような構成において、鍵サーバ53は、課金処理を行う際、報酬ポイント格納部541に記憶される報酬ポイントに対応付けられている有効期限が現在日時より経過していない場合に、当該報酬ポイントの値を用い、有効期限が現在日時より経過している場合、報酬ポイントの値を‘0’として、課金処理を行えば良い。   An expiration date may be set for the reward points. FIG. 33 is a diagram illustrating reward points stored in the reward point storage unit 541 according to the present modification. As shown in the figure, the expiration date is stored in association with the reward points for each node. In such a configuration, when the key server 53 performs the charging process, if the expiration date associated with the reward point stored in the reward point storage unit 541 has not elapsed from the current date and time, the reward point If the expiration date has passed from the current date and time, the value of the reward point is set to “0” and the charging process may be performed.

<変形例15>
上述した各実施の形態において、配信データ毎に換算ポイントが可変に設定されるようにし、鍵サーバ53は配信データ毎の換算ポイントを記憶する報酬ポイント換算情報格納部540を備えるようにしたが、これに限らず、全ての配信データに同一の換算ポイントが設定されるようにしても良い。この場合、鍵サーバ53は、報酬ポイント換算情報格納部540を備えなくても良く、ノード51は、鍵サーバ53に鍵要求を送信する際、コンテンツ種類IDを含めなくても良い。
<Modification 15>
In each of the above-described embodiments, the conversion point is variably set for each distribution data, and the key server 53 includes the reward point conversion information storage unit 540 that stores the conversion points for each distribution data. Not limited to this, the same conversion point may be set for all distribution data. In this case, the key server 53 may not include the reward point conversion information storage unit 540, and the node 51 may not include the content type ID when transmitting the key request to the key server 53.

<変形例16>
上述した各実施の形態において、配信開始ノードであるノード51に対しては、報酬ポイントを付与しないように構成したが、報酬ポイントを付与するように構成しても良い。
<Modification 16>
In each embodiment described above, the reward point is not given to the node 51 that is the distribution start node, but the reward point may be given.

50,51,51A,51B ノード
53 鍵サーバ
500 固有情報格納部
501 乱数生成部
502 一時対称鍵生成部
503 ピース暗号化部
504 ピース化部
505 データ送信部
506 送信要求受付部
510 固有情報格納部
511 乱数生成部
512 一時対称鍵生成部
513 ピース暗号化部
514 データ受信部
515 データ送信部
516 送信要求受付部
517 データ格納部
518 送信要求送信部
519 鍵要求送信部
520 ピース復号部
521 暗号化決定部
522 乱数代替生成部
530 秘密鍵格納部
531 データ受信部
532 暗号化スキップ判定部
533 一時対称鍵生成部
534 データ送信部
535 ピース情報格納部
536 配信量計算部
537 課金処理部
538 報酬ポイント計算部
539 価格情報格納部
540 報酬ポイント換算情報格納部
541 報酬ポイント格納部
NT P2Pネットワーク
50, 51, 51A, 51B Node 53 Key server 500 Unique information storage unit 501 Random number generation unit 502 Temporary symmetric key generation unit 503 Piece encryption unit 504 Piece generation unit 505 Data transmission unit 506 Transmission request reception unit 510 Unique information storage unit 511 Random number generator 512 Temporary symmetric key generator 513 Piece encryption unit 514 Data reception unit 515 Data transmission unit 516 Transmission request reception unit 517 Data storage unit 518 Transmission request transmission unit 519 Key request transmission unit 520 Piece decryption unit 521 Encryption determination unit 522 Random number alternative generation unit 530 Private key storage unit 531 Data reception unit 532 Encryption skip determination unit 533 Temporary symmetric key generation unit 534 Data transmission unit 535 Piece information storage unit 536 Delivery amount calculation unit 537 Charge processing unit 538 Reward point calculation unit 539 Price information storage unit 540 Information storage unit 541 reward point storage unit NT P2P networks

Claims (16)

ピースは、データの一部であり、通信装置で暗号化され前記通信装置から前記他の通信装置へ送信されるものであって、
当該ピースを復号するための復号鍵を要求する鍵要求は、前記データを識別するためのデータ識別情報と、前記復号鍵を生成するための鍵生成情報とを含むものであり、且つ前記他の通信装置から送信されるものであって、
前記鍵生成情報は、前記通信装置に割り当てられた装置識別情報を含み、
前記鍵要求に含まれる前記データ識別情報と前記鍵生成情報とを取得する取得手段と、
前記データ識別情報と前記鍵生成情報とを用いて、前記通信装置によって送信された前記ピースのデータ量である配信量を計算する第1計算手段と、
前記配信量を用いて、前記通信装置に対して付与する報酬ポイントを計算する第2計算手段と、
前記報酬ポイントを前記装置識別情報と対応付けて記憶する第1記憶手段とを備える
ことを特徴とするサーバ。
The piece is a part of data, which is encrypted by the communication device and transmitted from the communication device to the other communication device,
The key request for requesting a decryption key for decrypting the piece includes data identification information for identifying the data and key generation information for generating the decryption key, and the other Transmitted from the communication device,
The key generation information includes device identification information assigned to the communication device,
Obtaining means for obtaining the data identification information and the key generation information included in the key request;
First calculation means for calculating a delivery amount, which is a data amount of the piece transmitted by the communication device, using the data identification information and the key generation information;
Second calculation means for calculating reward points to be given to the communication device using the delivery amount;
A server comprising: first storage means for storing the reward points in association with the device identification information.
前記鍵要求は、前記ピースを特定するピース特定情報を更に含み、
前記取得手段は、前記ピース特定情報を更に取得し、
前記第1計算手段は、前記ピース特定情報をも用いて、前記配信量を計算する
ことを特徴とする請求項1に記載のサーバ。
The key request further includes piece specifying information for specifying the piece,
The acquisition means further acquires the piece identification information,
2. The server according to claim 1, wherein the first calculation unit calculates the distribution amount also using the piece specifying information.
前記ピースは、送信を仲介する複数の通信装置の全部又は一部により各々異なる暗号鍵で暗号化され、
前記鍵生成情報は、前記ピースを復号するための1又は複数の復号鍵を生成するための情報であり、ピースの送信を仲介した複数の各前記通信装置の送信順序を判定可能に各前記装置識別情報を含み、
前記取得手段は、前記データ識別情報と、前記ピースを最後に送信した通信装置の前記装置識別情報とを取得し、
前記第2計算手段は、前記配信量を用いて、前記ピースを最後に送信した他の通信装置に対して付与する報酬ポイントを計算し、
前記第1記憶手段は、前記ピースを最後に送信した通信装置の前記装置識別情報と対応付けて、前記報酬ポイントを記憶する
ことを特徴とする請求項1に記載のサーバ。
The pieces are encrypted with different encryption keys by all or part of a plurality of communication devices that mediate transmission,
The key generation information is information for generating one or a plurality of decryption keys for decrypting the piece, and each of the devices can determine the transmission order of the plurality of communication devices that mediate the transmission of the pieces. Including identification information,
The acquisition means acquires the data identification information and the device identification information of the communication device that last transmitted the piece,
The second calculation means calculates a reward point to be given to another communication device that has transmitted the piece last, using the distribution amount,
The server according to claim 1, wherein the first storage unit stores the reward points in association with the device identification information of a communication device that has transmitted the piece last.
前記ピースは、送信を仲介する第1の通信装置が第1暗号鍵を用いて暗号化して第2の通信装置に送信した後当該第2の通信装置が復号して第2暗号鍵を用いて暗号化したものであり、
前記鍵生成情報は、前記第2暗号鍵を用いて暗号化された前記ピースを復号するための復号鍵を生成するための情報であり、前記第2の通信装置の前記装置識別情報を含み、
前記取得手段は、前記データ識別情報と、前記第2の通信装置の前記装置識別情報とを取得し、
前記第2計算手段は、前記配信量を用いて、前記第2の通信装置に対して付与する報酬ポイントを計算し、
前記第1記憶手段は、前記第2の通信装置の前記装置識別情報と対応付けて、前記報酬ポイントを記憶する
ことを特徴とする請求項1に記載のサーバ。
The piece is encrypted by the first communication device that mediates transmission using the first encryption key, transmitted to the second communication device, and then decrypted by the second communication device using the second encryption key. Is encrypted,
The key generation information is information for generating a decryption key for decrypting the piece encrypted using the second encryption key, and includes the device identification information of the second communication device,
The acquisition means acquires the data identification information and the device identification information of the second communication device,
The second calculation means calculates a reward point to be given to the second communication device using the distribution amount,
The server according to claim 1, wherein the first storage unit stores the reward points in association with the device identification information of the second communication device.
前記ピースは、送信を仲介する複数の通信装置の全部又は一部により各々暗号化され、
前記鍵生成情報は、前記ピースを復号するための1又は複数の復号鍵を生成するための情報であり、前記ピースの送信を仲介した複数の各前記通信装置の各前記装置識別情報とを含み、
前記取得手段は、前記データ識別情報と、各前記通信装置の各前記装置識別情報とを取得し、
前記第2計算手段は、前記配信量を用いて、前記ピースの送信を仲介した各前記通信装置に対して付与する報酬ポイントを各々計算し、
前記第1記憶手段は、各前記通信装置の前記装置識別情報と対応付けて、前記報酬ポイントを各々記憶する
ことを特徴とする請求項1に記載のサーバ。
The pieces are each encrypted by all or part of a plurality of communication devices that mediate transmission,
The key generation information is information for generating one or a plurality of decryption keys for decrypting the piece, and includes the device identification information of the plurality of communication devices that mediate transmission of the piece. ,
The acquisition means acquires the data identification information and the device identification information of each of the communication devices,
The second calculation means calculates reward points to be given to the communication devices that mediate transmission of the pieces, using the distribution amount,
The server according to claim 1, wherein the first storage unit stores the reward points in association with the device identification information of each of the communication devices.
前記ピースは、送信を仲介する複数の通信装置の全部又は一部により各々暗号化され、
前記鍵生成情報は、前記ピースを復号するための1又は複数の復号鍵を生成するための情報であり、前記ピースの送信を仲介した複数の各前記通信装置の送信順序を判定可能に各前記装置識別情報とを含み、
前記取得手段は、前記データ識別情報と、各前記通信装置の各前記装置識別情報とを取得し、
前記第2計算手段は、前記配信量を用いて、前記ピースの送信を仲介した各前記通信装置に対して送信順序に応じた前記報酬ポイントを各々計算し、
前記第1記憶手段は、各前記通信装置の前記装置識別情報と対応付けて、前記報酬ポイントを各々記憶する
ことを特徴とする請求項1に記載のサーバ。
The pieces are each encrypted by all or part of a plurality of communication devices that mediate transmission,
The key generation information is information for generating one or a plurality of decryption keys for decrypting the piece, and the transmission order of the plurality of communication devices that mediate transmission of the pieces can be determined. Device identification information,
The acquisition means acquires the data identification information and the device identification information of each of the communication devices,
The second calculation means calculates the reward points according to the transmission order for the communication devices that mediate the transmission of the pieces using the distribution amount,
The server according to claim 1, wherein the first storage unit stores the reward points in association with the device identification information of each of the communication devices.
前記ピース特定情報は、前記ピースが前記データのどの部分であるかを特定するものであり、
前記データのどの部分かに応じた前記ピースのデータ量を示すサイズ情報を記憶する第2記憶手段を更に備え、
前記第1計算手段は、前記データ識別情報、前記ピース特定情報及び前記サイズ情報を用いて、前記ピースのデータ量を判別することにより、前記配信量を計算する
ことを特徴とする請求項2に記載のサーバ。
The piece specifying information specifies which part of the data the piece is,
A second storage means for storing size information indicating the data amount of the piece according to which part of the data;
The said 1st calculation means calculates the said delivery amount by discriminating the data amount of the said piece using the said data identification information, the said piece specific information, and the said size information, The said delivery amount is characterized by the above-mentioned. The listed server.
前記第2計算手段は、前記配信量を用いて、前記ピースが前記データのどの部分であるかに応じて前記報酬ポイントを計算する
ことを特徴とする請求項7に記載のサーバ。
The server according to claim 7, wherein the second calculation means calculates the reward points according to which part of the data the piece is, using the distribution amount.
データ毎に単位量当たりの換算ポイントを記憶する第3記憶手段を更に備え、
前記第2計算手段は、前記ピースを含む前記データの前記換算ポイント及び前記配信量を用いて、前記報酬ポイントを計算する
ことを特徴とする請求項1乃至8のいずれか一項に記載のサーバ。
A third storage means for storing conversion points per unit amount for each data;
The server according to any one of claims 1 to 8, wherein the second calculation means calculates the reward points using the converted points and the distribution amount of the data including the pieces. .
前記鍵要求は、当該鍵要求を送信する前記他の通信装置に割り当てられた装置識別情報を更に含み、
前記取得手段は、前記他の通信装置に割り当てられた装置識別情報を更に取得し、
前記他の通信装置の前記装置識別情報と対応付けられて前記第1記憶手段に記憶された前記報酬ポイントを用いて値引き額を決定して、前記他の通信装置に対する課金額を計算する課金処理手段とを更に備える
ことを特徴とする請求項1乃至9のいずれか一項に記載のサーバ。
The key request further includes device identification information assigned to the other communication device that transmits the key request,
The acquisition means further acquires device identification information assigned to the other communication device,
Charge processing for determining a discount amount using the reward points stored in the first storage means in association with the device identification information of the other communication device, and calculating a charge amount for the other communication device The server according to claim 1, further comprising: means.
前記鍵要求は、当該鍵要求を送信する前記他の通信装置に割り当てられた装置識別情報を更に含み、
前記取得手段は、前記他の通信装置に割り当てられた装置識別情報を更に取得し、
前記他の通信装置の前記装置識別情報と対応付けられて前記第1記憶手段に記憶された前記報酬ポイントに応じた特典を提供する提供手段とを更に備える
ことを特徴とする請求項1乃至10のいずれか一項に記載のサーバ。
The key request further includes device identification information assigned to the other communication device that transmits the key request,
The acquisition means further acquires device identification information assigned to the other communication device,
The provision means which provides the privilege according to the said reward point matched with the said apparatus identification information of said another communication apparatus and memorize | stored in the said 1st memory | storage means is further provided. The server as described in any one of.
前記取得手段は、前記鍵要求を受信し前記鍵生成情報を用いて前記復号鍵を生成する鍵サーバから、前記鍵要求に含まれる前記データ識別情報と前記鍵生成情報とを少なくとも取得する
ことを特徴とする請求項1乃至11のいずれか一項に記載のサーバ。
The acquisition means acquires at least the data identification information and the key generation information included in the key request from a key server that receives the key request and generates the decryption key using the key generation information. The server according to any one of claims 1 to 11, characterized in that:
前記鍵要求を受信する受信手段と、
前記鍵生成情報を用いて、前記復号鍵を生成する鍵生成手段と、
前記復号鍵を前記他の通信装置に送信する送信手段とを更に備え、
前記取得手段は、受信された前記鍵要求に含まれる前記データ識別情報と前記鍵生成情報とを少なくとも取得する
ことを特徴とする請求項1乃至11のいずれか一項に記載のサーバ。
Receiving means for receiving the key request;
Key generation means for generating the decryption key using the key generation information;
Transmission means for transmitting the decryption key to the other communication device,
The server according to claim 1, wherein the acquisition unit acquires at least the data identification information and the key generation information included in the received key request.
前記ピースは、当該ピースの送信を仲介した複数の前記通信装置の全部又は一部が生成した情報であってその生成毎に異なる一時情報及び複数の前記通信装置に各々割り当てられた秘密情報を用いて生成した一時対称鍵により各々暗号化されており、
前記鍵生成情報は、前記ピースの送信を仲介した前記複数の通信装置の前記装置識別情報及び前記一時情報を対応付けて含み、
複数の通信装置のそれぞれに割り当てられた秘密情報と、各通信装置に割り当てられた装置識別情報とを各々対応付けて記憶する第4記憶手段を更に備え、
前記鍵生成手段は、前記鍵要求に含まれる各前記装置識別情報に対応付けられて記憶されている前記秘密情報と、当該各装置識別情報と対応付けられて前記鍵要求に含まれる各前記一時情報とを用いて、前記復号鍵を生成する
ことを特徴とする請求項13に記載のサーバ。
The piece is information generated by all or a part of the plurality of communication devices that mediate transmission of the piece, and uses different temporary information and secret information respectively assigned to the plurality of communication devices. Each encrypted with a temporary symmetric key generated
The key generation information includes the device identification information and the temporary information in association with the plurality of communication devices that mediate transmission of the pieces,
And further comprising fourth storage means for storing the secret information assigned to each of the plurality of communication devices and the device identification information assigned to each communication device in association with each other.
The key generation means includes the secret information stored in association with the device identification information included in the key request and the temporary information included in the key request in association with the device identification information. The server according to claim 13, wherein the decryption key is generated using information.
サーバで実行される情報処理方法であって、
ピースは、データの一部であり、通信装置で暗号化され前記通信装置から前記他の通信装置へ送信されるものであって、
当該ピースを復号するための復号鍵を要求する鍵要求は、前記データを識別するためのデータ識別情報と、前記復号鍵を生成するための鍵生成情報とを含むものであり、且つ前記他の通信装置から送信されるものであって、
前記鍵生成情報は、前記通信装置に割り当てられた装置識別情報を含み、
前記鍵要求に含まれる前記データ識別情報と前記装置識別情報とを取得する取得ステップと、
前記データ識別情報と前記鍵生成情報とを用いて、前記通信装置によって送信された前記ピースのデータ量である配信量を計算する第1計算ステップと、
前記配信量を用いて、前記通信装置に対して付与する報酬ポイントを計算する第2計算ステップと、
前記報酬ポイントを前記装置識別情報と対応付けて記憶手段に記憶させる第1記憶制御ステップとを含むことを特徴とする情報処理方法。
An information processing method executed on a server,
The piece is a part of data, which is encrypted by the communication device and transmitted from the communication device to the other communication device,
The key request for requesting a decryption key for decrypting the piece includes data identification information for identifying the data and key generation information for generating the decryption key, and the other Transmitted from the communication device,
The key generation information includes device identification information assigned to the communication device,
Obtaining the data identification information and the device identification information included in the key request;
A first calculation step of calculating a delivery amount, which is a data amount of the piece transmitted by the communication device, using the data identification information and the key generation information;
A second calculation step of calculating reward points to be given to the communication device using the distribution amount;
And a first storage control step of storing the reward points in association with the device identification information in a storage means.
ピースは、データの一部であり、通信装置で暗号化され前記通信装置から前記他の通信装置へ送信されるものであって、
当該ピースを復号するための復号鍵を要求する鍵要求は、前記データを識別するためのデータ識別情報と、前記復号鍵を生成するための鍵生成情報とを含むものであり、且つ前記他の通信装置から送信されるものであって、
前記鍵生成情報は、前記通信装置に割り当てられた装置識別情報を含み、
前記鍵要求に含まれる前記データ識別情報と前記鍵生成情報とを取得する取得手段と、
前記データ識別情報と前記鍵生成情報とを用いて、前記通信装置によって送信された前記ピースのデータ量である配信量を計算する第1計算手段と、
前記配信量を用いて、前記通信装置に対して付与する報酬ポイントを計算する第2計算手段と、
前記報酬ポイントを前記装置識別情報と対応付けて記憶手段に記憶させる第1記憶制御手段としてコンピュータを機能させるためのプログラム。
The piece is a part of data, which is encrypted by the communication device and transmitted from the communication device to the other communication device,
The key request for requesting a decryption key for decrypting the piece includes data identification information for identifying the data and key generation information for generating the decryption key, and the other Transmitted from the communication device,
The key generation information includes device identification information assigned to the communication device,
Obtaining means for obtaining the data identification information and the key generation information included in the key request;
First calculation means for calculating a delivery amount, which is a data amount of the piece transmitted by the communication device, using the data identification information and the key generation information;
Second calculation means for calculating reward points to be given to the communication device using the delivery amount;
A program for causing a computer to function as first storage control means for storing the reward points in association with the device identification information in a storage means.
JP2009008149A 2009-01-16 2009-01-16 Server, information processing method and program Expired - Fee Related JP5284119B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009008149A JP5284119B2 (en) 2009-01-16 2009-01-16 Server, information processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009008149A JP5284119B2 (en) 2009-01-16 2009-01-16 Server, information processing method and program

Publications (2)

Publication Number Publication Date
JP2010166432A JP2010166432A (en) 2010-07-29
JP5284119B2 true JP5284119B2 (en) 2013-09-11

Family

ID=42582231

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009008149A Expired - Fee Related JP5284119B2 (en) 2009-01-16 2009-01-16 Server, information processing method and program

Country Status (1)

Country Link
JP (1) JP5284119B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150112780A1 (en) * 2013-10-21 2015-04-23 Mastercard International Incorporated Method and system for processing of a real-time rebate at transaction authorization
GB201710176D0 (en) 2017-06-26 2017-08-09 Nchain Holdings Ltd Computer-implemented system and method
KR102209989B1 (en) * 2018-11-30 2021-02-01 사단법인 금융결제원 Apparatus and method for providing cryptographic key based on user authentication
CN116491096B (en) * 2020-07-16 2025-04-29 硕动力公司 Using key agreement to protect data
CN113489670B (en) * 2020-09-29 2023-02-03 青岛海信电子产业控股股份有限公司 Information processing method and related equipment

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3967666B2 (en) * 2002-11-19 2007-08-29 株式会社日立製作所 Electronic information sharing system
US20050268102A1 (en) * 2004-05-07 2005-12-01 Downey Kyle F Method and system for secure distribution of content over a communications network
JP2007228558A (en) * 2006-01-27 2007-09-06 Ricoh Co Ltd File delivery system and file delivery method
JP2009153091A (en) * 2007-11-26 2009-07-09 Toshiba Corp Communication device, key server, management server, communication server, communication method, and program
JP5208549B2 (en) * 2008-03-25 2013-06-12 株式会社東芝 COMMUNICATION DEVICE, SYSTEM, TRANSMISSION METHOD, AND PROGRAM
JP2009272927A (en) * 2008-05-08 2009-11-19 Toshiba Corp Communication apparatus, server, and program
JP5395372B2 (en) * 2008-06-19 2014-01-22 株式会社東芝 Communication device, key server and data

Also Published As

Publication number Publication date
JP2010166432A (en) 2010-07-29

Similar Documents

Publication Publication Date Title
US8225097B2 (en) Anchor point-based digital content protection
CN101901447B (en) For providing the system and method for digital content services
RU2541878C2 (en) Techniques for monetising anonymised context
KR100942992B1 (en) Method and apparatus for rights-preserving interoperability in drm
US20020010861A1 (en) Access control system, access control method, device, access control server, access-control-server registration server, data processing apparatus, and program storage medium
EP1229425A1 (en) Content usage management system and content usage management method
JP4101249B2 (en) Access metering of content in content protection systems, etc.
KR101986482B1 (en) Contents blockchain for storing and managing content information
KR20010052660A (en) Information processing device and method, and providing medium
JP5284119B2 (en) Server, information processing method and program
US20080155648A1 (en) Method, device, and system for digital rights management
JP2008312190A (en) Method, apparatus and system for managing A / V profiles
KR20100088965A (en) System and method for configurating of content object
WO2011099903A1 (en) Apparatuses and methods for enabling a user to consume protected contents of a content provider
JP2010004390A (en) Communication apparatus, key server and data
US20090282250A1 (en) Communication apparatus, server, and computer program product therefor
JP4889637B2 (en) License management apparatus and method
WO2024222321A1 (en) Data processing method and apparatus, device and medium
JP2010124071A (en) Communication device, communication method, and program
JPWO2006038622A1 (en) Content distribution system
JP2010141567A (en) Communication apparatus, communication method and program
JP2009223352A (en) Content access control device, content access control method, and content access control program
JP2010157867A (en) Dynamic image reproduction code generation device, dynamic image distribution system, execution format program, recording medium containing the program, server, and dynamic image reproduction code generation method
JP2009135721A (en) Content distribution system, content distribution method and program
JP2004355657A (en) Electronic content transaction method and system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110916

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130424

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130529

LAPS Cancellation because of no payment of annual fees