# US 2017/0317838 A1 · Systems, Methods and Apparatuses for Secure Time Management

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2017/0317838 A1
- Document ID: US20170317838A1
- Status: Published application
- Kind: A1
- Application number: 15/595,036
- Filed: 2017-05-15
- Published: 2017-11-02
- Earliest claimed: 2012-06-18
- Assignees: OLogN Technologies AG
- Applicants: OLogN Technologies AG
- Inventors: Sergey IGNATCHENKO; Dmytro IVANCHYKHIN
- Web page: https://patentgrep.com/patent/US20170317838A1

## CPC

- H04L 9/3268: {using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]}
- G06F 1/12: Synchronisation of different clock signals {provided by a plurality of clock generators}
- G06F 12/1408: {by using cryptography (for digital transmission H04L9/00)}
- G06F 21/725: {operating on a secure reference time value}
- H04L 9/3247: {involving digital signatures}
- H04L 9/3263: {involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements (network architectures or network communication protocols for supporting authentication of entities using certificates in a packet data network H04L63/0823)}
- H04L 9/3297: {involving time stamps, e.g. generation of time stamps}
- G06F 1/04: Generating or distributing clock signals or signals derived directly therefrom
- G06F 1/10: Distribution of clock signals {, e.g. skew}
- G06F 1/14: Time supervision arrangements, e.g. real time clock
- G06F 2212/1052: Security improvement
- H04L 9/32: including means for verifying the identity or authority of a user of the system {or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials}
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

The systems, methods and apparatuses described herein provide a computing environment that includes secure time management. An apparatus according to the present disclosure may comprise a non-volatile storage to store a synchronization time and a processor. The processor may be configured to generate a request for a current time, transmit the request to a trusted timekeeper, receive a digitally signed response containing a current, real-world time from the trusted timekeeper, verify the digital signature of the response, verify that the response is received within a predefined time, compare a nonce in the request to a nonce in the response, determine that the current, real-world time received from the trusted timekeeper is within a range of a current time calculated at the apparatus and update the synchronization time with the current, real-world time in the response.

## Claims

### Claim at position 1

1-45. (canceled)

### Claim 46

A computing system comprising:
a first counter operating at a first frequency and configured to increment a first count value, wherein the first counter operates in a first energy mode;
a second counter operating at second frequency and configured to increment a second count value, wherein the second frequency is different than the first frequency;
a non-volatile machine-readable memory configured to store one or more event data; and
a processor configured to:
determine a first current time value based upon at least one of the one or more event data and at least one of the first count value and the second count value; and
synchronize the first current time value with a second current time value upon determining that the second current time value is within a predetermined range of the first current time value.

### Claim 47 (depends on 46)

The system of claim 46, wherein the second counter is configured to operate in a second energy mode, and wherein the computing system switches from operating in the first energy mode to operating in the second energy mode upon the processor identifying a lack of power supply for operating in the first energy mode.

### Claim 48 (depends on 46)

The system of claim 46, further comprising a battery from which the computing system consumes energy operating in a second energy mode.

### Claim 49 (depends on 46)

The system of claim 46, wherein the second energy mode is a low energy mode, and wherein the computing system consumes comparatively less energy operating in the second energy mode than operating in the first energy mode.

### Claim 50 (depends on 46)

The system of claim 46, wherein the second frequency is comparatively lower than the first frequency, and wherein the computing system consumes comparatively less energy operating at the second frequency than operating at the first frequency.

### Claim 51 (depends on 47)

The system of claim 47, wherein the first counter is configured to indicate a first elapsed time beginning at an initialization time of the computing system, wherein the first count value is based on the first elapsed time.

### Claim 52 (depends on 51)

The system of claim 51, wherein the processor is further configured to update the event data to indicate the computing system is operating in the second energy mode, and
wherein the second counter is configured to indicate a second elapsed time representing an amount of time that the computing system operates in the second energy mode, wherein the second count value is based on the second elapsed time.

### Claim 53 (depends on 52)

The system of claim 52, wherein the processor is further configured to:
switch the computing system from operating in the second energy mode to operating in the first energy mode; and
store into the memory the second elapsed time representing the amount of time that the computing system operated in the second energy mode.

### Claim 54 (depends on 53)

The system of claim 53, wherein the processor is further configured to determine an amount of timer drift for the second counter accumulated from the initialization time of the second counter based on the first elapsed time and a maximum drift time stored in the non-volatile memory.

### Claim 55 (depends on 54)

The system of claim 54, wherein the processor is further configured to store into the non-volatile memory a value of the second counter at each instance the computing system switches operation between the first energy mode and the second energy mode, and
wherein the processor determines the amount of timer drift based on each value of the second counter at each instance the computing system switches operation between the first energy mode and the second energy mode.

### Claim 56

A computer-implemented method for keeping time for a computing system, the method comprising:
incrementing, by a first counter operating at a first frequency, a first count value, wherein the first counter operates in a first energy mode;
incrementing, by a second counter operating at a second frequency, a second count, wherein the second frequency is different than the first frequency;
storing, by a non-volatile machine readable memory, one or more event data;
determining, by a processor, a first current time value based upon at least one of the one or more event data and at least one of the first count value and the second count value; and
synchronizing the first current time value with a second current time value upon the processor determining that the second current time value is within a predetermined range of the first current time value.

### Claim 57 (depends on 56)

The method of claim 56, wherein the second counter is configured to operate in a second energy mode, the method further comprising:
identifying, by the processor, a lack of power supply for operating in the first energy mode, and
switching from operating in the first energy mode to operating in the second energy mode.

### Claim 58 (depends on 56)

The method of claim 56, wherein the computing system further comprises a battery from which the computing system consumes energy operating in a second energy mode.

### Claim 59 (depends on 57)

The method of claim 57, wherein the second energy mode is a low energy mode, and wherein the computing system consumes comparatively less energy operating in the second energy mode than operating in the first energy mode.

### Claim 60 (depends on 57)

The method of claim 57, wherein the second frequency is comparatively lower than the first frequency, and wherein the computing system consumes comparatively less energy operating at the second frequency than operating at the first frequency.

### Claim 61 (depends on 57)

The method of claim 57, wherein the first counter is configured to indicate a first elapsed time beginning at an initialization time of the computing system, and wherein the first count value is based on the first elapsed time.

### Claim 62 (depends on 61)

The method of claim 61, further comprising updating, by the processor, the event data in non-volatile memory to indicate that the computing system is operating in the second energy mode,
wherein the second counter is configured to indicate a second elapsed time representing an amount of time that the computing system operates in the second energy mode, wherein the second count value is based on the second elapsed time.

### Claim 63 (depends on 62)

The method of claim 62, further comprising:
switching from operating in the second energy mode to operating in the first energy mode; and
storing, by the processor, into the memory the second elapsed time representing the amount of time that the computing system operated in the second energy mode.

### Claim 64 (depends on 63)

The method of claim 63, further comprising determining, by the processor, an amount of timer drift for the second counter accumulated from the initialization time of the second counter based on the first elapsed time and a maximum drift time stored in the non-volatile memory.

### Claim 65 (depends on 64)

The method of claim 64, further comprising:
storing, by the processor, into the non-volatile memory a value of the second counter at each instance the computing system switches operation between the first energy mode and the second energy mode; and
determining, by the processor, the amount of timer drift based on each value of the second counter at each instance the computing system switches operation between the first energy mode and the second energy mode.
