基本情報技術者試験はITパスポート(対策記事はこちら)の次のステップの国家資格になります。この記事は基本情報に向けての対策記事と学習の記録になります。また本記事は下記の2冊の本の紹介と要約も兼ねています。ただし科目Aの参考書について途中から違う本にシフトしました。その理由も後ほど記事後半の過去問演習の章にてご紹介します。本記事では紹介している書籍を紹介しながら必要と思われる過去問の内容も振り返って学習していく記事になります。
僕はITパスポートに近いレベルの試験だとG検定とデータサイエンティスト検定に合格していますが、ITパスポート以外は過学習にヒヤリとした試験でした。IPA主催の試験は参考書をしっかりとインプットして過去問でのアウトプットを一生懸命行えば合格できると言われていますので、基本情報では2冊に絞って対策を練る作戦で行きます。
2025年5月19日に基本情報技術者試験を受けて合格点をこえることができました。また6月13日に合格発表があり、正式に合格ができたことを確認しました!本記事の終盤に今回の試験での反省点も書いていますので、よろしければご覧ください。

基本情報の参考書や合格率などのデータ
科目Aは『【令和7年度】 いちばんやさしい 基本情報技術者 絶対合格の教科書+出る順問題集 (絶対合格の教科書シリーズ) 』を使用し、科目Bは『情報処理教科書 出るとこだけ!基本情報技術者[科目B]第4版』を使用して過去問演習を行う学習をします。科目Aの参考書は後ほどシフトチェンジして使用しています。詳しくは過去問演習の章をご覧ください。
基本情報技術者試験は科目Aと科目Bを同日に受験します。受験料は7500円になります。合格率は約40%です。そのためしっかりと学習すれば合格できる試験のレベル感です。科目Aは90分で60問に4択で回答し1000点中600点以上で合格(3大分野の足切りなし)です。科目Bは100分で20問に最高10択から回答し1000点中600点以上で合格です。科目Bの2大分野はアルゴリズムとプログラミングが16問+情報セキュリティ4問です。採点はIRTで科目Aは4問、科目Bは1問のダミー問題があります。
科目Aはセキュリティ分野が多く出題される傾向にあり、科目Bも併せるとITパスポートよりテクノロジ色の強い試験になります。
科目Bは100分で20問のため1問5分がリミットです。情報セキュリティ分野の技術的対策は範囲外です。疑似言語は暗記より技能が、情報セキュリティは暗記と読解力が必要です。
基本情報の科目A

基礎理論(テクノロジ系)
特に指定がない場合は2進数を考えています。ビット数は8とします。
0と1で表された数値をビット列、ビットパターンと言います。数値の表記法を変換することを基数変換と言います。2進数の有限小数→10進数の有限小数だが逆は偽(反例は0.05)。2進数で負の整数を表す場合は、絶対値表現(符号ビットを先頭につける)、1の補数表現(反転)、2の補数表現(反転して1を足す)があります。論理シフトは、ビット列を左方向に1ずらすと値が2倍され、右方向に1ずらすと値が1/2倍されます。算術シフトでは、左方向の時は符号ビットの位置は固定し論理シフトと同様で、右方向の時は注意が必要で、符号ビットはそのままの位置ですが、空いたビットには符号ビットと同じ数を入れます。
排他的論理和(XOR)は対称差と同義で論理式では△でなく⊕とします。二つの命題のいずれか一方のみが真のときに真となり、両方真や両方偽のときは偽となります。NAND=NOT AND、NOR=NOT ORです。論理回路は論理演算を行う電子部品です。MIL記号は論理演算を表す記号です。加算回路には半加算器(下の位からの桁上がりを考慮しない)と全加算器(桁上がりを考慮)があります。素子は装置を構成する基本単位ですので、論理回路=論理素子=論理ゲートとなります。計算式を表す方法は中置記法、前置記法(ポーランド表記法)、後置記法(逆ポーランド記法)があります。中置記法は演算子を数字の間に置く表記法で、ポーランド記法(括弧不要)も逆ポーランド記法も同じように考えます。オートマトンとは機能を入力、状態、出力の3つで表すシステムのモデルです。最終的な状態を受理状態と言います。状態遷移図の太い矢印は初期状態を表します。

コンピュータの処理効率はデータの並べ方で変わります。主記憶装置上のデータの並べ方をデータ構造と言います。スタック、キュー、配列、連結リスト、木構造があります。Cというデータをスタックに格納するとき、Push Cと書きます。データを取り出すときはpopと言います。スタック=後入れ先出し(LIFO=Last In First Out)です。キュー=待ち行列です。キューにデータDを入れることをenqueue D(エンキュー)といい、取り出す時をdequeueと言います。キュー=先入れ先出し(=FIFO)と言います。配列はデータを表の形に並べたものです。要素の位置を表す数字を要素番号と言います。配列Aの先頭から3番目の要素を取り出すことを、A[3]と書きます。二次元配列の場合は、A[2,4]などと表現します。連結リストはデータを数珠つなぎに並べたものです。個々のデータを要素と言いますが、データにポインタがつきます。これは次の要素のアドレス(主記憶装置上のデータの位置)を指し示すものです。連結リストは要素数が多いとアクセスに時間がかかります。ただし連結リストはポインタを変更するだけでデータの挿入や削除が可能です。
配列は、参照と更新が速い
連結リストは、挿入・削除が速い
連結リストは4つに分類できます。単方向リスト、双方向リスト、線形リスト、環状リストです。2分木の中で左の子孫<親<右の子孫の時、2分探索木と言います。この符号は節(ノード)の数字の番号です。アルゴリズムは文章、流れ図、数式、プログラム言語で表現できます。流れ図の記号はJISで規格化されています。トレース表は変数の値を書き出した表です。関数において、引数は関数に渡す値で、戻り値は関数が返す結果です。
ifは後ろに条件を書きます。
thenは後ろに条件が正しい時の処理を書きます。
elseは後ろに条件が正しくない時の処理を書きます。
returnは後ろに戻り値を書きます。
アルゴリズムには整列アルゴリズム、探索アルゴリズム、再帰的アルゴリズム(処理の途中で自分自身を呼び出すアルゴリズム)があります。整列アルゴリズムはバブルソート(隣り合ったデータを比較し順序が違っていたら交換)、選択ソート(先頭からデータを比較し最小値を選択しそれを先頭データと交換)、挿入ソートは未整列データを整列済みデータに挿入する、クイックソートは基準値より小さいグループと基準値より大きいグループに二分し、分けたグループにも同処理を適用します。探索アルゴリズムは線形探索法、ハッシュ法、2分探索法があります。ハッシュ探索法はデータをハッシュ関数(剰余など)に通したハッシュ値を要素番号とした、配列の要素に目的のデータを格納するためハッシュ表を考えます。衝突が課題です。2分探索法は調べる範囲を半分にすることで目的データを見つけるアルゴリズムで、データはあらかじめ整列させておく必要があります。再帰的アルゴリズムにおいて、処理途中で自分自身を呼び出す関数を再帰関数といい、総和、剰余、階乗が用いられます。オーダー表記はO(計算量)です。オーダーは最大の計算量を表します。データがn倍のとき、計算量がn倍になるアルゴリズムのオーダーはO(n)です。1回の処理で完了するときO(1)です。
ハッシュ法はO(1)
2分探索法は2進対数でO(log2n) か底を無視してlogn
線形探索法はO(n)
クイックソートはO(n(logn))

プログラムの性質は、再帰(リカーシブ)、再入可能(リエントラント)、再配置可能(リロケータブル)、再使用可能(リユーザブル)です。リカラントは複数プログラムから同時に呼び出しても正しく動作する性質で、リユーザブルは一度プログラムを主記憶に格納すれば後は主記憶装置から何度でも繰り返し実行できる性質です。再使用可能プログラムはリロード(補助記憶装置から主記憶装置にプログラムを再度格納する)の必要はありません。

JAVA(ガーベッジコレクション機能あり)〜について
JAVAはプログラム言語(機種やOSに依存しない)
アプリケーション(JAVAで書かれたアプリケーションソフトウェア)
アプレット(クライアント側へ転送され実行されるプログラム)
サーブレット(動的Webページを作るためのプログラム)
Beans(よく使う機能を部品化し、再利用できるようにコンポーネント化)
Script(動的なWebページを作るプログラム言語)
そのほかの言語はHTML(Webページ作成で独自タグ×)、XML(データ交換で独自タグ◯)、CSS、Ajax(画面を切り替えることなく動的なユーザインタフェースを実現)です。AjaxはGoogleマップが一例で、非同期通信です。Ajax以外は同期通信です。同期通信とはユーザはサーバの処理が終わるまで次の処理を待つ必要がある通信です。COBRAは分散システム環境で、オブジェクト同士がメッセージを交換するための共通仕様です。XML文書においてDTDには文書型の定義を記述します。
コンピュータシステム(テクノロジ系)
MIPSはCPUが1秒間に何百万個の命令を実行できるかの単位です。million instructions per secondです。CPUの性能はクロック周波数、MIPS、コアの指標で評価されます。CPUはアドレスを指定して主記憶装置から命令やデータを取り出します。命令は命令部とアドレス部で構成されます。取り出された命令はレジスタに格納されます。プログラムカウンター(プログラムレジスタ)は次の命令のアドレスを格納し、命令レジスタは命令を、汎用レジスタはデータを格納します。



間接アドレス指定のメリットはアドレス部に格納できない大きなサイズのアドレスを主記憶装置に保存できることですが処理に時間がかかります。内部割込みは実行中のプログラムが原因で発生し、外部割込みは実行中のプログラム以外が原因で発生します。主記憶装置はデータを高速に出し入れできるが、電源を切ると消滅します。補助記憶装置はPCの電源を落としても削除されません。容量と速度は反比例します。キャッシュメモリの容量は主記憶装置の1%にも満たないです。ヒット率は必要なデータがキャッシュメモリ上に配置されている確率です。キャッシュメモリを利用したときのアクセス時間を実効アクセス時間と言います。メモリインタリーブとは、CPUから主記憶装置へのアクセスを高速化するため、主記憶装置内部を複数のバンクと呼ばれる単位に分割し、各バンクに並列にアクセスすることです。ライトスルー方式はCPUからの書き込みをキャッシュメモリと主記憶装置に同じデータを書き込むことで、ライトバック方式は通常はキャッシュメモリに書き込み、不要なデータを追い出す際に主記憶装置に書き込むことです。シリアルインタフェースは1本の信号線で1ビットずつ順次やり取りする規格で現在の主流です。パラレルインタフェースは複数の信号線で複数のビットを並列にやり取りする規格ですがデータの同期が難しいです。USBは1.0→2.0→3.0になるにつれ最大転送速度は12Mbps→480Mbps→5Gbpsとなりました。PCと周辺機器の接続はスター接続、ツリー接続(ハブを用いる)、デイジーチェーン接続(直列の数珠繋ぎ)があります。dpiは1インチ=2.54cmあたりのドットの数を表す単位です。1ポイントは通常1/72インチです。

分散処理はクライアントサーバシステム、3層クライアントサーバシステム(データベースサーバなどを利用)、Webシステム(稲ターネットとWebブラウザを使用し前2つのように専用のソフトウェアのインストールは不要)があります。通常動いているコンピュータを現用系、待機している予備を待機系と言います。RAIDは複数のハードディスクを1つのハードディスクのように扱う技術です。スループットは何件できるか、ターンアラウンドは何秒かかるかです。レスポンスタイムは処理時間のみで、ターンアラウンドは入力+処理+出力の時間です。キャパシティランニングはシステムの稼働状況に応じて処理能力を計画することで、スケールアウト(サーバの台数増やす)とスケールアップ(ここのサーバの処理能力を向上)があります。ベンチマークテストは、使用目的に合わせて選定した標準的なプログラムを実行させ、システムの処理性能(本番環境と似ていると高い精度になります)を測定します。RASISはシステムを評価する5つの指標の頭文字です。R(信頼性)A(可用性)S(保守性)I(完全性)S(安全性)です。特に最初の3文字をRASとします。MTTR(平均修復時間)が小さいと保守性が高いです。複数の機械の場合は、まとめて1つのシステムとして考えます。

