IP Library Granted Patent US 7,926,096
Granted Patent B2
US 7,926,096 · App. 11/216,363 · Granted Apr 12, 2011

Enforcing time-based transaction policies on devices lacking independent clocks

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,926,096
App. No.
11/216,363
Granted
Apr 12, 2011
Kind
B2
Abstract

A system and a method for operating a device that is not capable of independently maintaining a local time clock to enforce a time-based transaction policy that requires a reliable time reference. The device establishes a secure communications channel to one or more network-attached time sources and inquires of each of the network-attached time-sources as to the current time using the secure communications channel. The device receives the current time from the network-attached time-sources and uses the received current times to estimate a current calendar time and to compute a reliability index associated with the estimated current calendar time. The device uses the estimated current calendar time and reliability index to enforce the time-based transaction policy.

Claims (41)

1. A method for operating a device, that does not have a local time clock that provides a measure of time on power-up of the device, to enforce a time-based transaction policy that requires a reliable time reference, comprising:

establishing a communications channel to each of one or more network-attached time sources wherein at least one of the network attached time sources is a dedicated time server deployed to provide time service to a class of devices to which the device that does not have a local time clock that provides a measure of time on power-up of the device belongs;

using each of the one or more communications channels to inquire from each of the one or more network-attached time-sources as to the current time;

receiving the current time from each of the one or more network-attached time-sources;

using the received current times from the one or more network attached time-sources to estimate a current time and to calculate a reliability index for the estimated current time; and

using the estimated current time and the reliability index associated with the estimated current time to enforce a time-based transaction policy.

2. The method for operating a device, that does not have a local time clock that provides a measure of time on power-up of the device, to enforce a time-based transaction policy that requires a reliable time reference of claim 1 , further comprising: correcting each received current time from the one or more network-attached time-sources to adjust for transmission latency between the device that does not have a local time clock that provides an measure of time on power-up of the device and the network-attached time-source.

3. The method for operating a device, that does not have a local time clock that provides a measure of time on power-up of the device, to enforce a time-based transaction policy that requires a reliable time reference of claim 2 , wherein each of the received current time from the one or more network attached time-sources is adjusted using a round-trip adjusting formula.

4. The method for operating a device, that does not have a local time clock that provides a measure of time on power-up of the device, to enforce a time-based transaction policy that requires a reliable time reference claim of claim 1 , wherein at least one of the network attached time sources is a dedicated time server deployed to provide time service to a class of devices to which the device that does not have a local time clock that provides an measure of time on power-up of the device belongs, wherein the communications channel is a TLS channel established by performing a TLS handshake using a non-expiring certificate.

5. The method for operating a device, that does not have a local time clock that provides a measure of time on power-up of the device, to enforce a time-based transaction policy that requires a reliable time reference of claim 1 , wherein each of the one or more communications channels is a secure communications channel established using a pre-negotiated shared secret.

6. The method for operating a device, that does not have a local time clock that provides a measure of time on power-up up the device, to enforce a time-based transaction policy that requires a reliable time reference of claim 5 wherein the shared secret is one or more symmetric keys.

7. The method for operating a device, that does not have a local time clock that provides a measure of time on power-up of the device, to enforce a time-based transaction policy that requires a reliable time reference of claim 5 , comprising:

programming the shared secret into the device during a manufacturing phase.

8. The method for operating a device, that does not have a local time clock that provides a measure of time on power-up of the device, to enforce a time-based transaction policy that requires a reliable time reference of claim 1 , wherein at least one of the network attached time sources is a general purpose time server.

9. The method for operating a device, that does not have a local time clock that provides a measure of time on power-up of the device, to enforce a time-based transaction policy that requires a reliable time reference of claim 1 , wherein one of the network attached time sources is a host computer to which the device is connected, wherein the method further comprises: operating a web server on the device to receive an initial login request from a web browser operating on the host; in response to the login request from the host, operating the web server to request the web browser to provide a current time over a secure communications channel; receiving from the host the current time; and in response to receiving the current time from the host, transmitting a login page to the host.

10. The method for operating a device, that does not have a local time clock that provides a measure of time on power-up of the device, to enforce a time-based transaction policy that requires a reliable time reference of claim 1 , further comprising: comparing the estimated current time to a last reliable time value stored on the device; and rejecting the estimated current time if the estimated current time is earlier than the last reliable time value.

11. A method for operating a device, that does not have a local time clock that provides a measure of time on power-up of the device, to enforce a transaction policy requiring a reliable time reference, comprising:

