タイムスタンプ
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/02/16 14:30 UTC 版)
この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。2010年6月) ( |
タイムスタンプ(英: timestamp)とはある出来事が発生した日時・日付・時刻などを示す文字列。狭義には郵便物の発送日時等を示すために押される郵便印のことを指す(画像を参照のこと)[1]。現在ではコンピュータにおける「タイムスタンプ」が良く知られている。
デジタル・タイムスタンプ
コンピュータやデジタルカメラ等の電子機器にて記録されるタイムスタンプ(他との区別のため「デジタル・タイムスタンプ」 英: Digital timestampとも呼ばれる[2]。)は出来事(イベント)が発生した時刻そのものを指すのではなく、コンピュータにイベントが記録された時刻を指す。多くの場合、その違いは重要ではない。ただ、タイムスタンプによりイベントが記録された時刻(例: ログ書き込み時刻)と記録されたイベントの発生時刻の差が開きすぎると整合性に乖離が生じるおそれがあるため、その差は極めて0に近づくべきである。
場合によっては、タイムスタンプは単なるイベントの順序付けである可能性もあるが、その際プログラミングにおいて、タイムスタンプを格納する関数、メソッド(例: date_time[3]フォーマット)等の利用が常に必要となるわけではない。
このデータは通常、一貫性をもったフォーマットで表現され、これにより2つの異なる記録を容易に比較できるようになり、また、時間経過と共に変化するイベントの進行状況を追跡することが可能となる。このような実データに沿って一貫性をもったタイムスタンプを記録する手法をタイムスタンピング(英: timestamping、タイムスタンプ処理)という。
ただし、いくら一貫性を持った記録を行っても、後から改竄することが可能ならば、その信頼性は失われる。不特定多数からのアクセスを許可しているデータログは容易に改竄できる。このためタイムスタンプを含めたデータログを保管するシステム、サーバには物理的なセキュリティ(例: データセンター等安全な場所への機器保管)・論理的なセキュリティ(オペレーティングシステム(OS)レベルでのセキュリティ、ファイルパーミッションや強制アクセス制御など)を施すべきである。
タイムスタンプは一般にイベントのロギングのため、または、時系列("sequence of events", SOE)の評価を行うため利用される。両ケースにおいて、タイムスタンプはイベントのマーキングのために使われる。ファイルシステムにおいては、タイムスタンプはファイルの作成・更新日時を指す場合もある。多くのOSのファイルシステムではファイルの作成日時(UNIXならびにUnix系OSではctimeという。以下同じ)、更新日時(mtime)、アクセス日時(atime)がタイムスタンプとして記録されている。これらのデータがシステムコールで取り出せるOSも存在する(UNIXではstat)。
このようにコンピュータのタイムスタンプは通常ファイルの日付を示す単なるメタデータである。一方、デジタル署名において、ローカル・マシンのタイムスタンプは信頼性の低いものとして利用されない。データの「存在証明」と「完全性」(Integrity、非改竄証明)を担保するため、デジタル署名が利用する「タイムスタンプ」は信頼性が高いものを使用しなければならない。これを実現するものとして、RFC3161 Time stamp protocolが考案されている[4][注釈 1]。これはPKIを利用するタイムスタンプ認証プロトコルであり、"Time Stamping Authority"(TSA)と呼ばれる認証局がクライアントから送信されるデータのハッシュを元に"Time-stamp token"を作成、これをクライアントへ応答として返す一連の手続きである。これによりクライアントは"Time-stamp token"から対象データの「信頼できるタイムスタンプ」を取得できる[5]。デジタル署名と同時に信頼できるタイムスタンプ処理も電子公証制度や民間の電子署名サービス、存在証明・完全性証明の根幹を成す技術であり、「電子署名法」や各国の電子署名関連の法では必須とされている[2]。
例
タイムスタンプの例を挙げる。
- 2005-10-30 T 10:45 UTC
- 2007-11-09 T 11:20 UTC
- Sat Jul 23 02:16:57 2005
- 1256953732(UNIX時間)
- (1969-07-21 T 02:56 UTC) - 月への第一歩。"That's one small step for [a] man, one giant leap for mankind"(「これは一人の人間にとっては小さな一歩だが、人類にとっては偉大な飛躍である。」), Neil Alden Armstrong.
標準化
ISO 8601は日時表現の標準化である[6]。これら標準化表現は、しばしばタイムスタンプの値を生成する際に利用される。
その他の意味
タイムスタンプは次の意味でも使われる。
- タイムコード(ネットワークまたはビデオ技術)
- UNIX時間。1970年1月1日00:00:00 UTCからの経過秒数。プログラミングにおいてはこちらをさすことが多い。[1]
- ICMP Timestamp
- 以下は前述した良く知られるタイムスタンプ。
脚注
注釈
出典
- ^ “timestampの意味”. ejje.weblio.jp. 2011年8月14日閲覧。
- ^ a b “タイムスタンプ/time stamp / デジタル・タイムスタンプ”. アットマーク・アイティ. www.atmarkit.co.jp. 2011年8月14日閲覧。
- ^ “Chapter 6. Boost.Date_Time”. Boost.org. www.boost.org (2005年6月12日). 2011年8月9日閲覧。
- ^ “Internet X.509 Public Key Infrastructure - Time-Stamp Protocol (TSP)”. IETF. www.ietf.org (2001年8月). 2011年8月15日閲覧。
- ^ “タイムスタンプ技術解説 - 最新動向と将来展望”. IPA. www.ipa.go.jp. 2011年8月15日閲覧。
- ^ “ISO 8601:2004(E)”. ISO (2004年12月1日). 2010年3月7日閲覧。 “3.5 Expansion … By mutual agreement of the partners in information interchange, it is permitted to expand the component identifying the calendar year, which is otherwise limited to four digits. This enables reference to dates and times in calendar years outside the range supported by complete representations, i.e. before the start of the year [0000] or after the end of the year [9999].”
関連項目
- 時刻認証局 - その時刻に文章が存在し、その時刻以降に変更や改ざんが行われれていないことを証明する。
- 電子署名
- デジタル署名
- 信頼できるタイムスタンプ処理
- システム時刻
- タイム・スタンプ・カウンタ(Time Stamp Counter, TSC) - Pentium以降に搭載されたx86(80x86, x86-64)CPUのレジスタ。起動時からクロック周波数に合わせてカウントアップする。RDTSC(Read time stamp counter)命令を用いて呼び出すことが可能(アセンブリ言語、インラインアセンブラ)。
- データログ
- syslog - Unix系OSのログ取得デーモン。
- イベントビューアー - Microsoft Windowsのログ読み取りツール。
- 確定日付
- タイムレコーダー (打刻機)
タイムスタンプ
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/03/25 23:57 UTC 版)
ファイルの更新日時をグリニッジ標準時1970年1月1日からの経過秒数に直し、8進数ASCII文字列でセットする。
※この「タイムスタンプ」の解説は、「YMODEM」の解説の一部です。
「タイムスタンプ」を含む「YMODEM」の記事については、「YMODEM」の概要を参照ください。
タイムスタンプ
「タイムスタンプ」の例文・使い方・用例・文例
- タイムスタンプのページへのリンク