タイムゾーンの癇癪なしに日付と時刻を処理する方法…

ソースノード: 1658325

日付、時間、タイムゾーンは厄介なものです。

夏時間、または一般的に知られている「サマータイム」は事態をさらに悪化させます。多くの国では、通常の営業日との関係で日の出と日の入りの見かけの時間をずらすために、年に XNUMX 回時計を微調整するためです。

たとえば、英国では、正月が近づくと時計がグリニッジ標準時に設定されますが、1 月末に GMT+XNUMX に進み、XNUMX 月末に再び GMT に戻ります。

北アメリカの多くは、非常に非常によく似ていますが、迷惑なほど異なることを行っており、代わりに時計がXNUMX月の初めとXNUMX月の初めに変わる日付を設定しています. (私たちの XNUMX つの国は以前は便利に連携していましたが、今世紀の初めにわずかに離れてしまいました。)

したがって、ボストンの同僚は、ここオックスフォードシャーにいる私たちより XNUMX 時間遅れています。ただし、毎年秋 (または秋、私たちの共通言語での季節の名前についてさえ同意できないことを考えると、季節の位置合わせは言うまでもなく) の短い期間を除きます。私たちの時計)、そうでないときは春です。

サマータイムの反対者は、インターネット時代には必要のない無意味な複雑さとして、夏時間を無視します。これは、インターネット時代のデバイスが一般的に自動的に調整するように管理していることを考えると、少し皮肉なことです. このシステムの支持者は、多くの人々にとって、季節に合わせて労働日をシフトすることはもはや不可能であると指摘しています。なぜなら、彼らの日は、太陽の日周位置ではなく、時計によって支配されているからです。季節に合わせて時計をシフトします。最も簡単な代替手段です。

有害と見なされる DST シフト

実際、チリが慣習的な時計の切り替え日を一時的に変更することを決定した今週、サマータイムのタイミングの問題が頭をよぎった(さらに複雑なことに、季節が逆になるため、時計の変更は赤道の下で逆になる).

一時的な変更は、国の最近の憲法国民投票の日に混乱を避けるために発表されました.

住民投票は 04 年 2022 月 XNUMX 日に行われました。この日は通常、時計が夏に向けて進む日です。

したがって、時計の変更は XNUMX 週間延期されました。これは、土曜日の夜に寝る前に時計をリセットするのを忘れた人々が、日曜日の時間を読み違え、投票所が閉まった後に無意識のうちに地元の投票所に到着してしまう可能性があるためです。彼らの時計がXNUMX時間遅かったので、彼らはXNUMX時間遅れました。

Microsoft でさえ、Windows の時計、オペレーティング システムの時間管理、会議のスケジュールなどが、ユーザーに警告する必要があると感じていました。 ぶっ飛ばされたチリ政府は先月までこの一時的な変更を発表しなかったため、Windows タイムゾーン データベースの土壇場での更新が必要でした。

時計がロックされている場合はどうなりますか?

少なくとも従来のオペレーティング システムのユーザーは、必要に応じて一時的なタイムゾーンの調整を自分で行うことができます。

一部のデバイスは、現地時間を正しく表示するためにファームウェアの更新に完全に依存しています。

たとえば、私たちは旅をするときにコンパスと距離トラッカーとして使用する小型の自転車「コンピューター」を持っています (時間、距離、距離を追跡できれば、地図を見なくてもいかに滑らかかつ自然にナビゲートできるかは驚くべきことです)。方向)…

…そして、デバイスに保存されているあらゆる種類の設定をいじることができます。たとえば、体重 (出力の推測に使用されているようです)、マップ設定、位置参照形式、フォント サイズなどです。日付と時刻を手動で設定します。

少なくとも組み込みアプリについては、それを行う方法はありません。また、デジタル署名されたファームウェアロックされたバージョンの Linux が実行されているため、それらを自分で調整したりハッキングしたりすることもできません。

独自のアドオン アプリを作成し、好きなように日付と時刻を表示できますが、それらをコンパイルして、ある程度制限されたサンドボックス内の専用の仮想マシンで実行する必要があります。

理論的には、デバイスが正常に動作している場合、GPS 受信機を介して絶対時間を認識しており、これまでに製造された最高級、最大、最も高価で最も複雑な機械式クロノメーターよりもはるかに優れた精度を備えています。

また、地球上のどこにいるかを 10 メートルをはるかに下回る精度で認識できるため (記録した移動を振り返ると、どの車線にいたか、またはバスを追い越した場所がわかります)、どの車線を計算できるかを計算できます。現地時間も正確に設定します。

タイムゾーン境界の正確な位置を示すタイムゾーン データベースと、UTC (デジタル時計の GMT の最新の代替手段) からの必要な変位が最新であれば、それは可能です。

そうしないと、デバイスが間違っている場合、頭の中で XNUMX 時間を加算または減算する必要がある場合があります。

一部の地域では 30 分のタイムゾーンが使用されているため、XNUMX 分です。

(整数でないタイムゾーンが存在することを受け入れようとしない人がどれほど多いかは驚くべきことです。 「すべての法定タイムゾーンは時間単位です」、これはインドまたは南オーストラリアの誰にとってもニュースになるでしょう.)

または15分。

(ネパールやユークラに行ってみてください。)

サマータイムの禁止は役に立ちますか?

物事の自然秩序に対する侮辱だと考えているか、家庭の手動式時計を交換することを決して覚えていないという理由で、サマータイムが好きではない人は、「サマータイム」を禁止することを保証します。これらの問題をすべて解決します。

しかしそれ コンピュータのログをどのように理解するかという問題は解決しません、および IT トラブルシューティング、特にサイバーセキュリティの脅威への対応でそれらを使用する方法。 物事が起こった順序は非常に重要です。

たとえば、その時点で最初に悪用されたエクスプロイトに基づいて、火曜日の夜の 03:30 に詐欺師がほぼ確実に侵入したことをログが示している場合…

…03:00 のタイムスタンプが付けられた新しいアカウントの作成は本当に行われたのですか エクスプロイトがトリガーされたか、またはトリガーされた可能性があります その後?

04:00 のタイムスタンプが付けられた構成変更は、攻撃の開始後に発生したため、ロールバックが必要ですか? それとも、ログが異なるタイムゾーンで指定されているために保持する必要がある変更ですか?

何をするか?

ログファイルの作成者とログファイルの消費者の両方として、あなたができることは XNUMX つあります。

タイムスタンプを常に UTC に短縮する (協定世界時)、したがって、ログファイルからタイムゾーンを除外し、 タイムスタンプを常に単純で明確な、アルファベット順にソート可能な形式で記録する.

簡単に言えば、相談する、 RFC 3339、そして固執する ズールー時間 どこでもタイムスタンプ。

これらは次のようになります。

  2022-09-08T17:30:00.00000Z

日付は常に XNUMX 桁の年なので、ミレニアム バグを再発明するリスクはありません。

時間に AM と PM は必要ありません (コンピューターは、少なくとも人間が 24 まで数えられるのと同じくらい簡単に 12 まで数えることができます)。これにより、あいまいさがなくなります。

そして、それ Z 最後に、日付と時刻が表示されていることを示します タイムゾーン調整が適用されていない、したがって、任意の XNUMX ズールー時間 ログ エントリを直接比較して、それらが発生した順序を特定できます。

タイムスタンプが明確であると、脅威への対応がはるかに簡単かつ安全になるため、このアプローチをすべての人に推奨します。


についてさらに読む
タイムスタンプ形式の明確さの重要性


RFC 3339 の気楽な (まだ本物の) 理由

タイムスタンプ:

より多くの 裸のセキュリティ