5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

NIST SP 800-63-4 に基づく認証のベストプラクティス

Posted at

はじめに

オンラインサービスにおける認証は、ユーザー体験とセキュリティの両立が求められます。
従来の IDとパスワード 依存は限界を迎え、今や 多要素認証(MFA) が当たり前になりつつあります。

本記事では、米国国立標準技術研究所(NIST)が2025年7月31日に公開した NIST SP 800-63-4 Digital Identity Guidelines Revision 4 最終版の内容をもとに 認証のベストプラクティス を検討します。

本記事は筆者による非公式な翻訳・解説であり、
誤訳や解釈の誤りを含む可能性があります。
正確な情報については NIST公式HP をご確認ください。

NIST SP 800-63-4 Digital Identity Guidelines とは

NIST SP 800-63-4 は、デジタル認証の国際的なベンチマークです。
本ガイドラインは以下の3つの観点から認証を設計することを推奨しています。

  • セキュリティ
  • プライバシー
  • ユーザー体験(UX)

さらに、認証を次の3つの保証レベル(xAL)で評価します。

レベル 名称 内容
IAL Identity Assurance Level 本人確認の厳格さ
AAL Authentication Assurance Level 認証の厳格さ
FAL Federation Assurance Level フェデレーションの信頼性

NIST SP 800-63-4Digital Identity Guidelines)は、さらに SP 800-63A (本人確認と登録 Identity Proofing & Enrollment)、 SP 800-63B (認証と認証子の管理 Authentication & Authenticator Management)および、 SP 800-63C (フェデレーションとアサーション Federation & Assertions)にわかれています。

IAL、AAL、FALの各種保証レベルはそれぞれ3~4段階に分かれており、その詳細が SP 800-63ASP 800-63BSP 800-63C に定義されています。

NIST_SP_800-63-4.png

NIST SP 800-63 の歴史

NIST SP 800-63 は2004年から続くガイドラインで、定期的に更新されています。初版は2006年に「電子認証に関するガイドライン」として公開され、第1版が2011年、第2版が2013年に改訂。2017年に名称を現在の 「デジタルアイデンティティガイドライン」 に変更した第3版が公開。第4版は2024年春に予定されていましたが延期され、最終的に2025年7月に正式公開されました。

このシリーズはもともと OMB M-04-04(2003年12月) という米国行政管理予算局(OMB)による連邦政府機関向け電子認証ガイダンスを補完するために作られた技術的ガイドラインです。
今では、米国連邦政府機関における認証の実質的な標準となっており、民間企業でもベストプラクティスとして広く参照されています。国際的なリファレンスとして各国の本人確認ガイドラインにも影響しており、日本のガイドラインやEUの規則にも影響を与えています。

バージョン 公開年 主な変更点
SP 800-63-1 2004 初版。「電子認証ガイドライン」として登場
SP 800-63-2 2013 リスクベース認証導入、モバイル端末の普及に対応
SP 800-63-3 2017 3分冊化(A/B/C)、SMS単独認証を非推奨
SP 800-63-3 改訂 2020 パスワードポリシー刷新、UX改善
SP 800-63-4 2025 AI/ML対応、ウォレット型ID、UX・プライバシー重視

本人確認保証レベル(IAL)の4段階

NIST SP 800-63-4 では、Identity Assurance Level(IAL)を 0〜3の4段階 で定義しています。
IALは「加入者の本人確認(Enrollment / Proofing)の厳格さ」を示します。
それぞれのレベルでの信頼度と方法が違います。

レベル 信頼度 本人確認の方法 想定されるサービス
IAL0 本人確認なし IDを特定の人物と紐付けない(匿名/仮名利用) 掲示板、匿名SNS
IAL1 基本的 自己申告 or 信頼できる証拠を用いて確認。リモートまたは対面可 一般Webサービス、低リスク会員制サイト
IAL2 高い 追加証拠の収集、強固な検証。社会工学や証拠偽造への対策 オンラインバンキング、電子政府サービス
IAL3 非常に高い 対面で訓練を受けた職員による確認+生体情報の収集 国の本人確認、パスポート発行、軍事・重要インフラ

IAL0(本人確認なし)