establishing a secure communications channel to each of one or more network attached time sources using a procedure selected from the set including: establishing a TLS channel to a dedicated network server having a non-expiring digital certificate, establishing a channel with a dedicated network server using a symmetric key with the dedicated network server, establishing a channel with a general purpose time server for obtaining a value of current time from the general purpose time server, and establishing a channel with a host compute to which the device is connected for obtaining a value of current time from the host computer to which the device is connected, wherein the dedicated network server is deployed to provide time service to a class of devices to which the device that does not have a local time clock that provides a measure of time on power-up of the device belongs;

obtaining a current time value from each of the one or more network attached time sources;

assigning a reliability index to the current time value received from each of the one or more time-sources;

using the received current time value from each of the one or more network attached time sources and the reliability index associated with each received current time value to estimate a current time value and to calculate a reliability index associated with that the estimated current time value; and

using the estimated current time value and the calculated reliability index to permit or deny permission for certain time sensitive transactions.

12. A method for operating a device that does not have a local time clock that provides a measure of time on power-up to enforce a transaction policy requiring a reliable time reference, comprising:

establishing a communications channel to each of one or more network attached time sources using a procedure selected from the set including: establishing a TLS channel to a dedicated network server having a non-expiring digital certificate, establishing a channel with a dedicated network server using a symmetric key with the dedicated network server, establishing a channel with at least one general purpose time server for obtaining a value of current time from the at least one general purpose time server, and establishing a channel with a host computer to which the device is connected for obtaining a value of current time from the host computer to which the device is connected, the dedicated network server is deployed to provide time service to a class of devices to which the device that does not have a local time that provides a measure of time on power-up of the device belongs;

obtaining a current time value from each of the one or more network attached time sources;

assigning a reliability index to the current time received from each of the one or more time-sources as a function of which procedure was used to obtain the current time from such time source;

estimating a current time from the obtained current time value from each of the one or more network attached time sources and calculating a reliability index associated with the estimated current time from the reliability index assigned to each of the received current time values; and

using estimated current time and the calculated reliability index to permit or deny permission for certain time sensitive transactions.

13. A device, that does not have a local time clock that provides a measure of time on power-up of the device, that is capable of enforcing a time-based transaction policy that requires a reliable time reference, comprising:

a central processing unit;

a memory connected to the central processing unit and comprising: a time-agent computer program having instructions to cause the central processing unit to:

establish a secure communications channel to one or more network-attached time sources;

inquire each of the one or more network-attached time-sources as to the current time using the communications channel;

receive the current time from the one or more network-attached time-sources wherein at least one of the one or more network-attached time source is a dedicated time server deployed to provide time service to a class of devices to which the device not capable of independently maintaining a local time clock belongs; and

estimate the current time from the received current time from each of the one or more network-attached time sources and to calculate a reliability index associated with the estimated current time and a reliability index associated with each of the one or more network-attached time sources; and

a policy-agent computer program having instructions to cause the central processing unit to: use the estimated current time and the calculated reliability index to enforce the time-based transaction policy.

14. The device of claim 13 wherein the time-agent further comprises instructions to cause the CPU to correct the received current time from each one or more network-attached time source to adjust for transmission latency between the operating device and the time-source.

15. The device of claim 14 wherein the time-agent further comprises instructions to cause the CPU to adjust each of the one or more received current times using a round-trip adjusting formula.

16. The device of claim 13 wherein the secure communications channel is a TLS channel and the instructions to establish a secure channel comprise instructions to perform a TLS handshake and wherein the secure channel is established using a non-expiring certificate.

17. The device of claim 13 the secure communications channel is a TLS channel and the instructions to establish a secure channel comprise instructions using a shared secret.

18. The device of claim 17 wherein the shared secret is one or more symmetric keys.

Assignments (4)
CHANGE OF NAME Recorded Sep 11, 2023
From: GEMALTO, INC.
To: THALES DIS USA, INC.
Reel/Frame 064859/0777 →
CHANGE OF NAME Recorded Sep 8, 2023
From: GEMALTO, INC.
To: THALES DIS USA, INC.
Reel/Frame 064850/0004 →
MERGER AND CHANGE OF NAME Recorded Sep 7, 2023
From: AXALTO INC.; GEMPLUS CORP.; GEMALTO, INC.
To: GEMALTO, INC.
Reel/Frame 064827/0265 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2006
From: ALI, ASAD MAHBOOB; CASTEL, BERTRAND; VASSILEV, APSTOL; PREVOST, SYLVAIN; SACHDEVA, KAPIL
To: AXALTO INC.
Reel/Frame 017300/0541 →