ワンタイムパスワード前回はワンタイムパスワードの基本的な仕組みについて説明しました。サーバー側とクライアント側で、それぞれ共通のルールに基づいてパスワードを生成させる必要があることを取り上げましたが、今回はOATHが規定しているその生成ルールについて具体的に説明します。ワンタイムパスワード生成方法のキホンOATHでは後述する2つの方法が規定されていますが、基本的な仕組みは同じです。回数や時刻などのカウンタです。これらをサーバーとクライアントの両方で共有しておき、この2つのデータから決められた方法で計算した結果をワンタイムパスワードとして生成します。部分だけが異なります。それぞれの方法について説明しましょう。利用ごとに生成する(生成回数ベース)利用者がトークンのボタンを押すなどしてパスワードを生成するたびに、新しいワンタイムパスワードを生成します。4226としても規定されています。カウンタとして使用されるのは「今回のパスワード生成が何回目のパスワード生成か」を示す値です。この値を共有していなければなりません。クライアント側はパスワードを生成した回数(何回目の生成か)、サーバー側は認証処理を行った回数(何回目の認証か)を持つことになります。このカウンタはサーバー側とクライアント側で同一値になる保証がありません。認証回数となるため)。させる機能を備えておく必要があります。現在の時刻に応じて生成する(時刻ベース)一定時間ごとにワンタイムパスワードを生成します。して規定されており、規格はドラフトとして公開(2011年4月現在)されています。仕組み上は、前述したHOTPの応用といった位置付けになります。カウンタとして使用されるのは「現在の時刻(UnixTime)」です。ワンタイムパスワードの基準が時刻であるため、サーバー側とクライアント側のそれぞれのデバイス(PC、スマートフォン、トークンなど)の時刻が正確でなければなりません。認証の仕組みを作る際にはある程度の時刻のずれは考慮しますが、当然ながら時刻が大幅にずれていると正しく認証できませんから、NTPやGPSなどを使って定期的に時刻が補正されているデバイスが望ましいでしょう。次回は実際のワンタイムパスワードの算出方法を解説しましょう。Yamazaki)プラムシステムズ株式会社所属。VPN(OpenVPN)やセキュリティ関連技術、Webアプリケーションを手がけています。いう疑問は多くの方が持たれますよね。この点は公式サイトなどにもいろいろ書かれているのですが、実際に使ってきたユーザー側としてメリットと思う部分をまとめてみました。概要を取り上げましたが、記事全体にいろいろなヒントが含まれていますので、全文の日本語訳を掲載しています。認証局を構築する現在ダウンロードできるOpenVPNでは、今まで認証局の構築で使用していたeasy-rsaが含まれなくなっています。VPNクライアントに固定IPアドレスを割り当てるOpenVPNでは、接続してきたクライアントのVPNアドレスは動的に割り振られます(その際に割り振られる際のアドレス範囲はOpenVPNサーバー側設定ファイルに基づきます)。【MacOS編】では、いよいよiPhone構成ユーティリティでVoDの設定をしてみましょう。2つのワンタイムパスワードの生成方法について取り上げました。今回はいよいよ実際の生成アルゴリズムを取り上げましょう。TOTPをベースに説明します(ただ、前回も解説したように、基本的なロジックはTOTPとHOTPで同じです)。VPNパフォーマンス対決OpenVPNはLinuxをはじめとした幅広いプラットフォームで動作実績があるのが特徴の一つです。3機種をOpenVPNサーバーとしてセットアップし、OpenVPNのVPNパフォーマンスを測定してみましょう。ワンタイムパスワードの基本的な仕組みについて説明しました。規定しているその生成ルールについて具体的に説明します。されましたので、それを記念(?)して、OpenVPNサーバーにiPhoneから接続する手順をまとめてみましょう。