No identity proofing: There is no requirement to link the applicant to a specific, real-life person.
— NIST SP 800-63A, Sec. 1.2

  • IDは実在の人物に紐付けられない
  • 属性の検証は不要
  • 想定サービス: 匿名掲示板、ゲストアカウント

IAL1(基本的な本人確認)

IAL1: The identity proofing process supports the real-world existence of the claimed identity and provides some assurance that the applicant is associated with that identity.
— NIST SP 800-63A, Sec. 1.2

  • 本人が実在することを確認
  • 申請者がその本人確認情報とある程度関連づけられている
  • 本人属性(例:氏名、名前、生年月日、メールアドレス、電話番号、住所など)は本人確認書類(例:健康保険証、住民票の写し、公共料金請求書などを想定)に照会して検証
  • リモートまたは対面での本人確認が可能
  • 想定サービス: 一般的なWeb会員サービス

IAL2(高い本人確認)

IAL2: IAL2 requires collecting additional evidence and more rigorous processes for validating evidence and verifying identities.
— NIST SP 800-63A, Sec. 1.2

  • 複数の証拠を収集し、厳格に検証
  • IAL1に加えて、基本的な証拠偽造・なりすまし・ソーシャルエンジニアリング攻撃に対応する仕組みを備える
  • 想定サービス: オンラインバンキング、電子政府サービス

IAL3(非常に高い本人確認)

IAL3: IAL3 adds the requirements for a trained CSP representative to interact directly with the applicant as part of an on-site attended identity proofing session and the collection of at least one biometric characteristic.
— NIST SP 800-63A, Sec. 1.2

  • 訓練を受けた担当者が対面で確認
  • 生体情報を少なくとも1つ収集
  • 高度な証拠偽造やソーシャルエンジニアリング攻撃に対応
  • 想定サービス: 国の本人確認、パスポート発行、軍事・重要インフラ

:pencil: 考察

  • IAL0 → 匿名性が必要なサービスで有用だが、リスクは自己責任
  • IAL1 → 一般的なオンライン会員サービスで十分
  • IAL2 → 金融や行政サービスで必須水準
  • IAL3 → 現状は限定的だが、マイナンバーカードやパスポート更新のような対面+生体認証が該当

特に今後は ウォレット型ID (スマートフォンなどの端末で、運転免許証やマイナンバーカードなどの身分証明書を管理・提示できる仕組み)の普及により、IAL2相当の本人確認がオンラインでも可能になるかもしれません。

認証保証レベル(AAL)の3段階

NIST SP 800-63-4 では、Authentication Assurance Level(AAL)を 1〜3の3段階 で定義しています。
それぞれのレベルで許可される認証手段や再認証要件が異なります。
IALは「加入者の本人確認(Enrollment / Proofing)の厳格さ」を示すのに対し、AALが「ログイン時の認証強度」を示します。

レベル 信頼度 認証手段の例 再認証要件 想定されるサービス
AAL1 基本的 パスワード / SMS※1 / TOTP※2 / OAuth※3 セッション全体30日以内 SNS、娯楽系アプリ
AAL2 高い パスワード+TOTP / パスワード+ハードウェアトークン セッション全体24時間以内
非アクティブ1時間以内
オンラインバンキング、行政手続き
AAL3 非常に高い FIDO2※4 / WebAuthn※5 セキュリティキー / パスワード+生体+物理キー セッション全体12時間以内
非アクティブ15分以内
軍事、重要インフラ、国家機関

※1 SMS(Short Message Service):ショートメッセージサービス、携帯電話の電話番号を宛先にして、短いテキストメッセージを送受信できるサービス
※2 TOTP (Time-based One-Time Password):ワンタイムパスワード
※3 OAuth:あるサービス (例: Google, Facebook) が持つ情報を、別のサービス (例: あるアプリ) が安全に利用できるようにする仕組み。標準化したものが OAuth 2.0
※4 FIDO2(Fast IDentity Online 2):パスワードに依存しないオンライン認証のための技術仕様、生体認証(顔認証、指紋認証)やセキュリティキーなど
※5 WebAuthn:ウェブオーセン、Webブラウザ上でパスワードレス認証を可能にするためのAPI仕様。FIDO2を構成する技術のひとつ

