認証(1)
認証の基礎
認証の分類
認証の対象による分類
認証は、認証する対象が何かによって、以下の4つがある。
本人(利用者)認証
システムを利用する人が本人であるかを、パスワード等を使って認証すること
物の認証
システムやネットワークへのアクセスを要求している機器などの正当性を確認すること
メッセージ認証
情報が改ざんされていないかをMAC(message authentication code)等を使って認証する
時刻認証
その時刻に存在したことを、タイムスタンプを用いて認証する。
本人認証
本人認証の種類
「本人認証」の手段
本人認証には、知識認証と所有物認証、生体認証がある。
認証のレベルは後者になるにつれて上がる。
確認の方法 | セキュリティレベル | 利用者確認方法の例 |
---|---|---|
知識認証 | 知識ベースなので、その知識を知っていれば誰でもなりすましが可能である。 | ・ID/パスワード ・合言葉「山」「川」 |
所有物認証 | 所有物を盗まれた場合になり済まされる可能性があるが、知識ベースと違って所有物を持った人だけがなりすまし可能になる。 | ・電子証明書 ・ワンタイムパスワード用のトークン ・MACアドレス |
生体認証 | 身体的な特徴を基にするので、盗まれることや貸し借りをすることができない。 | ・指紋認証 ・静脈パターン認証 ・虹彩認証 ・声紋認証 ・顔認証 ・網膜認証 |
知識認証
パスワード
最も簡単な認証方法。
【仕組み】
パスワードをハッシュして保存しておき、入力されたパスワードをハッシュした値と比較することで、認証をしている。
「不正アクセスにより、パスワードを保存しているファイルを直接参照された場合、パスワードが分かってしまう」危険があるから。
運用面での脆弱性と対策
脆弱性
- 長時間変更せずに使用する
- 文字数(桁数)が少ない
- 使われている文字種(数字、英小文字。英大文字。特殊記号など)が少ない
- 単体で意味がある(英単語)など
- 本人と関係の深いor連想可能なものを用いている(家族の名前、生年月日、電話番号など)
- ユーザIDと同じor酷似している
- パスワードと同じ文字列を他の用途にも用いている
対策
- 他人に推測されにくいパスワードを設定する
- 設定したパスワードを他人に教えない
- 設定したパスワードをメモorポストイットしない
- こまめにパスワードを変更する
- 過去に使ったパスワードを繰り返し使用しない
- ショルダ−ハッキング(覗き見)に注意する
実装面での脆弱性
標準的なFTP、POP3、Telnet、HTTPのベーシック認証、PAPなどでは、パスワードがクリアテキスト(平文)のままネットワーク上を流れてしまう。
パケット盗聴に脆弱なプロトコルに注意し、認証プロセスや通信経路全体を暗号化する。
パスワードの変更
パスワードというのは、本人しか知りえない情報を使って認証し、同時に、その本人がアクセスしたという大事な証拠になるので、利用者が自分でパスワードを変更することが必要
- パスワードを本人に通知する過程で漏えいするリスクかあるから
- その利用者IDを利用した者が,確実に本人であることを保証できないから
使用できる文字の種類の数:M 文字数:n
ワンタイムパスワード(OTP)
認証を行うたびに毎回異なるパスワードを使用する方式。使い捨てパスワード方式。
必要な要件
- 生成するパスワードに規則性や連続性がなく、ランダムであること
- ユーザがパスワードを覚える必要がないこと
チャレンジレスポンス方式
通信経路上に固定パスワードを流さないようにすることで盗聴によるパスワードの漏えいを防ぐことができる認証方式。
仕組み
- ユーザは登録されているIDを入力
- サーバは毎回異なるチャレンジコード作成
- サーバはチャレンジコードを送付
- ユーザはパスワード生成ツールを使って、送られてきたチャレンジコードと固定パスワードを使ってレスポンスコードと呼ばれるワンタイムパスワードを生成(?)(※ハッシュ演算により暗号化)
- サーバ側でもパスワード生成ツールで、クライアント(ユーザ)と同じ手順でレスポンスコードを作成
- ユーザはレスポンスコード(?)を送信
- サーバは?と?のレスポンスコードを比較し、合っていればログインを許可する
利用例
CHAP | : | PPPなどで利用される認証方式 の一つ。 |
無線LANのWEP方式 | : | 送信データを平文ではなく、無線電波自体が暗号化し |
た状態で送信 | ||
SMTP-AUTH | : | メールの送信や転送に用いるプロトコル・SMTPの拡張 |
仕様の一つ。 メールの発送時に、メールサーバが送信依頼をしてきた相手が正規の利用者かどうかを確認する方法を規定したもの。 | ||
APOP | : | 電子メールの受信に用いる通信規約・POP3において、 |
パスワードの送信を暗号化して安全性を高める方式。 | ||
IMAP | : | メールサーバから電子メールを読み込むためのプロ | コル。 端末にダウンロードせずにサーバ上で管理する。 |
利点
- パスワードが暗号化される
- ワンタイムパスワードの役割も有する
- ユーザ名とパスワード以外に必要な情報はない
- 事前に秘密鍵を共有したり、証明書を準備する必要がない
S/KEY
ワンタイムパスワードの一つ
基本的な手順としてはチャレンジレスポンス認証の方式を応用する。
シードとパスワードのほかにシーケンス番号を利用する。
シーケンス番号の回数だけ、シードとパスフレーズからハッシュ処理を行い、ワンタイムパスワードを生成する。このとき、クライアント側では(シーケンス番号-1)回だけ演算を行い、最後の1回はサーバに送られてからサーバ側で行う
仕組み
- ユーザは登録されているIDを入力
- サーバは保存していたシーケンス番号(n)から1を引いた値(n-1)と、Seedをユーザに送信
- ユーザはパスワードとSeedから文字列(s)を作成する
- ユーザは文字列(s)にハッシュ関数fを用いてシーケンス番号(n-1)回分の演算処理を行い、レスポンス(Pn-1)を求める
- ユーザはレスポンス(OTP) (Pn-1)を送信する
- サーバは(Pn-1)にもう1回ハッシュ関数処理を行い、Pnを算出する
- サーバは保存している前回の(Pn)と今回のPnを比較し、合っていればログインを許可する
- サーバは保存していたPnとシーケンス番号(n)を破棄し、Pn-1とシーケンス番号(n-1)を保存する
特徴
- 普通のチャレンジレスポンス方式より複雑化しているので、セキュリティ強度が向上している。
- 通信ごとにシーケンス番号を減じてゆき、これが0になるとシステムを利用できなくなるため、パスフレーズの再登録が必要となり、強制的にパスフレーズを変更させるという点で優れている。
- 最初に登録したパスフレーズがローカルノードやユーザから直接漏れるような場合はセキュリティが破綻する。(チャレンジレスポンス認証と同様である)
時刻同期方式
ワンタイムパスワードの一種。現在時刻を基にしてパスワードを作成する。
クライアント(ユーザ)側では、時刻からトークンコードを生成するトークンと呼ばれるパスワード生成機を用いる。
トークンには
ハードウェア型:スティック型のUSBタイプやPCカードタイプ
ソフトウェア型:携帯電話・クライアントノードにインストールするタイプ
仕組み
- ユーザはトークンが表示するトークンコードと個人認識番号(PIN)からワンタイムパスワード(OTP)を生成
- ユーザユーザIDとOTP(?)をサーバに送信する
- サーバはユーザIDからトークンID、個人認識番号 (PIN)を検索する
- サーバはトークンID、日時、PINからワンタイムパスワード(OTP) (?)を生成
- サーバは?と?のOTPを比較し、合っていればログインを許可する
注意点
- トークンが表示する数字を切り替えるタイミングは、より短時間になっていた方が安全は高まるが、あまり細かすぎると、使い勝手が悪くなる。現在流通している製品では,1分間に1度だけ数字を変化させるのが主流
- トークンとサーバの時刻同期が必須となる
- 認証できたパスワードが生成された時刻と、パスワードを受信した時刻の差から推測するなど 送受信によりずれた時刻を認証サーバが推定することが必要となる
MACアドレス認証はセキュリティ対策として不十分と言われている。
【理由】
- クライアントPCでMACアドレスの偽装が簡単にできること。
最近は簡単にできなくなったが、昔のパソコンは、マイネットワークのプロパティで、簡単に変更ができた。
- MACアドレスは暗号化されないので、盗聴可能であること。
例えば、無線LANによってWEPで暗号化したとしても、MACアドレスは暗号化されない。また、できない → MACアドレスを暗号化してしまったら、どこにフレームを転送すればいいか分からなくなるから、通信ができない。
スマホ端末は個体識別番号(IMEI)と利用者を認証するSIMカードのIMSI(International Mobile Subscriber Identity)という番号がある。
端末のSIMを入れ替えた場合、両者があれば、「誰がどの端末」を使っているかの識別ができる。
- 個体識別番号(IMEI)
スマホ端末の個体識別番号(IMEI)は、*#06# と入力すると表示される。
秘密情報ではないという特性がある
- スマホアプリの利用者認証
スマホアプリ専用の鍵を作成しても、スマホアプリをリバースエンジニアリングすることで鍵を秘密にしておくことが難しい
生体認証
人間の身体的な特徴や行動面での特性など、個人に固有の情報を利用して本人確認を行う認証方式
生体認証のメリット
- 盗まれにくい、セキュリティが高い
- 覚える必要がない。(運用が簡単)
- システムの目的に合わせて、運用者が安全性と可用性を設定できる
認証時に必要となる機密情報が生体情報であるため、機密情報の紛失・盗難・置き忘れの可能性が極めて低い
生体認証は、普遍性のある生体情報を用いており、生体情報の唯一性および永続性という特質により、本人確認時に利用者自身がカードの準備やパスワードの記録などをする必要が無いため、利用者にとって利便性の高い本人確認方法を提供できる
生体認証は、入力データと予め保管されている生体情報である保管データを照合することにより本人確認を行う。運用者が入力データと保管データの類似度に基づく判定値(閾値)を設定することにより、運用者は、システム全体の目的に合致した安全性と可用性を設定することが可能
生体認証のデメリット
- 生体認証をするための装置が割高
- 登録に手間がかかる
生体認証(バイオメトリクス認証)の種類
身体的特徴と行動的特徴
生体的な特徴・特性を総称して生体情報と呼ぶ。生体情報には、身体的特徴と行動的特徴がある
・身体的特徴 | : | 指紋や顔など身体的外観に基づく |
常に本人の肉体に付随している | ||
・行動的特徴 | : | 音声や署名など行動特性に基づく |
本人の癖であり、本人であれば再現が可能なもの |
生体認証システムの性質・機能
性質
次の3つの性質を持つ生体的特徴を利用することで特定の個人を識別する
・普遍性 | :誰もが有している特徴であること |
・唯一性 | :本人以外は同じ特徴をもたないこと |
・永続性 | :時間の経過とともに変化しないこと |
生体情報 | 普遍性 | 唯一性 | 永続性 | 収集性 | 精度 | 受容性 | 脅威耐性 |
---|---|---|---|---|---|---|---|
顔 | 高 | 低 | 中 | 高 | 低 | 高 | 低 |
指紋 | 中 | 高 | 高 | 中 | 高 | 中 | 高 |
掌形 | 中 | 中 | 中 | 高 | 中 | 中 | 中 |
キーストローク | 低 | 低 | 低 | 中 | 低 | 中 | 中 |
静脈 | 中 | 中 | 中 | 中 | 中 | 中 | 高 |
虹彩 | 高 | 高 | 高 | 中 | 高 | 低 | 高 |
網膜 | 高 | 高 | 中 | 低 | 高 | 低 | 高 |
動的書名 | 低 | 低 | 低 | 高 | 低 | 高 | 低 |
声紋 | 中 | 低 | 低 | 中 | 低 | 高 | 低 |
顔の赤外画像 | 高 | 高 | 低 | 高 | 中 | 高 | 高 |
匂い | 高 | 高 | 高 | 低 | 低 | 中 | 低 |
DNA | 高 | 高 | 高 | 低 | 高 | 低 | 低 |
歩行 | 中 | 低 | 低 | 高 | 低 | 高 | 中 |
耳 | 中 | 中 | 高 | 中 | 中 | 高 | 中 |
◆収集性 :センサ等で読み取り可能であること
◆精度 :誤認識の発生しにくさ
◆受容性 :利用に心理的抵抗などがなく、受け入れられること
◆脅威耐性:生体情報の偽造、なりすましなどの脅威に対する耐性
機能
生体認証システムは次の3つの機能からなる
- データ入力:利用者の身体的特徴を取り込む
- 特徴抽出:予め保管されているテンプレートデータ(利用者の生体情報データ)との照合を効率的に実施するために、判定処理に不要な要素を削除したり、時間的変化などを正規化する
- 判定:テンプレートデータと入力データを照合し、比較する
閾値、本人拒否率および他人受入率
生体認証では、どのように閾値を定めても、誤って他人を受け入れる可能性を0 にし、かつ誤って本人を拒否する可能性を0 とすることはできない。また、エラーは不可避であるため、環境やアプリケーションに応じて、リスクと利便性の兼ね合いで適切なエラー率の設定を行う必要がある。
- 本人拒否率(FRR:False Reject Rate)
:誤って本人を拒否する確率、利便性要件に対応 - 他人受入率(FAR:False Accept Rate)
:誤って他人を受入れる確率、安全性要件に対応
利便性と安全性のトレードオフ
一般に、本人拒否率を低く抑えようとすれば、他人受入率は高くなる。逆に、他人受入率を低く抑えようとすれば、本人拒否率は高くなる。そして、本人拒否率が高く他人受入率が低い場合、安全性を重視した認証であり、本人拒否率は低く他人受入率が高い場合、利便性を重視した認証であるといえる。
入退室管理システムは、勤怠管理システムなどとは異なり、なりすまし防止が重要なことから、安全性要件としては、本人拒否率を低くすることよりも、他人受入率を低くすることを優先する必要がある。
主な生体認証システムの特徴
指紋
人間のもつそれぞれの指紋がすべて異なることを利用して個人を識別するもの。生体認証システムの中で最も長い歴史を持つ。
欠点
- 一度なりすましをされると、パスワードと違って指紋を変更することが難しい
- 指紋登録時に、第三者が不正に登録される可能性がある
(指紋を偽造するより、ソーシャルエンジニアリングにて手続きを偽造するほうが簡単だから) - 指紋は認証情報が表面に出る
(そうならない生体認証である静脈認証や虹彩認証の活用も少しずつ増えている)
" 「なりすまし」対策
- 指紋の登録に際し、登録者本人であることを社員証などで確認する
- センサの生態検知機能によって、人工模造物による登録及び認証を防止する
- 登録された指紋データから指紋を推測できないデータ登録方式を採用し、登録者の指紋データを保護する
- 本人の登録操作に立会者を置き、本人以外の指紋登録を防止する
顔
顔の画像から目や鼻の位置関係などの特徴をデータ化し、あらかじめ登録された情報と照合することで個人を識別する方式。
- 最も自然で抵抗感の少ない
- 登録時の顔画像と認証時の顔画像の撮影時の条件(角度、照明、表情など)を一致させることが困難
- 一卵性双生児などでは識別が困難
音声
音声からデジタルデータを抽出し、あらかじめ登録された周波数成分データと照合し、個人を識別する方式。登録時と同じ言葉で認証を行うキーワード音声認証と登録時と異なる言葉でも認証が可能なフリーワード音声認証の2通りがある。
- 周囲の雑音や体調の変化などによって正常に識別できないことがある
- 録音された音声を用いた「なりすまし」の危険性がある
網膜
目の網膜にある毛細血管のパターンを用いて個人を識別する方式。
- 健康上の問題や衛生上の問題から利用者の心理的な抵抗が大きい
- 装置の規模が大きく高価である
キーストローク
人間のキーボード操作におけるタイピングのリズムやパターンに癖があることを利用した個人を識別する方式。パソコンなどの不正利用防止に利用されている。
ICカードによる認証
ICカードのセキュリティ機能
キャッシュカード大のプラスティック製カードに極めて薄いICチップ(半導体集積回路)を埋め込み、情報を記録できるようにしたカードのこと。所有物認証の一種。
デジタル署名機能を組み込んだICカードの利用が広がっている。パスワード認証だけの場合、パスワードが漏えいすれば、不正利用できてしまう。しかし、ICカードなどの認証デバイスを利用した認証の場合、ICカードを持っていないと認証できない。セキュリティの強度は大幅に上がる。
さらに、会社の社員証と兼用するなどして存在価値を高めれば、ICカードの貸し借りが減り、人的なセキュリティリスクをさらに防ぎやすくなる。
- ICカードは携帯性に優れ、耐タンパ性も高いため、秘密鍵の保管に適している
- 紛失や盗難による不正使用の可能性がある
(→ 生体認証技術を搭載する。PINコードを使用する。などの対策が採用されている)
耐タンパ性
改ざんに対する耐性のこと。タンパ(tamper)とは、改ざんするという意味。一般的にハードウェアやソフトウェアのセキュリティレベルは耐タンパ性で表される。
PKIへの利用
PKI(公開鍵基盤)においては、秘密鍵を個人が厳重に管理する必要があるため、その管理装置として現在ICカードが利用されている
ICカードの脆弱性
ICカードに対する攻撃手法
破壊攻撃
- ICチップを破壊して集積回路に直接アクセスする攻撃
- 代表的攻撃手法:プロービング、リバースエンジニアリング
- 非破壊攻撃に比べコストがかかる
非破壊攻撃(サイドチャネル攻撃)
- ICチップを破壊することなく、外部から情報を奪取する攻撃
- 攻撃を実施するは低い
- 破壊攻撃と比べ、情報奪取までに時間がかかる
- 代表的な攻撃手法:DPA、SPA、グリッチ、光照射、タイミング攻撃など
攻撃の種類 | 攻撃手法 | 内容 |
---|---|---|
破壊攻撃 | プロービング | ICチップの配線パターンに直接張りを当てて信号を読み取る方法 |
リバースエンジニアリング | ICチップを観察して機能やセキュリティのメカニズムに関する情報を得る手法。暗号鍵などの推定などには直接つながらない | |
非破壊攻撃 | DPA | 多数の消費電流波形を統計処理して暗号鍵を推定する手法 |
SPA | ICチップへの消費電流波形を比較・解析して暗号鍵を推定する手法 | |
グリッチ | 一次的にクロック周波数を変化させるなどしてフリップフロップの入力をサンプリングしたり、フリップフロップの誤作動を引き起こし、正常動作時の出力との違いから暗号鍵を推定する | |
光照射 | レーザ光やカメラのフラッシュ光をICチップに照射して、ICチップの機能を阻害する手法(破壊攻撃となる場合もある) | |
タイミング攻撃 | 暗号化や復号に要する時間の差異を精密に測定することにより、用いられている鍵を推測する手法 |
Cカードに対する攻撃への対策
ICチップの構造に対するもの。ICカードを導入したり利用したりする側の取組ではない。
- 各種センサによる対策
周波数、電圧、温度、光などに関するセンサを搭載し、仕様範囲外の動作環境に置かれた場合は、CPUをリセットしたり、チップが動作しなくなるようにする - 配線の多層化
大事な回路な可能な限り下層に配線し、上層部のはぎとりによって回路そのものが破壊される設計にする - 動作クロックの内部生成
チップの内部動作に使用するクロックは、チップ内部で生成することで、アタックタイミングの同期をとることを困難にする - メモリチェック機構の工夫
ECC(Error Correcting Code)やパリティチェック機構を導入する - 暗号アルゴリズム実装方法の工夫
同一演算でも処理時間が異なるようなアルゴリズムにする - テスト回路の削除
出荷後にテスト回路が使用不可能な状態にする
ICカード(チップ)の脆弱性評価
JIWG
ICチップの脆弱性評価に関する事実上の基準
ICカードの評価の公平性や客観性を実現するための解釈の統一や、CCをICカードの評価に適用する際の解釈の統一を目的としたワーキンググループ
PIN(Personal Identification Number)入力を求めて二要素認証をすることで、ICカードが盗まれてもPINが分からなければ不正アクセスされることはない。
- ICカード(USBトークン)のPIN
- 証明書を利用する際に、PINコードを入力しないと利用できない。
- 最初に管理者からICカードをもらったときに、初期パスワード(PIN)が設定されているので、自分しかしらないパスワードに変更する
- 忘れてしまった場合は、管理者しか復旧できない
- PINコードや証明書には有効期限を設けておく
- PINロック:一定回数以上パスワード入力に失敗すると、ロックされる
※ロックを設定しないことも可能 - 管理者のみロック解除ができる
- USBトークンを初期化することは可能(ただし、内容は全て削除される)
- ICカードの欠点
ICカード読み取り装置が必要であり、初期コストがかかる
 

