Patent ID: 9098677
Filing Date: 2015-08-04
Classification: G06F,G06Q

Abstract:
1. A computer implemented method for automated clock wind back detection, comprising: a client device accessing a server comprising a time authority that provides a trusted current time; said client device sending a request to said server for a license having a license expiration time and an optional license start time and for said trusted current time, and said client device receiving a response thereto from said server; said client device storing a trusted current time received in a last processed response from said server as a time anchor, wherein server responses are considered to be trusted because they are signed by an application publisher; said client device preventing replays of older responses by checking a trusted current time in a subsequent response against the time anchor previously received from said server before applying the trusted current time in the subsequent response as a time anchor, and said client device rejecting the trusted current time in said subsequent response if the trusted current time in the response is not later than the time anchor; updating the time anchor with a current system time at the client device when the current system time at the client device is greater than the time anchor; not updating the time anchor from the current system time at the client device when the current system time at the client device is less than the time anchor, but within a designated tolerance; said client device not updating the time anchor with the current system time at the client device when the client device determines that the license expiration time is not greater than the current system time at the client device, wherein a checkout of the license fails because the license has expired; said client device updating the time anchor with the current system time at the client device when the client device determines that the license expiration time is greater than the time anchor, wherein a checkout of the license fails because the license has expired; said client device determining if the current system time at the client device is not greater than the license expiration time and the current system time at the client device is less than the license start time, wherein a license checkout fails because the license has not started; said client device determining if the current system time at the client device is not greater than the license expiration time nor less than the license start time, and comparing the current system time at the client device to the time anchor; and thereafter performing the steps of: