要約

  • RFC 9678 は、認証された EAP-AKA' 交換に任意の ECDHE 拡張を加え、共有秘密を K_re、MSK、EMSK の導出へ反映する。
  • 元の完全認証が拡張を使えば再認証もその保護を継承するが、再認証のたびに新しい DH 交換を行うわけではない。
  • 過去セッションの非復元性を主張するには、ネゴシエーション記録に加え、下流利用、セッション終了、全コピーの廃棄、独立した復元試験が必要となる。

「最新」の時刻が三つある

運用画面には、数分前に成功した再認証が表示される。担当者は、その時刻を見て暗号学的にも新しい交換が行われたと考える。ところが、そのイベントは数時間前の完全認証で生成された K_re を利用している。新しいのはアクセス上の出来事であり、Diffie-Hellman 共有秘密ではない。

さらに、元の ECDHE 秘密が消去された時刻と、下流装置が派生鍵を手放した時刻は別である。画面上の一行には少なくとも三つの時間が重なる。完全認証の時刻、再認証の時刻、鍵退役の時刻だ。

RFC 9678 を正しく運用するには、この三つを分ける必要がある。再認証の効率を、暗号交換の新鮮さと取り違えてはならない。

EAP-AKA' に追加されたもの

RFC 9678 は 2025 年 3 月に Proposed Standard として公開され、RFC 9048 とその前身 RFC 5448 を更新した。従来の AKA 系では、加入者側とホームネットワーク側が共有する長期対称鍵が中心的役割を持つ。攻撃者が通信を保存し、後年その長期鍵を得た場合、過去のセッション素材を復元できる可能性が問題になる。

拡張は一時的な Elliptic Curve Diffie-Hellman の寄与を加える。サーバーは一つ以上の AT_KDF_FS と、自身の公開値を含む AT_PUB_ECDHE を送る。ピアは対応可能な選択肢を規則に従って選び、自身の公開値を返す。IANA は新しい属性に 152 と 153 を割り当て、仕様は X25519 と P-256 を定義する。

これらの属性は既存の EAP-AKA' 認証素材から得られる AT_MAC で保護される。そのため、資格情報を持たない途中の観測者が公開値や KDF 選択を書き換え、正当な transcript として通すことはできない。共有秘密は MK_ECDHE に入り、そこから K_re、MSK、EMSK が導出される。

この仕組みは、後から長期鍵だけを得た攻撃者と、終了済みセッションとの間に新しい障壁を置く。一方、現在の認証中にすでに長期鍵を持つ能動攻撃者を排除するものではない。保護対象は時間軸で限定されている。

任意拡張が作る二種類の成功

RFC 9678 は任意である。対応しない、または選択しないピアは、ポリシーが許せば通常の EAP-AKA' を続行できる。前方秘匿性を必須とするなら、共通選択肢がない時点で認証を失敗させる。

したがって認証成功は一種類ではない。ECDHE を含む成功と、互換性のために従来経路を通った成功がある。後者は正当な認証であっても RFC 9678 の履歴保護を得ていない。

サーバーとピアの双方が方針を持つ。拡張を必須にするか、望ましいものにするか、旧式装置をどこまで許容するか。厳格化すれば可用性上の失敗が増えるかもしれない。緩和すれば将来の長期鍵漏えいに弱い記録が増える。標準は選択方法を規定するが、すべての環境に同じ判断を強制しない。

運用指標は能力、提示、選択、MAC 検証、従来経路へのフォールバック、必須方針による拒否を分けなければならない。総成功率だけでは移行の実態が見えない。

終了と廃棄はプロトコル外に広がる

RFC 9678 のセキュリティ上の結論には前提がある。終了済みセッションの関連鍵素材が削除されていなければならない。対象は一時秘密だけではない。残存すれば過去状態を復元または利用できる派生鍵も含まれる。