OSはソフトウェアとハードウェアの仲介でジョブ管理(印刷においてスプーリングではデータを一時的に補助記憶装置に保存します。バッファは速度の異なる2つの装置の差を緩和することです)、タスク管理(プリエンプティブはCPU使用権をOSが管理する方式(実行中の優先度の低いタスクを実行可能状態にして優先度の高いタスクを実行状態にします)でノンプリエンプティブは使用権をタスクが管理します。他には到着順、処理時間順、ラウンドロビン方式(タスクを一定時間ごとに切り替える)があります。)、記憶管理(主記憶管理と仮想記憶管理(補助記憶装置の一部をあたかも主記憶装置であるかのように扱う方式)があります。さらにセグメンテーション方式とペーシング方式があります。ペーシング方式はややこしいです)、データ管理ができます。セマフォは信号機の意味で並行動作している複数タスク間で共通して使用する資源へのアクセスを制御するメカニズムです。
記憶管理がメインになります。



滅多に使わないページは実記憶から外すことが望ましいです。どれを外すのかのアルゴリズムをページの書き換えアルゴリズムと言います。LRU(least recently used)、LFU(leastly frequently used)、FIFO(first in first out)があります。

スラッシングは仮想記憶管理において割り当てられる実記憶の容量が小さいとき、ページアウトとページインが頻繁に起きる現象です。
ソフトウェア(ソフトウェア管理ガイドラインは違法複製を防止するためのガイドラインです)の処理に関する過去問はバリエーションが多く気の抜けない部分になります。バッファが格納するデータ量は水の問題と似たような考え方をします。メイン処理が利用できる時間は割り込みの時間以外の時間です。ポーリング制御は、各部の情報を一定時間ごとに収集し、その情報をもとにソフトウェアの状態を判断して処理を行います。

データ管理はファイルシステムやバックアップなどの機能です。ファイルシステムはデータのまとまりをファイルとして扱いデータを管理しやすくする機能です。レプリケーション→バックアップ→アーカイブの順でコピーのタイミングが長くなります。レプリケーションはリアルタイムです。コンパイラ(最適化の目的はプログラムの実行時間の短縮です)の処理手順は、字句解析→構文解析→意味解析→最適化→コード生成です。

インタプリタは命令を1文ずつ解釈しながら実行するので最適化が行われず実行時の効率が悪いですが、ソースコードをすぐに実行できるので効率よくソフトウェアを開発できます。OSS(オープンソースソフトウェア)は誰もが自由に見たり変更できます。EclipseはOSSの統合開発環境です。IDEは統合開発環境です。

コピーレフトは著作権は作者が保持し2次著作物にもオリジナルと同じ配布条件を求めます。つまり改変したプログラムを再配布する場合はソースコードも公開することがポイントです。
半導体メモリは電気を使ってデータを保存します。キャッシュメモリはRAMに分類(リフレッシュ不要のSRAMの方)されます。DRAM(主記憶装置など)は絶えずリフレッシュを続けるRAMです。SDRAMはクロックと同期して動作する半導体メモリです。フラッシュメモリは電気的にデータの書き換えができるROM(パソコンの電源を入れたら初めに起動し、その後にブートプログラムで次にOSです。)SSDやUSBメモリなどです。ページというビットをひとまとめにした単位でデータの読み書きをします。データの消去はブロックというページをひとまとめにした単位で行います。DRAMはコンデンサが、SAMにはフリップフロップ回路が使われます。半導体メモリは無数のメモリセル(0か1を保存する入れ物)で構成されます。メモリセルの中にコンデンサが1つずつ入っています。フリップフロップ回路は1つの情報を保存できる順序回路で電圧を保持し続けられます。コンデンサのように頻繁にリフレッシュする必要がなく高速に動作します。しかし値段が高いです。チャタリングは意図しないオンオフ現象です。7セグメントLEDは8個のLEDを組み合わせて数字を表示するディスプレイです。アノードコモン型(電圧が低いとき光る)とカソードコモン型(電圧が高いときに光る)があります。出力を2進数にして1と書かれているところがどの出力ポートに対応するかを考えます。

技術要素(テクノロジ系)
CUIとはコンピュータ操作を文字で行うユーザーインタフェースです。GUIにおいてコンボボックスとはプルダウンメニューに手入力できる枠を追加した部品です。効果はユーザーが特定の目標を達成する際の正確性や完全性です。効率は達成された結果に関連して追加した資源です。ユーザビリティの評価法にはヒューリスティック評価(専門家が評価するので発見的)やログデータ分析法もあります。入力チェックにはシーケンスチェックもあります。これは正しい順番になっているか?です。ユニバーサルデザインの中にバリアフリーデザインがあります。Webアクセシビリティはすべての人がWebサイトにアクセスしコンテンツを利用できる度合いです。文字はビットマップフォント(文字の形を正方形のドットの集合で表したフォント)とアウトラインフォント(文字の形をなめらかな曲線のデータとして持っているフォント)があります。アウトラインフォントはビットマップに変換する必要がありラスタライズと言います。ビットマップフォントは高速表示が可能です。クリッピングは画像の切り抜きです。テクスチャマッピングは物体表面に模様などの画像を貼り付け質感を出す方法です。動画圧縮はH.264/MPEG-4 AVCが圧縮率が高く、従来の動画圧縮規格のMPEG-2のおよそ2倍で、現在はワンセグ放送やyoutubeなど様々なメディアで使用されます。

データベースを図で表すときは円柱で表記します。データモデルはデータモデリングによって現実世界のデータの相互関係を明確にしたものでデータベースを作る際の設計図になります。関係データモデルは表で表します。関係モデルとも言います。関係モデルではテーブルを関係といい、レコード(行)を組、列を属性と言います。主キーは運命の赤い糸と似ています。重複したら嫌だし誰もいなかったら寂しいです。外部キーとは別のテーブルの主キーを参照する列です。外部キーを定義すると参照一貫性を保てます。エンティティは名詞、リレーションシップは動詞と考えます。

関数従属は属性名同士を矢印で結びます。部分関数従属は属性が主キーの一部に関数従属することです。
正規化の目的は表中のすべての関数従属から、部分関数従属と推移的関数従属を取り除き、完全関数従属だけ残すことです。つまりすべての矢印が主キーから出るようになるまでテーブルを分割することです。正規化を選ぶ問題は非正規形の状態から具体例を入れるなどして第3正規形まで自分で行い選択肢と照らし合わせるのが良いです。





データベース管理システムではデータ操作、トランザクション管理、排他制御の機能があります。’をシングルクォートと言います。ただし基本情報技術者試験ではシングルクォートの有無が成否に影響しません。WHERE句はグループ化する前のテーブルに対して、HAVING句はグループ化後のテーブルに対して条件式を指定します。AS句を指定して列名に別名を付けられます。実表=基底表に対してCREATE VIEW文を用いて新たに作成された仮想的な表をビュー=導出表と言います。ビューを用いてユーザーに見せたくないデータを隠蔽できます。実表のデータを変更するとビューのデータも変更され、逆も成立します。ただし複数の表を結合して作られたビューに対して、データを変更することはできません。

インデックスとはデータベースの検索を高速化する機能です。ストアドプロシージャはデータベースに対する複数の命令を1つの命令にまとめて、データベース管理システムに保存したものでクライアントとサーバ間のネットワークの負荷を軽減できます。トランザクション管理は、ユーザーがDBMS(データベース管理システム)に対して行う一連のトランザクション(関連する複数の処理のまとまり)を管理することです。つまりユーザーから見た1つの処理です。ACID特性はトランザクション管理に必要な4つの性質の頭文字です。原子性(atomicityで全て実行か全て消えるか)、一貫性(consistencyで矛盾がないこと)、独立性(isolationで他の処理に影響を受けないこと)、耐久性(durabilityで更新された内容が保証されること)です。ログファイルはジャーナルファイルとも言われ、トランザクションの前後の状態を保存したファイルです。

障害が発生した際に、ロールバックはデータベースをトランザクション開始直前の状態に戻し、ロールフォワードはデータベースをトランザクション完了直後の状態に戻します。


排他制御は最も重要な機能で、複数の人が同じデータを同時に更新しようとしたとき、データに矛盾が生じないようにする機能です。専有ロックはロックをかけたトランザクションのみデータを読み書きできます。つまりデータベースを更新する際に用います。共有ロックは他のトランザクションもデータの読み出しのみですが行えます。ロックの両立性は共有ロックを同時に描けることができる特性です。

ロックの粒度とはロックの対象となるデータの単位です。データベース単位やテーブル単位、レコード単位などです。小さいと競合が起きにくく管理が複雑になりメモリ負荷が増えます。大きいと競合が起きやすくなりますが管理が単純になるので負荷が減ります。つまり競合と負荷は反比例の関係です。
回線交換方式は通信回線を占有して情報をやり取りします。パケット交換方式はデータをパケット単位に分割し複数の回線を用いて情報をやり取りします。パケットには小分けされたデータにヘッダー(宛先)がつきます。伝送効率=回線利用率です。パリティチェック方式(垂直パリティ)は奇偶検査方式です。ECCは誤り訂正符号としてハミング符号垂直水平パリティを用いて、記録内容に発生した誤りを検知、自動訂正できる誤り制御方式です。ATM交換機はデータをセルという固定長のブロックに分割し、各セルにあて先情報を含むヘッダーを付加することにより種々のデータを統一的に扱う交換機です。

ただしビット誤りの検出性により優れたCRC方式が主流です。データをあらかじめ決められた多項式で割り算し、余りをチェックデータとしてデータに付け加えて送る方式です。
問題10ー3が難所です。本番で出てきたら間違えそうです。
無線LANについてコンピュータ同士が直接通信する方式をアドホックと言います。IPアドレスはアメリカにあるICANNという管理団体が管理しています。IPアドレスは最終的な通信相手を特定し、MACアドレスは次の通信相手を特定します。MACアドレスにはベンダーIDと固有製造番号があります。48ビットのうち前半がベンダーID(ネットワーク機器メーカーに割り当てられる)で後半が固有製造番号(各メーカーが自社製品に一意に割り当てる)です。通常は16進数で表現します。IPアドレスにはネットワーク部(宛先となるコンピュータが所属するネットワークを表す)とホスト部(コンピュータのアドレスを表す)があります。これはサブネットマスク(1がネットワーク部で0がホスト部)で決まります。

ネットワーク部の桁数が少ないほどホスト部の桁数が多くなるので、沢山のコンピュータをネットワークに接続できます。

ただし2進数は人間が読みづらいので、8桁ごとに区切ったものをそれぞれ10進数にして表記することもあります。アドレスプレフィックス表記法はIPアドレスに含まれるネットワーク部の桁数を表す方法です。IPアドレスの末尾にスラッシュを追加してネットワーク部の桁数(サブネットマスク)を表記します。IPアドレス/◯という場合、上位◯桁がネットワーク部になり、32-◯桁がホスト部です。注意点は、この時に接続できる台数は2^(32-◯)から2を引いた台数です。2台少ないのは、ネットワークアドレス(ホスト部が全て0のIPアドレスでLANを識別する)とブロードキャストアドレス(ホスト部が全て1のIPアドレスで同一ネットワークにある全てのホストにデータを送信するときに使われる)で2台としているためです。IPv4というIPアドレスは32桁の2進数つまり32ビットで構成されます。そしてIPv6(全部で128ビットであり、16ビットごとにコロンで区切って16真数で表現)もありますが移行が大変なので現在はまだIPv4です。プライベートIPアドレスをグローバルIPアドレスへ変換する技術をNATと言います。ルーターに割り当てられているグローバルIPアドレスを一時的に借りてインターネットに接続し、IPv4の不足問題を解決しています。NAPTで複数のプライベートIPアドレスを1つのグローバルIPアドレスに変換できます。DHCPはIPアドレスを各コンピュータに自動的に割り振るプロトコルです。


OSI基本参照モデルは通信プロトコルやネットワーク機器が持つ機能を7つに分類し階層化したモデルです。実際のインターネットではOSI基本参照モデルをさらにシンプルにしたTCP/IPモデルが使われます。

