Pocket CTF Reference · Device home

Four Rooms, Four Clocks

Four facilities recorded events using different local clocks. Normalize their timestamps to determine whether the court's event order is supported.

Objective

By completing this module, you will be able to:

Before you begin

Open Four Rooms, Four Clocks and download the log. Review Time zones and offsets. Use a workspace that keeps the original timestamp beside each normalized value.

Concepts

A timestamp such as 2030-04-05 14:00 UTC+03:00 means the local clock is three hours ahead of UTC, so its UTC time is 11:00. For a negative offset, moving to UTC adds the offset's magnitude. Date boundaries may change during conversion. Only after every event uses the same time basis can you sort the chronology or calculate an interval.

Sensor time, receipt time, and a local clock are preserved separately and converted to UTC. A later receipt of the same event may indicate replay or delay, not a fresh event.

Keep event time, receipt time, source identifier, time-zone offset, and any known clock error in separate columns. In this synthetic example, the sensor's 10:00Z event is received at 10:04Z; a local log at 12:02+02:00 corresponds to 10:02Z. A second receipt of the same event at 10:09Z is not proof of a new event. Time-zone conversion does not correct clock drift; preserve uncertainty and corroborate replay before concluding it.

Suggested tools

Tool practice

Rehearse the worked tool exercise before using challenge data.

Work the example that crosses midnight, then make one row per event with original date, local time, signed offset, and UTC result. Sort complete rows so IDs stay attached. Subtract UTC timestamps for an interval; do not subtract differently zoned clock displays.

Investigation

Observe

Inventory all event IDs, local dates and times, offsets, facilities, and event descriptions. Preserve the sign on every offset and watch for conversions that cross midnight.

Form a hypothesis

What is the earliest-to-latest order after normalization? Which pair of events determines whether a hold preceded an authorization export, and how long separates them?

Test carefully

Convert all four records to UTC before sorting. Submit the numeric suffixes of the event IDs—not the timestamps—in earliest-to-latest order. Record the order and requested elapsed interval separately in the case ledger.

Progressive hints

Hint 1

Do not compare the displayed clock faces directly; first place every event in one time zone.

Hint 2

Subtract a positive UTC offset from local time and add the magnitude of a negative offset. Recheck the date after conversion.

Hint 3

Sort the normalized rows, then copy only each event ID's numeric suffix into the form. Calculate the requested interval from the relevant two UTC rows.

Troubleshooting and reset

If your order is rejected, check each offset sign and any date rollover before re-sorting. Confirm that every suffix appears exactly once and that you entered suffixes rather than hours. A rejected chronology leaves the pane and ledger available for another evidence-based attempt.

Witness seal filing and recovery

Record this pane's critical finding in the active session before filing its witness seal. Supporting findings are optional. An unearned seal is rejected without consuming a failed-flag attempt. To recover an earned seal, revisit this pane or repeat the accepted finding in the same session; neither adds progress twice. All six critical findings and their six filed seals unlock release, seal, and return. Supporting findings strengthen the ending and remain available after it.