コピーは EAP 実装の外へ出る。認証サーバーのキャッシュ、鍵管理デーモン、ハードウェア、アクセスポイント、ゲートウェイ、再認証状態、スワップ、休止イメージ、コアダンプ、バックアップ、障害解析基盤が候補となる。あるライブラリのゼロ化は、そのライブラリが知る領域にしか効かない。

セッション終了も単一イベントではない。EAP メソッドの完了、リンク切断、トンネルの終了、加入者状態の失効、移動前コンテキストの廃止は別々に起こる。各鍵クラスについて、どのコンポーネントが終了を宣言し、いつ利用資格を失い、何をどの方法で消去するかを定義する必要がある。

保存例外も証拠に含める。暗号化されたバックアップはアクセス制御されたコピーであり、存在しないコピーではない。障害解析用ダンプを残すなら、非復元性の主張範囲を狭めなければならない。

再認証の継承関係

完全認証が ECDHE 拡張を用いると、K_re はその寄与を含む階層から作られる。後続の再認証は、長期鍵が後から漏れた場合に対する保護を継承する。これは高速な再認証にとって大きな利点である。

ただし、新しい DH 交換は行われない。K_re の保管期間が長く、再利用回数が多いほど、多数の新しい運用イベントが一つの古い完全認証へ結び付く。方針は、時間、移動、ソフトウェア更新、再利用回数などを条件に完全認証を再実行させられる。

監査では、再認証を起点となった完全認証へリンクし、コンテキスト年齢と利用回数を示すべきだ。そうすれば「最近成功した」という事実と「最近 ECDHE を行った」という別の事実を混同しない。

MSK の行き先によって価値が変わる

EAP が出力する MSK と EMSK は、後続レイヤーに渡される。実際の通信保護は、その消費者が何をするかで決まる。IKEv2 が別途一時 DH を実施してトンネルに前方秘匿性を与える経路では、EAP-AKA' FS の追加効果は限定的かもしれない。EAP 出力に直接依存するリンク保護では、拡張の有無が履歴リスクを大きく左右する。

従って、MSK インスタンスを具体的な関連付けへ結ぶ記録が要る。どの装置が受け取り、別の一時交換があったか、いつ利用を終え、どのコピーを消したか。EAP transcript だけでは、経営報告が指すデータ経路の保護を証明できない。

非復元性までの証拠階段

最初に両端の方針を保存する。拡張は必須か、優先か、任意か。フォールバックは許されたか。次に実装版、対応方式、順序付き提示、実際の選択、公開値、AT_MAC 検証を記録する。

秘密を記録せず、ECDHE の寄与が指定の導出へ入った事実と、MSK、EMSK、K_re の非秘密識別子を残す。それぞれを下流消費者へ結び、従来経路は明示的に表示する。

その後、各システムの終了イベントと、鍵を保持し得る全場所の台帳を作る。各保管者が消去、期限切れ、暗号学的無効化の証跡を出す。例外は隠さない。

最後に、退役後の承認された復元試験を行う。保存済み transcript と、後から得た長期素材だけで旧セッション鍵を復元できるか試す。範囲を明示した失敗は、設定フラグより強い証拠になる。

標準と実装現実の距離

RFC 9678 は属性、アルゴリズム、ネゴシエーション、導出という最小限の共通仕様を提供する。配備、必須化、メモリ処理、再認証寿命、下流廃棄は各環境が決める。公開は採用ではなく、採用は各セッションでの選択でもない。

Heng Lu の実行コードを優先する視点では、コードポイントは調整層、認証済み transcript はプロトコル層、残存鍵は実装層、アクセス関連は運用層、復元試験は証拠層である。「前方秘匿性対応」という表示はその上の象徴層にすぎない。

RFC 9678 を評価する最も誠実な方法は、その境界を弱点として扱わないことだ。標準は交換を改善した。組織は、交換の後に秘密が本当に退場したことを証明しなければならない。

出典