語呂は第7層から「アプセトネデブ」です。TCP/IPは「アトイリ」です。リンク層はネットワークインタフェース層のことです。対応関係は似ている文字で区切りをつけます。下記の説明も合わせて一気に覚えてしまいましょう。
リピータはデータ中継の装置(電気信号としかみない)です。複数を繋ぐのがリピータハブです。ブリッジはデータを(全て)中継する装置ですがデータのMACアドレスを見ます。複数のものをレイヤー2スイッチ=スイッチングハブです。ルーターはIPアドレスを見ます。ルーティング(経路選択)するのがブリッジとの違いです。レイヤー2スイッチにルーティング機能を追加するとレイヤー3スイッチに進化します。ゲートウェイはプロトコルの異なるネットワークを接続することです。
エンドシステム=ホストのことです。NTPはコンピュータの時刻(OSが管理する時計とパソコン内部の時計)を合わせるプロトコルです。前者は電源オフにすると消えますが、後者は消えません。NTPはNTPサーバにアクセスしてパソコン内部の時刻を修正します。MIMEは電子メールで文字以外のデータを転送する規格です。S/MIMEは電子メールを暗号化する規格です。公開鍵暗号方式を用いてデジタル署名を付けて送信します。
情報セキュリティに関する脅威は人的脅威(ソーシャルエンジニアリングなどで不正のトライアングルは機会、動機、正当化です)、技術的脅威(最終手段が技術の場合でポートスキャンやパスワードリスト攻撃やキーロガー(キーボード入力を記録するプログラム)、DNSキャッシュポイズニング(DNSサーバにキャッシュされているドメイン名とIPアドレスの対応を書き換える)、クロスサイトスクリプティング(webページにユーザーの入力データをそのまま表示するフォームから悪意ある埋め込みスクリプトからcookieなどを盗み出す)、DDoS攻撃(複数PCから一斉にDoS攻撃を行いボットネットを用います。C&Cサーバから指示を受けて攻撃します)、ディレクトリトラバーサル攻撃(パス名を使ってファイルを指定し管理者の意図しないファイルを不正に閲覧)など)、物理的脅威になります。共通鍵の欠点はそもそも相手に共通鍵を安全に送れるか?です。公開鍵の欠点は誰でも暗号化できてしまう点で解消のためデジタル署名を用います。現在では時間短縮のため共通鍵暗号方式がハイブリッド暗号方式として多く使われます。SSL \TLSでも使われます。

ハイブリッド暗号方式は共通鍵を公開鍵暗号方式で暗号化して相手に送りデータの暗号化と復号を共通鍵暗号方式で行います。

DESからAESになりました。RSAは開発者3人の頭文字で素因数分解を用います。ハッシュ関数によって文字列は一出力として定の長さの値(ダイジェスト)になります。別名、ハッシュ値です。SHAはハッシュ関数のアルゴリズムです。SHA-256は256ビットの長さのダイジェストを出力するハッシュ関数のアルゴリズムです。インターネットの世界で印鑑登録証明の役割はデジタル証明書がはたします。公開鍵の所有者が本人であることを証明するデータです。認証局(CA)はデジタル証明書を発行する第三者機関です。

PKIはなりすましを防ぐ仕組みです。公開鍵基盤とも言います。つまり公開鍵の正当性を認証局に保証してもらう仕組みです。デジタル署名の検証鍵は送信者の公開鍵で、デジタル署名の署名鍵は送信者の秘密鍵です。つまりデジタル署名においては、秘密鍵を署名鍵、公開鍵を検証鍵とします。リスクマネジメントは会社の活動に伴って発生するリスクを管理し、損失を最小の費用で食い止めるプロセスで、特定→分析→評価→対応となり、最初の3つをリスクアセスメントと言います。対応策は回避、低減、共有(転嫁、転移とも言われる)、保有です。BCMは事業継続管理で事前に計画し準備します。BCPは事業継続計画です。リスクマネジメント⊃情報セキュリティマネジメント⊃ISMS(機密性、完全性、可用性をコスパを考慮して維持管理する仕組みでJIS Q 27001に基づく)です。アクセス権は読み取り権限、書き込み権限、実行権限があります。アクセス権は8進数で表されます。0が権限なし、1が権限ありを意味します。

3つの壁はファイアウォール(不正アクセスを判断するのはパケットフィルタリング型ファイアウォールです)→IDS/IPS(通知/通知+アクセス遮断)→WAF(アプリを守りアクセスを遮断します)です。HTTPS(HTTPをSSL/TLSで暗号化し、webブラウザからwebサーバまで暗号化します)、WPA3は無線LAN上の通信を暗号化します。(PCとアクセスポイントの間を暗号化します)


マルウェア感染チェックは3種類あります。コンペア法(原本ファイルと感染疑いのファイルを比較)、パターンマッチング法(マルウェアの特徴(シグネチャ)と一致するか検査)、ビヘイビア法(マルウェアを実際に実行して振る舞いを監視)です。MDMは業務に使うスマホをセキュリティポリシーに従い一元管理します。ファジングは問題を起こしそうな多様なデータを入力し脆弱性を見つけます。ペネトレーションテストはネットワークが対象で、ファジングはソフトウェア対象です。セキュアブートは起動時にOSのデジタル署名を検証し許可されていないOSの実行を防ぎます。バイオマトリクス認証は筆跡(速度や筆圧を利用)や歩き方もあります。2要素認証は記憶、所有物、生体情報のうち2つを使って本人確認をする方法です。
サラミ法は不正行為が表面化しない程度に、多数の資産から少しずつ詐取する方法です。
開発技術(テクノロジ系)

共通フレームはシステム開発などを適正化するために作業項目を1つ1つ定義した本です。

ソフトウェアライフサイクルは企画→要件定義→開発→運用→保守です。管理指標は、成果物ごとのレビュー時間です。

システム方式設定はシステム要件をハードウェア、ソフトウェア、手作業に振り分けます。ソフトウェア要件定義はインタフェース要件(ファイルなど)とデータ要件(データベース要件など)を考えます。業務モデルではDFD図(四角は外部、矢印はデータフロー、丸は処理、2本の平行線はデータストア)考えますが、時間の流れや処理の順序は表しません。ソフトウェア方式設計ではプログラム単位まで分割します。プロセス中心アプローチとデータ中心アプローチ(ソフトウェアをデータ構造に着目してモデル化し分析)があります。ソフトウェア詳細設計ではコーティングができる単位まで分割します。このプログラムをモジュールと言います。これはプログラムを機能で分けた単位です。モジュールは関数で構成され、関数は命令で構成されます。モジュール結合度が弱いと保守性が高くなりますが、強いとモジュールの保守性が低くなります。モジュール生成の際はモジュール結合度が弱くなるように作ります。最も弱いのはデータ結合です。データ中心アプローチを深めたものがオブジェクト指向で処理のことをメソッドと言います。クラスは設計図、オブジェクトは設計図から製造された車、データは車の色や走行距離で、メソッドは動くや止まるです。外部からオブジェクトの詳細を隠すことを情報隠蔽と言います。継承において子から親を見ることを汎化で、親から子を見るのを特化と言います。UMLはオブジェクト指向のソフトウェア開発において設計を図示する表記法です。


クラス間の関係において、汎化は白抜き三角形がついた矢印です。基本情報技術者試験では、オブジェクト=インスタンス、データ=属性、メソッド=手続き、振舞い、機能と表現されます。



テストケースは入力と期待される出力の組み合わせです。命令網羅はすべての命令を少なくとも1回行い、判定条件網羅(分岐網羅)はすべての判定条件で真と偽の両方を少なくとも1回は実行し、条件網羅は、判定条件が複数のとき、個々の条件の真と偽の両方を少なくとも1回は実行し、判定条件/条件網羅は条件網羅と判定条件網羅を組み合わせたテストで、複数条件網羅はすべての経路をテストします。つまりすべての条件の真と偽の組み合わせを少なくとも1回実行します。
テストケースの回数に関する問題は過去問を通してしっかり演習して慣れておくべきです。
トップダウンテストでは、テスト済み→テスト対象→スタブ(ダミーの下位モジュール)の順でモジュール(プログラムを機能で分けた単位)呼び出します。ボトムアップテストでは、ドライバ(ダミーの上位モジュール)→テスト対象→テスト済みの順で呼び出します。
スクラムはアジャイル開発手法の1つで、開発作業を一定期間(スプリント)に分けて、その期間中に実現すべき機能を明確にし、チーム全体の開発に取り組む手法です。

リバースエンジニアリングは既存のソフトウェアを解析して仕様や設計を取り出す技術です。フォワードエンジニアリングは設計図(内部設計は機能分割や構造化です)からプログラムを作ることです。設計図とプログラムの時系列は等しいです。2つを合わせたものをリエンジニアリングと言い、既存プログラムを解析して新たにプログラムを作る技術です。マッシュアップは複数のwebサービスを組み合わせて新しいサービスを作る手法です。


XPはアジャイル開発を行うための19のプラクティスが定義された開発手法です。ペアプログラミング(2人のプログラマが1つのパソコンを使ってソフトウェアを開発する手法)とリファクタリング(プログラムの外部仕様を変えず内部構造を構造を変えること)が大事です。ソフトウェア構成管理(SCM)はソフトウェアに関連する文書やプログラムの変更を管理してトラブルを未然に防ぎます。

ソフトウェア構成管理の主な対象項目は、文書とプログラムのバージョンです。
プロジェクトマネジメント(マネジメント系)


プロジェクト(有期性+独自性)の対義語は定常業務(オペレーション)です。PMBOKはプロジェクトマネジメントの体系化された知識で、これには10の知識エリアがあります。

WBSはプロジェクトの大きな作業を細かい作業単位に分解した図です。最小単位をワークパッケージといい、8〜80時間で完了する大きさにします。

アローダイアグラム(を用いた分析手法をPERTと言います)の◯は結合点と言います。ダミー作業は所用日数0日の作業で、依存関係を表すために表記します。プレシデンスダイアグラム法はアクティビティ間の依存関係を図示する手法です。作業をアクティビティと言います。


スケジュールを短縮する技法は、クラッシング(投資する資源を増やしてスケジュールを短縮)とファストトラッキング(アクティビティを並列に実行しスケジュールを短縮)があります。クリティカルチェーン法とモンテカルロ法は不正解選択肢です。ファンクションポイントの計算法では最後に複雑さの補正係数を掛けます。保険に加入するのはリスク転嫁(転移)の例です。COCOMOはソフトウェアの見積りで、予想されるプログラム工数にエンジニアの能力や要求の信頼性などの補正係数をかけ合わせて開発工数や期間、要員や生産性を見積もる手法です。
サービスマネジメント(マネジメント系)

ITILはITサービスマネジメントのベストプラクティス集です。ISO/IEC 20000はITILの考えを取り込んだ規格で日本版はJIS Q 20000です。システム移行方式は、一斉移行方式(コストは安いが問題が起きたら被害が大きい)、段階的移行方式、並行移行方式があります。

インシデントは通常業務を遂行できない状況で、問題はインシデントを引き起こす根本原因です。サービスデスクは単一窓口でインシデント管理が目的です。ローカルサービスデスク、中央サービスデスク、バーチャルサービスデスク、フォロー・ザ・サンがあります。

システムはハードウェア、ソフトウェア、その他の設備で構成されます。UPSは無停電電源装置ですが、一時的にしか電力を供給できません。PDCAのAは処置です。



ヒアリングでは得た情報をそのまま鵜呑みにせず、それを裏付ける文書や記録などの監査証拠を手に入れる努力をします。内部統制の運用などの最終的な責任者は経営者です。
システム戦略(ストラテジ系)

システムを作成する流れは、システム戦略→システム企画→システム開発になります。

情報システム戦略=情報戦略です。EA(エンタープライズアーキテクチャ)は4種類の分類があります。


BPRは分業に対する反省から生まれた全体最適に主眼を置いた業務プロセスを抜本的に再計画する手法です。リストラは儲からない部門を切り捨て儲かる部門に経営資源を集中させることです。BPRは抜本的でBPMは継続的です。RPAは定型的な作業しかできません。ソフトウェアで自動化します。BPOは業務プロセスを他社に外部委託する手法です。ワークフローシステムは紙の書類を電子化し決済申請手続きを効率化することです。ソリューションビジネスを提供する会社をSIと言います。

クラウドにはパブリッククラウドとプライベートクラウドを併せたハイブリッドクラウドがあります。

SOA(サービス指向アーキテクチャ)はソフトウェアの機能をサービスの部品と見做し、そのサービスを組み合わせることでシステムを構築する手法です。この考えがクラウドコンピューティングへつながっていきます。

データウェアハウス(構造化データのみ)に蓄積されたデータは更新したり削除したりしません。BIを用いてデータウェアハウスに集約されているデータを用いて分析します。

データレイクはデータをそのまま格納するので、ビッグデータはデータレイクに格納します。データマイニングはデータレイクなどにあるデータから有益な情報を取り出す手法です。

企画プロセスの目的は経営上のニーズを聞くことです。システム化構想の立案プロセスの具体的な内容がシステム化計画の立案プロセスです。後者では開発費用と得られる効果をROI(投資利益率)を用いて計算します。利益額/投資額です。その結果をITポートフォリオに記載し、投資対象をリスクと投資価値(ROI参照)を用いて分類します。

