ANAが2段階認証を導入へというのは昨日のネタでしたが、2段階認証と2要素認証という言葉は耳にしたことがあると思いますが、その違いをご存知でしょうか?
認証の要素
2段階認証と2要素認証の違いを説明する前に認証の要素について知っておく必要があります。
認証の要素には「知識要素」「所持要素」「生体要素」の3種類の要素があります。
知識要素
もっともよく使われるのがこれです。
- パスワード
- 暗証番号
- PIN
- 秘密の質問
自分だけ(とは限らないけど)が知っているはずの情報に基づく認証要素です。
最低限のセキュリティを確保するための要素ですが、コンピューターの性能が格段に進歩した現在ではパスワードだけではもはや保護しているとは言えない状況になっています。
所持要素
これはある意味自分も知らない要素になります。
- 携帯電話やスマートフォンのSMSへのパスコード送信
- ワンタイムパスワードを発生する小型のデバイス・カードやスマートフォンアプリケーション
自分だけが持っている機器を使って認証要素を知ることができるものです。
生体要素
文字通り自分の体の一部を認証要素として使うものです。バイオメトリック認証ともいいます。
- 指紋
- 静脈
- 虹彩
- 顔
- 声紋
- DNA
- 行動(歩行のパターンなど)
いろいろありますが、普及しているのは指紋・顔はご存知だと思います。虹彩とか声紋、銀行ATMだと静脈もありますね。
2段階認証
2段階認証とは厳密には同じ要素で2つの異なるものを使っての認証となります。
例えば二つの知識要素を組み合わせるのがよくあるパターン。
- パスワード
- 秘密の質問
あるいは2種類のパスワードなどというのも同じです。
要するに自分の頭の中にある知識だけで認証を通過できるものです。
2要素認証
2つの異なる要素での認証です。
例えば、銀行ATMでPINコードを入れて次に静脈で認証するというのがそうです。
もっと至近な例でいえば、IDとパスワードを入れるとあらかじめ登録されている携帯番号に時限パスワードが書かれたSMSが送られてそれを入力するというもの。これが最も多いと思います。
他にパスワード生成アプリ(認証アプリ)をあらかじめスマートフォンに入れてセットしておき、IDとパスワードで認証のあと、認証アプリに表示された数字を入れるというもの。これは認証アプリの場合もあれば、専用のPINコード生成機・生成カードによるものもあります。
docomoなどは結構厳重で一番厳しくすると、知識要素は認証から外します。すなわちパスワードを使わなくする。認証の必要が出てくると画面に数字が表示されると同時に、あらかじめ登録してあるスマートフォンの画面には何種類かの数字が出てきて、その中から画面と同じ数字を選ぶ。さらにその後指紋や顔認証といった生体認証も要求される。これ、かなり厳重ですね。パスワードを使わないのでそもそも漏洩の心配がありません。
セキュリティの基本は安全性の高いパスワード
2段階認証であれ2要素認証であれ、まずは最初の関門であるパスワードを守ることが非常に重要です。
8桁程度の数字だけのパスワードなんてのは無いのも同じと思って支障ありません。
パスワードは以下のような条件を満たすべきです。
- 英大文字・英小文字・数字、許されれば記号も混ぜた16桁以上のランダムな文字列
- 一つの認証に一つのパスワード(誰がなんと言おうが絶対使いまわさない)
これを人の頭で全てこなすのは事実上無理なので支援が必要です。
おすすめはパスワード管理アプリです。
パスワード管理アプリの条件
パスワード管理アプリならなんでも良いわけではありません。
筆者はEnpassを使っています。
パスワード管理アプリを選ぶにあたり守るべき条件があります。
- iOS / Android / WIndows / macOS の全てのプラットフォームで、同時複数インストール可能であり、1ライセンスで複数台のプラットフォームで利用できること。
- プラットフォーム(OS)のバージョンアップに確実に追従すること。
- パスワードデータベースはAES 256bitsで暗号化されていること。
- パスワード生成機能があること。
一つ目の条件は明らかですね。
いつもiOSだけ、Windowsだけとは限りません。さりとてライセンスは1つのハードウェアに1つのライセンスというのもコスパが悪いです。
筆者のようにiOS / Android / WIndows / macOS全て使う場合はこの条件は必須です。今はWindowsだけでも、あるいはiOSだけでも先はどうなるかわかりません。
二つ目も明らかです。
パスワード管理ソフトはそうそう簡単に乗り換えができませんし長く使うものです、
三つ目は、パスワードを格納しているデータベースの暗号化強度の問題です。これが脆弱では話になりません。AES 256bitsは現在民生用に広く使われている暗号化アルゴリズムの中で最も強度が高いとされている方式です。
四つ目は、使い回しをしない複雑なパスワードを生成するためには不可欠ですね、当たり前。人間の頭で毎回ランダムで複雑なパスワードを考えるのは無理だし時間の無駄。
パスワード管理ソフトは重要です。まともなものをちゃんとお金を払って買うべきものであり、これをタダで済まそうなんてセコイことは考えないこと。
手間はかかりますが、自分の情報や資産を守ることができるのは自分だけです。
決して他人は守ってくれません。