AAL1(基本的な信頼度)

AAL1 provides basic confidence that the claimant controls an authenticator that is bound to the subscriber account.
— NIST SP 800-63B, Sec. 1

  • パスワードやSMS、TOTP、OAuthなど幅広い方式を許可
  • シングルファクターも可だがMFA推奨
  • 想定サービス: SNS、ECサイト、エンタメ系アプリ

AAL2(高い信頼度)

AAL2 provides high confidence that the claimant controls one or more authenticators that are bound to the subscriber account. Proof of possession and control of two distinct authentication factors through the use of secure authentication protocols is required.
— NIST SP 800-63B, Sec. 1

  • MFA必須(多要素認証)
  • パスワード+TOTP / パスワード+物理キー / パスワード+SMS認証 など
  • 少なくとも1つのフィッシング耐性のある手段を提供すべき
  • 想定サービス: オンラインバンキング、電子政府サービス

※ パスワード+SMS認証でも一応AAL2に分類されるが、NISTは FIDO2やWebAuthnのようなフィッシング耐性技術を同時に提供すべき としている。

AAL3(非常に高い信頼度)

AAL3 provides very high confidence that the claimant controls authenticators that are bound to the subscriber account. Authentication at AAL3 is based on the proof of possession of a key through the use of a cryptographic protocol along with either an activation factor or a password.
— NIST SP 800-63B, Sec. 1

  • ハードウェアベースの暗号認証器必須
  • 秘密鍵はエクスポート不可、リプレイ耐性あり
  • フィッシング耐性が絶対条件
  • 想定サービス: 軍事・防衛システム、重要インフラ、国家機関の基幹サービス

:pencil: 考察

現実的には、

  • AAL1 → 利便性重視サービス(SNS、ECサイト、エンタメ系アプリ)
  • AAL2 → 現代の標準。金融・行政サービスで必須
  • AAL3 → まだ限定的だが、FIDO2/WebAuthnの普及で拡大見込み

AAL2以上ではIDとパスワードの認証だけでなく、SMS認証やTOTPなどのMFAが必須になります。
さらに、AAL2以上では フィッシング耐性のある認証(例: FIDO2) が推奨、AAL3では必須となります。
今後はAAL3レベルの実装が一般化する可能性があります。

フェデレーション保証レベル(FAL)の3段階

NIST SP 800-63-4 では、Federation Assurance Level(FAL)を 1〜3の3段階 で定義しています。
これは、IdP(Identity Provider)※1 とRP(Relying Party)※2 の間で行われる フェデレーション認証(例: Googleログインやマイナポータル連携) の安全性を示します。

レベル 信頼度 特徴 想定されるサービス
FAL1 基本的 署名付きアサーション、複数RP対象可、リプレイ防止必須 一般的なシングルサインオン(SSO)
FAL2 高い 1つのRPのみ対象、強いアサーション注入防御、事前の信頼関係必須 行政システム連携、医療ポータル
FAL3 非常に高い RPで追加認証必須、手動または信頼済みの鍵配布、ホルダーオブキー方式 軍事・重要インフラ、国家認証基盤

※1 IdP(Identity Provider):IDプロバイダ、ユーザーIDを保存および検証するサービス
※2 RP(Relying Party):IdPから提供される認証情報を利用してユーザーにサービスを提供する側(認証を外部のサービスに頼るアプリケーションやウェブサイト)

FAL1(基本的なフェデレーション)

FAL1 provides a basic level of protection for federation transactions and allows for a wide range of use cases and deployment decisions.
— NIST SP 800-63-4-C, Sec. 4.3.1

  • IdPはアサーションに署名し、RPは検証鍵で検証
  • アサーションは特定のRP群を対象に限定
  • リプレイ防止を必須化
  • フェデレーションIDに平文の個人情報を含めないことを推奨
  • 想定サービス: 一般的なSSO(例: Googleログインで複数サイト利用)

FAL2(高いフェデレーション)

FAL2 provides a high level of protection for federation transactions by requiring additional protections against a variety of attacks on federated systems, including attempts to inject assertions into a federated transaction.
— NIST SP 800-63-4-C, Sec. 4.3.2

  • FAL1の要件に加え、強力なアサーション注入攻撃防御
  • アサーションは 単一のRPに限定
  • 事前に確立された信頼関係必須(pre-established trust)
  • IdPの署名鍵は FIPS 140レベル1以上 で保護
  • 想定サービス: 政府ポータルや医療ポータル、金融機関のSSO

