RFC 5280 Quiz (JA)

Internet X.509 PKI Certificate and CRL Profile

0 / 0

参照(URL)

Q1: RFC 5280をdesign reviewで参照する主な目的はどれですか

単一選択
**判断のポイント:** X.509 certificate profileの役割を, 近いが別のsecurity機能やpolicy判断から切り分けます. **関連キーワード:** - **path validation**: trust anchorまでのchain検証 - **SAN**: DNS名などのsubject identity - **CRL**: revocation情報 **選択肢:** - A: serviceがすべてのbusiness actionを許可されていると証明することはRFC 5280の中心目的ではありません. 近い設計では関係しても, このRFCが直接解く判断ではありません. - B: certificate内容, certification path, revocation data, Internet name formをレビューすることがこのRFCを読む主な理由です. 実装やreviewではここから入力, 検証, 境界を確認します. - C: TLS handshakeをstandalone certificate parserで置き換えることは範囲外です. RFC 5280だけで上位policyや別protocolの責務までは決まりません.

Q2: RFC 5280を使うときに明示すべき境界はどれですか. 該当するものをすべて選んでください

複数選択
**判断のポイント:** X.509 certificate profileは部品です. 受理条件, authorization, deployment例外は明示する必要があります. **関連キーワード:** - **path validation**: trust anchorまでのchain検証 - **SAN**: DNS名などのsubject identity - **CRL**: revocation情報 **選択肢:** - A: このapplicationで受理するtrust anchor, name, EKU, revocation freshnessはRFC本文だけでは決まりません. relying applicationが何を成功とするかを指定します. - B: local acceptance policyを省略すると, validな形式を誤ったcontextで受理できます. これはRFCの境界を越えています. - C: relying contextに応じてchain, trust anchor, validity time, name constraint, key usage, revocation inputを確認するは実装reviewで残すべき境界です. 入力元とscopeを確認しないと誤受理につながります. - D: RFC参照は安全性の必要条件になり得ますが, deployment設定, 鍵, trust, failure handlingまで自動では保証しません.

Q3: X.509 certificate profileを使うprofileを作るとき, 最初に仕様へ書くべきことはどれですか

単一選択
**判断のポイント:** profileはX.509 certificate profileの使い方を実装間で同じにするためのcontractです. **関連キーワード:** - **path validation**: trust anchorまでのchain検証 - **SAN**: DNS名などのsubject identity - **CRL**: revocation情報 **選択肢:** - A: 入力byteやcontextを自由にすると, 実装ごとに別の値を検証してしまいます. - B: human-readable textは説明には使えますが, validationのstable inputにするとlocaleや文言変更で壊れます. - C: ここでは, service identityを正しいname formへ入れ, CA, key usage, policy extensionを一貫して設定することが必要です. producer側の規則が明確なら, verifierは同じ条件で検証できます.

Q4: もっとも相互運用性を壊しやすい実装はどれですか

単一選択
**判断のポイント:** 相互運用性の問題は, 同じwire dataを違う意味で処理したときに表面化します. **関連キーワード:** - **path validation**: trust anchorまでのchain検証 - **SAN**: DNS名などのsubject identity - **CRL**: revocation情報 **選択肢:** - A: signature chainだけ確認し, name constraint, key usage, revocation policyを無視することは検証対象やmeaningをずらします. その結果, 実装間で成功条件が合わなくなります. - B: BCP 14を要件へ限定することは, 仕様の曖昧さを減らす側の行動です. - C: unsupported extensionの扱いを文書化することは, 実装差を減らすために有効です.

Q5: verifierがX.509 certificate profileに関係する入力を受け取ったとき, 重要なvalidation stepはどれですか

単一選択
検証対象をpolicy decisionへ渡す前に入力と境界を確認する流れ.
生成側 X.509 certificate profile evidence / data 検証側 受理判断
**判断のポイント:** X.509 certificate profileは受信経路だけでなく, 定義されたinputとscopeで検証される必要があります. **関連キーワード:** - **path validation**: trust anchorまでのchain検証 - **SAN**: DNS名などのsubject identity - **CRL**: revocation情報 **選択肢:** - A: HTTPSはtransport保護には有効ですが, X.509 certificate profileの個別validationを置き換えません. - B: relying contextに応じてchain, trust anchor, validity time, name constraint, key usage, revocation inputを確認するが中心です. これによりwell-formedな入力と受理可能な入力を分けられます. - C: filenameやpathはrouting hintにはなりますが, identityやsecurity proofとしては不足します.

