Method for using time from a trusted host device
First Claim
Patent Images
1. A method for performing a time-based operation in a memory device, the method comprising:
- performing the following in a memory device;
authenticating an entity running on a host device in communication with the memory device;
determining an identification of the host device;
receiving a request to perform a time-based operation from the entity;
determining whether the host device is trustworthy based on the identification of the host device;
in response to determining that the host device is trustworthy, performing the following;
using a time value from the host device to perform the time-based operation; and
in response to determining that the host device is not trustworthy, performing the following;
determining accuracy of previously-measured active time by comparing the previously-measured active time with a first time stamp obtained by the memory device from a trusted time server through the host device, which has been determined to be not trustworthy, wherein the previously-measured active time indicates time elapsed when the memory device was previously active, the memory device being previously active when it was connected to and received power from the host device;
measuring current active time of the memory device relative to a second time stamp obtained by the memory device from the trusted time server through the host device, wherein the measuring is performed internally in the memory device when the memory device is active, the memory device being active when it is connected to and receives power from the host device;
adjusting the measured current active time using the determined accuracy;
generating a time estimate by applying the adjusted measured current active time to the second time stamp; and
using the generated time estimate to perform the time-based operation.
3 Assignments
0 Petitions
Accused Products
Abstract
A method for using time from a trusted host device is disclosed. In one embodiment, an application on a memory device receives a request to perform a time-based operation from an entity authenticated by the memory device, wherein the entity is running on a host device. The application selects time from the host device instead of time from a time module on the memory device to perform the time-based operation and uses the time from the host device to perform the time-based operation. Other embodiments are disclosed, and each of the embodiments can be used alone or together in combination.
71 Citations
46 Claims
-
1. A method for performing a time-based operation in a memory device, the method comprising:
-
performing the following in a memory device; authenticating an entity running on a host device in communication with the memory device; determining an identification of the host device; receiving a request to perform a time-based operation from the entity; determining whether the host device is trustworthy based on the identification of the host device; in response to determining that the host device is trustworthy, performing the following; using a time value from the host device to perform the time-based operation; and in response to determining that the host device is not trustworthy, performing the following; determining accuracy of previously-measured active time by comparing the previously-measured active time with a first time stamp obtained by the memory device from a trusted time server through the host device, which has been determined to be not trustworthy, wherein the previously-measured active time indicates time elapsed when the memory device was previously active, the memory device being previously active when it was connected to and received power from the host device; measuring current active time of the memory device relative to a second time stamp obtained by the memory device from the trusted time server through the host device, wherein the measuring is performed internally in the memory device when the memory device is active, the memory device being active when it is connected to and receives power from the host device; adjusting the measured current active time using the determined accuracy; generating a time estimate by applying the adjusted measured current active time to the second time stamp; and using the generated time estimate to perform the time-based operation. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for performing a time-based operation in a memory device, the method comprising:
-
performing the following in a memory device; receiving a request to authenticate an entity running on a host device; authenticating the entity using an authentication method specified in an access control record (ACR) and time from a time module on a memory device, wherein the ACR associates the entity with an application in the memory device; determining an identification of the host device; receiving a request from the entity for the application to perform a time-based operation; determining whether the host device is trustworthy based on the identification of the host device; in response to determining that the host device is trustworthy, performing the following; using a time value from the host device to perform the time-based operation; and in response to determining that the host device is not trustworthy, performing the following; determining accuracy of previously-measured active time by comparing the previously-measured active time with a first time stamp obtained by the memory device from a trusted time server through the host device which has been determined to be not trustworthy, wherein the previously-measured active time indicates time elapsed when the memory device was previously active, the memory device being previously active when it was connected to and received power from the host device; measuring current active time of the memory device relative to a second time stamp obtained by the memory device from the trusted time server through the host device, wherein the measuring is performed internally in the memory device when the memory device is active, the memory device being active when it is connected to and receives power from the host device; adjusting the measured current active time using the determined accuracy; generating a time estimate by applying the adjusted measured current active time to the second time stamp; and using the generated time estimate to perform the time-based operation. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A method for performing a time-based operation on a memory device previously connected to a first host device and having stored a time value previously received from the first host device, the method comprising:
-
performing the following in a processor of the memory device when the memory device is connected with a second host device; retrieving, from a memory array of the memory device, the time value previously received from the first host device; authenticating an entity running on the second host device; determining an identification of the second host device; receiving a time value from the second host device; comparing the second time value received from the second host device with the time value previously received from the first host device; determining whether the second host device is trustworthy based on the identification of the second host device; in response to determining that the second host device is trustworthy, performing the following; using the time value received from the second host device to perform the time-based operation; in response to determining that the second host device is not trustworthy, performing the following; determining accuracy of previously-measured active time by comparing the previously-measured active time with a first time stamp obtained by the memory device from a trusted time server through the second host device, which has been determined to be not trustworthy, wherein the previously-measured active time indicates time elapsed when the memory device was previously active, the memory device being previously active when it was connected to and received power from either the first host device or the second host device; measuring current active time of the memory device relative to a second time stamp obtained by the memory device from the trusted time server through the second host device, wherein the measuring is performed internally in the memory device when the memory device is active, the memory device being active when it is connected to and receives power from the second host device; adjusting the measured current active time using the determined accuracy; generating a time estimate by applying the adjusted measured current active time to the second time stamp; and using the generated time estimate to perform the time-based operation. - View Dependent Claims (15, 16)
-
-
17. A method for performing a time-based operation on a memory device, the method comprising:
-
performing the following in a memory device; authenticating a host device using a non-time-based authentication system; determining an identification of the host device; receiving a time value from the host device; and determining whether the host device is trustworthy based on the identification of the host device; in response to determining that the host device is trustworthy, performing the following; using the time value received from the host device to perform a time-based operation; in response to determining that the host device is not trustworthy, performing the following; determining accuracy of previously-measured active time by comparing the previously-measured active time with a first time stamp obtained by the memory device from a trusted time server through the host device, which has been determined to be not trustworthy, wherein the previously-measured active time indicates time elapsed when the memory device was previously active, the memory device being previously active when it was connected to and received power from the host device; measuring current active time of the memory device relative to a second time stamp obtained by the memory device from the trusted time server through the host device, wherein the measuring is performed internally in the memory device when the memory device is active, the memory device being active when it is connected to and receives power from the host device; adjusting the measured current active time using the determined accuracy; generating a time estimate by applying the adjusted measured current active time to the second time stamp; and using the generated time estimate to perform the time-based operation. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. A memory device comprising:
-
a memory array; and a processor in communication with the memory array and operative to provide; a security system operative to authenticate an entity running on a host device and determine an identification of the host device; a time module that keeps track of time; and an application operative to perform a time-based operation, wherein the application is further operative to; determine whether the host device is trustworthy based on the identification of the host device; in response to determining that the host device is trustworthy, performing the following; use a time value from the host device instead of a time value from the time module to perform the time-based operation; in response to determining that the host device is not trustworthy, performing the following; determine accuracy of previously-measured active time by comparing the previously-measured active time with an actual time from a first time stamp obtained by the memory device from a trusted time server through the host device, which has been determined to be not trustworthy, wherein the previously-measured active time indicates time elapsed when the memory device was previously active, the memory device being previously active when it was connected to and received power from the host device; measure current active time of the memory device relative to a second time stamp obtained by the memory device from the trusted time server through the host device, wherein the measuring is performed internally in the memory device when the memory device is active, the memory device being active when it is connected to and receives power from the host device; adjust the measured current active time based on the determined accuracy; generate a time estimate by applying the adjusted measured current active time to the second time stamp; and use the generated time estimate to perform the time-based operation. - View Dependent Claims (25, 26, 27, 28, 29, 30)
-
-
31. A memory device comprising:
-
a memory array; and a processor in communication with the memory array and operative to; receive a request to authenticate an entity running on a host device; authenticate the entity using an authentication method specified in an access control record (ACR), wherein the ACR associates the entity with an application in the memory device; determine an identification of the host device; receive a request from the entity for the application to perform a time-based operation; determine whether the host device is trustworthy based on the identification of the host device; in response to determining that the host device is trustworthy, performing the following; use a time value from the host device to perform the time-based operation; in response to determining that the host device is not trustworthy, performing the following; determine accuracy of previously-measured active time by comparing the previously-measured active time with a first time stamp obtained by the memory device from a trusted time server through the host device, which has been determined to be not trustworthy, wherein the previously-measured active time indicates time elapsed when the memory device was previously active, the memory device being previously active when it was connected to and received power from the host device; measure current active time of the memory device relative to a second time stamp obtained by the memory device from the trusted time server through the host device, wherein the measuring is performed internally in the memory device when the memory device is active, the memory device being active when it is connected to and receives power from the host device; adjust the measured current active time using the determined accuracy; generate a time estimate by applying the adjusted measured current active time to the second time stamp; and use the generated time estimate to perform the time-based operation. - View Dependent Claims (32, 33, 34, 35, 36)
-
-
37. A memory device comprising:
-
a connector operative to removably connect the memory device with a first host device and a second host device; a memory array operative to store a time value previously received from the first host device; and a processor in communication with the memory array and the connector and operative to perform the following when the memory device is connected with the second host device; retrieve, from the memory array, the time value previously received from the first host device; authenticate an entity running on the second host device; determine an identification of the second host device; receive a time value from the second host device; compare the time value from the second host device with the stored time previously received from the first host device; determine whether the second host device is trustworthy based on the identification of the second host device; in response to determining that the second host device is trustworthy, performing the following; use the time value received from the second host device to perform the time-based operation; in response to determining that the second host device is not trustworthy, performing the following; determine accuracy of previously-measured active time by comparing the previously-measured active time with a first time stamp obtained by the memory device from a trusted time server through the second host device, which has been determined to be not trustworthy, wherein the previously-measured active time indicates time elapsed when the memory device was previously active, the memory device being previously active when it was connected to and received power from either the first host device or the second host device; measure current active time of the memory device relative to a second time stamp obtained by the memory device from the trusted time server through the second host device, wherein the measuring is performed internally in the memory device when the memory device is active, the memory device being active when it is connected to and receives power from the second host device; adjust the measured current active time using the determined accuracy; generate a time estimate by applying the adjusted measured current active time to the second time stamp; and use the generated time estimate to perform the time-based operation. - View Dependent Claims (38, 39)
-
-
40. A memory device comprising:
-
a memory array; and a processor in communication with the memory array and operative to; authenticate a host device using a non-time-based authentication system; determine an identification of the host device; receive a time value from the host device; determining whether the host device is trustworthy based on the identification of the host device; in response to determining that the host device is trustworthy, performing the following; use the time value received from the host device to perform a time-based operation in response to determining that the host device is not trustworthy, performing the following; determine accuracy of previously-measured active time by comparing the previously-measured active time with an a first time stamp obtained by the memory device from a trusted time server through the host device, which has been determined to be not trustworthy, wherein the previously-measured active time indicates time elapsed when the memory device was previously active, the memory device being previously active when it was connected to and received power from the host device; measure current active time of the memory device relative to a second time stamp obtained by the memory device from the trusted time server through the host device, wherein the measuring is performed internally in the memory device when the memory device is active, the memory_device being active when it is connected to and receives power from the host device; adjust the measured current active time using the determined accuracy; generate a time estimate by applying the adjusted measured current active time to the second time stamp; and use the generated time estimate to perform the time-based operation. - View Dependent Claims (41, 42, 43, 44, 45, 46)
-
Specification