Legal claims defining the scope of protection, as filed with the USPTO.
1. A data processing device for using a digital work recorded on a recording medium having also recorded thereon (i) a plurality of record digest values generated from a plurality of data blocks constituting the digital work, (ii) record signature data generated by applying, with use of a signature key, a signature generating algorithm to a first combination made of at least some or all of the plurality of record digest values and (iii) a predetermined number of data blocks, the data processing device comprising: a non-transitory memory device that stores a program; and a hardware processing device that executes the program and causes the data processing device to operate as: a verification key storing unit configured to store a verification key corresponding to the signature key; a using unit configured to use the digital work; an acquiring unit configured to acquire the predetermined number of data blocks, the predetermined number being smaller than the number of all the plurality of data blocks; a selecting unit configured to, each time the digital work is used, randomly select the predetermined number of data blocks from all of the plurality of data blocks; a calculating unit configured to calculate a plurality of calculation digest values from the selected data blocks; a reading unit configured to read remaining record digest values corresponding to unselected data blocks from among the plurality of record digest values; a generating unit configured to generate a second combination based on calculation digest values and the remaining record digest values, the second combination being the same as data which is generated from the first combination by replacing record digest values corresponding to the selected data blocks with corresponding calculation digest values; and a signature verifying unit configured to verify the record signature data by applying, with use of the verification key, a signature verification algorithm to the second combination and the record signature data.
2. The data processing device of claim 1 , wherein the plurality of record digest values include a plurality of primary record digest values, each of which is generated for one of the plurality of data blocks, and a plurality of secondary record digest values generated from two or more of the plurality of primary record digest values, and the record signature data is generated by applying, with use of the signature key, the signature generating algorithm to the first combination made of at least some or all of the plurality of secondary record digest values, said reading unit reads, from the recording medium, the plurality of secondary record digest values and the remaining record digest values from among the plurality of primary record digest values, and said generating unit includes: a calculating subunit configured to calculate one or more secondary calculation digest values based on the calculation digest values and the remaining record digest values; and a combining subunit configured to generate the second combination based on the plurality of secondary record digest values and the one or more secondary calculation digest values, the second combination being the same as data which is generated from the first combination by replacing record digest values corresponding to the selected data blocks with corresponding calculation digest values.
3. The data processing device of claim 2 , wherein the digital work includes a plurality of files, each of which corresponds to one of the plurality of secondary record digest values and is constituted by two or more of the plurality of data blocks, each of the plurality of secondary record digest values is generated by using primary record digest values corresponding one-to-one with the two or more of the plurality of data blocks constituting a file corresponding to the secondary record digest value, said calculating subunit calculates a secondary calculation digest value, with respect to each file including at least one of the selected data blocks, by using primary record digest values corresponding to the unselected data blocks included in the file and the calculation digest value corresponding to the at least one of the selected data blocks, said reading unit reads, with respect to each file including none of the selected data blocks, a secondary record digest value corresponding to the file, and said combining subunit generates the second combination by combining the calculated secondary calculation digest values and the read secondary record digest values.
4. The data processing device of claim 3 , wherein the plurality of record digest values are hash values each generated by a hash function, said calculating unit applies the hash function to each of the selected data blocks in order to calculate hash values which are the calculation digest values, and said calculating subunit applies the hash function to the primary record digest values corresponding to the unselected data blocks and the calculation digest values in order to calculate hash values which are the secondary calculation digest values.
5. The data processing device of claim 1 , wherein the recording medium has additionally recorded (i) area information indicating an access permitted area, on the recording medium, that an external device is permitted to access and (ii) signature data generated by applying, with use of a signature key, the signature generating algorithm to part or all of the digital work and the area information, the data processing device further comprising: an access prohibiting unit configured to prohibit access to areas other than the access permitted area based on the area information; and a second verifying unit configured to perform a signature verification by applying, with use of a verification key, a signature verification algorithm to the digital work, the area information, and the signature date.
6. The data processing device of claim 1 , wherein said reading unit reads record digest values corresponding to the selected data blocks from the recording medium, and the data processing device further comprising: a digest value verifying unit configured to make a judgment whether the plurality of record digest values recorded on the recording medium match calculation digest values.
7. The data processing device of claim 1 , wherein said selecting unit, said calculating unit, said reading unit and said signature verifying unit are assembled together in a single large scale integration.
8. The data processing device of claim 1 , wherein the recording medium is a semiconductor memory.
9. The data processing device of claim 8 , wherein the semiconductor memory is incorporated inside the data processing device.
10. A recording medium used with the data processing device of claim 1 , (i) having recorded thereon: a digital work; a plurality of record digest values generated from a plurality of data blocks constituting the digital work; record signature data generated based on the plurality of record digest values; and a predetermined number of data blocks, and (ii) supplying to the data processing device the digital work, the plurality of record digest values, the record signature data, and the predetermined number of data blocks.
11. A data processing method applied to a data processing device including a verification key storing unit storing a verification key corresponding to a signature key; a using unit; an acquiring unit; a selecting unit; a calculating unit; a reading unit; a generating unit; and a signature verifying unit, the data processing device being for using a digital work recorded on a recording medium having also recorded thereon (i) a plurality of record digest values generated from a plurality of data blocks constituting the digital work, (ii) record signature data generated by applying, with use of the signature key, a signature generating algorithm to a first combination made of at least some or all of the plurality of record digest values, and (iii) a predetermined number of data blocks, the data processing method comprising: a using step of causing the using unit to use the digital work; an acquiring step of causing the acquiring unit to acquire the predetermined number of data blocks, the predetermined number being smaller than the number of all the plurality of data blocks; a selecting step of causing the selecting unit to, each time the digital work is used, randomly select the predetermined number of data blocks from all of the plurality of data blocks; a calculating step of causing the calculating unit to calculate a plurality of calculation digest values from the selected data blocks; a reading step of causing the reading unit to read remaining record digest values corresponding to unselected data blocks from among the plurality of record digest values; a generating step of causing the generating unit to generate a second combination based on calculation digest values and the remaining record digest values, the second combination being the same as data which is generated from the first combination by replacing record digest values corresponding to the selected data blocks with corresponding calculation digest values; and a signature verifying step of causing the signature verifying unit to verify the record signature data by applying, with use of the verification key, a signature verification algorithm to the second combination and the record signature data.
12. A non-transitory computer-readable recording medium storing a data processing program therein applied to a data processing device including a verification key storing unit storing a verification key corresponding to a signature key; a using unit; an acquiring unit; a selecting unit; a calculating unit; a reading unit; a generating unit; and a signature verifying unit, the data processing device being for using a digital work recorded on a recording medium having also recorded thereon (i) a plurality of record digest values generated from a plurality of data blocks constituting the digital work, (ii) record signature data generated by applying, with use of the signature key, a signature generating algorithm to a first combination made of at least some or all of the plurality of record digest values, and (iii) a predetermined number of data blocks, the data processing program causing the data processing device to execute: a using step of causing the using unit to use the digital work; an acquiring step of causing the acquiring unit to acquire the predetermined number of data blocks, the predetermined number being smaller than the number of all the plurality of data blocks; a selecting step of causing the selecting unit to, each time the digital work is used, randomly select the predetermined number of data blocks from all of the plurality of data blocks; a calculating step of causing the calculating unit to calculate a plurality of calculation digest values from the selected data blocks; a reading step of causing the reading unit to read remaining record digest values corresponding to unselected data blocks from among the plurality of record digest values; a generating step of causing the generating unit to generate a second combination based on calculation digest values and the remaining record digest values, the second combination being the same as data which is generated from the first combination by replacing record digest values corresponding to the selected data blocks with corresponding calculation digest values; and a signature verifying step of causing the signature verifying unit to verify the record signature data by applying, with use of the verification key, a signature verification algorithm to the second combination and the record signature data.
Unknown
February 23, 2016
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.