企画プロセスでは経営上のニーズを確認し、用件定義プロセスではユーザーのニーズを確認します。つまりシステムに関わり合いをもつ利害関係者又は利害関係者の種類を識別し、そのニーズ及び要望を識別します。業務要件には、組織及び環境要件、機能要件、非機能要件があります。非機能要件の定義で行う作業の1つは、システム開発で用いるプログラミング言語に合わせた開発基準、標準(変数や関数の命名、コメント付加などインデントに一定の規則をつけることです)を作成することです。


CSR調達では調達先に法令遵守、人権尊重、環境保護への配慮を求めます。グリーン調達(=グリーン購入とは国や地方公共団体がグリーン調達を行う場合)とはISO 14001が関係し、環境にやさしい製品を優先して買うことです。
経営戦略(ストラテジ系)
経営戦略のことを戦略とも言います。経営戦略は全社戦略、事業戦略、機能別戦略に分かれます。法務部は知的財産戦略、情報システム部は情報システム戦略などがあります。

ベンチマークは自社と業界1位との比較です。PPMは問題児、花形、金のなる木(市場成長率は低いが市場占有率は高い)、負け犬があります。

製品の種類を増やして1個当たりのコストを下げることを範囲の経済と言います。上図の横軸を特定の製品の生産量とするときのグラフをラーニングカーブと言います。

市場占有率が高いほど儲かる事業です。

コアコンピタンスは自社の強みのことです。特許などが例です。コアコンピタンス経営は自社の強みを核とした経営です。シナジー効果はまとめて生産した時の単価が安くなったらあると断言して良いです。総平均法は、その月や年ごとに、期初在庫の評価額と購入した各材料の総評価額の平均単価を払出単価とする方法です。TLO法は大学や国の研究機関の技術に関する研究結果の効率的な技術移転を促進するものです。



コストプライス価格決定法は、製造原価にマージンを加えた金額を販売価格にする方法です。マージンは売上総利益で、販売費及び一般管理費+営業利益です。



ナレッジマネジメントは、知識を共有化し、企業全体の問題解決力を高めることです。暗黙知と形式知があります。暗黙知から形式知にすることが大事です。
スマートグリッドでは電力を双方向にやり取りします。スマートメーターは通信機能を備えた電力計です。HEMSは家電製品をネットワークに繋いで、縁力の可視化と制御を行うシステムです。POSシステムでは消費者が、いつ、どこで、何を、いくつ、いくらで買ったかのPOSデータを取得できます。ID-POSデータは、POSデータに「誰が」という情報を付加できますので、購入履歴(最終購買日、購買頻度、累計購買総額など)を確認できます。



MRP(資材所要計画)は製品の生産計画に合わせて必要な資材の量を集め、資材の手配を行う手法です。CRPは在庫管理の手法で連続補充方式です。CAMはCADで作成された設計図面をもとに、工作機械を操作するためのプログラムを作成するシステムです。ECの企業側のメリットの1つに初期投資が少ないことがあります。

逆オークションは最も安い値段で入札した売り手が商品を売れる取引です。

RFIDの例はICタグで距離は数cm〜数m(無線周波数のため)です。ICタグは汚れに強く、梱包の外から読めるので、QRコードなどに代わる装置と言われています。

EDIはネットワークを使って商取引のためのデータをコンピュータ間で規約に基づいて交換することです。規約はメッセージ形式やエラーの処理方法などを定めたルールです。CGMは一般の消費者が用いるメディアでブログやSNSなどです。シェアリングエコノミーで用いるサービスを遊休資産といいます。組込みシステムはマイクロコンピュータです。民生機器の反対が産業機器です。組込みソフトウェアは読み込み専用です。IoTの対象はインターネットにつながっているものだけでなく、閉域網というつながっていないもの(インターネットにつながっていないネットワークで許可された人しか利用できない)も対象です。




企業と法務(ストラテジ系)


DE &Iは多様性を尊重し公平な機会を提供し、すべての人が平等に参加できる包摂的な環境を作る仕組みです。ORは現実問題を科学的な方法や道具を使って解決しようとする研究です。IEは生産工学です。線形計画法は問題を数式で表しグラフ化し解を求めますが時間がかかるので後回しにした方が良いです。重み付け総合評価法は個別に重要性を決めておく評価法です。

損失分岐点は売上と費用の額が等しくなる点です。つまり利益が0円になるところです。

他人資本は返済が必要なお金です。資本金は純資産の部に分類されます。

営業が本業、営業外が副業です。経常は通常時という意味で、特別は臨時という意味です。黒字倒産は売掛金(未回収の代金)を回収するまで借金が返済できない状態です。このリスクは損益計算書で発見できず、キャッシュフロー計算書を確認します。会社に現金が実際にどれくらい残っているかを確認できます。


借入金(会社の借金)が増えた分から配当金の支払額を引いて残り現金を計算するなどをします。借入金の例は銀行から借りたお金です。流動資産(商品、製品、原材料、仕掛金をまとめて棚卸資金と言います)は1年以内に現金化する資産で、固定資産は1年をこえて利用する資産です。受入=在庫を仕入れること、払出=在庫を売ること、棚卸し=在庫を数えることです。

土地は減価償却しません。減価償却の計算は、定額法と定率法があります。

プログラムは著作権で保護されますが、プログラム言語、アルゴリズム、プロトコルは著作権で保護されません。営業秘密=秘密管理性+有用性+非公知性です。サイバーセキュリティ基本法はすべての組織と全国民が守らなければいけない法律です。JPCERT/CCは特定の政府機関企業から独立した組織で、国内のコンピュータセキュリティインシデントに関する報告の受付や把握、分析などの助言を行っています。

不正アクセス禁止法は、ネットワークを通じたアクセスのみ禁じます。個人情報保護法では氏名と住所、社員名と役職、個人が識別できる身体的特徴(映像や音声)を保護します。派遣では、指示は派遣先から受け、給与は派遣元からもらいます。請負契約では発注者の会社は労働者に指示を出せません。責任を果たせない場合は指示を出した請負会社が契約不適合責任を負います。


基本情報の科目B
文法
変数は2個以上の値を同時には格納できません。elseifは何度でもOK。whileはループです。doもループですが、初めから条件式が偽の場合、whileは素通りするがdoは処理を実行します。無限ループとなる選択肢は不正解の可能性が高いです。forも繰り返しですが決まった回数を繰り返す場合に特化します。forのトレース表の時に真偽を書きます。呼び出し元は関数名(第1引数、第2引数)です。呼び出し先は戻り値型:関数名(a,b)とします。

p.62の例題4が難所です。
「//コメントの範囲」と「/✴︎コメントの範囲✴︎/」があり、後者は改行が可能です。演算子+は文字列連結を行う場合があり、その時はコメントにその旨が記載されます。境界値の設定に気づくことが大事です。トレース表には出力も書いておいた方が良いです。
一次元配列
データ構造の種類は、一次元配列、二次元配列、配列の配列、木構造、リスト、スタック、キュー、ビット列です。多くのプログラム言語は固定長配列ですが、擬似言語では可変長配列とします。配列の要素を表す記号は[ ]です。配列のトレースは、値が格納された要素だけ値を書き込みます。ただしプログラムの開始時と終了時にはすべての要素の値を書き込みます。配列の要素番号が範囲外だとエラーになります。
二元配列
二元配列の順番は、まず1行目、次に2行目、…という順です。配列の配列とは配列を要素としてもつ配列でジャグ配列(一般に正方行列とならないため)、多段配列とも呼ばれます。親の配列(行)を縦方向に描く点がポイントです。
ありえない選択肢
無限ループは不正解、連続格納は不正解、値を格納して利用するではない選択肢は不正解です。
出題例4が難所です。
再帰
再帰はプログラム内で自身のプログラムを呼び出す形式です。
木構造
親と子の関係を表現するのに適したデータ構造です。木構造⊃二分木⊃完全二分木⊃ヒープです。二分木は子の数が最大でも2である木構造です。完全二分木は二分木のうち2つの子を持つ木構造です。ヒープは完全二分木のうち、最大ヒープ(親の値は子の値より大きいか等しい)か最小ヒープ(親の値は子の値より小さいか等しい)のいずれかです。また二分木は一元配列で実現できます。
オブジェクト指向
レビューに「難所である」という記述があります。学習の際はしっかりとした学習を心がけたいところです。オブジェクト指向は難所ですがインスタンス図を描いて理解を深めていきましょう。
オブジェクト指向とは変数とプログラムをオブジェクト(インスタンス)にまとめて、効率的にシステム開発するための考え方です。クラスとはメンバ変数(変数)とメソッド(プログラム)をまとめたものです。試験問題ではクラスの説明は「図 クラス◯◯の説明」中に記述されます。またメソッドの中にコンストラクタがあります。インスタンスとはクラスをもとに実体化したものです。試験ではクラスとは異なり図中には記述されず、インスタンスは、プログラム内のコンストラクタにより生成されます。コンストラクタとはインスタンスを生成する目的で実行される処理です。試験ではコンストラクタの説明は「図 クラス◯◯の説明」中に記述されます。コンストラクタ名はクラス名と同じなので、名称によりコンストラクタを見つけられます。
例題4と問題7−2と問題7−3が難所です。
オーバーロードとは呼び出し元の引数に応じて、呼び出し時のメソッドの行き先を変えることです。
理解のコツは、プログラムの矢印と反対の矢印をインスタンス図に書き込むことです。
リスト
レビューに「難所である」という記述があります。学習の際はしっかりとした学習を心がけたいところです。
単方向リストとは各要素を参照によってつなぎ合わせたデータ構造です。要素の中に格納する値と、次の要素への参照を格納します。addFirstは単方向リストの先頭に要素を追加する処理です。同様にaddLastもあります。addとは単方向リストの指定された位置(1番目から数える)に要素を追加する処理です。removeFirstは単方向リストの先頭の要素を削除します。同様にremoveLastもあります。addと同様にremoveもあります。双方向リストは逆順も辿れます。末尾はtailです。
問題8−1、問題8ー2が難所です。ここでは具体的な文字を変数に入れてから答えを絞り込みます。初期化するという情報を見落とすと解けません。head,ptr,prevなどはheadと同じような扱いで考えると考えやすいです。またリストは結局は『情報処理教科書 出るとこだけ!基本情報技術者[科目B]第4版』のp.216の図を頭に入れると一般的な具体例を用いることができます。
スタック・キュー
スタックは最初に入れた値が最後に取り出される方式でFILO(First-In Last-Outで先入れ後出し)でLIFOは後入れ先出しがあります。それぞれファイロ、ライフォと読みます。pushはスタックに値を追加する処理です。popはスタックから値を取り出す処理です。peekはスタックの最も頂上にある値を取り出さずに、値だけを返す処理です。peekの値はスタックから削除されずに残ります。キューは最初に入れた値が最初に取り出される方式で、FIFO(先入れ先出し)でファイフォトもいいます。enqueueはキューに値を追加する処理です。dequeueはキューから値を取り出す処理です。peekの定義はスタックと同様です。
ビット列
n進数から10進数は畳み掛けで、10進数からn進数は割る作業です。8ビット型は8ビット符号なし整数を格納する型です。符号なしは非負ともいいます。除算は要注意です。aをbで割る場合、余りはbの末尾に最も近い1より右側の部分になり、商は対応するaの部分になります。排他的論理和は記号⊕で表し、どちらか一方だけが1ならば結果が1となる論理演算です。論理積により片方のうち、もう片方が1である部分を抜き出すことができ、これをビットマスクといいます。論理和より、両者の1の部分を合体できます。これをビットセットと言います。⊕の演算では、ある数⊕11111111を実行することにより、ある数の全ビットを反転させることができます。さらに、ある数と、(ある数-1)の論理積を考えると、1である右端ビットより左側部分のみ抜き出すことができます。
問題10ー2が難所です。実行例は小さい数がおすすめです。
疑似言語の問題演習
問題11ー3が難所です。トレース表の順番を考える良問です。そして解く時間が結構長めです。
ここまでで擬似言語の問題が合計54題(計算などの簡単な問題は除きます)中で初見で分からなかった問題が9問ありました。正答率が45/54≒83%でした。本番でこの正解率だと擬似言語だけで13/16問となりセキュリティの問題が全滅しても合格ラインと思われる12問を突破できる計算になります。
1度の学習で本番に近い問題の8割を取れるようになったのは素晴らしいですね。基本情報の科目Bの特に擬似言語は『情報処理教科書 出るとこだけ!基本情報技術者[科目B]第4版』がとてもおすすめです!!
情報セキュリティ
基本情報技術者試験の科目Bの情報セキュリティ分野は利用者側寄りの出題です。科目Bの解答順は情報セキュリティ→擬似言語が良いです。
感染が疑われる場合、CSIRTなどに連絡します。やってはいけない初動対応はデジタルフォレンジックスをできなくなるようにしてしまう対応です。感染被害の拡大の確認方法は、ランサムウェアにおいて拡張子が変更されたファイルが他の情報機器にないかを確認します。構成管理とはソフトウェアなどの最新状況を構成管理データベースに登録する活動です。IT資産管理ツールを使う時もあります。マルウェア対策ソフトにはパターンマッチング法(シグネチャーコードと合致するか)、振舞い検知法(動的解析の一種)があります。相互牽制とは誤りや不正行為を防止するために行います。最小権限の原則とは、必要である者だけに対して必要な分だけ与え、必要のない者には与えない考えです。PC共用のリスクはキーロガー(スパイウェアの一種でキー入力を監視し記録する)をインストールされパスワードを不正に盗まれるリスクです。対策としてオートコンプリート機能(ブラウザに認証情報を保存する機能)を無効にします。
出題例5が難所です。システム管理者による内部不正を防止する対策として、システム管理者の作業を本人以外の者に監視させることが有効です。
メールアドレスのなりすましにより標的型攻撃メールやBEC(ビジネスメール詐欺)の被害のリスクがあります。対策として組織で標的型攻撃訓練を行います。URLのなりすましによりフィッシングやスミッシング(SMSを用いて企業を騙ったメッセージを送りフィッシングサイトに誘導する)のリスクがあります。対策としてSEOポイズニング(検索上位サイトにマルウェアに感染させるサイトを表示する)への対策をするためにブックマークから目的のサイトにアクセスします。プロキシサーバのURLフィルタリング機能を用います。本人へのなりすまし対策は、クリアスクリーン(一定時間が過ぎるとスクリーンをロックする)、顔写真(ログイン時に自動的に利用者の顔写真を撮影しログに残す)、アンチパスバック(共連れなどで入室の記録がない場合に認証を拒否して退出できないようにする(入室と退出が逆も可能)が、入室も退出も共連れされた場合は防げない)があります。パスワードクラックに対応するための注意点として、ロックアウトはリバースブルートフォース攻撃(1つのパスワードについて様々な利用者IDを試す)への対策にはなりません。盗難・紛失対策としてセキュアブート(CDなどからのPC起動を防止する機能)などがあります。CRLとは有効期限内でも失効したデジタル証明書のシリアル番号と失効した日時の一覧です。
出題例6が難所です。
ログとはインシデント発生後に異常を検知するための尺度として利用される通信履歴です。プロキシサーバ、ファイアウォール(FW)などができます。時刻同期のためにNTPプロトコルを用いてNTPサーバから正確な時刻を取得します。ランサムウェア感染後ではバックアップはWORMメディア(書き込みが1回限りで読み込みは無制限)に保管します。バックアップは1つ1つは増分バックアップが最も消費量が少ない傾向です。フル>差分>増分です。レプリケーションとは障害発生直後に速やかに稼働システムを切り替えるために複数の機器において同一のデータを同時に保持することです。ファイルの受け渡しについて、PPAPはパスワード付き圧縮ファイルをメールに添付して送り、あとで別メールでそのパスワードを送る方法ですが、リスクもあります。盗聴やマルウェアを検知できないことや、推測のリスクです。情報セキュリティ製品は、IDS(intrusion detection system)、IPS(intrusion prevention system)、EDR(endpoint detection and response)、SIEM(security information and event management)があります。プロキシサーバは外部と内部の境界に配置し、ネットへの接続を代理する機器です。リバースプロキシサーバは、ネットとサーバの境界に配置し、サーバとの接続を代理する機器です。WAFはアプリへの攻撃に特化して崩御する製品です。フィルタリングのルール設定でブラックリスト型は使っていけないものだが、漏れや抜けがあります。ホワイトリスト型は使って良いリストだが、それ以外は使ってはいけないので業務に支障をきたすことがあります。
出題例7が難所です。以下の図を覚えて問題文と対応させるのがコツです。ルータは直接、内部と外部を接続するイメージです。DMZを通しても外部と接続できます。つまり外部との接続はルータかDMZ経由の2種類があります。内部セグメント=社内ネットワークです。

