会員サイト構築の記事
ARTICLE二段階認証とは?二要素認証との違いや安全性と構築時の手順や注意点
二段階認証は、主として各種Web上のサービスを正規のユーザーが安全に利用するための認証の仕組みです。ここでは二要素認証との違いや二段階認証導入の必要性や導入手段とその安全性について述べると共に導入時の注意点について解説していきます。
目次
二段階認証とは?
二段階認証について説明すると共に、一般的に認証を行うための三要素について解説していきましょう。
二段階認証とその目的
二段階認証とは、システムへの不正なログインを回避し登録された利用者のみが安全に利用できるような仕組みの提供を目的として、ログインする際にユーザーIDとパスワードに加え、たとえば指紋、静脈などの生体情報やセキュリティコードなどを入力させ、合計2回の認証をさせる仕組みのことをいいます。
認証を行うための要素
認証を行うための要素はいくつかの種類に整理できます。知識の要素、所有の要素、生体情報の要素の三種類です。
知識の要素
知識の要素とは人間の知識や思考に基づいて作り出される情報を指します。過去の経験や体験に基づく数字の組み合わせや、自身の嗜好に基づくものなどが考えられますが、家族や自身の誕生日などをパスワードの一部にするなど、安易な設定を行うことは避けなければなりません。
所有の要素
所有の要素とは自身で保有する物を指し、これらを用いて認証する方法です。たとえばスマホやタブレットを使ってパスコードを受信させる、ワンタイムパスワードを使う、ICカード内の情報を使って認証させるなどの方法があります。
生体情報の要素
生体情報の要素とは、顔、指紋、虹彩、静脈などの情報です。これらの生体情報はすべての人がそれぞれ異なる特徴を有することから認証方法として使われています。従来は、コンピュータの処理スピードや導入コストの問題から限定的な分野でのみ使用されていましたが、最近ではPCやスマホなどでも指紋認証や虹彩認証が使用されるなど、その利用範囲は広がってきています。
二段階認証と二要素認証の違い
二段階認証では、ユーザーIDとパスワードによる認証に加え、認証三要素のうちの任意の要素による認証を+1回(段階)行い、合計で2回(段階)の認証を行わせる認証方法です。従って、2回目の認証は、もう一度ユーザーIDとパスワードを使うことも可能ですが、認証の強度を高めるためにパスコード認証や指紋認証などほかの要素による認証を行うことが一般的です。
二要素認証の場合も二段階認証と同様に、合計で2回の認証を行いますが、1回目と2回目では異なる認証要素で行わなければなりません。従って、1回目にユーザーIDとパスワードによる認証を行った場合、2回目はこれ以外の要素を選択する必要があります。つまりユーザーの所有の要素や生体情報の要素を使います。この点が、二段階認証と異なります。
二要素認証とは?二段階認証との違い・意識することや導入ポイントも
二段階認証を導入する必要性・メリット
Amazonや楽天などのオンラインショッピングやGoogle、FacebookなどのSNSサイトにおけるサービスの広がりが挙げられます。これらのサービスの中で、EC機能を有するサイトにおいてハッキングによって、ユーザー情報の流出は致命的です。ユーザーの財産に深刻な打撃を与えかねないことから安全なユーザー認証のニーズはますます高まりつつあります。
従来のユーザーIDとパスワードによる単一ステップの認証方法はセキュリティ的に不安があることから、安全性を強化した二段階認証が求められています。
ユーザーIDとパスワードが知られてしまっても、異なる認証方法をもう1ステップ加えることにより安全性は格段に上がります。たとえばあらかじめユーザーが所有するスマホをシステムに登録しておき、認証の要求が来たときにSMSにてパスコードを送信し、これをシステムに入力させることにより2ステップ目の認証を行う方法が、最近ではよく使われています。
二段階認証の導入と実現手段
二段階認証の導入と実現方法について解説していきましょう。
二段階認証の導入
二段階認証の対象となるサービスと、各種認証手段の組み込み方法について解説していきます。
二段階認証の対象サービス
認証手段が必要なサービスは、業務用システムや各種商用システムを提供するクラウド上のサービスなど多岐に渡ります。これらのサービスを利用する際、ユーザーIDやパスワードを入力することによって初めてログインして、各種サービスを利用できる、単一ステップの認証方式(単要素の認証方式)を取っているのが一般的なスタイルです。
これらのシステムの中でEC機能に伴う決済機能を搭載するサイトや個人情報およびそのほか秘匿性の高い情報を扱うサイトでは、その性格上二段階認証などの安全性を高めた認証方法が利用されます。
二段階認証の実現方法
二段階認証を実現するために、知識、所有、生体情報の各種要素を組み合わせて利用する方法が、ベンダー各社のソリューションとして用意されています。
これらの要素を既存のシステムに組み込むために、ベンダー各社が提供する各認証方式を実行するためのAPIを利用して、サーバー上で各種サービスを駆動する方法が一般的で、早期にサービスの開始が可能です。クラウド型ソリューションといわれる実現方法です。もう一つの方法としてオンプレ型ソリューションがあります。自社でサーバーおよびソフトウェアをすべて調達する方法です。
ソフトウェアの調達も2つの方法があります。自社でソフトウェアも含めて開発する方法とベンダーよりソフトウェアの提供を受け、二段階認証を実現する方法です。すべてを自社で用意すれば、自社の要求仕様に限りなく近いシステムの構築が可能となりますが、反面、考慮すべき点があります。システム構築の経験や技術力に加え、開発エンジニアの確保ならびに開発する期間の猶予が必要となります。以上の条件がすべて整うのであれば、すべて自社で用意するオンプレが望ましいですが、多くの場合いずれかの条件がクリアできないため、すべての条件を並べ、最適なアプローチを選択します。
二段階認証の実現手段
二段階認証の主要な実現手段を解説していきましょう。
パスワード、ワンタイムパスワード
ユーザーIDとパスワードによる認証はユーザーの知識要素を利用した方法で最もシンプルな認証手段です。シンプルであるがゆえに第三者にかんたんにばれてしまうことのないように、運用によってこれをカバーしなければなりません。関係者の名前や誕生日、メモリアルデーなど容易に想像がつく文字列は回避する、英数字、大文字と小文字を組み合わせる、一定期間経過したら変更する、などをしっかりとした運用ルールとして取り決め、できる限り厳正に運用していくことが必要です。
ワンタイムパスワードはオンラインバンキングで銀行が比較的よく使っている認証方法です。外見はUSBメモリのような形をしていて、数桁の数字を表示させるLCDディスプレイがついているセキュリティトークンまたは専用トークンといわれるデバイスを使います。このデバイスが一定周期で自動生成する数桁の乱数列を使用します。
セキュリティトークンは従来、専用のデバイスを用意する必要がありましたが、最近ではスマホ上のソフトウェアとして用意したトークンを利用する方法も使われています。
パスコード
最近、各種ECサイトやSNSサイトでよく用いられている認証手段で、スマホやタブレットなどの所有要素を利用した方法です。一段階目の認証としてユーザーIDとパスワードによる認証を行い、これをクリアすると二段階目の手段としてパスコードが使われるケースがあります。
一段階目の認証に成功した後、認証サーバーから登録済みスマホやタブレット宛にショートメッセージ(SMS)が自動的に送信され、その中身に数桁の文字列が記載されています。ユーザーはこれを確認して、システムの認証要求画面に認証キーとして入力することでサービスへのログインなどが許可される仕組みです。
乱数表認証
ユーザー毎に異なるランダムな数字を埋め込んだ乱数表を提供する方法です。この乱数表を使い行と列を指定することにより、表示された数字を複数回読み出し、これらの数字列や文字列を認証キーとして入力します。プラスチックのカードに書き込まれた乱数表をユーザー個々に配布して使用している銀行などもあります。
デバイスを利用した認証
サービスにログインするPCなどの端末に専用のデバイスを接続して認証する方法です。デバイスを保有していることが、サービスへのログインを許可されたユーザーであることが認証されていることを示します。専用のデバイスはUSBメモリのような形状をしており、端末との間はUSB端子やBluetooth通信経由で接続する方法が使われています。
生体情報を利用した認証
生体情報による認証は、人の身体的特徴を利用する認証方法で指紋情報、静脈情報、虹彩情報や顔の情報を利用します。
指紋による認証はすべての人によって、それぞれ異なる形状をしていることを利用した認証方法です。他人の指紋によって間違って認証されてしまうことはまずありません。この方法は比較的、古くから使用されている方法で、技術的にも成熟していることから安く実現できる利点があります。
静脈認証は、静脈を形成する血管の形状やその構成は人によって異なり一生変わることはない特徴を利用した認証です。体内の情報でもあることから改ざんすることは実質的には不可能であることから静脈は認証手段として使われています。
虹彩認証は、瞳孔の周辺にある虹彩に刻まれている細かなシワは人によって異なり、左右の目によってもその模様は異なることから虹彩を認証手段として使われています。
顔認証は、顔もほかの生態的な特徴と同様に一人ひとりが異なる特徴を有していることから認証手段として使用されています。
これらの生体情報以外にも、人の声を利用する声紋認証や、DNA情報を利用するDNA認証、筆跡やマウス操作情報を利用する行動認証などがあります。従来はコンピュータの処理スピードやメモリ容量の限界から、特定の分野でのみ使用されていましたが、最近ではコンピュータ技術の発展に支えられスマホなどでは、顔認証や指紋認証などがすでに使用されており、今後一層、その利用範囲は広がっていくものと考えられます。
二段階認証のセキュリティ面における安全性
一般的な二段階認証の安全性について説明し、仮に認証レベルが低い場合、いかにして安全な認証方法とすべきかについて解説していきましょう。
複数ステップの認証による安全性
最近では企業のサイトから顧客情報が流出したとのニュースを頻繁に耳にします。顧客情報とは、氏名、年齢、住所などの個人情報のみならずサイトにアクセスするためのユーザーIDやパスワードの情報やクレジットカードの番号、パスワードなどの情報も含まれます。このような情報がハッカーの手に渡れば、彼らは容易に、本人に成りすまして悪意ある行為を行います。
このような事態を回避するために、一般的に一段階の認証手段としてユーザーIDとパスワードのみによる認証に加えて、二段目の認証手段を用いることにより安全性の確保を図る対応が増えています。ハッキングされる確率を考えた場合、2段階での認証を準備することで安全性が高くなります。
認証のレベルが低いと安全とはいえない
数年前に大手通信キャリアやコンビニが運営する銀行口座において不正な引き出しが行われ大きな問題となりましたが、このとき、当初は「二段階認証が行われていなかったから」といわれていましたが、よく調べてみると実は二段階認証が行われていたにもかかわらず問題が発生した事実が判明しました。このように複数ステップによる認証を行うからといって必ずしも安全な認証方法であるとは言い切れません。認証方法を十分に検討した上で導入しなければ、ユーザーへの負担を増やすのみで、二段階認証の効果が薄れてしまいます。
そこで一般的にいわれているのが、異なる認証要素を組み合わせて二段階認証を行う、つまり二要素認証を行うことにより認証強度を上げるべきということです。ユーザーIDとパスワードを一段目の認証手段とした場合、二段目の認証は生体認証として、たとえば指紋認証や静脈認証を使用するなどすべきです。
二段階認証の安全性は問題ないのか?セキュリティ観点での詳細を解説
二段階認証導入時の注意点
二段階認証を導入する際の注意点について解説していきましょう。
認証要素ごとの注意点
二段階認証に用いられる認証の要素ごとの注意点を解説していきます。
知識認証
知識による認証は、人が自らの知識や経験から作り出した文字列を利用します。仮に自身や関係者の誕生日などのような安易なパスワードを設定した場合、それを破られてハッキングされるリスクがあります。容易に類推することが困難である文字列を使用することを心がけなければなりません。
所有物認証
所有物による認証は、セキュリティトークンや乱数表に加えスマホ、タブレットなどが使われます。ユーザーが自身でパスワードを考えてこれを管理する必要がなく、生成される認証コードが複雑であるため、ハッキングが困難であるとの利点があります。しかしいずれの場合もこれらの物を紛失して、各種サービスに盗用されたり、破損して認証処理を行えなくなるリスクがあります。従って、所有物による認証方式を利用する場合にユーザーは、しっかりとした所有物の管理が必要となります。
生体情報認証
生体情報による認証は、人の身体的特徴を利用する認証方法で指紋情報、静脈情報、虹彩情報や顔の情報を利用します。従って身体的に何らかのハンディキャップがあり、認証のために利用しようとする生体情報を使えないユーザーには不向きなため代用手段を用意しておく必要があります。
異なる要素の認証方式を使う
二段階認証は単一段階の認証に比べ、複数の認証手段の掛け算でリスクの確率は小さくなりますが、知識認証と所有物認証、知識認証と生体情報認証、所有物認証と生体情報認証のように複数の要素を組み合わせて二段階認証とすることにより素性や特性の異なる認証方式を扱うことになり、これをハッキングするハードルは一気に高くなります。これを複数の認証要素を利用するという意味で二要素の場合には二要素認証、二要素を含めそれ以上の要素を使う場合は多要素認証といいます。
パスワードの管理
二段階認証においても認証手段の1つとしてポピュラーで実現が容易であり、見かけ上はユーザーへの負担が軽いように思われることもあり、知識認証の手段であるパスワードは圧倒的に多用されています。従って、第三者が容易に類推することが困難なパスワードを設定すること、更にこれをしっかりと管理することが必須となります。パスワードの管理は、Webブラウザのパスワード管理機能を利用する、もしくはパスワード管理アプリを利用する方法などが望ましいと考えられます。
そのほかの注意事項
二段階認証の手段としてSMSを利用してスマホなどにパスコードを送信する場合があります。このとき、スマホのプッシュ通信を有効にしていると、パスコードがロック画面に表示されます。これを悪意ある第三者に見られてしまった場合に悪用される可能性があります。このような状況を想定し、パスコードを利用する場合にはプッシュ通信をオフにしておくことが必要です。
二段階認証やFIDO認証、生体認証を活用した認証機能で会員向けサイト・サービスを構築するなら
当社のご提供する 「会員管理・会員サイト構築ソリューション」は、会員向けのサイトやサービスに必要とな要素をワンストップで提供するシステムです。
会員データ管理からマイページ作成・ログインなどの基本機能から、メール配信やアンケート作成、問い合わせ、フォーム作成、決済連携まで、会員管理・運営に必要な機能が充実。また、金融機関・官公庁でも採用されている高いセキュリティで会員の大切なデータを管理します。WordPressやMovableTypeを始めとした各種CMSや基幹システム等とのAPI連携も可能です。
ログイン認証機能では、通常のID・パスワードを使った認証に加えて、スマートフォンアプリ・メール・SMSなどを用いた二段階認証、指紋や虹彩等の生体情報を利用したFIDO認証(Fast IDentity Online)など、強固な認証にも対応しています。
ファンクラブやユーザーサポートサイト、学会・協会サイト、申請受付サイト、キャンペーン受付サイト、イベント受付管理、入居者サイトなど様々な業界・用途・シーンで延べ11,000以上のご利用実績がございます。
また、メガバンクを始め100以上の金融機関に導入されている個人情報運用に最適なセキュリティを備えています。総務省のセキュリティ対策にも準拠。また、第三者機関のセキュリティ診断でも高いセキュリティを評価されています。
サービスの詳細については「会員管理・会員サイト構築ソリューション」のページをご覧いただくか、サービス導入をご検討中の方はこちらからぜひお問い合わせください。
まとめ
二段階認証と二要素認証との違いや二段階認証導入の必要性、導入手段とその安全性について述べると共に導入時の注意点について解説してきました。ECサイトや各種SNSサイトなどを含め、各種サービスの不正な利用を抑止するために認証技術の高度化や多岐化が今後も進んでいきます。それぞれのシステムに応じてコストや使い勝手を踏まえ、最適なソリューションを選択していきましょう。