Q6: RFC 5280だけでは保証されず, applicationまたはdeployment policyで決めるものはどれですか. 該当するものをすべて選んでください

複数選択
**判断のポイント:** 仕様が処理規則を定義しても, どの結果を受理するかは別のpolicy判断です. **関連キーワード:** - **path validation**: trust anchorまでのchain検証 - **SAN**: DNS名などのsubject identity - **CRL**: revocation情報 **選択肢:** - A: certificate field, extension, path validation, CRL processingはRFC 5280が直接扱う中核です. policyではなくmechanism側の内容です. - B: このapplicationで受理するtrust anchor, name, EKU, revocation freshnessはapplicationまたはdeploymentが決める受理条件です. - C: well-formed syntaxやalgorithm処理はRFCが定義する側です. ただし成功結果の意味は別途決めます. - D: revocation statusを取得できない時の扱いはlocal policyです. 運用とthreat modelに合わせて明文化します.

Q7: security reviewで中心に置くべき失敗モードはどれですか

単一選択
**判断のポイント:** security reviewでは, mechanismを入れた事実よりも, 誤った条件で受理する経路を見ます. **関連キーワード:** - **path validation**: trust anchorまでのchain検証 - **SAN**: DNS名などのsubject identity - **CRL**: revocation情報 **選択肢:** - A: performanceは重要な場合がありますが, cacheでsecurity propertyを代替する判断は危険です. - B: 新しいlibraryは有利ですが, local policy, input, threat modelのreviewは残ります. - C: parseできることや無関係なtrust anchorへchainすることだけで受理することが中心的な失敗モードです. 攻撃者はここを使ってcontextやtrustをずらします.

Q8: 近い仕様との関係としてもっとも正確なのはどれですか

単一選択
**判断のポイント:** 隣接仕様は置き換え関係ではなく, layerや責務の違いとして読むのが安全です. **関連キーワード:** - **path validation**: trust anchorまでのchain検証 - **SAN**: DNS名などのsubject identity - **CRL**: revocation情報 **選択肢:** - A: TLSはauthenticationでcertificateを使うが, RFC 5280は下位のInternet certificateとCRL profileを定義するという読み方が責務分担を壊しません. - B: obsolete関係はRFC本文で明示されるものです. 近いconceptだから置き換えとは限りません. - C: X.509 certificate profileはprotocol compositionのreviewで意味を持ちます. 無関係として扱うと境界を見落とします.

Q9: X.509 certificate profileへ依存する前に確認すべきreview questionはどれですか. 該当するものをすべて選んでください

複数選択
**判断のポイント:** review questionは, 実装者が同じ成功/失敗境界を再現できるかを確認するために使います. **関連キーワード:** - **path validation**: trust anchorまでのchain検証 - **SAN**: DNS名などのsubject identity - **CRL**: revocation情報 **選択肢:** - A: input, context, validation rule, rejection behaviorの明記は, 実装差を減らす直接的なcheckです. - B: RFC番号だけではlocal semanticsは決まりません. profileやpolicyで補う必要があります. - C: unknown valueをsuccessにすると, extensionや攻撃入力を誤って受理できます. - D: service certificate, client certificate, verifier certificateを受理または拒否する場面は現実のreview対象です. ここで成功条件を固定すると誤用を減らせます.

Q10: validationが失敗したとき, もっとも安全な解釈はどれですか

単一選択
**判断のポイント:** validation失敗は, その入力を根拠にした判断を止める信号です. **関連キーワード:** - **path validation**: trust anchorまでのchain検証 - **SAN**: DNS名などのsubject identity - **CRL**: revocation情報 **選択肢:** - A: warningへ下げて受理するとfail openになります. 攻撃入力でも成功経路へ入れます. - B: そのsecurityまたはpolicy decisionには使えないと扱うのが安全です. 必要なら明示的なfallback policyを別に定義します. - C: authorizationは重要ですが, 壊れたvalidation inputを自動修復するものではありません.