Recently a weird problem occurred with some Windows 10 users. Windows system time was jumping backward on their Windows machines. According to a recent post by a Reddit user, it happened with his Windows 10 machine, and it used to show a time in the past. For example, if the current date and time are April 12, 2017 – 09:30 AM, it would show a time in the past (e.g. April 11, 2017 – 8:30 PM or so). This tutorial is on how to solve this problem.
Windows System Time jumps backward
Before going forward for the solution, you should know what causes this issue. This issue occurs because of a problem in the new Secure Time Seeding feature that is part of Windows Time service in Windows 10. Secure Time gathers information from the registry – it collects time stamp data and matches them with the time. If anything goes wrong with the Secure Time functionality, your system may start showing a wrong date and time.
So even if you changed the time and date manually, it will show a time in the past on restart of the computer. It happens on Windows 10 machines only since the Secure Time functionality is turned on, by default.
To solve this issue, you need to force Windows to synchronize time.
But before you begin, open Settings > Time & language > Date & time and check whether your time zone is correctly set or not. If it is, then proceed.
Next, disconnect from the Internet and then run the following command in an elevated CMD and see if it resolves the issue:
If it does not, then Microsoft suggests that you do the following.
Clear W32time registry values & force Windows to sync time over NTP
In an elevated Command Prompt windows, enter the following commands one by one, and hit Enter:
Net stop w32time
W32tm /resync /force
The first command will stop the Time Service. The second command will unregister Time Service. The third command will re-register Time Service. The fourth command restarts the Time Service. The last command will for force Windows to synchronize time.
Reconnect to the Internet and see if it synchronizes correctly.
Disable Secure Time Seeding
If this does not help, you need to disable Secure Time Seeding. So create a system restore point first and then open Registry Editor.
Navigate to the following path:
HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Services > w32time > Config
On your right-hand side, you will find a value called UtilizeSslTimeData. By default, it should be set to 1. You need to change the value to 0.
Instead of changing manually, you may run the following command:
reg add HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W32Time\Config /v UtilizeSslTimeData /t REG_DWORD /d 0 /f
Now, restart your computer.
On restart, run the following commands in an elevated CMD:
Net start w32time
W32tm.exe /resync /force
Now you need to re-enable the Secure Time Seeding feature, To do this, run the following command at an elevated command prompt, and then restart the computer:
reg add HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W32Time\Config /v UtilizeSslTimeData /t REG_DWORD /d 1 /f
Restart your computer and see. Your problem should have been solved.
See this post if Windows Time Service not working & Time Synchronization fails with error.