sclockadj stands for slow clock adjuster.
- preventing clock jumps (bad for all kinds of issues, fingerprintable, generally bad in computing)
- adjusts time using the same algorithm as NTP
- using clock_settime
sclockadj (version 1) is a mess.
- causes 100% cpu after wake up from suspend
- systemd spams journal due to time changed by sclockadj, rewrite of sclockadj, sclockadj2
- might be fingerprintable specific to Whonix since it uses clock_settime rather than “same as NTP” (adjtime)
sclockadj2 is supposed to fix these issues:
- https://www.whonix.org/wiki/Dev/TimeSync#sclockadj2
- https://github.com/Whonix/sdwdate/pull/4
- https://github.com/AvdN might finish development of it
- using adjtime
current status
- “same as NTP” is hard since it’s a complex software
goal:
- We want to use sdwdate since that is safer (and working) over Tor.
- A remote server being connected to (over Tor of course) might see the local VM clock through local clock leaks. And see it being adjusted. Ideally it would look to the server like:
- Could be a normal (Debian or so) host system running Tor.
- Running the currently most popular time synchronization software. (NTP?)
- Currently being its time adjusted using that popular time sync software.
- Not knowing it’s actually sdwdate / slow clock adjuster.
discussion:
The old goal was “make the time adjustments looking the same as NTP while actually using sdwdate”. Since Debian apparently switched to systemd-timesyncd by default (?), and since “same as NTP” is hard, what about switching the goal to “same as systemd-timesyncd”?