2要素認証について知ろう
2022 Jul 7 / Takanori Suzuki
目的
認証にどういう種類があるか知る
2要素認証がどういうものか知る
それぞれのメリットデメリットを知る
お品書き
パスワード認証
パスワード認証の問題
パスワード管理ソフト
2要素認証(2FA)
2要素認証どうやるの
Slackで2FAを設定
最初に質問
パスワード管理ソフト使っている人? 🙋♀️
2要素認証がどういうものか説明できる人? 🙋♂️
2要素認証を導入している人? 🙋♀️
パスワード認証
パスワード認証とは
IDとパスワードの組み合わせでの本人確認手段
IDとパスワードを知っている人
→本人
Q: パスワード認証にはどんな問題がありますか?
パスワードが漏れるとこうなる
パスワードが漏れるとこうなる
参考: WIRED記者の悲劇から学ぶ「セキュリティ9つの常識」
iPhoneのデータが全削除
MacBookのデータが全削除
Twitterを乗っ取られる
8年分のGMailを全削除
アシュレイ・マディソン
不倫マッチングサイトのデータがクラッキングされて流出
11,000,000件のパスワードがクラックされた
参考: 「123456」がダントツ人気パスワード、CEO辞任も依然としてユーザー増加中など不倫SNS「アシュレイ・マディソン」情報流出騒動をめぐるあれこれ総まとめ
パスワードTop5
123456
12345
password
DEFAULT
123456789
よく使われるパスワード
流出をチェック
haveibeenpwned.com : メールアドレス
haveibeenpwned.com/Passwords : パスワード
パスワード認証の問題
複数のサイトで共通のパスワード使うと危険
1つバレたら全部バレる
サイトごとにパスワードのルールが異なる
文字数、文字種(英字、数字、記号)
でもそんなの人は覚えられない
パスワード管理ソフト
IDとパスワードを管理するソフト
パスワード認証の問題(その2)
漏洩のリスク
悪意のある中の人
総当たり攻撃
総当たり攻撃の時間
最近のパスワードクラッキングのベンチマーク。ご覧の通り今は最短で12文字以上のパスワードが必要だけど、そのうちそれもクラックされてしまうので、15文字以上をおすすめします。できたら25文字以上のパスフレーズ。複雑さより長さの方が重要! #パスクラ pic.twitter.com/yF0H8fmi7k
— 田中ザック (@yamatosecurity) July 28, 2019
そこで
2要素認証
2要素認証とは
2FA(Two-factor Authentication)
2種類の要素で認証する
2種類の要素って?
以下の3要素のうち2つ
本人だけが知っていること
本人だけが所有しているもの
本人自身の特性
Q: それそれどんな認証が例として考えられますか?
認証の例
本人だけが知っていること: パスワード
本人だけが所有しているもの: トークン、スマートフォン
本人自身の特性: 指紋、顔認証
2段階認証
2要素認証≠2段階認証
Q: 違いを説明できますか?
2要素認証≠2段階認証
例: ネットバンキングなど
ログインパスワード(1段階)
振り込み時に秘密の質問(2段階)
どちらも「本人だけが知っていること」なので1要素
2要素認証(2FA)どうやるの
2要素認証(2FA)どうやるの
Webサービス + スマートフォンアプリ
2FAに対応しているサービス(例)
Googleアカウント
Slack
Dropbox
Evernote
Facebook
Twitter
GitHub
AWS
PayPal
2FAの認証クライアント
スマートフォンにインストールして使う
TOTP
Time-based One-Time Password
ワンタイムパスワードの1種
時間単位(だいたい30秒)でパスワードが払い出される
参考: ワンタイムパスワード
pyotp: OTPのPython実装
totp = pyotp.TOTP('base32secret3232')
totp.now() # => '492039'
# OTP verified for current time
totp.verify('492039') # => True
time.sleep(30)
totp.verify('492039') # => False
ハードウェアキー
(私は使ったことありません)
FIDO(Fast IDentity Online)という認証技術
まとめ
認証にどういう種類があるか
パスワード管理、2FA
2要素認証がどういうものか知る
2種類の要素で認証する