VPIについて、VDI=virtual desktop infrastructureです。また次の図で責任の所在を覚えておきましょう。

初見状態での情報セキュリティ分野の5問の演習問題の結果は2/5でした。また本書『情報処理教科書 出るとこだけ!基本情報技術者[科目B]第4版』に掲載されている情報せキュリティ分野の問題全体では6/12=50%の正解率となりました。問題文での前提条件などを見落とすと間違えてしまうので要注意です!
科目Aのセキュリティ部分の知識も加えて本番では全問正解を狙いたいところですね!
擬似言語の初回の正答率83%と合わせると16×0.83+4×0.5≒15.28で全体での正答率76.4%で合格ラインの60%を超えることができています。『情報処理教科書 出るとこだけ!基本情報技術者[科目B]第4版』のわかりやすさのおかげです。また特典として本番に出そうな多くの問題とそれに対する解説が掲載されています。試験本番までに取り組んで、得点率を上げていきたいと思います。ともに頑張りましょう!
過去問演習と科目Aの参考書選びについての注意点

過去問道場にて過去問演習を行いました。1周目は23日かけて2000問程度の問題を解きました。テクノロジ系の序盤のあたりで困ったことが起きました。なんと正解率6割に届かない分野が頻発しそうな状況になっていたのです!
あれ?学習したはずの内容があまり出ていない。そして未知の用語が多くて解答ができない!
それまでは今まで紹介していた科目Aの参考書を使っていました。ITパスポートの受験でお世話になった方の著作だったこともあり、継続して使用していましたが、Amazonの先取りプログラムの評価と、実際の評価に乖離があることに気づき、急いで過去問道場さんや、他の合格者の方のつぶやきなどを調べていた結果、『イメージ&クレバー方式でよくわかる かやのき先生の基本情報技術者教室』が今の基本情報の試験と相性が最高と知り、取り急ぎ購入して、一気に読んでから過去問演習を続けました。
ASCⅡコード(アスキーコード)は英数字、記号、制御文字のみで米国標準符号で最も基本的ですが、漢字と仮名の日本語を加えたものがシフトJISコードです。EUCはUNIXやLinuxで使われ漢字や仮名もOKです。Unicodeは世界の文字を1つに体系化したもので符号化したものの一つがUTF-8です。

EUC関連でメモです。EUCはコンピュータを利用して日々業務を行なっている者が、自システムの構築などに積極的に関わったりすることにより、業務に役立てることです。

プログラム記憶方式(格納方式)は主記憶に配置されたプログラムの命令をCPU(プロセッサ)が順に取り出し、解読、実行する方式です。バスは伝送路です。一度に伝送できるデータ量をバス幅といいます。

命令語は命令部とアドレス部(オペランド部)に分かれます。命令の取り出し→命令の解読→実効アドレスの計算→オペランドの取り出し→命令の実行→演算結果の格納です。指標レジスタは連続値、基底レジスタは先頭のアドレスを記憶、アキュムレータは演算対象や結果を格納します。



この6つの→の処理の高速化は逐次制御方式が最も遅く、パイプライン方式が速くなります。分岐予測ではパイプラインハザードが起きます。分岐予測や投機実行(分岐命令の分岐先が決まる前に予測した分岐先の命令の実行を開始する)などで対処します。スーパーパイプライン方式はパイプラインをさらに細分化することで、スーパースカラ方式は複数のパイプラインを使用することです。つまり縦に長くなります。CISC(PCやサーバ)は複雑な1命令、RISC(スマホやタブレット)は単純命令でパイプラインと相性が良いです。プロセッサは電力を使うので効率よく使うパワーゲーティングを用います。疎結合マルチプロセッサシステムは、複数のプロセッサが磁気ディスクを共有し、それぞれ独立してOSで制御され、ジョブ単位で負荷を分散することで処理能力を向上させます。密結合マルチプロセッサシステムは複数のプロセッサが主記憶を共有し、単一のOSで制御されます。システム内のタスクは基本的にどのプロセッサでも実行でき、細かい単位で負荷を分散することで処理能力を向上させます。





メモリインタリーブは主記憶を複数の区画に分け、連続するアドレスの内容を並列にアクセスすることでアクセスを高速化する方式です。ECCメモリはエラー訂正機能を持ったメモリです。2ビットの誤りを検出し1ビットの誤りを訂正できるハミング符号を用います。



位置決めは目的のデータが存在するトラックまで移動するのに必要が時間で平均位置決め時間が使われます。回転待ち時間は目的データが磁気ヘッドの位置まで回転してくるのを待つ時間で平均回転待ち時間が使われます。データ転送時間は目的データが磁気ヘッドを通り過ぎる時間です。


SDカードは上位規格ではSDHC(32GB)、SDXC(2TB)があります。SSDはフラッシュメモリを用いる磁気ディスク装置の代わりとなる記憶媒体です。ウェアレベリングはデータの書き込みや消去を均等に分散させ記憶媒体の寿命を伸ばす仕組みです。CD(有機色素が塗られたディスクにレーザー光を当て、結城色素の層にビットという焦げ跡を作って記録する)は700MB、DVDは17GB、BDは100GBです。タッチパネルは静電容量方式タッチパネルのことで、電界と表面電化を用います。JANコードはバーコードのことです。NFCはRFIDの国際規格です。ストリーマは記憶媒体に磁気テープを使用する外部記憶媒体です。データの読み書きを連続して行い、ブロックごとにスタート、ストップさせることはしません。

VRAMはディスプレイに表示される内容を一時的に記録するために使用される専用メモリです。24ビットでフルカラーです。光の三原色はRGBで、色の三原色はCMY+K(ブラック)で表現します。ドットインパクトプリンタはうるさいです。1インチ=2.54cmです。レーザープリンタは企業、インクジェットプリンタは家庭用です。




Zigbeeは2.4GHzの電波を利用する短距離無線通信のインタフェースでセンサネットワークで使います。LANより狭いネットワークを作り、PANといいます。ユーザから近い順に、応用ソフトウェア(アプリ)、ミドルウェア、基本ソフトウェア(OS)、ハードウェアとなります。APIはある機能を公開しているソフトウェアとその機能を利用するソフトウェアのインタフェイスです。OSSは限定せず、追加ライセンスを要求しないなどが大事です。


スプーリングは主記憶装置と低速の入出力装置の間のデータ転送を、補助記憶装置を介して行うことです。キャッシュメモリは、CPUと主記憶の間に存在するものです。実行状態からタスクの消滅になります。ラウンドロビン方式は実行可能待ち行列の先頭のタスクから順に、CPUの使用権を割り当て、一定時間(タイムスライス)が経過したら、実行を中断して、実行可能待ち行列の最後尾に加えます。I/Oは入出力装置のことです。この時は遊休時間ですので、マルチタスクを行います。タスクの切り替えでは現在主流のプリエンプティブ方式(OS判断)とノンプリエンプティブ方式(プログラム判断)があります。マルチスレッドは、タスク内で並行処理可能部分を、複数の処理単位(スレッド)に分解して、並行して処理するOS機能です。マルチコアCPUを用います。マルチコアプロセッサは、消費電力を抑えながら、プロセッサ全体の処理性能を高められます。



フラグメンテーションはメモリコンパンクションで解決します。スワッピング方式は、種記憶容量が不足した時に、実行中のプログラムのうち優先度の低いプログラムを一時中断して、磁気ディスクに退避(スワップアウト)し、優先度の高いプログラムを主記憶に配置する(スワップイン)する方式です。タイムスライシングは、CPUの処理時間を微小時間に分割し、それを実行可能な状態にあるタスクに割り当てることです。


メモリリークは使用可能な主記憶の容量が減少する現象で、ガーベジコレクション(不要領域開放)で解消させます。

補助記憶にあるプログラムを実行する際はDATを用います。また上の矢印をページイン、下の矢印をページアウトともいいます。

ラスタデータ(BMP、GIF、PNG、JPEG)はジャギーが出るが、ベクタデータは出ません。SVGはXMLの記法を用いて画像を図形の集合として表現する記述言語でベクタデータです。Exifはメタデータです。ドローソフトはベクタ形式の画像を作成、編集するためのソフトウェアです。ベクタイメージの手法を用いた文字フォントをアウトラインフォントといいます。イラストやロゴには剥きますが、写真などには不向きです。

1の補数はビット反転、2の補数は1の補数に1を加えます。2の補数を用いて2進数8ビットの固定小数点を用いるとき、-128~127までを表現できます。



