時間ベースのワンタイム パスワードとは何ですか? また、使用する必要がありますか?
時間ベースのワンタイム パスワード (TOTP) は、標準のワンタイム パスワード コンピュータ アルゴリズムです。これらは、ハッシュベースのメッセージ認証コード (HMAC) ワンタイム パスワード (HMAC ベースのワンタイム パスワード、略して HOTP) を拡張したものです。
TOTP は、簡単に盗まれたり忘れられたりする SMS メッセージや物理ハードウェア トークンなど、従来の寿命の長い 2 要素認証ソリューションの代わりに、または追加の要素として使用できます。では、時間ベースのワンタイム パスワードとは正確には何なのでしょうか? それらはどのように機能しますか?
TOTPとは何ですか?
TOTP は、ユーザー認証のアルゴリズムによって現在の時刻に合わせて生成される一時的な使い捨てパスコードです。これは、2 要素認証 (2FA) または多要素認証 (MFA) に基づく、アカウントの追加のセキュリティ レイヤーです。これは、ユーザー名とパスワードを入力した後、時間ベースで有効期間が短い特定のコードを入力する必要があることを意味します。
TOTP は、標準アルゴリズムを使用して、グリニッジ標準時 (GMT) を使用して一意の数値のワンタイム パスコードを作成するため、そのように名付けられました。つまり、その期間中の現在時刻からパスコードが生成されます。コードは、QRコードまたは平文のいずれかを介して、認証サーバーへのユーザー登録時に提供される共有シークレットまたはシークレットシードパスコードからも生成されます。
このパスコードはユーザーに表示され、指定された期間使用することが期待されており、その後は有効期限が切れます。ユーザーは、ワンタイム パスコード、ユーザー名、通常のパスワードを限られた時間内にログイン フォームに入力します。有効期限が切れると、コードは無効になり、ログイン フォームで使用できなくなります。
TOTP には、30 ~ 60 秒ごとに変化する、通常は 4 ~ 6 桁の動的な数値コードの文字列が含まれます。Internet Engineering Task Force (IETF) は、 RFC 6238で説明されている TOTP を公開し、標準アルゴリズムを使用してワンタイム パスワードを取得します。
オープン認証(OATH)のイニシアチブのメンバーは、TOTP の発明の背後にある頭脳です。それは特許の下で独占的に販売され、それ以来、さまざまな認証ベンダーが標準化に従ってそれを販売しています. 現在、クラウド アプリケーション プロバイダーによって広く使用されています。ユーザーフレンドリーでオフラインで使用できるため、飛行機内やネットワークのカバレッジがない場合に最適です。
TOTP はどのように機能しますか?
TOTP は、アプリの 2 番目の認証要素として、アカウントに追加のセキュリティ レイヤーを提供します。これは、ログインする前に 1 回限りの数値パスコードを提供する必要があるためです。これらは一般に「ソフトウェア トークン」、「ソフト トークン」と呼ばれています。 、および「アプリベースの認証」に対応しており、Google AuthenticatorやAuthyなどの認証アプリで使用されています。
アカウントのユーザー名とパスワードを入力すると、アカウントを所有していることの証明として有効な TOTP コードを別のログイン インターフェイスに追加するように求められます。
一部のモデルでは、TOTP は SMS テキスト メッセージを介してスマートフォンに届きます。QR 画像をスキャンすることで、認証用スマートフォン アプリケーションからコードを取得することもできます。この方法は最も広く使用されており、通常、コードは約 30 秒または 60 秒後に期限切れになります。ただし、一部の TOTP は 120 秒または 240 秒続くことがあります。
パスコードは、サーバーが認証アプリケーションを使用するのではなく、ユーザー側で作成されます。このため、ログインするたびにサーバーが SMS を送信する必要がないように、常に TOTP にアクセスできます。
TOTP を取得する方法は他にもあります。
- ハードウェア セキュリティ トークン。
- サーバーからの電子メール メッセージ。
- サーバーからの音声メッセージ。
TOTP は時間ベースであり、数秒以内に期限切れになるため、ハッカーはパスコードを予測するのに十分な時間がありません。そのようにして、脆弱なユーザー名とパスワード認証システムに追加のセキュリティを提供します.
たとえば、TOTP を使用するワークステーションにログインするとします。最初にアカウントのユーザー名とパスワードを入力すると、システムが TOTP を要求します。次に、ハードウェア トークンまたは QR 画像から読み取り、TOTP ログイン フィールドに入力します。システムがパスコードを認証すると、アカウントにログインします。
パスコードを生成する TOTP アルゴリズムには、デバイスの時間入力とシークレット シードまたはキーが必要です。TOTP を生成して検証するためにインターネット接続は必要ありません。これが、認証アプリがオフラインで動作できる理由です。TOTP は、自分のアカウントを使用したいユーザーが、飛行機での移動中やネットワーク接続が利用できない遠隔地で認証を必要とする場合に必要です。
TOTP はどのように認証されますか?
次のプロセスは、TOTP 認証プロセスがどのように機能するかについての簡単で簡単なガイドを提供します。
ユーザーがクラウド ネットワーク アプリケーションなどのアプリケーションにアクセスする場合、ユーザー名とパスワードを入力した後に TOTP を入力するよう求められます。彼らは 2FA を有効にするように要求し、TOTP トークンは TOTP アルゴリズムを使用して OTP を生成します。
ユーザーが要求ページにトークンを入力すると、セキュリティ システムは、現在の時刻と共有シークレットまたはキーの同じ組み合わせを使用して TOTP を構成します。システムは 2 つのパスコードを比較します。一致する場合、ユーザーは認証され、アクセスが許可されます。ほとんどの TOTP は QR コードと画像で認証されることに注意してください。
TOTP と HMAC ベースのワンタイム パスワード
HMAC ベースのワンタイム パスワードは、TOTP が構築されるフレームワークを提供しました。TOTP と HOTP はどちらも類似点を共有しています。どちらのシステムも、パスコードを生成するための入力の 1 つとして秘密鍵を使用するからです。ただし、TOTP は現在の時刻を他の入力として使用しますが、HOTP はカウンターを使用します。
さらに、セキュリティの観点から、生成されたパスワードは 30 ~ 60 秒後に期限切れになり、その後新しいパスワードが生成されるため、TOTP は HOTP よりも安全です。HOTP では、パスコードは使用するまで有効です。このため、多くのハッカーが HOTP にアクセスし、それを使用してサイバー攻撃を成功させることができます。HOTP はまだ一部の認証サービスで使用されていますが、ほとんどの一般的な認証アプリでは TOTP が必要です。
TOTP を使用する利点は何ですか?
TOTP は、追加のセキュリティ レイヤーを提供するため、有益です。ユーザー名とパスワードのシステムだけでは脆弱であり、一般的に中間者攻撃の対象となります。ただし、TOTP ベースの 2FA/MFA システムでは、ハッカーが従来のパスワードを盗んだとしても、TOTP にアクセスする十分な時間がないため、アカウントをハッキングする機会はほとんどありません。
TOTP 認証によるセキュリティの強化
サイバー犯罪者は簡単にユーザー名とパスワードにアクセスし、アカウントをハッキングできます。ただし、TOTP ベースの 2FA/MFA システムを使用すると、TOTP には時間制限があり、数秒以内に期限切れになるため、より安全なアカウントを持つことができます。TOTP を実装する価値があることは明らかです。
コメントを残す