Verification data generating apparatus, data verification apparatus and storage medium for storing verification data generating program
First Claim
1. A verification data generating apparatus comprising:
- a verification value holding element that holds a verification value;
a data generating element that upon a use of a software program generates one of a plurality of data bodies, each one of the plurality of data bodies being a log of the use of the software program;
a verification value generating element that generates a new verification value based on both the verification value held in the verification value holding element and the one of the plurality of data bodies whenever the one of the plurality of data bodies is generated and updates the verification value held in the verification value holding element with the new verification value;
a data storing element that stores a set of data bodies to form a history of the use of the software program, the set of data bodies being a list of the plurality of data bodies in order of generation;
a verification data outputting element that generates a signature value by using the new verification value on receiving a verification data outputting request and outputs verification data including the set of data bodies and the signature value.
1 Assignment
0 Petitions
Accused Products
Abstract
A verification data generating apparatus generates data that can be stored in a terminal device without sustaining unauthorized operations and has assured continuity in the order of being output.
In the apparatus, a verification data holding element holds a verification data. A data generation element generates a data body at a predetermined timing. Whenever the data body is generated, a verification value generation element generates a new verification value based on the verification value held in the verification value holding element and the data body newly generated. The verification value held in the verification value holding element is then updated with the new verification value. A data storage element stores the data bodies generated by the data generating element in order. On receiving a verification data outputting request, a verification data outputting element generates a signature value based on the verification value held in the verification value holding element and outputs verification data generated by concatenating the signature value with the data body stored in the data storing element.
28 Citations
9 Claims
-
1. A verification data generating apparatus comprising:
-
a verification value holding element that holds a verification value;
a data generating element that upon a use of a software program generates one of a plurality of data bodies, each one of the plurality of data bodies being a log of the use of the software program;
a verification value generating element that generates a new verification value based on both the verification value held in the verification value holding element and the one of the plurality of data bodies whenever the one of the plurality of data bodies is generated and updates the verification value held in the verification value holding element with the new verification value;
a data storing element that stores a set of data bodies to form a history of the use of the software program, the set of data bodies being a list of the plurality of data bodies in order of generation;
a verification data outputting element that generates a signature value by using the new verification value on receiving a verification data outputting request and outputs verification data including the set of data bodies and the signature value. - View Dependent Claims (2, 3, 4, 5, 6, 7)
a data deletion element that deletes the plurality of data bodies from the data storing element in reply to a data deletion request; and
a counter that counts a verification data serial number and performs an increment of the verification data serial number whenever the plurality of data bodies is deleted by the data deletion element, wherein the verification data outputting element outputs the verification data with a value of the counter at the time when the verification data outputting request is received.
-
-
3. The verification data generating apparatus as set forth in claim 1, wherein the verification value generating element generates the new verification value by using a one-way function.
-
4. The verification data generating apparatus as set forth in claim 1, further comprising:
-
a data generating condition holding element that holds a condition for generating the plurality of data body;
a function suspending element that suspends a function of the data generating element when the condition is unsatisfied;
a use extension data authenticating element that authenticates use extension data when it is received; and
a suspension canceling element that cancels the suspension of the function when the use extension data is authenticated.
-
-
5. The verification data generating apparatus as set forth in claim 4, wherein the use extension data authenticating element extracts a reference verification value from the received use extension data and authenticates the use extension data if the reference verification value and the verification value held in the verification value holding element are consistent with each other.
-
6. The verification data generating apparatus as set forth in claim 4, wherein the use extension data authenticating element extracts a reference verification value from the received use extension data, selects one of the plurality of data bodies in the data storing element in order of being stored, generates a new verification value based on the selected data body and the reference verification value, separately selects one of the plurality of data bodies and generates a new verification value in sequence and authenticates the use extension data if the new verification value generated at last and the verification value held in the verification value holding element are consistent with each other.
-
7. The verification data generating apparatus as set forth in claim 4, further comprising:
-
a second verification value holding element that holds the value held in the verification value holding element as a second verification value at the time when the verification data outputting element outputs the verification data, wherein the use extension data authentication element extracts a reference verification value from the received use extension data and authenticates the use extension data if the reference verification value and the second verification value is consistent with each other.
-
-
8. A data verification apparatus comprising:
-
a verification value holding element that holds a verification value;
a reference verification value generating element that receives verification data that is a set of data bodies that forms a history of use of a software program and includes a list of a plurality of data bodies in order of their generation and a signature value attached thereto and generates a reference verification value based on the verification value and the set of data bodies;
an authenticating element that collates a verification value obtained from the signature value with the reference verification value and authenticates the verification data if the signature value and the reference verification value are consistent with each other; and
a verification value updating element that updates the verification value with the reference verification value if the verification value obtained from the signature value and the reference verification value are consistent with each other.
-
-
9. A storage medium readable by a computer, the storage medium storing a program of instructions executable by the computer to perform a function for generating verification data, the function comprising the steps of:
-
holding a verification value;
generating one of a plurality of data bodies upon a use of a software program, each one of the plurality of data bodies being a log of the use of the software program;
generating a new verification value based on both the verification value and the one of the plurality of data bodies whenever the one of the plurality of data bodies is generated and updating the verification value with the new verification value;
storing a set of data bodies to form a history of the use of the software program, the set of data bodies being a list of each of the plurality of data bodies in order of generation; and
generating a signature value by using the verification value on receiving a verification data outputting request and outputting verification data including the set of data bodies and the signature value.
-
Specification