桁溢れ誤差は演算結果がコンピュタで表現できる範囲をこえて発生します。オーバーフローとアンダフローがあります。丸め誤差は切り捨て、切り上げ、四捨五入などで発生する誤差です。桁落ち誤差は、有効桁数が減少して発生する誤差です。情報落ち誤差は、小さな数値が計算結果に影響されないことで発生する誤差です。打ち切り誤差は、計算処理を打ち切ることで発生する誤差です。
論理シフトでは溢れたビットは捨てられ、空いたビットには0が入ります。算術シフトは注意が必要です。


算術シフトでは、符号ビットは動かさず、右シフトの場合は要注意で、空いたビットには符号ビットと同じビットが入るのですね!
ビット列の取り出しは、取り出したいビットと1でAND(論理積)をとります。ビット反転では、反転させたいビットと1でEOR(排他的論理和)を取ります。PCM伝送方式は標本化→量子化→符号化の順です。


ひずみゲージは、絶縁体の表面に貼り付けた金属箔の電気抵抗の変化で物体の変形を検出します。PWM制御はオンオフを高速に繰り返し、出力される電力を制御します。


デジタルツインは、様々なセンサから収集したデータで、デジタル空間に現実世界のような世界を作り、そこで現実ではできないシミュレーションを行うことです。ヒューマンインザループは、AIが考える過程で人が関わり、判断やフィードバックをしていくことです。完全二分木は根から葉までの深さがすべて等しい二分木です。B木は枝の分岐が2つ以上あり、データ挿入時は根から葉までの深さが同じになるように各節を分割します。B+木は葉のみにデータを持たせます。線形探索法の操作回数は1からN回です。2分探索法は最大比較回数はlog2(N)+1回で、平均比較回数はlog2(N)回です。ハッシュ探索法は探索回数は1回です。基本交換法について、まずバブルソートで比較回数はN(N-1)/2です。次に基本選択法(選択ソート)は最小値(か最大値)を選択肢、交換していく整列法で、バブルソートと同じ回数になります。基本挿入法(挿入ソート)は、すでに整列済みのデータ列の正しい位置に、データを挿入していき、これも同回数です。


シェル関連での補足です。シェルのリダイレクト機能では、標準入力と標準出力をファイルに切り替えることができ、標準出力をファイルに追加できます。


再配置可能(リローケタブル)は主記憶のどこに配置しても実行可能、再入可能(リエントラント)は複数タスクが同時に使用可能、再使用可能(リユーザブル)は再ロードしなくても使用可能、再起的(リカーシブ)は自分自身を呼び出すことです。

JSONはJavaScriptのオブジェクトの表記をもとにした汎用的なデータ交換にも使用できるテキスト形式の仕様です。アセンブラはアセンブラ言語で書かれた原始プログラムを機械語に翻訳することです。インタプリタ方式はBASIC、Python、JavaScriptで、コンパイラ方式はCOBOL、C++、Javaです。ジェネレータは入力、処理、出力などの必要な条件をパラメータで指示することにより、処理目的に応じたプログラムを生成します。
コンパイラ方式は、Java以外は全部Cから始まる言語ですね!



動的リンキングはアプリケーション実行中に必要となったモジュールをOSによって連携します。静的リンキングはアプリケーションの実行に先立って、あらかじめ複数の目的プログラムをリンクしておきます。ロードはローダというプログラムを用いて実行に先立ってロードモジュールを主記憶に配置します。

IDE(統合開発環境)はアプリケーション開発のためのソフトウェアや支援ツール類を統合したもので、OSSではエクリプスがあります。ビルドは、コンパイルやリンクをして実行可能プログラムを作成する一連の作業です。継続的インテグレーションは、分担して作成した原始プログラムを共有の保管場所(リポジトリ)に統合するたびに自動ビルドやテストを繰り返すことです。この自動化ツールにJenkinsがあり、OSSとして提供されています。デプロイは、実行可能プログラムを実行環境にインストールし、各種設定をして利用可能にする状態です。デバッグはバグを発見し取り除くことです。

マークアップ言語は<>のタグを用いて文章の構造を表現する言語で、HTML(Webページを作成する)、XML(利用者独自のタグを定義できる)、SGML(文書の電子化を目的として開発され、HTMLとXMLの元となる言語)があります。AjaxはJavaScriptとXMLを用いてWebアプリケーションが非同期でサーバとやり取りすることで、一部の情報だけを動的に更新する仕組みで、読み込み時間を短縮できるため、地図の高速スクロールなどで使われます。人が話す言語を自然言語といい、特定の目的で人為的に作られた言語を形式言語といいます。BNF記法はプログラム言語の構文を定義する再起的な記法で、XML構文定義でも使用されます。XML署名では文書全体に対する単一署名だけでなく、文書の一部に対して署名を付与する部分署名や多重署名などの複雑な要件に対応できます。


ミッションクリティカルなシステムは、停止すると社会に深刻なダメージとなるシステムです。バックアップサイトについて、ウォームサイトは、バックアップサイトにはハードウェアを準備しデータやプログラムなどは定期的に搬入しておきます。コールドサイトは、バックアップサイトのみ確保しておく形式です。災害発生時に、ハードウェアやデータ、プログラムを搬入し、システムを復元し業務を再開します。BCPは災害などの緊急事態に備え、事前に決めておく行動計画です。RTOは事業が中断してから復旧までの目標復旧時間です。RPOは目標復旧時点のことです。RLOは目標復旧レベルです。HAクラスタは可用性を目的としたシステム構成です。

HPCクラスタは性能向上を目的としたシステム構成です。

レプリケーションは常に同期をとるものです。フェールオーバー型クラスタでは、共通ディスク方式(現用系と呼び系が1つのディスクを共有)とミラーディスク方式(現用系から予備系へミラーリングして同期)があります。グリッドコンピューティングはインターネット上に存在する多数のコンピュータを連携させ、仮想的な1台の巨大で高性能なコンピュータシステムを作り出す技術です。クライアントサーバシステムはクライアントとサーバ間で、機能などを分散させる形態です。クライアントは依頼者でサーバは提供側です。サーバは機能の一部を別のサーバに要求するクライアントにもなれます。RPCはプログラム間の通信方式の一つで、処理の一部を他のコンピュータに任せる方式です。

3層クライアントサーバシステムは論理的にプレゼンテーション層、ファンクション層、データベース層に分離する形態です。負荷が軽いコンテンツはWebサーバで処理し、重い動的コンテンツはAP(アプリケーション)サーバで処理します。ストアドプロシージャは、クライアントサーバシステムで利用頻度の高い命令群を、あらかじめ一つの手続きとしてサーバのデータベース管理システムに保存しておく仕組みです。


ライブマイグレーションは、サーバ仮想化技術において、ある物理サーバで稼働している仮想サーバを停止せず別の物理サーバに移動させる技術です。スケールアップは個々のサーバのCPUやメモリを増強することで、スケールアウトは、サーバの台数を増やし複数サーバで分散処理を行なっているシステムです。シンクライアントシステムは、サーバ上でOSやデータなどを集中管理することで、クライアントは必要な機能しか持たせなシステムです。VDIはクライアントのデスクトップ環境を仮想化し、サーバ上で管理、稼働させる技術です。利用者はデスクトップ画面を呼び出して使います。IaCはサーバやネットワークの設定をコードによる自動実行で管理することです。NAS(ネットワーク接続型のファイルサーバ専用機)でLANに接続された複数PCからOSが異なってもファイルを共有できます。WOLはLANに繋がっているコンピュータの電源操作を遠隔で操作する技術です。


フォールトトレランス(例ははやぶさ)は冗長化し故障発生の際も必要な機能は維持します。フェールソフト(例はセーフモード)は、故障発生の際、一部サービスレベルを低下させても、継続させる構造や仕組みです。これを退縮運転ともいいます。エラープルーフはフールプルーフと同じ意味です。

ベンチマークテストは、システムの使用目的に合った標準的プログラムを実行させ、その測定値から処理性能を相対的に評価する方法です。

MIPSは1秒あたりの命令数を100万単位で表したものです。命令ミックスとは、よく使われる命令をピックアップしてセットにしたものです。RASISはシステムの評価特性で用います。

関係モデルは表で表され、階層モデルは木構造で、ネットワークモデルは網状で表現されます。タプルは行を表します。関係とは表のことです。


ビュー表は元の実表に対する権限は不要です。



再編成とは、データベースに関する変更操作が多くされることによるデータの物理的格納位置が不規則になるなどの症状を修復し、アクセス性能を向上させることです。インデックスは、どのデータがどこにあるか示したものです。


共有ロックは参照前にかけ、専有ロックはデータ更新の前にかけます。ロックの粒度が大きいと他のトランザクションの待ち状態が多くなり全体のスループットが低下します。ロックの粒度が小さいと競合が起こりにくくなりますが、管理するロック数が増えるのでDBMSのメモリ使用領域が多く必要になります。2相コミットメントは、コミットするかロールバック(障害発生時に処理をアボートして結果を無効にし更新前状態に戻します)のどちらかになります。アクセス透過性は使用する資源が遠隔地にあろうと利用者が意識せず同じ処理方式でアクセスできることです。Hadoopは大規模なデータを複数サーバに分散し、並列して高速処理をするミドルウェアです。


更新前情報を使ってなかったことにするのがロールバックで、更新後情報を使って、やったことを復元するのがロールフォワードです。

T1はセーフ。T2,3はロールフォワード、T4,5はロールバックです。障害に遭ってしまったらロールバックです。ウォームスタートはシステムの電源を切らず、ログの更新情報を使って処理を再開し、コールドスタートはシステムの電源を入れ直し、システムを初期化して処理を再開することで、初期プログラムロードともいわれます。結合は2つ以上の表を結合して1つの表を作成することです。和は2つの表の全ての行を取り出すことで同じ行は1つにまとめます。表の定義は3層スキーマの概念スキーマに該当(実表)します。

DISTINCTで重複行を1つにまとめられます。LIKEはワイルドカードを指定できます。

COUNT(✳︎)で行数を求めることができます。副問い合わせは、IN()で()内に含まれる行を抽出できます。組み込みSQLはC言語などで書かれた親プログラム内にSQLを組み込み、親プログラムから関係データベースの操作を行うことです。カーソル操作は、アプリケーションプログラムからデータベースの問い合わせにより得られた導入表を、表データを直接受付けない手続型プログラム言語に渡す機能を実現するものです。



イーサネットはIEEE802.3で規格化されています。CSMA/CDはイーサネットで採用されているアクセス制御法の1つです。データ衝突を検知してランダムな時間で待って再送する方式です。無線LANはIEEE802.11で規格化されています。インフラストラクチャモード(アクセスポイントを経由)とアドホックモード(端末が1対1で直接通信)があります。ESSIDは無線ネットワークを識別する文字列です。CSMA/CAは無線LANで採用するアクセス制御方式です。無線LAN暗号化規格にWEPやWPA3などがあります。ステルス機能は、アクセスポイントでESSIDを隠すことで第三者が利用しにくくすることです。

VPNはインターネットの公衆回線を専用回線のように使用する技術です。インターネットVPN(インターネット利用)とIP-VPN(通信事業者と契約した者だけが利用できる閉鎖網)と広域イーサネット(データリンク層(第2層のレイヤー2で接続))があります。5Gは超高速(10Gbps)で超低遅延(遅延を意識しない)で多数同時接続(身の回りのものがつながる)が特徴です。キャリアアグリゲーションは複数の異なる周波数帯を束ね、広い帯域を使うことで無線通信の高速化や安定化を図る手法です。MVNOは通信事業者から移動体通信網を借りてサービスを提供する事業者です。格安SIMが例です。災害発生時は輻輳が起きます。広域IoTはLPWAと相性が良いです。データリンク層ではHDLC手順があり、伝送するデータがキャラクタに限定されず、任意のビットパターンを送信できます。




TCPは信頼性重視でHTTP、FTP、TELNET、SMTP、POP3などに使われます。UDPはリアルタイム性重視でDNS、DHCP、NTPなどに利用されます。SNMPはTCP/IPネットワーク上でネットワーク上の機器の情報を収集して監視や制御を行うプロトコルです。



pingはICMPを用いて通信相手との接続を確認します。ARPはIPアドレスに対応するMACアドレスを取得します。RARPはARPの反対です。echoは引数で与えた文字列を標準出力に出力するコマンドです。ipconfigは自分のコンピュータの設定を表示するコマンドです。
MAC関連でメモです。メッセージ認証符号は、通信内容の改ざんの有無を検証し、完全性を保証するために通信データから生成される固定長のビット列のことです。






