メインコンテンツまでスキップ

4.2. Description (説明)

4.2. Description (説明)

基本的に, TOTP を TOTP = HOTP(K, T) として定義します。ここで, T は整数であり, 初期カウンター時間 T0 と現在の Unix 時間の間のタイムステップ数を表します。

より具体的には, T = (現在の Unix 時間 - T0) / X であり, 計算ではデフォルトの床関数が使用されます。

たとえば, T0 = 0 でタイムステップ X = 30 の場合, 現在の Unix 時間が 59 秒であれば T = 1 であり, 現在の Unix 時間が 60 秒であれば T = 2 です。

このアルゴリズムの実装は, 2038 年を超える場合に 32 ビット整数より大きい時間値 T をサポートしなければなりません (MUST)。システムパラメータ X と T0 の値は, プロビジョニングプロセス中に事前に確立され, プロビジョニングステップの一部として証明者と検証者の間で通信されます。プロビジョニングフローはこの文書の範囲外です; このようなプロビジョニングコンテナ仕様については [RFC6030] を参照してください。