Method and apparatus for evaluating actions performed on a client device
First Claim
1. A method of operation of a client device for enabling a server to evaluate a plurality of actions performed on the client device, said method comprising:
- for each of said plurality of actions, (a) generating a current key, (b) generating an associated action attestation value based on a previous key and information about said each action, and (c) deleting said previous key;
generating a final attestation value based at least on said current key using a publicly non-invertible function; and
transmitting information about said plurality of actions, a plurality of action attestation values, and said final attestation value to said server so that said server can authenticate said plurality of action attestation values and said final attestation value.
4 Assignments
0 Petitions
Accused Products
Abstract
Disclosed is a method and apparatus for evaluating actions performed on a client device. For each of the performed actions, a current key is generated from a previous key and an associated action attestation value is generated from the previous key and information about each action (stored in a log file). The previous key is then deleted. A final attestation value is also generated using a publicly non-invertible function and is based at least on the current key. The client device transmits information about the performed actions (stored in a log file), the plurality of action attestation values, and the final attestation value to the server so that the server can authenticate the action attestation values and the final attestation value. If the server cannot authenticate these attestation values, then the server can determine that the log file has been tampered with.
-
Citations
52 Claims
-
1. A method of operation of a client device for enabling a server to evaluate a plurality of actions performed on the client device, said method comprising:
-
for each of said plurality of actions, (a) generating a current key, (b) generating an associated action attestation value based on a previous key and information about said each action, and (c) deleting said previous key;
generating a final attestation value based at least on said current key using a publicly non-invertible function; and
transmitting information about said plurality of actions, a plurality of action attestation values, and said final attestation value to said server so that said server can authenticate said plurality of action attestation values and said final attestation value. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for determining that a log of events transmitted by a first device to a second device has been tampered with, the method comprising:
-
receiving a plurality of action attestation values, a final attestation value, and said log from said first device;
evaluating said plurality of action attestation values and said final attestation value; and
determining that said log has been tampered with based on said evaluating step. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer readable medium comprising computer program instructions capable of being executed in a processor and defining the steps comprising:
-
for each of a plurality of actions performed on a client device, (a) generating a current key, (b) generating an associated action attestation value based on a previous key and information about said each action, and (c) deleting said previous key;
generating a final attestation value based at least on said current key using a publicly non-invertible function; and
transmitting information about said plurality of actions, a plurality of action attestation values, and said final attestation value to a server so that said server can authenticate said plurality of action attestation values and said final attestation value. - View Dependent Claims (18, 19, 20, 21, 22)
-
-
23. A server for determining that a log of events transmitted by a device to said server has been tampered with, the server comprising:
-
means for receiving a plurality of action attestation values, a final attestation value, and said log from said device;
means for evaluating said plurality of action attestation values and said final attestation value; and
means for determining that said log has been tampered with from said means for evaluating. - View Dependent Claims (24, 25, 26, 27, 28, 29)
-
-
30. A computer readable medium comprising computer program instructions capable of being executed in a processor and defining the steps comprising:
-
receiving a plurality of action attestation values, a final attestation value, and a log of events from a first device;
evaluating said plurality of action attestation values and said final attestation value; and
determining that said log has been tampered with based on said evaluating step. - View Dependent Claims (31, 32, 33, 34, 35, 36)
-
-
37. A system comprising:
-
a first device configured to record at least one event in a forward-secure log and configured to compute a final attestation value for at least a portion of said forward-secure log; and
a second device configured to verify the integrity of said at least a portion of said forward-secure log from said final attestation value. - View Dependent Claims (38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 52)
-
-
48. A method comprising:
-
recording, by a first device, at least one event in a forward-secure log;
computing, by said first device, a final attestation value for at least a portion of said forward-secure log; and
verifying, by a second device, the integrity of said at least a portion of said forward-secure log from said final attestation value. - View Dependent Claims (49, 50, 51)
-
Specification