擬似言語
この方法で解くこと
特定言語に依存しない記法を、設問で示された実行規則に従ってアルゴリズムとして読みます。
手順
- 01
入力・出力・初期値を囲む。
- 02
代入・条件分岐・反復範囲に印を付ける。
- 03
実行順序どおりに変数を更新する。
解答時の注意
入出力と代入の向きを確認してから、一行ずつ追跡します。
EXAM QUICK REFERENCE
科目Aで知識の幅を作り、科目Bでアルゴリズムとセキュリティを最後まで読み切れるかを確かめます。16章で共通知識と解法を分けて整理します。
現行のIPA基本情報技術者シラバスVer.9.2と科目A/B構成に沿って整理し、2027年度の新制度案は混在させていません。
問題練習は公開中です。資料はログインせずに閲覧できます。
QUICK REFERENCE
12項目を表示
特定言語に依存しない記法を、設問で示された実行規則に従ってアルゴリズムとして読みます。
入力・出力・初期値を囲む。
代入・条件分岐・反復範囲に印を付ける。
実行順序どおりに変数を更新する。
入出力と代入の向きを確認してから、一行ずつ追跡します。
実行中に変化する変数と条件を、手順ごとに記録します。
主要変数と戻り値の列を作る。
一行を実行するたびに新しい値を記録する。
分岐の選択と反復の終了条件を確認する。
変化する値だけを列にして、表を大きくしすぎないようにします。
最小値・最大値・空・要素一つなど、ずれが起きやすい位置を確認します。
最小・最大・空・一要素の入力を並べる。
最初と最後の反復を書き出す。
「<」と「≤」の影響を一つずつ比べる。
不等号や配列添字が出たら、最初と最後の具体値を書きます。
引数と戻り値を追い、終了条件へ進んでから階層ごとに戻る流れを確認します。
終了条件と戻り値を囲む。
呼出しごとの引数を階層別に記録する。
最深層から戻り値を逆順に計算する。
最初に終了条件を探し、見つからないまま呼出しを展開しません。
挿入・削除・探索・参照順序から、設問に必要なデータ構造を判断します。
設問が求める主要操作を列挙する。
配列・リスト・スタック・キュー・木を比較する。
挿入または削除を一度追跡する。
構造名だけで決めず、操作コストと更新後の状態を確認します。
反復回数・入力の縮小方法・主要操作から、時間や空間の増加量を見積もります。
反復の入れ子数を数える。
入力が反復ごとに半減するか確認する。
最も高い次数の増加項を残す。
入力規模で変わる部分を先に探し、定数と低次項を除きます。
守る対象、起こり得る事象、悪用される弱点、リスクを下げる対策を分けます。
業務資産と安全目標を列挙する。
脅威を対応する脆弱性と組み合わせる。
対策が設問のリスクを下げるか検証する。
各対策が「どの具体的リスクを下げるか」を確認します。
利用者や役割と資源・許可操作を表にし、権限の妥当性を確認します。
行に主体、列に資源を書く。
読取・書込・実行などの許可操作を入れる。
権限超過と職務分離違反を確認する。
最小権限の原則で、過剰権限と必要権限の欠落を同時に探します。
ログのアカウント・アドレス・機器・事象を時系列に並べ、実際の経過を再構成します。
時刻系をそろえてタイムスタンプ順に並べる。
アカウント・IP・セッション・機器IDを関連付ける。
事実と推測を別欄に記録する。
ログにあるものは事実、記録のないものは推測として分けます。
侵入口・横展開・権限昇格・目的達成の順に、攻撃の進み方を確認します。
最初の侵入口と信頼境界を確認する。
横展開と権限昇格を印で示す。
各段階に予防または検知策を対応させる。
万能な一対策で済ませず、攻撃段階ごとに対策を対応させます。
機密性・完全性・認証・否認防止などの目的から、適切な暗号技術を選びます。
設問が求める安全特性を囲む。
共通鍵・公開鍵・ハッシュ・署名を比較する。
鍵の所有者と検証の向きを確認する。
安全目標を決めてから、鍵の所有者と検証者を確認します。
封じ込め・証拠保全・根絶・復旧・振返りの順で、セキュリティ事象へ対応します。
影響範囲を抑え、証拠を保全する。
原因を除去してからサービスを復旧する。
原因を振り返り、再発防止策を実施する。
緊急復旧でも、調査に必要なログと証拠を壊さないようにします。