L2スイッチ(レイヤ2スイッチ)はスイッチングハブの機能に仮想的ネットワークVLAN機能を加えたものです。

ルータは最適な経路を選択するルーティング機能を備えています。

L3スイッチはLAN内に設置して内部の異なるネットワーク同士を繋ぎます。ゲートウェイはプロトコル変換をします。デフォルトゲートウェイは異なるネットワークの出入り口の装置です。ルータなどです。他のネットワークに関する経路情報を保持しLAN内の端末はとりあえずそこにデータを送れば最終宛先まで届くように中継してくれます。

DHCPはコンピュータがTCP/IPのネットワークに接続する際に、必要となるIPアドレスなどの設定を自動的に割り当てるプロトコルです。グローバルIPアドレスはICANNが管理します。NATはグローバルIPアドレスとプライベートIPアドレスを1対1に変換する技術で、NAPTは1対複数に変換する技術です。

ipconfig(Windows)、ifconfig(UNIX系)(コンピュタ設定されているネットワークの設定情報を自分が確認できます。トラブル時にはこれらのコマンドで自分のPCのIPアドレスやサブネットマスクの設定情報を得ることができます)IPv4はIPアドレスを2進数32ビットで表現し、前半をネットワーク部、後半をホスト部といいます。


例えばクラスAにおいてホスト部が全て0のアドレスはネットワークアドレス(そのホストが属する)、全て1のアドレスはブロードキャストアドレス(全てのホストに同一の情報を送信)です。ネットワーク部は0から始まり10進数では1〜127で始まります。これは先頭が0という縛りのためです。先頭の1バイトが127のIPアドレスはローカル・ループバック・アドレスでグローバルIPアドレスに使用できません。
サブネットマスクではネットワーク部(サブネット部も含む)に1、ホスト部に0を指定します。例えばIPアドレス「192.168.1.19」サブネットマスク「255.255.255.240」の場合はIPアドレスの2進数変換の最初の部分が110なのでクラスCです。そのためネットワーク部が24ビット、ホスト部が8ビットのため、サブネットマスクは「255.255.255.0」のはずですが、今回は「255.255.255.240」です。これは次のように考えます。

ネットワーク部を4ビット拡張(ホスト部から4ビット借りる)し、サブネット部4ビット、ホスト部4ビットで表現します。サブネット部が4ビットなので、16-2で14台のホストを識別できます。つまり1つのネットワークに16のサブネット、各サブネットに14台のホストが管理できるようになります。

ネットワークアドレスに関する問題は次のように考えます。

CIDRは最上位ビットから1ビット単位でネットワーク部とホスト部の境界を設定する方法です。

IPv6はIPアドレスを128ビットに拡張したもので、アドレスの16進数を4文字ずつ:で区切ったフィールドで表現します。16ビット単位の記述で "0" が連続するところは "::" で省略することができるので長いアドレスを省略できます(::での省略は1ヶ所です)。トンネリングを用いるIPv4パケットのデータ部分にIPv6アドレスを入れ込むカプセル化の技術があります。

IPsecはTCP/IPのネットワークで暗号通信を行う通信プロトコルです。IPv6には標準装備されます。

URLは情報源の位置情報で、URNは情報源の名前を一意に表すものです。CGIはWebブラウザからの要求に対し、Webサーバが外部のプログラムを呼び出し、その結果をHTTPを介してWebブラウザに返す仕組みです。アクセスカウンタなどの動的表示で使われます。MIMEはテキストだけでなく、漢字や音声、画像なども扱える規格です。S/MIMEはこれに暗号化と署名をする仕組みを加えたものです。

メールのなりすまし対策に、SMTP-AUTHが開発されました。その他には送信元ドメインのDNSに正当なメールサーバのIPアドレスの情報をSPFレコードとして登録し公開しておく方法もあります。SDNはネットワークの構成や設定をソフトウェアで動的に変更し、集中的に制御するものです。OpenFlowはSDNを実現する技術の1つです。すなわち経路制御とデータ転送の機能を分断し、経路制御の機能をソフトウェアに集約し、データ転送に特化したネットワーク機器を一元管理するものです。通信速度はビット/秒ですが、データ量はバイトで表されるので注意です。




ISMS適合評価制度は、組織における情報セキュリティの取り組みに対し、ISMS認定基準の評価事項に適合していることを特定の第三者が審査して認定する制度です。


ビジネスインパクト分析は、予期せぬ事態により特定の業務が停止のとき、事業全体に与える影響度を評価することです。計画前に考えることになります。

情報セキュリティ基本方針は組織の長が情報セキュリティに対する考え方や取り組む姿勢を組織内外に宣言するものです。策定の際に経済産業省が策定した情報セキュリティ管理基準があります。CSIRTは企業や官公庁などに設けるセキュリティ対策チームです。ソーシャルエンジニアリングは人的脅威です。実施者と承認者を別の人にすることを職務分掌といいます。

ランサムウェア対策に、WORM(データを一度書き込むと再書き込みや消去ができない)が効果的です。BYODとシャドーITの違いは前者は持ち込みの許可があり、後者は許可が下りていません。MDMは企業が社員に付与するスマホ設定などを一元管理する仕組みです。


パスワードリスト攻撃はクレデンシャルスタッフィング攻撃ともいいます。複数サイトで同一利用者IDとパスワードの流用を狙ったものです。これはパスワードクラック対策(流用しない)が有効です。Dos攻撃は1台のDDos攻撃は複数のコンピュータからの攻撃となります。対策はIDSやIPSの導入です。

対策はサニタイジング(有害な入力を無害化する)でその1つにエスケープ処理(有害となる特殊記号を無害な文字に強制的に書き換える)があります。

対策はプレースホルダを用いて命令文を組み立てることです。命令としてでなく値として処理されます。ディレクトリトラバーサルは攻撃者が外部からサーバ内のファイル名を指定し、非公開の重要なファイルにアクセスする攻撃です。対策は相対パスや上位ディレクトリを指定する文字を含むときはアクセスを受け付けないなどがあります。OSコマンドインジェクションは脆弱性のあるWebアプリケーションの入力領域に、攻撃者がOSコマンドを紛れ込ませ、Webサーバ上で不正にOSコマンドを実行する攻撃です。対策はOSコマンドを呼び出せる関数を使用しないなどです。WAFはWebアプリケーションに対する外部からの攻撃をブロックする仕組みです。


フットプリンティングは攻撃前の情報収集です。デジタルフォレンジクスは磁気ディスクの複製やサーバ監視などを行いコンピュータの犯罪証拠となる電子データを集め解析することです。証拠となりうるデータについて原本と複製の同一性を証明します。共通鍵暗号方式ではDESに変わりAESがWPA2で用いられています。公開鍵暗号方式ではRSAや楕円曲線暗号があります。デジタル署名は公開鍵暗号方式を使って電子文書の正当性を保証する仕組みです。なりすましがされていないことや、改竄確認ができます。

SHAは代表的なハッシュ関数です。SHA-256は256ビットの文字列が得られます。電子署名法は、電子契約に法的効力を持たせるために定めた法律です。ブロック暗号方式はデータを固定長のブロックに分割して、それぞれ個別に暗号化する方式です。128,192,25ビットの3種類の鍵から選んで暗号化します。CAは認証局で、申請に基づいて所有者と公開鍵の正当性を保証して、デジタル証明書を発行する第三者機関をいいます。

PKIは公開鍵暗号方式を利用し、インターネット上で安全な情報のやり取りができるインフラです。


SSLはインターネット上での通信を暗号化し、盗聴や改竄を防ぐ仕組みです。ハイブリッド方式は共通鍵暗号方式と公開鍵暗号方式の両方の特徴を組み合わせた法好きです。データの暗号化と複号には共通鍵暗号方式(速いので)を用いて、共通鍵の配布には公開鍵暗号方式を用います。セキュアブートはTPM(PCのセキュリティを強化するためマザーボードに組み込まれたセキュリティチップで暗号化鍵の生成や保管、デジタル署名の生成や証明書の管理を行います)を利用しPC起動時にOSやドライバのデジタル署名を検証し、信頼のおけるソフトウェアだけを動作させる技術です。耐タンパ性は、外部からの不正アクセスや改竄などに対して、強いことを示す性質です。

パケットフィルタリング方式は、パケットのヘッダ情報で判断し、通過の可否を決める方式です。


フォワードプロキシサーバではキャッシュを用います。リバースプロキシサーバではロードバランサ機能を用いてインターネットからのアクセスを振り分けます。

ゼロトラストは、内側も外側も存在せず、全てのデバイスや通信を検査し認証することです。情報システム戦略は、経営戦略に基づいた情報システムを活用する戦略です。


グリーン購入はグリーンIT(環境への配慮を行うCSRの一種)を実践する製品やサービスを選ぶことです。カーボンフットプリントは地球温暖化に影響を与える二酸化炭素の排出量で、この削減もCSRの1つです。NDAは秘密保持契約です。
XPはインテレーション(数週間サイクルで動作するプログラムを作成)を用い、ペアプログラミングを行い、リファクタリング(外部使用を変えずプログラム内部構造を変更)を行い、テストファースト(プログラムを書く前にテストケースを作成するテスト駆動開発のこと)を行い、継続的インテグレーション(コードの結合とテストを継続的に繰り返す)を行います。
スクラム開発は、プロダクトオーナー(機能優先度決定)とスクラムマスター(プロセスを進める)とチームで構成されます。スプリントという短いサイクルでプログラムを生成します。見積もりにはプラニングポーカーがあります。以下はスクラムの流れです。スプリントプランニングで作業計画をたてます。デイリースクラムを重ね早めの問題解決を図ります。スプリントレビューで成果物のレビューを行います。レトロスペクティブで次の課題を設定します。
リバースエンジニアリングは、既存のプログラムを解析しそのプログラムの仕様書を導くことです。

オブジェクト指向の言語はJava、C++、Pythonです。


クラスはオブジェクトを定義するための設計図で、インスタンスはクラスを基にして生成したオブジェクトです。
オーバーライドはスーパークラス(基底クラス)で定義されたメソッドをそのまま継承せず、サブクラスで再定義することで動作を変更することで、ポリモフィズム(多相性、多態性)とも呼ばれます。移譲はあるオブジェクトに依頼されたメッセージ処理を、そのオブジェクトの内部から他のオブジェクトに委ねることです。BPRは業務プロセスを見直し、再設計することで、組織の体質や構造を抜本的に変革することです。継続的に評価改善することをBPMといいます。


UMLはオブジェクト指向開発の分析から設計、実装、テストまでを統一した表記法でモデル化したものです。


ユースケース図はシステムが外部に提供する機能と、その利用者や外部システムとの関係を表現した図で、ここでの在庫管理システムはアクターです。

クラス図はクラス間の関係を表した図です。


オブジェクト図はオブジェクト(インスタンス)間の関係を表した図です。

アクティビティ図はある振る舞いから次の振る舞いへの制御の流れを表現した図です。

コミュニケーション図はオブジェクト間で送受信されるメッセージを表した図で、オブジェクト同士の関係の観点からメッセージを表現します。

シーケンス図はオブジェクト間で送受信されるメッセージを表した図で、時系列の観点からメッセージを表現します。




チェックデジット検査で、入力数値から一定の規則に従い検査文字を求め、検査文字を入力データの末尾に付加することで、入力に間違いがないか検査できます。次の図はシステム設計→ソフトウェア要素の設計→モジュールの設計への流れ図です。




モデレータは議長としてインスペクションを運営し、オーナーはレビュー対象の成果物の作成者で、発見された問題に応じて成果物の修正を行い、インスペクタは評価者としてレビュー対象となる成果物の問題発見を行い、プレゼンタはミーティングにて参加者に資料の説明を行い、スクライブは書紀としてレビューで発見された問題などを記録します。




ソフトウェア結合テストではトップダウンテストとボトムアップテストがあります。



受け入れテストでは妥当性確認テストが行われます。ソフトウェア保守では、リグレッションテスト(プログラムの修正などにより影響を受けるはずのない箇所に影響を及ぼしていないかの確認テスト)別名:退行テストも行います。コーティング規約は、プログラム内の変数名の付け方などにおける標準的な記述ルールです。領域割りづけ関数を使用するときは、割り付けができなかった時の処理を記述します。PMBOKはプロジェクト管理に必要な知識を体系化した文書です。アクションラーニングは、参加者が自ら課題に対処し、互いのフィードバックを通して個人や組織の問題解決能力を養う学習法です。