FAL3(非常に高いフェデレーション)

FAL3 provides a very high level of protection for federation transactions and establishes very high confidence that the information communicated in the federation transaction matches what was established by the CSP and IdP.
— NIST SP 800-63-4-C, Sec. 4.3.3

  • RPでの追加認証が必須(Holder-of-Key方式など)
  • すべての識別子(CSP/IdP/RP)は手動または信頼済み経路で確立
  • 検証鍵の取得は 信頼できるチャネル で実施(例: 公的フェデレーション機関経由)
  • 生体認証やセキュリティキーを組み合わせるケースも想定
  • 想定サービス: 軍事・重要インフラ、国家認証基盤、デジタルウォレット型ID

:pencil: 考察

  • FAL1 → 一般的なSSOには十分。ただしマルチRP利用時のリスクを意識すべき
  • FAL2 → 医療・行政・金融など高リスク領域で必須水準
  • FAL3 → 現状では国家レベルや軍事・重要インフラで限定的に運用
  • 今後は デジタルウォレット(VC: Verifiable Credentials) の普及に伴い、FAL3が民間にも広がる可能性がある

特にFAL2以上では「事前確立された信頼関係」と「フィッシング耐性のある追加認証」がポイントです。

認証方式ごとに IAL / AAL / FAL を検討してみる

NIST SP 800-63-4 のフレームワークを踏まえて、主要な認証方式を整理してみました。
「どの方式を選べば、どの保証レベルを満たせるのか」の参考になれば幸いです。

認証方式 IAL AAL FAL セキュリティ強度 UX 実装コスト 想定ユースケース
パスワードのみ IAL0〜1 AAL1 FAL1 低い △(覚える必要あり) ◎(最小) SNS、低リスクサービス
SMS認証(単独) IAL1 AAL1 FAL1 中(端末所有確認) ○(馴染みあり) ○(API導入で容易) 会員登録、低リスクMFA
パスワード+SMS IAL1〜2 AAL2 FAL1〜2 中〜高 ECサイト、銀行ログイン
TOTP(Google Authenticator等) IAL1〜2 AAL2 FAL1〜2 △(設定が必要) 金融・社内システム
FIDO2 / WebAuthn IAL2〜3 AAL3 FAL2〜3 非常に高い ◎(生体/ワンタッチ) △(端末依存・開発負荷大) 行政・医療・高セキュリティ
マイナンバーカード+PIN IAL3 AAL2〜3 FAL2〜3 非常に高い △(カードリーダ等必要) △(運用コスト高) 公共サービス、国家機関

:pencil: 考察

従来の IDとパスワード 依存は限界を迎え、今や 多要素認証(MFA) が当たり前になりつつあります。
SMS認証はAAL2を満たせる現実的な手段であり、実装コストが低いのが最大の強みです。
FIDO2/WebAuthnはセキュリティ・UXで優れるが、端末対応や開発コストが課題となります。

現実的なロードマップとしては、

  • 短期的にはパスワード+SMSAAL2を実現
  • 中長期にはFIDO2併用AAL3に拡張

が妥当かもしれません。

認証方法の比較

sms_pro_con.png
引用:SMS認証サービスの選び方と導入手順まとめ!メリット・注意点も解説

まとめ

NIST SP 800-63-4 のフレームワーク(IAL / AAL / FAL)を整理すると、

  • パスワード単独ではもはや十分でない
  • SMS認証は導入が容易でAAL2を満たせる現実的な手段
  • FIDO2 / WebAuthn はフィッシング耐性を持ち、AAL3を満たす将来の本命
  • フェデレーション(FAL)は行政や医療など高リスク分野で重要性が増している

結論として、

  • 短期的には「パスワード+SMS」でAAL2を確保
  • 中長期的には「FIDO2/WebAuthn」を併用してAAL3へ移行
  • リスクの高い分野ではFAL2以上のフェデレーションを検討

というステップが現実的かもしれません。

参考文献


5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?