TCOは総所有コストのことです。ライフサイクルコストともいわれます。PERT図はアローダイアグラムのことです。最早開始日はクリティカルパスとほぼ同じ考えです。

最早開始日は最も遅い作業に合わせ、最遅開始日では、最も早い作業に合わせます。

クラッシングは追加で人や資源を投入してスケジュールを短縮させることで、ファストトラッキングは、前日程が完了する前に後工程を開始する方法です。



EVMはプロジェクトにおける作業を金銭の価値に置き換えて定量的に実績管理をする進捗管理手法です。PVは現時点までに計画されていた作業に対する予算、EVは現時点までに完了した作業に割り当てられていた予算、ACは現時点までに完了した作業に対して実際に投了した総コストです。EV-PVがマイナスならば完了済み作業に対する予算が当初の予算より少ないとなり進捗遅れとなります。EV-ACがマイナスならば完了済み作業に対する予算より投入コストが多いのでコスト超過です。サービス要求はインシデントとは区別されます。これら2つをまとめて、インシデント管理及びサービス要求管理とJIS Q 20000シリーズでは呼んでいます。

キャパシティ管理はSLAを実現させるためにITリソースの容量、能力や取得時期、コストなどの最適化を図るプロセスです。

システム監査基準は、システム監査人の行動規範をまとめたものです。システム監査計画作成→システム監査実施→システム監査報告→フォローアップの順です。

フォローアップ、監査人は助言はしますが、命令は経営者が行います。

内部統制が機能しているかでモニタリングも行います。企業統治(コーポレートガバナンス)は企業経営を外部から監視する仕組みです。




DaaSはサービス提供事業者がシンクライアントシステムをネットワーク経由で提供するサービスです。クラウドサービスにはパブリッククラウド(ふと浮くていた数の利用者に提供)とプライベートクラウド(特定の企業や個人に提供)があります。パブリッククラウドが安価ですが自由度が低いです。この2つの連携やオンプレミスなどとの組み合わせた形態をハイブリッドクラウドといいます。ISMSクラウドセキュリティ認証はクラウド事業者が情報セキュリティの管理体制を整備し、運用していることを第三者に認証する制度です。SOAはサービスを組み合わせて情報システムを構築する考え方です。HRMは人材を経営資源として戦略的に管理していく考えでHRテックが注目されています。これはHR+Tecの造語です。

BPOは自社の業務も含めて外部企業に委託することです。

どの活動で付加価値が生み出されているかを分析する手法がバリューチェーン分析です。


CXは顧客体験です。


PLMはプロダクトライフサイクルマネジメントで、一連のサイクルを通じ、製品情報を一元管理し、商品力向上やコスト低減を図る取り組みです。STP分析は、マーケティングの基本要素(セグメンテーション、ターゲティング、ポジショニング)の観点から分析することです。


コストプラス価格決定法は、原価+利益=価格です。コスト志向型の考えですが、競争相手の価格を反映する競争指向型や、目標ROIを実現できる価格に設定するターゲットリターン型、一番売れそうな価格に設定する需要指向型があります。





CRMは個別顧客に関する情報などを一元管理し共有することで収益拡大を図る手法です。顧客生涯価値ともいいます。SFAは個人保有の営業知識などを一元管理し共有することです。コンタクト管理は、営業結果などの履歴を管理し、効果的な営業活動を行うことです。SFAはCRMに含まれます。

3PLは企業の物流機能すべて、または一部を外部の企業に委託することです。外部の資源を有効に利用します。

MOTは高度技術を核とする技術開発に投資し、イノベーションを創出することで技術革新を事業に結びつける経営です。

イノベーションのジレンマは、技術に固執している間に、市場変化に対応できず、新しい商品に敗北してしまうことです。APIエコノミーは企業同士がAPI(異なるアプリケーション間で機能やデータを容易に利用できる仕組み)を使ってサービスを連携させて生まれる新しい経済圏です。

ロジックマッシュアップは、異なるサービスの入出力を連結させ一連の新しいサービスを構築することです。APIエコノミーもオープンイノベーション(社外からアイディアを募集し新サービスの開発に活用するなど)の一種です。ハッカソンは開発者などがチームを組み、短期間で課題にチャレンジするイベントです。


デザイン思考は利用者も気づかないような潜在的ニーズを掘り起こし、イノベーションを生み出そうとする考えです。リーンスタートアップは低コストで最小限の商品などを短期間で市場に出し、顧客反応をフィードバックし継続的に改良を繰り返す方式です。技術ロードマップは将来の技術動向を予測し進展道筋を時間軸上に表したものです。デルファイ法は複数の専門家からの意見を収集し、意見を集約し、それをフィードバックする流れで意見を収束していく手法で、技術動向予測に役立ちます。ECはインターネット技術を用いた消費者向けや企業間などの商取引です。

EDIはネットワークを介して商取引のためのデータをコンピュータ間で交換することです。マイニングは、ブロックチェーンを作成する際の複雑な計算作業に協力し、その報酬として新規に発行された仮想通貨を得ることです。CGMは消費者が情報発信した内容を基に生成されていくメディアです。eマーケットプレスは、インターネット上に設けられた市場を通して、多くの売り手と買い手が出会い、中間流通業者を介さず、直接取引をします。オムニチャネル=OtoO(オンライントゥオフライン)です。法に定めた目的以外にマイナンバーを利用できません。個人情報が含まれる署名用電子証明書と、個人情報が含まれない利用者証明用電子証明書の2種類が記録されています。MaaSは交通手段をITによって1つのサービスに統合することです。MRPは生産計画を基に、製品を生産するために必要な資源と部品調達や在庫管理を行う手法です。組込みシステムは特定機能を実現するために専用化されたハードウェアと、それを制御するソフトウェアから構成されたシステムです。

エッジコンピューティングで分散処理をできるため、ネットワーク負荷の軽減を実現しています。

管理会計は企業内部の意思決定や組織統制が目的です。財務会計は経営者がステークホルダーに対して会計報告を行うことが目的です。サステナビリティレポートは、企業の環境などへの持続可能な取り組みや成果をまとめた報告書です。損失分岐点売上高=固定費÷(1ー変動比率)です。財務諸表は企業の財政状態などをステークホルダに報告するために作成される計算書類で、貸借対照表、損益計算書、キャッシュフロー計算書があります。



貸借対照表はバランスシートともいわれます。会計期末日時点での内容を記載します。資産はプラスの資産で売掛金(売った時のツケ)などで、負産はプラスの財産で買い掛け金(買った時のツケ)など、純資産は正味の財産です。

損益計算書はP/L(貸借対照表はB/S)ともいわれます。会計期間に発生した収益と費用を記載し、算出した利益を示すものです。ROIは投資利益率で、投資に対する利益の割合です。ROEは自己資本利益率で、自己資本に対する当期純利益の割合です。

キャッシュフロー計算書は、会計期間における現金の流れを示したものです。NPVは投資によって将来どれくらいの利益が得られるかを示す指標です。

原価償却では、資産の種別ごとに決定耐用年数が決められています。


知的財産権は著作権と産業財産権に分けられます。著作権は次のように分けられます。

著作権は死後70年で著作物を創作した時点で発生します。プログラム言語、アルゴリズム、規約は著作権の対象外です。ステガノグラフィは、画像データや音声データの中に別の情報を埋め込み、その存在を隠すことです。それを応用したのが電子透かしです。これはデジタルウォータマークともいわれます。特許権は出願から20年間、実用新案権は10年、意匠権は25年、商標権は10年更新です。商品使用のトレードマークと役務におけるサービスマークがあります。

不正競争防止法は、営業秘密(秘密に管理+有用性+非公知性)を保護する法律です。

個人識別符号はDNAや顔、マイナンバー、免許証番号などです。匿名加工情報は個人情報には当たりません。誹謗中傷については、情報流通プラットフォーム対処法と名称が変わりました。申し出を受けてから7日以内に対応を判断し結果を通知することが義務付けられています。被害者以外の第三者からの削除依頼にも対応します。SNS事業者(月間平均アクティブユーザ数が1000万人を超える事業者)の削除基準を明示します。労働基準法での勤務時間については36協定で定められています。裁量労働制は、実際の労働時間に関係なく、取り決めた労働時間を働いたとする制度です。ただし特定の業務に限られています。




成果物が内容に合わない場合は、最長10年以内であれば、請負企業が責任を負う契約不適合責任があります。ベンダは請け負いより準委任契約の方が適切です。公益通報者保護法はチクリの保護制度です。


JISCはJISを決める日本産業標準調査会です。


IETFはインターネットで利用される技術の標準化です。まとめた文書がRFCとしてインターネット上に公開されています。ORは製薬最適解を数理的手法で求める問題解決手法です。グラフ理論で次数はノードから出ているエッジの数です。ゲーム理論で、最悪の事態でも自分の利得が最大になるような行動をすることを、マキシミン戦略といい、最良の事態になることを想定した行動を取ることをマキシマックス戦略といいます。ナッシュ均衡とは、非協力的戦略プレーヤーがどのプレーヤーもこれ以上自分の戦略を変更する動機付けが働かない戦略の組み合わせです。

左側の数値がA社の利得、右側の数値がB社の利得とします。この場合は片方が得をすれば片方が損をするゼロサムゲームです。まずAの場合を考えます。表を横に見て、-15と0を確認します。数の大きい0つまり戦略a2を採用します。同様にBの場合は表を縦に見て、-5と-20を確認し、-5つまり戦略b1を取ることになります。
基本情報技術者試験の合格報告と反省点
本番前日に過去問道場の2周目が終わりました。3周目ではA4の紙2枚の裏表に暗記すべき箇所をまとめて試験会場に向かいました。
本番では科目Aは時間が足りませんでしたが、6割は大丈夫であわよくば7割は取れたかな?という感触でした。問題は科目Bでした。速く解く練習に意識がいかなかったせいか、科目B全体で時間が足りませんでした。セキュリティの4問分では実質5分程度で解答を選んだ感じでした。前半の問題で慎重に答えを吟味していたため、後半で焦った感じになりました。科目Bの終了直前は「6割は取れていると思うけど7割は届いていない」感触でした。

なんとか合格をいただけたという気持ちでした。「やった!」という思いよりも、もっと上手く学習できたはずだという反省の気持ちがとてもありました。ただ合格自体は嬉しいです。ようやく応用情報にチャレンジできるという高揚感も感じています。
合格おめでとうございます!
科目Aはやや余裕を持った合格で、科目Bはあと数問間違えたらアウトな感触でした。受験する方がヒヤヒヤした受験にならないように、今回の反省点を述べたいと思います。
今回は2ヶ月の学習期間でした。その中でインプット→アウトプットの学習を行いました。インプットは参考書で行い、アウトプットは過去問で行いました。ただし、このインプットもアウトプットもやや火力不足だと感じました。
科目Aの参考書はかやのき本がベスト

最初からこの本を選ぶべきだと断言します!理由はたくさんありますが、その1つとして細かい点まで覚えやすく掲載してくれている点です。またハード面では本全体の軽さがあげられます。科目Aの学習(1周目)がどれだけ早く終わるかで、過去問をどれだけ吸収できるか?が決まります。
過去問演習はたくさん行うべき
基本情報技術者試験はCBTとなり、実質的には過去問が公開されていません。しかし過去問は学習の大きな指針となります。僕は3周行って本番を迎えましたが、理解が浅い部分が結構あったと反省しています。特に不正解の選択肢についての吟味が甘かったです。加えて、現在のCBT方式の試験では過去問だけだと火力不足になると感じています。
模試を行うと時間配分で安心できる

せっかく模試を所持していても学習しなければ意味はありません。学習の終盤に時間がなくなり、模試の学習よりも過去問学習を優先しました。
今回は結果的に合格できたものの、5回受けて5回受かるか?と言われたら怪しいです。基本情報技術者試験を受験される方は、模試を行う時間も学習時間に入れて考えておくと良いと思います。
科目Bを甘く見ない
僕は見事に時間配分を間違えてしまい、20問中4問を占める情報マネジメントの問題を解く時間が10分程度しか残っていませんでした。全文を読む時間は残されていなかったので、答えの根拠となる文章はどこだ?という一点のみに絞って速読を徹底しました。数分の中で確信を持って答えを選べたのは多くて2問だった感触です。それだけ擬似言語の問題に時間を取られてしまいました。
本番での時間配分を見誤らないために、模擬試験の学習は必須です!

何はともあれ、合格することができて有難いと思っています。10月の応用情報技術者試験にもこのまま挑戦していこうと思います。
この記事がお役に立てたなら嬉しいです。共に学習を頑張っていきましょう!