<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>過去問演習 | 基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</title>
	<atom:link href="https://fenavi.seplus.jp/tag/%e9%81%8e%e5%8e%bb%e5%95%8f%e6%bc%94%e7%bf%92/feed/" rel="self" type="application/rss+xml" />
	<link>https://fenavi.seplus.jp</link>
	<description>基本情報技術者試験を学習する人のためにつくられた専門メディア。250本以上の記事を掲載し、勉強方法や各分野のポイント、過去問解説など、試験に役立つ情報を発信。試験対策書籍を執筆する著者が、はじめて学ぶ人でもわかりやすく解説します。（2023年度からの新制度に対応済み）</description>
	<lastBuildDate>Tue, 21 Jul 2026 09:45:11 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1</generator>
	<item>
		<title>再帰呼び出し｜つまづきやすいポイントと攻略法 徹底解説！</title>
		<link>https://fenavi.seplus.jp/strategy_guide/fe_strategy09/</link>
		
		<dc:creator><![CDATA[矢沢 久雄]]></dc:creator>
		<pubDate>Tue, 21 Jul 2026 09:30:36 +0000</pubDate>
				<category><![CDATA[再帰呼び出し]]></category>
		<category><![CDATA[勉強方法]]></category>
		<category><![CDATA[科目 A]]></category>
		<category><![CDATA[過去問演習]]></category>
		<guid isPermaLink="false">/?post_type=strategy_guide&#038;p=8927</guid>

					<description><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。 毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。 今回のテーマは再帰呼び出しです。 再帰呼び出しの仕組み 再帰呼び出し（ [&#8230;]</p>
<p>The post <a href="https://fenavi.seplus.jp/strategy_guide/fe_strategy09/">再帰呼び出し｜つまづきやすいポイントと攻略法 徹底解説！</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。</p>
<p>毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。</p>
<p>今回のテーマは<span style="color: #4b0082;"><strong>再帰呼び出し</strong></span>です。</p>
<h2>再帰呼び出しの仕組み</h2>
<p>
<strong>再帰呼び出し</strong>（recursive call）は、関数の処理の中で同じ関数を呼び出すことで繰り返しを実現するプログラミング技法です。<br />
プログラミングでは、while文やfor文などの構文を使って繰り返しを実現しますが、それとは別に、再帰呼び出しという技法もあるのです。
</p>
<p>
再帰呼び出しで繰り返しを実現できるのは、不思議なことではありません。関数を呼び出すと、関数の先頭から処理が行われます。<br />
したがって、関数の処理の中で同じ関数を呼び出せば、関数の先頭に戻って処理が繰り返されるのです。
</p>
<p>
再帰呼び出しの仕組みを説明する定番の例として、引数nの階乗を求める<strong>fact関数</strong>があります（factは、factorial＝「階乗」という意味です）。<br />
階乗とは、ある数から1までのすべての整数を掛けた値です。<br />
たとえば、5の階乗は、5×4×3×2×1＝120です。<br />
リスト1に、擬似言語で記述したfact関数の例を示します。<br />
ここで注目してほしいのは、n × fact(n － 1)の部分です。fact関数の中で、fact関数を呼び出しています。これが、再帰呼び出しです。
</p>
<div style="background-color: #ededed; padding: 15px; border-radius: 5px; margin: 10px 0;">
  <span style="color: #4b0082;"><strong>リスト1 擬似言語で記述したfact関数の例</strong></span></p>
<pre style="font-family: inherit; margin: 10px 0 0 0; white-space: pre-wrap;">
○整数型：fact(整数型：n)
  if (n ＝ 0)
     return 1
  else
     return n × fact(n － 1)
  endif</pre>
</div>
<p>
fact関数の処理内容は、if文を使った分岐になっています。<br />
数学の約束で、0の階乗は1なので、n ＝ 0という条件が成り立てば、return 1で1を返しています。<br />
そうでない場合は、return n × fact(n － 1)という処理を行っています。<br />
これは、たとえば5の階乗は「5×(4の階乗)」で求められるので、nの階乗は「n×(n－1の階乗)」で求められる、という考えをプログラムで表したものです。
</p>
<h2>再帰呼び出しの処理の流れ</h2>
<p>
再帰呼び出しに関する問題を攻略するには、再帰呼び出しの仕組みを理解しておくのはもちろんですが、再帰呼び出しの処理の流れをトレースできるようにしておく必要もあります。そういう問題も出るからです。<br />
先ほどリスト1に示したfact関数を引数5で呼び出したときの処理の流れをトレースしてみましょう。以下の（1）～（12）になります。
</p>
<div style="background-color: #ededed; padding: 15px; border-radius: 5px; margin: 10px 0;">
<span style="color: #4b0082;"><strong>▼fact関数を引数5で呼び出したときの処理の流れ</strong></span><br />
（1）　fact(5)が呼び出される。<br />
（2）　fact(5)でreturn 5 × fact(4)という処理が行われ、fact(4)が呼び出される。<br />
（3）　fact(4)でreturn 4 × fact(3)という処理が行われ、fact(3)が呼び出される。<br />
（4）　fact(3)でreturn 3 × fact(2)という処理が行われ、fact(2)が呼び出される。<br />
（5）　fact(2)でreturn 2 × fact(1)という処理が行われ、fact(1)が呼び出される。<br />
（6）　fact(1)でreturn 1 × fact(0)という処理が行われ、fact(0)が呼び出される。<br />
（7）　fact(0)でreturn 1という処理が行われ、fact(0)が1を返す。<br />
（8）　fact(1)のreturn 1 × fact(0)がreturn 1 × 1になり、fact(1)が1を返す。<br />
（9）　fact(2)のreturn 2 × fact(1)がreturn 2 × 1になり、fact(2)が2を返す。<br />
（10）　fact(3)ののreturn 3 × fact(2)がreturn 3 × 2になり、fact(3)が6を返す。<br />
（11）　fact(4)のreturn 4 × fact(3)がreturn 4 × 6になり、fact(4)が24を返す。<br />
（12）　fact(5)のreturn 5 × fact(4)がreturn 5 × 24になり、fact(5)が120を返す。
</p>
</div>
<p>
fact(5)→fact(4)→fact(3)→fact(2)→fact(1)→fact(0)という順に関数が呼び出されます。<br />
この時点では、まだどの関数も戻り値を返していません。<br />
fact(0)が1という戻り値を返すと、そこからfact(1)が1を返す→fact(2)が2を返す→fact(3)が6を返す→fact(4)が24を返す→fact(5)が120を返す、という順に戻り値が返されます。これが、再帰呼び出しの処理の流れです。
</p>
<h2>再帰呼び出しに関する問題（1）</h2>
<p>
再帰呼び出しに関する問題を見てみましょう。<br />
短い問題が多いので、一気に4問を紹介します。</p>
<p>1問目は、階乗を求める関数の穴埋め問題（出典：H28春問07）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題1（出典：H28春問07）</span></h3>
<p><i>n</i> の階乗を再帰的に計算する関数  <i>F</i>(<i>n</i>)  の定義において、<i>a</i> に入れるべき式はどれか。ここで、<i>n</i> は非負の整数とする。</p>
<p>
  <i>n</i> &gt; 0 のとき、 <i>F</i>(<i>n</i>) = <span style="border: 2px solid #000; padding: 2px 25px; display: inline-block; margin: 0 5px; vertical-align: middle;">a</span>
</p>
<p>　<i>n</i> = 0 のとき、 <i>F</i>(<i>n</i>)  = 1</p>
<p>ア　 <i>n</i>  +  <i>F</i>(<i>n</i>-1)<br />
イ　 <i>n</i>  &#8211; 1 +  <i>F</i>(<i>n</i>)<br />
ウ 　<i>n</i>  ×  <i>F</i>(<i>n</i>-1)<br />
エ 　(<i>n</i>  &#8211; 1) ×  <i>F</i>(<i>n</i>)
</div>
<p><p>
関数F(n)の機能は、先ほどリスト1で示した関数fact(n)と同様なので、すぐにわかるでしょう。<br />
n ＞ 0のときは、n × F(n － 1)という再帰呼び出しを行います。<br />
したがって、選択肢ウが正解です。
</p>
<h2>再帰呼び出しに関する問題（2）</h2>
<p>
2問目は、階乗を求める関数の乗算回数の問題（出典：H24秋問07）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題2（出典：H24秋問07）</span></h3>
<p><i>n</i> ! の値を，次の関数<i>F</i>(<i>n</i>)によって計算する。乗算の回数を表す式はどれか。</p>
<figure style="display: block; width: 100%; max-width: 300px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2026/07/cb9c6fdc2ce9cb8cf6d37f5aee47f25d.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>
　ア　 <i>n</i> &#8211; 1　　　　イ 　<i>n</i>　　　　ウ 　<i>n</i><sup>2</sup>　　　　エ　 <i>n</i> !
</p>
</div>
<p>
この問題の関数F(n)の機能も、先ほどリスト1で示した関数fact(n)と同様です。<br />
乗算の回数は、たとえば5の階乗なら5×4×3×2×1の4回なので、nの階乗ならn － 1回だと思うかもしれませんが、正解は選択肢イのn回です。<br />
なぜなら、1の階乗を求めるときに、1×(0の階乗)という再帰呼び出しが行われるからです。<br />
5の階乗を5×4×3×2×1×1という5回の乗算で求めることになるので、nの階乗ならn回の乗算になります。
</p>
<h2>再帰呼び出しに関する問題（3）</h2>
<p>
3問目は、掛け算ではなく足し算を使った関数の問題（出典：R01秋問11）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題3（出典：R01秋問11）</span></h3>
<p>自然数 <i style="font-family: 'Times New Roman', serif;">n</i> に対して，次のとおり再帰的に定義される関数 <i style="font-family: 'Times New Roman', serif;">f</i>(<i style="font-family: 'Times New Roman', serif;">n</i>) を考える。<i style="font-family: 'Times New Roman', serif;">f</i>(5) の値はどれか。</p>
<p style="margin: 20px 0; padding-left: 40px; font-family: 'Times New Roman', serif; font-size: 18px;">
  <i>f</i>(<i>n</i>) :   <i style="font-style: normal;">if</i> 　<i>n</i> ≦ 1   <i style="font-style: normal;">then</i>  　 <i style="font-style: normal;">return</i> 1 　  <i style="font-style: normal;">else</i> 　  <i style="font-style: normal;">return</i> <i>n</i> + <i>f</i>(<i>n</i>-1)
</p>
<p>ア 6          イ 9          ウ 15          エ 25</p>
</div>
<p>
関数f(n)の処理内容は、もしもn ≦ 1なら1を返し、そうでないなら再帰呼び出しでn ＋ f(n － 1)を返す、というものです。<br />
f(5)の処理の流れをトレースすると、以下の（1）～（10）になります。f(5)は15を返すので、選択肢ウが正解です。
</p>
<div style="background-color: #ededed; padding: 15px; border-radius: 5px; margin: 10px 0;">
<span style="color: #4b0082;"><strong>▼f(5)の処理の流れ</strong></span><br />
（1）　f(5)が呼び出される。<br />
（2）　f(5)でreturn 5 ＋ f(4)という処理が行われ、f(4)が呼び出される。<br />
（3）　f(4)でreturn 4 ＋ f(3)という処理が行われ、f(3)が呼び出される。<br />
（4）　f(3)でreturn 3 ＋ f(2)という処理が行われ、f(2)が呼び出される。<br />
（5）　f(2)でreturn 2 ＋ f(1)という処理が行われ、f(1)が呼び出される。<br />
（6）　f(1)でreturn 1という処理が行われ、f(1)が1を返す。<br />
（7）　f(2)のreturn 2 ＋ f(1)がreturn 2 ＋ 1になり、f(2)が3を返す。<br />
（8）　f(3)のreturn 3 ＋ f(2)がreturn 3 ＋ 3になり、fact(3)が6を返す。<br />
（9）　f(4)のreturn 4 ＋ f(3)がreturn 4 ＋ 6になり、fact(4)が10を返す。<br />
（10）　f(5)のreturn 5 ＋ f(4)がreturn 5 ＋ 10になり、fact(5)が15を返す。
</p>
</div>
<h2>再帰呼び出しに関する問題（4）</h2>
<p>
4問目は、掛け算ではなくmod演算を使った関数の問題（出典：H28秋問07）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題4（出典：H28秋問07）</span></h3>
<p>
    整数 <i style="font-family: 'Times New Roman', serif;">x</i>, <i style="font-family: 'Times New Roman', serif;">y</i> (<i style="font-family: 'Times New Roman', serif;">x</i> &gt; <i style="font-family: 'Times New Roman', serif;">y</i> ≧ 0) に対して，次のように定義された関数 <i style="font-family: 'Times New Roman', serif;">F</i>(<i style="font-family: 'Times New Roman', serif;">x</i>, <i style="font-family: 'Times New Roman', serif;">y</i>) がある。<br />
    <i style="font-family: 'Times New Roman', serif;">F</i>(231, 15) の値は幾らか。ここで，<i style="font-family: 'Times New Roman', serif;">x</i> mod <i style="font-family: 'Times New Roman', serif;">y</i> は <i style="font-family: 'Times New Roman', serif;">x</i> を <i style="font-family: 'Times New Roman', serif;">y</i> で割った余りである。
  </p>
<figure style="display: block; width: 100%; max-width: 300px; margin: 20px auto;">
<div class="material-placeholder">
      <img decoding="async" src="/wordpress/wp-content/uploads/2026/07/b2ac61fc3dc5355470c0148b9aaf29fb.jpg" alt="F(x,y)の定義式" style="width: 100%; height: auto; display: block;" />
    </div>
</figure>
<p>  <!-- 選択肢 --></p>
<p>
     ア  2　　    イ  3 　　    ウ  5　　     エ  7
  </p>
</div>
<p>
関数F(x, y)の処理内容は、もしもy ＝ 0ならxを返し、y ＞ 0ならF(y, x mod y)を再帰呼び出しする、というものです。<br />
F(231, 15)の処理の流れをトレースすると、以下の（1）～（5）になります。F(231, 15)は3を返すので、選択肢イが正解です。
</p>
<div style="background-color: #ededed; padding: 15px; border-radius: 5px; margin: 10px 0;">
<span style="color: #4b0082;"><strong>▼F(231, 15)の処理の流れ</strong></span><br />
（1）　F(231, 15)が呼び出される。<br />
（2）　yの15 ＞ 0なので、F(15, 231 mod 15)が呼び出される。これは、F(15, 6)である。<br />
（3）　yの6 ＞ 0なので、F(6, 15 Mod 6)が呼び出される。これは、F(6, 3)である。<br />
（4）　yの3 ＞ 0なので、F(3, 6 mod 3)が呼び出される。これは、F(3, 0)である。<br />
（5）　yの0 ＝ 0なので、xの3が返される。
</div>
<hr class="mag_tp50 mag_bt50" />
<p>
今回は、「再帰呼び出し」のポイントと攻略法を解説しました。<br />
このテーマが苦手だった受験者の参考になれば幸いです。</p>
<p>それでは、またお会いしましょう！
</p>
<style>
h4 {
  font-size: 1.1rem;
}
h3 + h4 {
  margin: 1em 0 1em;
}
div.card-panel {
  padding: 3rem;
}
@media screen and (orientation: portrait){
div.card-panel {
  padding: 2rem;
}
}
div.card-panel > h3 {
  font-size: 1.2em;
  padding-left: 1em;
  border-left: 5px solid #3f51b5;
}
div.card-panel > h3:first-of-type {
  margin-top: 0;
}
div.card-panel .chip {
    background-color: #3f51b5;
}
</style><p>The post <a href="https://fenavi.seplus.jp/strategy_guide/fe_strategy09/">再帰呼び出し｜つまづきやすいポイントと攻略法 徹底解説！</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>基本情報技術者試験 科目A免除試験の講評 ～ 2026年6月14日実施</title>
		<link>https://fenavi.seplus.jp/guide/report_fe_special_test_20260614/</link>
		
		<dc:creator><![CDATA[矢沢 久雄]]></dc:creator>
		<pubDate>Wed, 17 Jun 2026 00:30:55 +0000</pubDate>
				<category><![CDATA[解答速報]]></category>
		<category><![CDATA[試験講評]]></category>
		<category><![CDATA[過去問演習]]></category>
		<guid isPermaLink="false">/?post_type=guide&#038;p=8914</guid>

					<description><![CDATA[<p>試験対策講座の講師として、誠に勝手ながら、2026年6月14日（日）に実施された基本情報技術者科目A免除試験（修了認定に係る試験）の講評をさせていただきます。 今回受験された人は振り返りの題材として、今後受験される人は対 [&#8230;]</p>
<p>The post <a href="https://fenavi.seplus.jp/guide/report_fe_special_test_20260614/">基本情報技術者試験 科目A免除試験の講評 ～ 2026年6月14日実施</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>試験対策講座の講師として、誠に勝手ながら、2026年6月14日（日）に実施された基本情報技術者科目A免除試験（修了認定に係る試験）の講評をさせていただきます。</p>
<p>
今回受験された人は振り返りの題材として、今後受験される人は対策の資料として、参考にしていただければ幸いです。
</p>
<table class="mag_h30 centered responsive-width">
<thead>
<tr>
<th>実施月</th>
<th>問題</th>
<th>解答</th>
</tr>
</thead>
<tbody>
<tr>
<td>2026 年 6 月</td>
<td><a href="https://www.ipa.go.jp/shiken/about/gmcbt800000077l9-att/tokurei_Mondai_20260614_FE.pdf" rel="noopener noreferrer" target="_blank">問題</a></td>
<td><a href="https://www.ipa.go.jp/shiken/about/gmcbt800000077l9-att/tokurei_ans_20260614_FE.pdf" rel="noopener noreferrer" target="_blank">解答</a></td>
</tr>
</tbody>
</table>
<style>.small{font-size:.85em;}table{font-size:.85em}thead{background:#e1f5fe;}caption{color:#9e9e9e;margin:1.5em auto;text-align:center;}.narrow-row td{padding:.5em .75em}dl.inline dd{margin-left:2em;}.card-panel{box-shadow:0 4px 16px rgba(0,0,0,0.02),0 20px 46px rgba(0,0,0,0.08);}h2 .chip{vertical-align:middle;}@media screen and (max-width:600px){.table-wrap{overflow:scroll;}.table-wrap>table{width:100%;min-width:35em;}}</style>
<h2>問題の内容</h2>
<p>表1は、今回の科目A免除試験の内容です。<br />
問題の番号、分野、テーマ、難易度、および過去問題の再利用かどうかを示しています。</p>
<p class="center" style="font-size:1.2rem;margin-top:3rem;">表1　今回の科目A免除試験の内容</p>
<table class="narrow-row responsive-width striped bordered">
<thead>
<tr>
<th>番号</th>
<th>分野</th>
<th>テーマ（分類）</th>
<th>難易度</th>
<th>過去問題</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>T</td>
<td>情報落ちの発生を防ぐ工夫（情報の基礎理論）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>2</td>
<td>T</td>
<td>天気の移り変わりの確率（情報の基礎理論）</td>
<td>中</td>
<td>H22秋問3</td>
</tr>
<tr>
<td>3</td>
<td>T</td>
<td>ファインチューニングの説明（情報の基礎理論）</td>
<td>中</td>
<td>R07公開問1</td>
</tr>
<tr>
<td>4</td>
<td>T</td>
<td>A/D変換器の使用例（ハードウェア）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>5</td>
<td>T</td>
<td>二分探索木の構成（アルゴリズム）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>6</td>
<td>T</td>
<td>行きがけ順深さ優先探索（アルゴリズム）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>7</td>
<td>T</td>
<td>メソッドのオーバーロードの説明（ソフトウェア）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>8</td>
<td>T</td>
<td>MIPSの計算（ハードウェア）</td>
<td>中</td>
<td>H29秋問9</td>
</tr>
<tr>
<td>9</td>
<td>T</td>
<td>パルス幅の計算（ハードウェア）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>10</td>
<td>T</td>
<td>RAIDの方式（システム構成）</td>
<td>中</td>
<td>H28秋問12</td>
</tr>
<tr>
<td>11</td>
<td>T</td>
<td>フェールセーフの説明（システム構成）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>12</td>
<td>T</td>
<td>システムに必要なCPUの数（システム構成）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>13</td>
<td>T</td>
<td>仮想ページ番号とページ内変位のビット数（ソフトウェア）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>14</td>
<td>T</td>
<td>ローコード開発ツールの説明（ソフトウェア）</td>
<td>易</td>
<td>R07公開問5</td>
</tr>
<tr>
<td>15</td>
<td>T</td>
<td>GPLのOSSでライセンス違反となるもの（ソフトウェア）</td>
<td>中</td>
<td>H25秋問21</td>
</tr>
<tr>
<td>16</td>
<td>T</td>
<td>セグメントLEDの点灯回路（ハードウェア）</td>
<td>中</td>
<td>H28秋問21</td>
</tr>
<tr>
<td>17</td>
<td>T</td>
<td>バーチャルサラウンドの説明（マルチメディアとヒューマンインタフェース）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>18</td>
<td>T</td>
<td>NoSQLのグラフ型のデータベースの特徴（データベース）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>19</td>
<td>T</td>
<td>正規形の条件（データベース）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>20</td>
<td>T</td>
<td>SQLのUNIONの機能（データベース）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>21</td>
<td>T</td>
<td>ストアドプロシージャの説明（データベース）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>22</td>
<td>T</td>
<td>DBMSのチェックポイントの処理の順番（データベース）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>23</td>
<td>T</td>
<td>無線LANのWi-Fi Directの説明（ネットワーク）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>24</td>
<td>T</td>
<td>OSI基本参照モデルの階層（ネットワーク）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>25</td>
<td>T</td>
<td>IPv4ネットワークにおける識別番号（ネットワーク）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>26</td>
<td>T</td>
<td>ネットワーク管理プロトコルであるもの（ネットワーク）</td>
<td>中</td>
<td>H20秋問55</td>
</tr>
<tr>
<td>27</td>
<td>T</td>
<td>サーバ内への侵入の痕跡を隠蔽するツール（セキュリティ）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>28</td>
<td>T</td>
<td>暗号の危殆化の説明（セキュリティ）</td>
<td>中</td>
<td>R07公開問9</td>
</tr>
<tr>
<td>29</td>
<td>T</td>
<td>生体認証の本人拒否率と他人受入率（セキュリティ）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>30</td>
<td>T</td>
<td>セキュリティに関するブラックボックステストの手法（セキュリティ）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>31</td>
<td>T</td>
<td>EDRの機能に該当するもの（セキュリティ）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>32</td>
<td>T</td>
<td>ゼロトラストの説明（セキュリティ）</td>
<td>中</td>
<td>R07公開問3（SG）</td>
</tr>
<tr>
<td>33</td>
<td>T</td>
<td>クロスサイトスクリプティング対策（セキュリティ）</td>
<td>易</td>
<td>H30秋問41（AP）</td>
</tr>
<tr>
<td>34</td>
<td>T</td>
<td>DFDの表記法（開発技術）</td>
<td>中</td>
<td>H16春問50</td>
</tr>
<tr>
<td>35</td>
<td>T</td>
<td>オブジェクト指向の基底クラスとサブクラス（開発技術）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>36</td>
<td>T</td>
<td>マイクロサービスアーキテクチャの説明（開発技術）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>37</td>
<td>T</td>
<td>ブラックボックステストのテストケース（開発技術）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>38</td>
<td>T</td>
<td>部品を組合わせたアプリケーション構築（開発技術）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>39</td>
<td>T</td>
<td>スクラムにおけるプロダクトオーナーの責任（開発技術）</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>40</td>
<td>T</td>
<td>テスト駆動開発において典型的な手順（開発技術）</td>
<td>難</td>
<td>（なし）</td>
</tr>
<tr>
<td>41</td>
<td>M</td>
<td>プロジェクトマネジメントのプロセス群</td>
<td>易</td>
<td>（なし）</td>
</tr>
<tr>
<td>42</td>
<td>M</td>
<td>アローダイアグラムの期間の短縮</td>
<td>中</td>
<td>H30春問51</td>
</tr>
<tr>
<td>43</td>
<td>M</td>
<td>サービスマネジメントにおけるインシデント管理の活動</td>
<td>易</td>
<td>（なし）</td>
</tr>
<tr>
<td>44</td>
<td>M</td>
<td>ITサービスの可用性の目標値</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>45</td>
<td>M</td>
<td>内部監査人の独立性と客観性</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>46</td>
<td>M</td>
<td>BPMSの検証フェーズに該当するもの</td>
<td>易</td>
<td>（なし）</td>
</tr>
<tr>
<td>47</td>
<td>S</td>
<td>既存のビジネスに最先端のITを取り入れ新しいビジネスやサービス</td>
<td>易</td>
<td>（なし）</td>
</tr>
<tr>
<td>48</td>
<td>S</td>
<td>内部ビジネスプロセスの視点のKPIの例</td>
<td>中</td>
<td>H30秋問64（AP）</td>
</tr>
<tr>
<td>49</td>
<td>S</td>
<td>ポートフォリオマネジメントで分類した事業</td>
<td>中</td>
<td>H23特別問65</td>
</tr>
<tr>
<td>50</td>
<td>S</td>
<td>カニバリゼーションの事例</td>
<td>易</td>
<td>（なし）</td>
</tr>
<tr>
<td>51</td>
<td>S</td>
<td>ビジネスモデルを把握するフレームワーク</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>52</td>
<td>S</td>
<td>ハッカソンの説明</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>53</td>
<td>S</td>
<td>RPAの説明</td>
<td>易</td>
<td>R01秋問71（AP）</td>
</tr>
<tr>
<td>54</td>
<td>S</td>
<td>IoTのエネルギーハーベスティングの説明</td>
<td>中</td>
<td>R05春問71（AP）</td>
</tr>
<tr>
<td>55</td>
<td>S</td>
<td>ソーシャルメディアの説明</td>
<td>易</td>
<td>H25春問73</td>
</tr>
<tr>
<td>56</td>
<td>S</td>
<td>OJTによるスキル修得に該当するもの</td>
<td>易</td>
<td>H14春問74</td>
</tr>
<tr>
<td>57</td>
<td>S</td>
<td>移動平均法による販売予測</td>
<td>中</td>
<td>（なし）</td>
</tr>
<tr>
<td>58</td>
<td>S</td>
<td>パレート図として適切なもの</td>
<td>中</td>
<td>H28春問77</td>
</tr>
<tr>
<td>59</td>
<td>S</td>
<td>損益計算書の区分</td>
<td>易</td>
<td>（なし）</td>
</tr>
<tr>
<td>60</td>
<td>S</td>
<td>個人情報保護法に照らして適法な行為</td>
<td>易</td>
<td>H23秋問80</td>
</tr>
</tbody>
</table>
<div style="background-color: #ededed; padding: 15px; border-radius: 5px; margin: 10px 0;">
<small>表1について<br />
●分野<br />
T＝テクノロジ系、M＝マネジメント系、S＝ストラテジ系　<br />
※テクノロジ系は、カッコ内に問題のテーマの分類を示す</p>
<p>●難易度（筆者の講師経験から設定）<br />
易＝受講者のほぼ全員ができる問題、中＝受講者の半数ぐらいができる問題、難＝受講者の数名しかできない問題</p>
<p>●その他<br />
・過去問題の再利用（まったく同じ問題、もしくは、ほとんど同じ問題）である場合は、出題された年度と問題番号を示す。<br />
・基本情報技術者試験の過去問題ではない場合は「H18秋問7（AP）」のようにカッコの中に試験区分の略称を示す。<br />
（略称）AP＝応用情報技術者試験、SG＝情報セキュリティマネジメント試験<br />
・同じ問題が複数の試験区分と年度で何度も再利用されている場合も、ここでは、1つの試験区分と年度だけを示す。<br />
（科目A免除試験の過去問題の再利用よりも本試験を優先する）<br />
・過去問題の再利用でない場合は、「（なし）」と示す。</small>
</div>
<h2>過去問題の再利用が減った</h2>
<p>
今回の試験は、これまでに実施された科目A免除試験と大きく異なります。<br />
<strong>過去問題の再利用が減り、難易度がアップしたのです。</strong></p>
<p>まず、過去問題の再利用を見てみましょう。<br />
表2は、今回を含めた直近3回の試験で再利用された過去問題の試験区分と問題数です。
</p>
<p class="center" style="font-size:1.2rem;margin-top:3rem;">表2　今回を含めた直近3回の試験で再利用された過去問題の試験区分と問題数</p>
<table class="narrow-row responsive-width striped bordered">
<thead>
<tr>
<th>試験区分＼試験実施日</th>
<th>2025年12月14日</th>
<th>2026年1月25日</th>
<th>2026年6月14日（今回）</th>
</tr>
</thead>
<tbody>
<tr>
<td>基本情報技術者試験</td>
<td>38問</td>
<td>37問</td>
<td>16問</td>
</tr>
<tr>
<td>応用情報技術者試験</td>
<td>18問</td>
<td>16問</td>
<td>4問</td>
</tr>
<tr>
<td>その他の試験</td>
<td>4問</td>
<td>7問</td>
<td>1問</td>
</tr>
<tr>
<td>合計</td>
<td>60問</td>
<td>60問</td>
<td><span style="color: #4b0082;"><strong>21問</strong></span></td>
</tr>
</tbody>
</table>
<p>
<span style="background-color: lightyellow;"><strong>これまでに実施された科目A免除試験は、すべての問題が過去問題の再利用でした。<br />
それに対して、今回の試験は、過去問題の再利用がわずか21問だけ（半数以下）です。</strong></span><br />
過去問題の再利用でないものは、まったく新しい問題の可能性もありますが、公開されていない問題（実際の試験に使われているが公開されていない問題）かもしれません。
</p>
<h2>問題の難易度が上がった</h2>
<p>
次に、問題の難易度を見てみましょう。</p>
<p>易が12問、中が37問、難が11問でした。<br />
易が90%できて、中が50%できて、難が25%できる（四択問題なので最低でも25%できます）とすれば、正解数の期待値は、12×0.9 ＋ 37×0.5 ＋ 11×0.25 ＝ 32.1問です。<br />
合格基準は、60問中36問以上の正解なので、がんばって勉強していない限り、残念な結果になってしまった受験者が多かったでしょう。<br />
表3は、今回を含めた直近3回の試験の正解数の期待値です。今回の問題は、直近の試験と比べて、とても難しかったといえます。
</p>
<p class="center" style="font-size:1.2rem;margin-top:3rem;">表3　今回を含めた直近3回の試験の正解数の期待値</p>
<table class="narrow-row responsive-width striped bordered">
<thead>
<tr>
<th>試験実施日</th>
<th>2025年12月14日</th>
<th>2026年1月25日</th>
<th>2026年6月14日（今回）</th>
</tr>
</thead>
<tbody>
<tr>
<td>正解数の期待値</td>
<td>37.8問</td>
<td>39.2問</td>
<td>32.1問</td>
</tr>
</tbody>
</table>
<p class="small" style="text-align:right;">※60問中36問以上の正解で合格です。</p>
<h2>今後の試験を受ける人へのアドバイス</h2>
<p>
最後に、今後の科目A免除試験を受ける人にアドバイスをさせていただきます。<br />
過去問題の再利用が減って、難易度が上がったのですから、これまで以上にきちんと勉強する必要があります。<br />
過去問題を数多く練習しておくという学習方法だけではなく、初めて見る問題が出ても対応できるように、しっかりと用語や問題の解き方を理解しておく必要があります。<br />
それぞれの分野に出題されるテーマを、深く理解することを目指してください。<br />
特にテクノロジ系に難しい問題が多いので、重点的に学習してください。
</p>
<p>
<strong>実際の試験のときに、初めて見る難しそうな問題に遭遇したときは、わからないと決めつけずに、自分の持つ知識を総動員して考えてください。</strong><br />
そうすれば、正解を選べる場合があるからです。<br />
今回の試験の正解数の期待値は32.1問です。合格基準の36問まで、あと4問です。<br />
今回の試験の問題の中から、自分の持つ知識を総動員して正解を選ぶ例をいくつか示しますので、参考にしてください。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">自分の持つ知識を総動員して正解を選ぶ例（その1）：問17</span></h3>
<p>バーチャルサラウンドの説明として，適切なものはどれか。</p>
<p>ア　音の大きさを1ビットのデジタルパルスの密度で表現するので，データの間引きがなく，実際の音源を聴いているような滑らかな音質を再現できる技術<br />
イ　音の方向性を感じる人間の耳の知覚特性を利用し，前方に配置されたスピーカーだけで，音が後方から聴こえるように感じさせる技術<br />
ウ　デジタルデータを間引いて，低いサンプリング周波数やビット数に変換することで，高いサンプリング周波数に対応していないスピーカーでも出力できる技術<br />
エ　滑らかなアナログ波形を得るために，デジタル補間技術を用いて音楽データのビット数やサンプリング周波数を拡張し，より臨場感を音にもたせる技術
</p></div>
<p>
もしも、「バーチャルサラウンド」を知らなかったら、<strong>自分の持つ知識を総動員して、言葉の意味から判断してください。</strong><br />
バーチャルは「仮想的」という意味で、サラウンドはサラウンドスピーカーという言葉が「聞き手を囲むように配置された複数のスピーカー」という意味です。<br />
サラウンドスピーカーをバーチャルに提供するのですから、選択肢イの「前方に配置されたスピーカーだけで、音が後方から聴こえるように感じさせる技術」がよさそうです。<br />
<span style="background-color: lightyellow;"><strong>基本情報技術者試験には、ヒッカケ問題がないので、その選択肢を素直に選んでください。</strong></span><br />
実際の正解も、選択肢イです。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">自分の持つ知識を総動員して正解を選ぶ例（その2）：問18</span></h3>
<p>NoSQL におけるグラフ型のデータベースの特徴として，適切なものはどれか。</p>
<p>ア　JSON や XML などの記述書式で記述されたデータをドキュメントとして管理する。<br />
イ　行と列で構成される表の形式でデータ構造を設計し，表同士の関係性を定義する。<br />
ウ　個々のキーに対して任意個数の列をもつ行データを管理する。<br />
エ　データとデータの関係性をノード，リレーション及びプロパティを用いて管理する。
</p></div>
<p>
もしも、「グラフ型のデータベース」を知らなかったら、自分の持つ知識を総動員して、消去法で不適切な選択肢を消してください。<br />
選択肢アのJSONやXMLが汎用的なデータ交換形式であることを知っていれば、それらはグラフ型とは言えなそうなので、不適切だと判断できます。<br />
関係データベースが表形式であることを知っていれば、選択肢イは関係データベースの説明なので、不適切だと判断できます。<br />
これで、正解を選択肢ウと選択肢エに絞り込めました。<br />
グラフ型のデータベースとして、どちらが適切でしょう。<br />
「キーに対するデータ」よりも、「データとデータの関係性」の方がグラフにふさわしい感じがするので、選択肢エがよさそうです。<br />
実際の正解も、選択肢エです。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">自分の持つ知識を総動員して正解を選ぶ例（その3）：問20</span></h3>
<p>次のSQL文を実行したとき，エラーになる状況はどれか。</p>
<p>　〔SQL文〕<br />
　　SELECT * FROM R<br />
　　UNION<br />
　　SELECT * FROM S</p>
<p>ア　表Rと表Sがソートされていない。<br />
イ　表Rと表Sに重複する行が存在する。<br />
ウ　表Rと表Sに列値がNULLの行が存在する。<br />
エ　表Rと表Sの列数が一致していない。
</p></div>
<p>
自分の持つ知識を総動員すれば「SELECT * FROM R」が表Rから無条件ですべての列を得るという意味で、「SELECT * FROM S」が表Sから無条件ですべての列を得るという意味であることはわかるでしょう。<br />
もしも、「UNION」の意味を知らないなら、それを日本語に直訳した「連合」や「結合」という意味から「2つのSELECT命令の結果を1つの表にするのだろう」と判断してください。<br />
結合するのですから、表Rと表Sの列数が一致してないと、エラーになるのではないかと考えて、選択肢エがよさそうです。<br />
実際の正解も、選択肢エです。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">自分の持つ知識を総動員して正解を選ぶ例（その4）：問22</span></h3>
<p>DBMS のチェックポイント時点の処理を正しい順番に並べたものはどれか。</p>
<p>　&#9312;チェックポイントレコードをログに書き出す。<br />
　&#9313;トランザクションを再開する。<br />
　&#9314;データベースバッファの内容を全てデータベースに書き出す。<br />
　⓸実行中のトランザクションを全て一時停止する。</p>
<p>ア &#9312;→&#9315;→&#9314;→&#9313;<br />
イ &#9314;→&#9315;→&#9312;→&#9313;<br />
ウ &#9315;→&#9312;→&#9314;→&#9313;<br />
エ &#9315;→&#9314;→&#9312;→&#9313;
</p></div>
<p>
自分の持つ知識を総動員すれば、「&#9315;トランザクションの一時停止」と「&#9313;トランザクションの再開」があるので、これらの間に他の処理を行うのだろうと判断できるでしょう。<br />
「&#9312;のチェックポイントレコードをログに書き出す」と「&#9314;バッファの内容をデータベースに書き出す」のどちらが先かは、チェックポイント時点の時点の処理なのだから、チェックポイントのログ（記録）を書き出すことが後だろう、と考えて、選択肢エの &#9315;→&#9314;→&#9312;→&#9313;の順序がよさそうです。<br />
実際の正解も、選択肢エです。
</p>
<div class="divider mag_tp50 mag_bt30"></div>
<p>
以上、試験対策講座の講師として、誠に勝手ながら、試験問題の講評をさせていただきました。
</p>
<p>
今回の試験に合格した人は、ここで気を緩めずに、本試験に向けて科目Bの学習を始めてください。<br />
残念な結果になってしまった人は、ここで気を落すことなく、本試験に向けて科目Aと科目Bの両方を学習してください。<br />
どちらも場合も、コツコツと学習を続けていれば、必ず良い結果が得られるはずです。
</p>
<p>皆様のご健闘をお祈り申し上げます！</p>
<style>
h4 {
  font-size: 1.1rem;
}
h3 + h4 {
  margin: 1em 0 1em;
}
div.card-panel {
  padding: 3rem;
}
@media screen and (orientation: portrait){
div.card-panel {
  padding: 2rem;
}
}
div.card-panel > h3 {
  font-size: 1.2em;
  padding-left: 1em;
  border-left: 5px solid #3f51b5;
}
div.card-panel > h3:first-of-type {
  margin-top: 0;
}
div.card-panel .chip {
    background-color: #3f51b5;
}
</style><p>The post <a href="https://fenavi.seplus.jp/guide/report_fe_special_test_20260614/">基本情報技術者試験 科目A免除試験の講評 ～ 2026年6月14日実施</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>モジュール結合度｜つまづきやすいポイントと攻略法 徹底解説！</title>
		<link>https://fenavi.seplus.jp/strategy_guide/fe_strategy08/</link>
		
		<dc:creator><![CDATA[矢沢 久雄]]></dc:creator>
		<pubDate>Wed, 10 Jun 2026 00:00:57 +0000</pubDate>
				<category><![CDATA[モジュール結合度]]></category>
		<category><![CDATA[学習方法]]></category>
		<category><![CDATA[解法テクニック]]></category>
		<category><![CDATA[過去問の解き方]]></category>
		<category><![CDATA[過去問演習]]></category>
		<guid isPermaLink="false">/?post_type=strategy_guide&#038;p=8905</guid>

					<description><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。 毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。 今回のテーマはモジュール結合度です。 モジュール結合度とは？ 大規模な [&#8230;]</p>
<p>The post <a href="https://fenavi.seplus.jp/strategy_guide/fe_strategy08/">モジュール結合度｜つまづきやすいポイントと攻略法 徹底解説！</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。<br />
毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。</p>
<p>今回のテーマは<span style="color: #4b0082;"><strong>モジュール結合度</strong></span>です。</p>
<h2>モジュール結合度とは？</h2>
<p>
大規模なプログラムは、いくつかの部分に分けて作り、それぞれの部分を「<strong>モジュール</strong>（module＝構成要素）」と呼びます。<br />
大規模なプログラムは、いくつかのモジュールから構成され、個々のモジュールが連携して動作し、その際にデータを受け渡すことがあります。</p>
<p>モジュールとモジュールの結び付きの強さを「<strong>モジュール結合度</strong>」と呼びます。<br />
<span style="background-color: lightyellow;"><strong>モジュール結合度は、弱いほど良いとされます。</strong></span><br />
なぜなら、モジュール結合度が強いと、バグの修正や仕様の変更などでプログラムをメンテナンスするときに、1つのモジュールに変更を加えると、それと連携する他のモジュールにも多くの変更が必要になり、コストが上がってしまうからです。<br />
モジュール結合度は、表1に示した分類があり、表の上にあるほど弱くなります。<br />
「<strong>引数</strong>」とは、モジュールを使うときに受け渡すデータです。「<strong>大域変数</strong>（グローバル変数）」とは、すべてのモジュールから共通して利用できるデータです。<br />
大域変数に対して、モジュールの処理の中だけで使われるデータを「<strong>局所変数</strong>（ローカル変数）」と呼びます。<br />
引数も、局所変数です。「制御用の引数」とは、モジュールの処理内容を変える引数です。
</p>
<p><!DOCTYPE html><br />
<html lang="ja"><br />
<head><br />
  <meta charset="UTF-8"><br />
  <title>モジュール結合度 表</title></p>
<style>
    /* 表のタイトルのスタイル */
    .table-title {
      font-weight: bold;
      font-size: 16px;
      margin-bottom: 10px; /* 表との間の余白 */
      font-family: sans-serif;
    }</p>
<p>    table {
      border-collapse: collapse;
      width: 100%;
      max-width: 650px;
      font-family: sans-serif;
      font-size: 15px;
    }
    th, td {
      border: 1px solid #333;
      padding: 10px;
      text-align: left;
    }
    th {
      background-color: #ededed;
    }
    /* 右側の「強度」列のスタイル */
    .intensity-cell {
      text-align: center;
      vertical-align: middle;
      width: 80px;
      padding: 10px 5px;
    }
    /* セル内を縦並びにして、上下いっぱいに広げる */
    .intensity-container {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: space-between;
      height: 100%;
      min-height: 220px; /* 矢印が綺麗に伸びるように高さを確保 */
      box-sizing: border-box;
    }
    /* 下に行くほど太くなる矢印（SVG） */
    .arrow-svg {
      width: 35px;
      flex-grow: 1; /* 縦方向の空きスペースに合わせて伸びる */
      margin: 8px 0;
    }
    .arrow-svg polygon {
      fill: #7f7f7f; /* 矢印の色 */
    }
  </style>
<p></head><br />
<body></p>
<div class="table-title">【表1】モジュール強度の分類</div>
<table>
<thead>
<tr>
<th>分類名</th>
<th>結び付き方</th>
<th>強度</th>
</tr>
</thead>
<tbody>
<tr>
<td>データ結合</td>
<td>単純な引数で結び付く</td>
<td rowspan="6" class="intensity-cell">
<div class="intensity-container">
<div>弱い</div>
<p>          <svg class="arrow-svg" viewBox="0 0 40 100" preserveAspectRatio="none">
            <polygon points="18,0 22,0 27,75 37,75 20,100 3,75 13,75" />
          </svg></p>
<div>強い</div>
</p></div>
</td>
</tr>
<tr>
<td>スタンプ結合</td>
<td>複雑な引数で結び付く</td>
</tr>
<tr>
<td>制御結合</td>
<td>制御用の引数で結び付く</td>
</tr>
<tr>
<td>外部結合</td>
<td>単純な大域変数で結び付く</td>
</tr>
<tr>
<td>共通結合</td>
<td>複雑な大域変数で結び付く</td>
</tr>
<tr>
<td>内部結合</td>
<td>モジュールの内部を部分的に利用する</td>
</tr>
</tbody>
</table>
<p></body><br />
</html></p>
<h2>モジュール結合度の攻略法</h2>
<p>
後で示す問題を見ればわかりますが、試験には「データ結合」や「スタンプ結合」などの分類名ではなく、どうすればモジュール結合度が弱くなるかが出題されます。</p>
<p>分類名を知るよりも、モジュール結合度を弱くする方法を知る方が、重要だからです。<br />
<strong>したがって、<span style="background-color: lightyellow;">モジュール結合度に関する問題の攻略法は、モジュール結合度を弱くする方法をしっかりと理解することです。</span></strong>
</p>
<p>
もう一度、表1に示したモジュール結合度の分類を見てみましょう。分類名ではなく、結び付き方に注目してください。<br />
6つの分類は、大きく分けて「<strong>引数で結び付く</strong>」「<strong>大域変数で結び付く</strong>」「<strong>データで結び付くのではなくモジュールの内部を部分的に利用する</strong>」の3つに分けられます。<br />
これらの中で、「データで結び付くのではなくモジュールの内部を部分的に利用する」は、プログラムをモジュールに分けた意味がないような結び付きであり、一般的にはあり得ないことなので最もモジュール結合度が強い、と覚えてください。
</p>
<p>
「引数で結び付く」と「大域変数で結び付く」は、「引数で結び付く」の方が「大域変数で結び付く」よりモジュール結合度が弱くなります。これは、当然のことです。「引数で結び付く」は、モジュールとそれを使うモジュールの間だけの結び付きです。「大域変数で結び付く」は、すべてのモジュールが大域変数を使えるので、すべてのモジュールが結び付く可能性があります。
</p>
<p>
そして、これも当然のことですが、「引数で結び付く」と「大域変数で結び付く」のどちらの場合も、単純なデータで結び付いた方が、複雑なデータで結び付くより、モジュール結合度が弱くなります。
</p>
<p>
「制御用の引数で結び付く」とモジュール結合度が強くなるのは、計算するための引数よりも、処理内容を変える引数の方が、引数の形式や内容を変更したときにモジュールに与える影響が大きいからです。
</p>
<h2>擬似言語で示したモジュール結合度の例</h2>
<p>
基本情報技術者試験の科目Bで採用されている擬似言語を使って、「引数で結び付く」「大域変数で結び付く」「制御用の引数で結び付く」の例を示しましょう。<br />
擬似言語では、関数、手続き、オブジェクトをモジュールとすることができます。ここでは、関数をモジュールとしています。</p>
<p>リスト1のfunc1関数は、引数aとbの値を加算します。<br />
func1関数と結び付くのは、引数を指定してfunc1関数を呼び出したモジュールだけです。したがって、大域変数で結び付くよりモジュール結合度が弱くなります。</p>
<div style="background-color: #ededed; padding: 15px; border-radius: 5px; margin: 10px 0;">
  <span style="color: #4b0082;"><strong>リスト1　引数で結び付く例</strong></span><br />
  ○実数型：func1(実数型：a, 実数型：b)<br />
  &nbsp;&nbsp;実数型：ret<br />
  &nbsp;&nbsp;ret ← a ＋ b<br />
  &nbsp;&nbsp;return ret
</div>
<p>リスト2のfunc2関数は、大域変数data1とdata2の値を加算します。<br />
すべてのモジュールが大域変数を使えるので、すべてのモジュールがfunc2関数と結び付く可能性があります。したがって、引数で結び付くよりモジュール結合度が強くなります。</p>
<div style="background-color: #ededed; padding: 15px; border-radius: 5px; margin: 10px 0;">
  <span style="color: #4b0082;"><strong>リスト2　大域変数で結び付く例</strong></span><br />
  大域：実数型：data1,data2<br />
  &nbsp;<br />
  ○実数型：func2()<br />
  &nbsp;&nbsp;実数型：ret<br />
  &nbsp;&nbsp;ret ← data1 ＋ data2<br />
  &nbsp;&nbsp;return ret
</div>
<p>リスト3のfunc3関数は、引数aとbの値を、引数opの値に応じて、加算、減算、乗算、除算します。引数opによって処理内容が変わるので、これは制御用引数です。もしも、引数opに剰余やべき乗を指定できるように変更するなら、それに合わせてfunc3関数の内容に多くの変更が必要になります。したがって、計算するための引数で結び付くよりモジュール結合度が強くなります。
</p>
<div style="background-color: #ededed; padding: 15px; border-radius: 5px; margin: 10px 0;">
  <span style="color: #4b0082;"><strong>リスト3　制御用の引数で結び付く例</strong></span><br />
  ○実数型：func3(実数型：a, 実数型：b, 文字列型:op)<br />
  &nbsp;&nbsp;実数型：ret ← 0<br />
  &nbsp;&nbsp;if (op ＝ &#8220;加算&#8221;)<br />
  &nbsp;&nbsp;&nbsp;&nbsp;ret ← data1 ＋ data2<br />
  &nbsp;&nbsp;elseif (op ＝ &#8220;減算&#8221;)<br />
  &nbsp;&nbsp;&nbsp;&nbsp;ret ← data1 － data2<br />
  &nbsp;&nbsp;elseif (op ＝ &#8220;乗算&#8221;)<br />
  &nbsp;&nbsp;&nbsp;&nbsp;ret ← data1 × data2<br />
  &nbsp;&nbsp;elseif (op ＝ &#8220;除算&#8221;)<br />
  &nbsp;&nbsp;&nbsp;&nbsp;ret ← data1 ÷ data2<br />
  &nbsp;&nbsp;endif<br />
  &nbsp;&nbsp;return ret
</div>
<h2>モジュール結合度に関する問題の攻略法（1）</h2>
<p>
モジュール結合度に関する問題を見てみましょう。<br />
以下は、どうすればモジュール結合度が弱くなるか、という問題（出典：R01秋問46）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：R01秋問46）</span></h3>
<p>モジュール結合度が最も弱くなるものはどれか。</p>
<p>ア　一つのモジュールで，できるだけ多くの機能を実現する。<br />
イ　二つのモジュール間で必要なデータ項目だけを引数として渡す。<br />
ウ　他のモジュールとデータ項目を共有するためにグローバルな領域を使用する。<br />
エ　他のモジュールを呼び出すときに，呼び出したモジュールの論理を制御するための引数を渡す。
</p></div>
<p>
表1の分類にはありませんでしたが、1つのモジュールに多くの機能があると、多くのモジュールと結び付くことになるので、選択肢アはモジュール結合度が強くなります。<br />
選択肢イは、データ項目（計算するためのデータ）を引数で渡す。<br />
選択肢ウは、データ項目をグローバルな領域（大域変数のことです）で渡す。<br />
選択肢エは、モジュールの論理を制御するための引数を渡すです。</p>
<p>これらの中で、モジュール結合度が最も弱くなるのは、データ項目を引数で渡すなので、選択肢イが正解です。
</p>
<h2>モジュール結合度に関する問題の攻略法（2）</h2>
<p>
モジュール結合度に関する問題を、もう1つ見てみましょう。<br />
以下も、どうすればモジュール結合度が弱くなるか、という問題（出典：H28春問47）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：H28春問47）</span></h3>
<p>モジュールの独立性を高めるには，モジュール結合度を低くする必要がある。モジュール間の情報の受渡し方法のうち，モジュール結合度が最も低いものはどれか。</p>
<p>ア　共通域に定義したデータを関係するモジュールが参照する。<br />
イ　制御パラメータを引数として渡し，モジュールの実行順序を制御する。<br />
ウ　入出力に必要なデータ項目だけをモジュール間の引数として渡す。<br />
エ　必要なデータを外部宣言して共有する。
</p></div>
<p>
選択肢アの共通域に定義したデータとは、大域変数のことです。<br />
選択肢イは、制御用の引数を渡しています。<br />
選択肢ウは、計算するためのデータを引数で渡しています。<br />
選択肢エのデータを外部宣言して共有するというのは、大域変数のことです。</p>
<p>これらの中で、モジュール結合度が最も低くなるのは、計算するためのデータを引数で渡すなので、選択肢ウが正解です。
</p>
<hr class="mag_tp50 mag_bt50" />
<p>
今回は、「モジュール結合度」のポイントと攻略法を解説しました。<br />
このテーマが苦手だった受験者の参考になれば幸いです。
</p>
<p>
それでは、またお会いしましょう！
</p>
<style>
h4 {
  font-size: 1.1rem;
}
h3 + h4 {
  margin: 1em 0 1em;
}
div.card-panel {
  padding: 3rem;
}
@media screen and (orientation: portrait){
div.card-panel {
  padding: 2rem;
}
}
div.card-panel > h3 {
  font-size: 1.2em;
  padding-left: 1em;
  border-left: 5px solid #3f51b5;
}
div.card-panel > h3:first-of-type {
  margin-top: 0;
}
div.card-panel .chip {
    background-color: #3f51b5;
}
</style><p>The post <a href="https://fenavi.seplus.jp/strategy_guide/fe_strategy08/">モジュール結合度｜つまづきやすいポイントと攻略法 徹底解説！</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>RAID｜つまづきやすいポイントと攻略法 徹底解説！</title>
		<link>https://fenavi.seplus.jp/strategy_guide/fe_strategy07/</link>
		
		<dc:creator><![CDATA[矢沢 久雄]]></dc:creator>
		<pubDate>Wed, 20 May 2026 00:30:17 +0000</pubDate>
				<category><![CDATA[RAID]]></category>
		<category><![CDATA[勉強方法]]></category>
		<category><![CDATA[科目 A]]></category>
		<category><![CDATA[過去問の解き方]]></category>
		<category><![CDATA[過去問演習]]></category>
		<guid isPermaLink="false">/?post_type=strategy_guide&#038;p=8894</guid>

					<description><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。 毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。 今回のテーマはRAIDです。 RAIDとは？ RAID（レイド）は、R [&#8230;]</p>
<p>The post <a href="https://fenavi.seplus.jp/strategy_guide/fe_strategy07/">RAID｜つまづきやすいポイントと攻略法 徹底解説！</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>この連載は、<strong>基本情報技術者試験</strong>の受験者を対象としたものです。<br />
毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。</p>
<p>今回のテーマは<span style="color: #4b0082;"><strong>RAID</strong></span>です。</p>
<h2>RAIDとは？</h2>
<p>
<strong>RAID</strong>（レイド）は、Redundant Arrays of Inexpensive（またはIndependent） Disksの略であり、直訳すると「安価な（または独立した）ディスクの冗長な配列」という意味です。<br />
1988年に、米国のデイビッド・パターソン氏の論文で、かつて高価だった磁気ディスク装置（以下では、単にディスクと呼びます）が安価になったので、1つのコンピュータシステムで複数台のディスクを使って信頼性を向上させよう、ということで、RAID1からRAID5という5種類の仕組みが提唱されました。<br />
この論文にはありませんが、複数台のディスクを使ってアクセス速度を向上させる仕組みもあり、これもRAIDに含めて、RAID0と呼びます。
</p>
<p>
RAIDには、RAID0からRAID5の6種類があることになりますが、<span style="background-color: lightyellow;">これらの中でよく使われるのは、RAID0、RAID1、RAID5の3種類（および、それらの組合せ）であり、試験にも3種類が出題されています。</span><br />
したがって、RAIDに関する問題の攻略法は、これら3種類の名称と仕組みを対応付けて、しっかりと覚えることです。
</p>
<p>
とはいえ、RAID0、RAID1、RAID5という番号だけでは、仕組みと対応付けるのが困難でしょう。そこで、それぞれに仕組みを意味する別名があることを知ってください。<br />
<strong>RAID0</strong>は「<strong>ストライピング</strong>」、<strong>RAID1</strong>は「<strong>ミラーリング</strong>」、<strong>RAID5</strong>は「<strong>分散パリティ</strong>」です。<br />
これらの別名から仕組みを理解したら、自分流に理由付けをして、仕組みと番号と対応付けて覚えてください。<br />
理由付けの例は、それぞれのRAIDを説明するときに示します。
</p>
<h2>RAID0（ストライピング）の仕組み</h2>
<p>
<strong>RAID0</strong>は、<strong>データをブロックに分割して</strong>、複数のディスクに分散して格納します。<br />
<span style="background-color: lightyellow;">それぞれのディスクは、独立して同時に動作できるので、データを1台のディスクに格納するより、アクセス時間を向上できます。</span><br />
RAID0を実現するには、最低でも2台のディスクが必要です。
</p>
<p>
この仕組みを<strong>ストライピング</strong>と呼ぶのは、データを複数台のディスクに書き込むと、縞模様（stripe）のようになるからです。<br />
図1は、データをA、B、C、D、E、Fという6つのブロックに分けてストライピングした例です。
</p>
<p style="text-align: center;">【図1】RAID0（ストライピング）の例</p>
<figure style="display: block; width: 100%; max-width: 200px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2026/05/f0418e07c53f712246de17d45ad7c8f8.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>
RAIDの本来の目的は、信頼性の向上です。<br />
それに対して、ストライピングは、アクセス速度の向上を目的としています。<br />
<span style="background-color: lightyellow;">「ストライピングは、他のRAIDとは目的が違うので0という特殊な番号なのだ」と理由付けして覚えてください。</span>
</p>
<h2>RAID1（ミラーリング）の仕組み</h2>
<p>
<strong>RAID1</strong>は、複数のディスクに<strong>同じデータを格納</strong>します。<br />
<span style="background-color: lightyellow;">どちらか一方のディスクが故障しても、もう一方のディスクにデータがあるので、信頼性を向上できます。</span><br />
RAID1を実現するには、最低でも2台のディスクが必要です。
</p>
<p>
この仕組みを<strong>ミラーリング</strong>と呼ぶのは、鏡（mirror）に映したように、複数のディスクに同じデータがあるからです。<br />
図2は、A、B、Cというブロックからなるデータをミラーリングした例です。
</p>
<p style="text-align: center;">【図2】RAID1（ミラーリング）の例</p>
<figure style="display: block; width: 100%; max-width: 200px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2026/05/ecf89b214f8587a6a2a28cc774e2732a.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>
ミラーリングは、最もシンプルなRAIDだといえるでしょう。<br />
<span style="background-color: lightyellow;">「ミラーリングは、最もシンプルだから1という先頭の番号なのだ」と理由付けして覚えてください。</span>
</p>
<h2>RAID5（分散パリティ）の仕組み</h2>
<p>
RAID5を実現するには、<strong>最低でも3台のディスクが必要です。</strong><br />
3台のディスクを使う場合は、データを2台のディスクに分散して格納し、それらのパリティ（データを訂正するための符号）をもう1台のディスクに格納します。<br />
<span style="background-color: lightyellow;">3台のディスクに格納されたデータとパリティは、いずれか1台のディスクが故障しても、残りの2台のディスクで復元できるので、信頼性を向上できます。</span>
</p>
<p>
この仕組みを<strong>分散パリティ</strong>と呼ぶのは、パリティ専用に1台のディスクを使うのではなく、それぞれのディスクにパリティを分散させるからです。<br />
図3は、A1とA2に分散されたデータとパリティAp、B1とB2に分散されたデータとパリティBp、およびC1とC2に分散されたデータとパリティCpによる分散パリティの例です。<br />
Ap、Bp、Cpというパリティが3台のディスクに分散されていることに注目してください。
</p>
<p style="text-align: center;">【図3】RAID5（分散パリティ）の例</p>
<figure style="display: block; width: 100%; max-width: 300px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2026/05/c8856789ec11ab8b1013037cef6929f9.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>
分散パリティは、ミラーリング（RAID1）と比べて、かなり複雑です。<br />
<span style="background-color: lightyellow;">「分散パリティは、複雑なので5という大きな番号なのだ」と理由付けして覚えてください。</span>
</p>
<h2>RAIDに関する問題（1）</h2>
<p>
RAIDに関する問題を見てみましょう。<br />
以下は、RAIDの仕組みと番号を対応付ける問題（出典：R01秋問15）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：R01秋問15）</span></h3>
<p>RAIDの分類において、ミラーリングを用いることで信頼性を高め、障害発生時には冗長ディスクを用いてデータ復元を行う方式はどれか。</p>
<p>ア　RAID1　　　　　イ　RAID2　　　　　ウ　RAID3　　　　　エ　RAID4
</p></div>
<p>
ミラーリングは、RAID1の仕組みを意味する別名です。<br />
したがって、選択肢アが正解です。選択肢には、RAID2、RAID3、RAID4もありますが、これらが試験問題のテーマになったことはないので、気にする必要はありません。<br />
<span style="background-color: lightyellow;">とにかく、「RAID0はストライピング」「RAID1はミラーリング」「RAID5は分散パリティ」の3つを、しっかりと覚えてください。</span>
</p>
<h2>RAIDに関する問題（2）</h2>
<p>
RAIDに関する問題を、もう1つ見てみましょう。<br />
以下は、先ほどの問題とは逆に、RAIDの番号と仕組みを対応付ける問題（出典：H29秋問12）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：H29秋問12）</span></h3>
<p>RAID5の記録方式に関する記述のうち，適切なものはどれか。</p>
<p>ア　複数の磁気ディスクに分散してバイト単位でデータを書き込み，さらに，1台の磁気ディスクにパリティを書き込む。<br />
イ　複数の磁気ディスクに分散してビット単位でデータを書き込み，さらに，複数の磁気ディスクにエラー訂正符号（ECC）を書き込む。<br />
ウ　複数の磁気ディスクに分散してブロック単位でデータを書き込み，さらに，複数の磁気ディスクに分散してパリティを書き込む。<br />
エ　ミラーディスクを構成するために，磁気ディスク2台に同じ内容を書き込む。
</p></div>
<p>
RAID5の仕組みを意味する別名は、分散パリティです。<br />
したがって、「複数のディスクに分散してパリティを書き込む」と記述している選択肢ウが正解です。</p>
<p>念のため、他の選択肢も見ておきましょう。<br />
選択肢エは、ミラーリングとあるので、RAID1です。<br />
選択肢アとイは、ストライピングのRAID0ではないので、他の番号のRAIDでしょう。<br />
ただし、RAID0、RAID1、RAID5以外のRAIDが問題のテーマになったことはないので、気にする必要はありません。
</p>
<hr class="mag_tp50 mag_bt50" />
<p>
今回は、「RAID」のポイントと攻略法を解説しました。このテーマが苦手だった受験者の参考になれば幸いです。
</p>
<p>
それでは、またお会いしましょう！
</p>
<style>
h4 {
  font-size: 1.1rem;
}
h3 + h4 {
  margin: 1em 0 1em;
}
div.card-panel {
  padding: 3rem;
}
@media screen and (orientation: portrait){
div.card-panel {
  padding: 2rem;
}
}
div.card-panel > h3 {
  font-size: 1.2em;
  padding-left: 1em;
  border-left: 5px solid #3f51b5;
}
div.card-panel > h3:first-of-type {
  margin-top: 0;
}
div.card-panel .chip {
    background-color: #3f51b5;
}
</style><p>The post <a href="https://fenavi.seplus.jp/strategy_guide/fe_strategy07/">RAID｜つまづきやすいポイントと攻略法 徹底解説！</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>暗号化｜つまづきやすいポイントと攻略法 徹底解説！</title>
		<link>https://fenavi.seplus.jp/strategy_guide/fe_strategy05/</link>
		
		<dc:creator><![CDATA[矢沢 久雄]]></dc:creator>
		<pubDate>Tue, 24 Mar 2026 08:00:48 +0000</pubDate>
				<category><![CDATA[解法テクニック]]></category>
		<category><![CDATA[過去問の解き方]]></category>
		<category><![CDATA[過去問演習]]></category>
		<guid isPermaLink="false">/?post_type=strategy_guide&#038;p=8840</guid>

					<description><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。 毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。 今回のテーマは暗号化です。 暗号化の2つの方式 暗号化される前の文書を [&#8230;]</p>
<p>The post <a href="https://fenavi.seplus.jp/strategy_guide/fe_strategy05/">暗号化｜つまづきやすいポイントと攻略法 徹底解説！</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。<br />
毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。</p>
<p>今回のテーマは<span style="color: #4b0082;"><strong>暗号化</strong></span>です。</p>
<h2>暗号化の2つの方式</h2>
<p>
暗号化される前の文書を「<strong>平文</strong>」と呼び、暗号化された文書を「<strong>暗号文</strong>」と呼びます。<br />
平文を暗号文にすることを「暗号化」と呼び、暗号文を平文にすることを「復号」と呼びます。<br />
「復号化」と呼ばないのは、暗号化は化けますが、復号は元に戻るのであって化けないからです。<br />
暗号化の計算で使われる数値を「<strong>暗号鍵</strong>」と呼び、復号の計算で使われる数値を「<strong>復号鍵</strong>」と呼びます。<br />
暗号化の方式には、「共通鍵暗号方式」と「公開鍵暗号方式」があります。
</p>
<p>
<span style="background-color: lightyellow;"><strong>共通鍵暗号方式</strong>は、暗号化と復号で同じ値の鍵を使います。</span><br />
たとえば、古代ローマのシーザーが好んで使っていたといわれる「シーザー暗号」では、平文を構成する文字を3文字ずらして暗号化し、暗号文を構成する文字を逆方向に3文字ずらして復号します。<br />
これは、3を共通鍵とした共有鍵暗号方式です。<br />
シーザー暗号をコンピュータで実現するには、図1に示したように、平文の文字コードに3を足すという計算で暗号化して、暗号文の文字コードから3を引くという計算で復号します。
</p>
<p style="text-align: center;">【図1】共通鍵暗号方式の例（シーザー暗号）</p>
<figure style="display: block; width: 100%; max-width: 500px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2026/03/795316b92fc766b0181f6fef074f03fa.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>
<span style="background-color: lightyellow;"><strong>公開鍵暗号方式</strong>は、暗号化と復号で異なる値の鍵を使います。</span><br />
たとえば、「RSA暗号（RSAは、3人の考案者の名前の頭文字を並べたもの）」では、図2に示した計算で暗号化と復号を行います。<br />
Modは、割り算の余りを求める演算を意味します。<br />
ここでは、3と55が暗号鍵であり、7と55が復号鍵です（これらは、あらかじめ決められたルールに従った値であり、実用的な暗号化では、もっと桁数の大きな鍵を使います）。<br />
除数は、同じですが、べき乗する値が異なることに注目してください。
</p>
<p style="text-align: center;">【図2】公開鍵暗号方式の例（RSA暗号）</p>
<figure style="display: block; width: 100%; max-width: 500px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2026/03/2b530e80c7d0de90885e285c5d798063.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>
<span style="background-color: lightyellow;">公開鍵暗号方式では、暗号化の鍵を「<strong>公開鍵</strong>」として、復号の鍵を「<strong>秘密鍵</strong>」とします。</span><br />
受信者が公開鍵と秘密鍵を作成し、送信者にネットワークで公開鍵を知らせます。<br />
ネットワークで知らせることは、公開したのも同然なので、公開鍵と呼ぶのです。<br />
秘密鍵は、送信者しか知らない秘密にするので、秘密鍵と呼ぶのです。<br />
送信者は、平文を公開鍵で暗号化して、暗号文をネットワークで送ります。<br />
受信者は、受信した暗号文を秘密鍵で復号します。<br />
もしも、ネットワークで暗号文が誰かに盗まれても、それを復号する秘密鍵は受信者しか知らないので、復号されることはありません。
</p>
<h2>異なる値の鍵で暗号化と復号ができる仕組み</h2>
<p>
公開鍵暗号方式では、異なる値の鍵で暗号化と復号ができますが、これを不思議に思うでしょう。<br />
数というものは、3を足して変化させたなら3を引けば元に戻り、3を掛けて変化させたなら3で割れば元に戻る、というように、同じ値で逆の演算をすれば元に戻るものだからです。<br />
先ほど例を示した公開鍵暗号方式の計算では、3乗して55で割った余りで変化させて、7乗して55で割った余りで元に戻しています。<br />
どうして、このようなことが実現できるのでしょうか。
</p>
<p>
この仕組みを理解するために、表計算ソフトを使って、図3に示した表を作成しました。<br />
表の左端で上から下に並んだ数字は、平文の文字に割り当てられた文字コードだとします。<br />
表の上端で左から右に並んだ数字は、それらを何乗するかを示しています。<br />
そして、それらが交わったセルには、文字コードをべき乗して55で割った値を示しています。<br />
たとえば、左端の4と上端の5が交わったセルには、4の5乗を55で割った余りの34を示しています。
</p>
<p style="text-align: center;">【図3】異なる値の鍵で暗号化と復号ができる仕組みを理解するための表</p>
<figure style="display: block; width: 100%; max-width: 700px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2026/03/c8856789ec11ab8b1013037cef6929f9.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>
1乗しても値は変化しませんが、2乗以降では異なる値に変化しています。<br />
そして、ここが大注目なのですが、21乗では元の値に戻っています。<br />
21＝3×7なので、3乗してから7乗することで21乗にすることもできます。<br />
3乗すると異なる値に変化するので、暗号化ができます。それを7乗すると元の値に戻るので、復号ができます。<br />
これが、異なる値の鍵で暗号化と復号ができる仕組みです。
</p>
<p>
仕組みがわかると、公開鍵と復号鍵の性質もわかります。<br />
21乗を3乗と7乗に分けるのですから、公開鍵と復号鍵には「ペアで作るものである」という性質があります。<br />
21＝3×7は、21＝7×3と表すこともできるので、公開鍵と秘密鍵には「それぞれを逆に使える」という性質もあります。<br />
これは、公開鍵の3で暗号化すれば秘密鍵の7で復号でき、逆に秘密鍵の7で暗号化すれば公開鍵の3で復号できるということです。<br />
鍵を逆に使えるという性質は、すぐ後で説明するディジタル署名で応用されています。
</p>
<h2>公開鍵暗号方式を応用したディジタル署名</h2>
<p>
公開鍵暗号方式を応用して「<strong>ディジタル署名</strong>」を実現できます。<br />
文書にディジタル署名を添付すると、送信者に「なりすまし」がないことと、文書に「改ざん」がないことを検証できます。<br />
図4にディジタル署名の作成と検証の手順を示します。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">【図4】公開鍵暗号方式を応用したディジタル署名の仕組み</span></h3>
<p>①<span style="color: #4b0082;">送信者は、公開鍵と秘密鍵のペアを作成する。</span></p>
<p>②<span style="color: #4b0082;">送信者は、文書の「ハッシュ値（文書を構成するすべてのデータを使って作られた1つの値であり「メッセージダイジェスト」とも呼ばれる）」を求めて、それを自分の秘密鍵で暗号化する。これが、ディジタル署名である。</span></p>
<p>③<span style="color: #4b0082;">送信者は、文書（ここでは、文書は暗号化しません）、ディジタル署名（暗号化されたハッシュ値）、自分の公開鍵を、送信者に送る。</span></p>
<p>④<span style="color: #4b0082;">送信者は、受信した文書のハッシュ値を求め（ハッシュ値の計算方法は秘密ではありません）、さらにディジタル署名を送信者の公開鍵で復号した値（送信者が計算したハッシュ値）を得る。両者が一致したら、なりすましと改ざんがないことを検証できる。なぜなら、送信者しか知らない秘密鍵で暗号化したからこそ送信者の公開鍵で復号できたのであり、文書に改ざんがないからこそハッシュ値が一致したからである。</span>
</div>
<h2>暗号化に関する問題の攻略法（1）</h2>
<p>
暗号化に関する問題を見てみましょう。<br />
以下は、暗号方式の特徴に関するする問題（出典：H30秋問38）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：H30秋問38）</span></h3>
<p>共通鍵暗号方式の特徴はどれか。</p>
<p>ア　暗号化通信に使用する場合、鍵を相手と共有する必要があり、事前に平文で送付することが推奨されている。<br />
イ　暗号化通信をする相手が1人の場合、使用する鍵の個数は公開鍵暗号方式よりも多い。<br />
ウ　同じ程度の暗号強度をもつ鍵長を選んだ場合、公開鍵暗号方式と比較して、暗号化や複合に必要な時間が短い。<br />
エ　鍵のペアを生成し、一方の鍵で文書を暗号化すると、他方の鍵だけで複合することができる。
</p></div>
<p>
この問題の攻略法は、共通鍵暗号方式と公開鍵暗号方式の長所と短所を理解することです。<br />
暗号化に2つの方式があるのですから、それぞれに他方と比べて長所と短所があります。</p>
<p><span style="background-color: lightyellow;"><strong>共通鍵暗号方式</strong>には、鍵をネットワークで送れないという短所がありますが、計算が単純なので処理が速いという長所があります。</span><br />
<span style="background-color: lightyellow;"><strong>公開鍵暗号方式</strong>には、暗号化の鍵をネットワークで送れるという長所がありますが、計算が複雑なので処理が遅いという短所があります。</span>
</p>
<p>
事前に公開鍵をネットワークで送れるのは、共通鍵暗号方式ではなく、公開鍵暗号方式なので、選択肢アは不適切です。<br />
通信相手が1人の場合、共通鍵暗号式に必要な鍵は1つ（共通鍵）であり、公開鍵暗号方式に必要な鍵は2つ（公開鍵と秘密鍵）なので、選択肢イは不適切です。<br />
共通鍵暗号方式は、公開鍵暗号方式より計算が単純であり処理が速いので、選択肢ウは適切です。<br />
鍵のペアを作成するのは、共通鍵暗号方式ではなく公開鍵暗号方式なので、選択肢エは不適切です。</p>
<p>したがって、選択肢ウが正解です。
</p>
<h2>暗号化に関する問題の攻略法（2）</h2>
<p>
暗号化に関する問題を、もう1つ見てみましょう。<br />
以下は、公開鍵暗号方式を応用したディジタル署名の鍵の使い方に関する問題（出典：R01秋問38）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：R01秋問38）</span></h3>
<p>メッセージにRSA方式のディジタル署名を付与して2者間で送受信する。そのときのディジタル署名の検証鍵と使用方法はどれか。</p>
<p>ア　受信者の公開鍵であり，送信者がメッセージダイジェストからディジタル署名を作成する際に使用する。<br />
イ　受信者の秘密鍵であり，受信者がディジタル署名からメッセージダイジェストを算出する際に使用する。<br />
ウ　送信者の公開鍵であり，受信者がディジタル署名からメッセージダイジェストを算出する際に使用する。<br />
エ　送信者の秘密鍵であり，送信者がメッセージダイジェストからディジタル署名を作成する際に使用する。
</p></div>
<p>
この問題の攻略法は、公開鍵暗号方式における公開鍵と秘密鍵を誰が作り、どのように使うかを、丸暗記ではなく、きちんと理解することです。</p>
<p>暗号化では、文書の受信者が公開鍵と秘密鍵のペアを作りますが、ディジタル署名では、文書の送信者が公開鍵と秘密鍵のペアを作ります。<br />
なぜなら、送信者しか知らない秘密鍵で暗号化したからこそ送信者の公開鍵で復号できる、ということで、送信者本人である（なりすましがない）ことを検証するからです。<br />
ここを、きちんと理解してください。<br />
この問題では、検証を行う鍵を「検証鍵」と呼んでいます。</p>
<p>検証鍵は、送信者の公開鍵なので、選択肢ウが正解です。
</p>
<hr class="mag_tp50 mag_bt50" />
<p>
今回は、「暗号化」のポイントと攻略法を解説しました。<br />
このテーマが苦手だった受験者の参考になれば幸いです。
</p>
<p>
それでは、またお会いしましょう！
</p>
<style>
h4 {
  font-size: 1.1rem;
}
h3 + h4 {
  margin: 1em 0 1em;
}
div.card-panel {
  padding: 3rem;
}
@media screen and (orientation: portrait){
div.card-panel {
  padding: 2rem;
}
}
div.card-panel > h3 {
  font-size: 1.2em;
  padding-left: 1em;
  border-left: 5px solid #3f51b5;
}
div.card-panel > h3:first-of-type {
  margin-top: 0;
}
div.card-panel .chip {
    background-color: #3f51b5;
}
</style><p>The post <a href="https://fenavi.seplus.jp/strategy_guide/fe_strategy05/">暗号化｜つまづきやすいポイントと攻略法 徹底解説！</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>IPアドレス｜つまづきやすいポイントと攻略法 徹底解説！</title>
		<link>https://fenavi.seplus.jp/strategy_guide/fe_strategy04/</link>
		
		<dc:creator><![CDATA[矢沢 久雄]]></dc:creator>
		<pubDate>Tue, 24 Feb 2026 00:00:20 +0000</pubDate>
				<category><![CDATA[IPアドレス]]></category>
		<category><![CDATA[勉強方法]]></category>
		<category><![CDATA[合格方法]]></category>
		<category><![CDATA[学習方法]]></category>
		<category><![CDATA[過去問演習]]></category>
		<guid isPermaLink="false">/?post_type=strategy_guide&#038;p=8830</guid>

					<description><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。 毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。 今回のテーマはIPアドレスです。 IPアドレスの仕組み 「IPアドレス [&#8230;]</p>
<p>The post <a href="https://fenavi.seplus.jp/strategy_guide/fe_strategy04/">IPアドレス｜つまづきやすいポイントと攻略法 徹底解説！</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>
この連載は、基本情報技術者試験の受験者を対象としたものです。<br />
毎回1つのテーマにしぼって、多くの受験者がつまづきやすいポイントと攻略法を解説します。
</p>
<p>
今回のテーマは<span style="color: #4b0082;"><strong>IPアドレス</strong></span>です。
</p>
<h2>IPアドレスの仕組み</h2>
<p>
「IPアドレス」は、IP（Internet Protocol）を使った通信、つまり<span style="background-color: lightyellow;"><strong>インターネットで、コンピュータやルータなどの通信機器に割り当てられる識別番号</strong></span>です。<br />
IPアドレスには、従来から使われている「IPv4（version 4）アドレス」と、新たに使えるようになった「IPv6（version 6）アドレス」があります。<br />
試験には、IPv4アドレスに関する問題がよく出るので、これ以降ではIPv4アドレスだけを取り上げ、単にIPアドレスと呼びます。
</p>
<p>
IPアドレスは、全体で32ビットの2進数なのですが、32個も0と1を並べたのではわかりにくいので、32ビットを8ビットずつ4つの部分に分け、それぞれの部分を10進数にして、ドット（.）でつなぐ、という表記で示します。</p>
<p class="grey lighten-5 c-round" style="padding: 1em;">
【例】<br />
<strong><span style="color: #4b0082;">01101110111010001100010011101001</span>というIPアドレス</strong></span><br />
→8ビットずつ01101110、11101000、11000100、11101001という4つの部分に分け、それぞれを10進数の110、232、196、233にして、ドットでつないだ110.232.196.233という表記で示します。
</p>
<p>
インターネットは、ネットワークとネットワークの間をつなぐものです。<br />
ここで、ネットワークとは、企業内、オフィス内、家庭内などのLAN（Local Area Network）を意味します。<br />
IPアドレスは、<span style="color: #4b0082;"><strong>上位桁がネットワークを識別する「ネットワークアドレス」</strong></span>になっていて、<span style="color: #4b0082;"><strong>下位桁がホスト（コンピュータやルータなどの通信機器）を識別する「ホストアドレス」</strong></span>になっています。<br />
同じネットワーク内にあるホストのIPアドレスは、上位桁が同じで、下位桁が異なります。IPアドレスの上位桁と下位桁の区切りを示す方法は、すぐ後で説明します。
</p>
<h2>サブネットマスクの役割</h2>
<p>
IPアドレスの上位桁と下位桁の区切りを示す方法として<span style="color: #4b0082;"><strong>「サブネットマスク」</strong></span>があります。</p>
<p>サブネットとは、LAN全体もしくは、LANの中をいくつかのネットワークに区切ったものを意味します。<br />
サブネットマスクも、32ビットの2進数であり、IPアドレスと同様に、255.255.255.0のように表記します。<br />
サブネットマスクを2進数で示すと、11111111111111111111111100000000のように1の並びの後に0が並んだものになり、<span style="color: #4b0082;"><strong>1が並んだ部分が上位桁（ネットワークアドレス）</strong></span>であり、<span style="color: #4b0082;"><strong>0が並んだ部分が下位桁（ホストアドレス）</strong></span>であることを示します。</p>
<p>11111111111111111111111100000000は、上位24ビットがネットワークアドレスであり、下位8ビットがホストアドレスであることを示します。
</p>
<p>
たとえば、IPアドレスが110.232.196.233で、サブネットマスクが255.255.255.0なら、110.232.196までがネットワークアドレスで、残りの233がホストアドレスということになります。<br />
ただし、慣例として、ネットワークアドレスは、110.232.196.0のように、ホストアドレスの部分を0にして示します。</p>
<p>IPアドレスの上位桁と下位桁の区切りを示す別の方法として「CIDR（Classless Inter Domain Routing、サイダー）表記」もあります。<br />
これは、110.232.196.0/24のように、IPアドレスの末尾に「/上位桁数」を付加するという表記です。<br />
110.232.196.0/24は、上位24ビットがネットワークアドレスであることを示します。<br />
IPアドレスは、全体で32ビットなので、残りの32 ー 24 ＝ 8ビットがホストアドレスです。
</p>
<h2>ホストに割り当てられないアドレス</h2>
<p>
IPアドレスの下位桁は、ホストを識別するホストアドレスなのですが、2進数で示したときに、すべてが0になるアドレスと、すべてが1になるアドレスは、用途が決められているので、ホストに割り当てられません。</p>
<p>たとえば、ホストアドレスが8ビットなら、すべてが0の00000000（10進数で0）というアドレスと、すべてが1の11111111（10進数で255）というアドレスは、ホストに割り当てられません。</p>
<p>すべてが0のホストアドレスは、ネットワークアドレスを示すために使います。これは、先ほど「慣例として」と説明したことです。<br />
すべてが1のホストアドレスは、「ブロードキャストアドレス」を示すために使います。「ブロードキャスト（broadcast、一斉同報）」とは、同じネットワーク内にあるすべてのホストに同じデータを送ることです。ネットワークでは、ブロードキャストを行う場面がよくあるのです。
</p>
<p>
たとえば、IPアドレスが110.232.196.233で、サブネットマスクが255.255.255.0なら、110.232.196.0がネットワークアドレスを示し、110.232.196.255がブロードキャストアドレスを示します。<br />
8ビットで表せるアドレスは、全部で256通りありますが、それらの中でホストに割り当てられるのは、ネットワークアドレスとブロードキャストアドレスを除いた、256ー2＝254通りです。
</p>
<h2>IPアドレスに関する問題の攻略法（1）</h2>
<p>
IPアドレスに関する問題を見てみましょう。<br />
以下は、2つのIPアドレスが同一のサブネットかどうかを判断する問題（出典：H28秋問33）です。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：H28秋問33）</span></h3>
<p>2台のPCにIPv4アドレスを割り振りたい。サブネットマスクが 255.255.255.240 のとき、両PCのIPv4アドレスが同一サブネットに所属する組合せはどれか。</p>
<p>　ア　　192.168.1.14 と 192.168.1.17<br />
　イ　　192.168.1.17 と 192.168.1.29<br />
　ウ　　192.168.1.29 と 192.168.1.33<br />
　エ　　192.168.1.33 と 192.168.1.49
</p></div>
<p>この問題を攻略するには、IPアドレスの仕組みを知っていることはもちろんですが、10進数を2進数に変換する方法を知っていなければなりません。「10進数を2で割って余りを求めることを、商が0になるまで繰り返すと、変換後の2進数が下位桁から得られる」という方法がよく知られていますが、時間がかかるので面倒でしょう。<br />
IPアドレスのドットで区切られた個々の10進数は、2進数に変換すると8ビットになります。8ビット程度なら「8ビットの2進数の桁の重みを、変換前の10進数と同じ値になるまで上位桁から順に足していき、足した桁を1にして、足さなかった桁を0にすれば、変換後の2進数が得られる」という方法の方が、時間がかからないでしょう。8ビットの2進数の桁の重みは、「128 64 32 16 8 4 2 1」です。</p>
<p>実際にやってみましょう。</p>
<p class="grey lighten-5 c-round" style="padding: 1em;">
まず、<strong>255.255.255.240というサブネットマスクを2進数に変換</strong>します。<br />
↓<br />
255は、128＋64＋32＋16＋8＋4＋2＋1＝255なので、すべての桁が1の11111111です。<br />
サブネットマスクで255はよく出てくるので、<strong>「255は11111111だ」と覚えておくとよいでしょう。</strong><br />
↓<br />
240は、128＋64＋32＋16＝240になるので、「128 64 32 16」の桁を1にして、「8 4 2 1」の桁を0にした11110000です。<br />
↓<br />
以上のことから、<strong>255.255.255.240というサブネットマスクを2進数に変換すると11111111111111111111111111110000になる</strong>ので、<strong>上位28ビットがネットワークアドレスで下位4ビットがホストアドレスだとわかります</strong>。</p>
<p>この問題では、選択肢に示された2つのIPアドレスが同一サブネットに所属するものを答えます。<br />
同一サブネットに所属するなら、ネットワークアドレスが同じなので、上位28ビットが同じであるものを答えます。<br />
どの選択に示されたIPアドレスも192.168.1まで（上位24ビットまで）が同じなので、残りの部分の上位4ビットが同じものを答えればよいのです。<br />
10進数を2進数に変換して上位4ビットを比べてみましょう。</p>
<p>選択肢アの14と17は、14が8＋4＋2＝14なので<span style="background-color: lightgray;">0000</span>1110であり、17が16＋1＝17なので<span style="background-color: lightgray;">0001</span>0001であり、両者の上位4ビットが異なります。<br />
選択肢イの17と29は、17が16＋1＝17なので<span style="background-color: lightgray;">0001</span>0001であり、29が16＋8＋4＋1＝29なので<span style="background-color: lightgray;">0001</span>1101であり、両者の上位4ビットが同じです。したがって、選択肢イが正解です。</p>
<p>念のため、他の選択肢も確認しておきましょう。</p>
<p>選択肢ウの29と33は、29が16＋8＋4＋1＝29なので<span style="background-color: lightgray;">0001</span>1101であり、33が32＋1＝33なので<span style="background-color: lightgray;">0010</span>0001であり、両者の上位4ビットが異なります。<br />
選択肢エの33と49は、33が32＋1＝33なので<span style="background-color: lightgray;">0010</span>0001であり、49が32＋16＋1＝49なので<span style="background-color: lightgray;">0011</span>0001であり、両者の上位4ビットが異なります。</p>
<h2>IPアドレスに関する問題の攻略法（2）</h2>
<p>IPアドレスに関する問題を、もう1つ見てみましょう。<br />
以下は、接続可能なホストの数を求める問題（出典：H31春問32）です。</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：H31春問32）</span></h3>
<p>192.168.0.0/23（サブネットマスク 255.255.254.0）のIPv4ネットワークにおいて、ホストとして使用できるアドレスの個数の上限はどれか。</p>
<p>ア　23　　　　　　イ　24　　　　　　ウ　254　　　　　　エ　510　　　
</p></div>
<p>この問題を攻略するには、ここでもIPアドレスの仕組みを知っていることはもちろんですが、2進数のビット数に応じて何通りのパターンを表現できるかを判断できなければなりません。</p>
<p>1ビットで表せるのは「0」「1」の2通りです。<br />
2ビットで表せるのは「00」「01」「10」「11」の4通りです。<br />
3ビットで表せるのは「000」「001」「010」「011」「100」「101」「110」「111」の8通りです。<br />
このように、2進数で表せるパターンは、1ビット増えると2倍になります。</p>
<p>問題に示されたCIDR表記は、192.168.0.0/23なので、32ビットのIPアドレスの上位23ビットがネットワークアドレスであり、残りの32－23＝9ビットがホストアドレスです。<br />
9ビットで表せるのは、2×2×2×2×2×2×2×2×2＝512通りです。</p>
<p>これらの中で、すべてが0の000000000（ネットワークアドレスを示す）と、すべてが1の111111111（ブロードキャストアドレスを示す）の2通りはホストに割り当てられないので、それらを引いた512－2＝510通りが使えます。</p>
<p>したがって、選択肢エが正解です。</p>
<hr class="mag_tp50 mag_bt50" />
<p>今回は、「IPアドレス」のポイントと攻略法を解説しました。<br />
このテーマが苦手だった受験者の参考になれば幸いです。</p>
<p>それでは、またお会いしましょう！</p>
<style>
h4 {
  font-size: 1.1rem;
}
h3 + h4 {
  margin: 1em 0 1em;
}
div.card-panel {
  padding: 3rem;
}
@media screen and (orientation: portrait){
div.card-panel {
  padding: 2rem;
}
}
div.card-panel > h3 {
  font-size: 1.2em;
  padding-left: 1em;
  border-left: 5px solid #3f51b5;
}
div.card-panel > h3:first-of-type {
  margin-top: 0;
}
div.card-panel .chip {
    background-color: #3f51b5;
}
</style><p>The post <a href="https://fenavi.seplus.jp/strategy_guide/fe_strategy04/">IPアドレス｜つまづきやすいポイントと攻略法 徹底解説！</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>ファイアウォールの誤った変更を防ぐための改善策｜科目B情報セキュリティを解くための重要用語</title>
		<link>https://fenavi.seplus.jp/important_terms/keyword_5/</link>
		
		<dc:creator><![CDATA[矢沢 久雄]]></dc:creator>
		<pubDate>Tue, 20 May 2025 04:07:28 +0000</pubDate>
				<category><![CDATA[科目 B]]></category>
		<category><![CDATA[過去問演習]]></category>
		<guid isPermaLink="false">/?post_type=important_terms&#038;p=8627</guid>

					<description><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。 毎回1問ずつ、科目Bの情報セキュリティの問題を取り上げて、問題の中にある用語の意味と、問題の解き方を説明します。 用語の意味がわかれば、科目Bの情報セキュリテ [&#8230;]</p>
<p>The post <a href="https://fenavi.seplus.jp/important_terms/keyword_5/">ファイアウォールの誤った変更を防ぐための改善策｜科目B情報セキュリティを解くための重要用語</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>
この連載は、基本情報技術者試験の受験者を対象としたものです。</p>
<p>毎回1問ずつ、科目Bの情報セキュリティの問題を取り上げて、問題の中にある用語の意味と、問題の解き方を説明します。<br />
<span class="u">用語の意味がわかれば、科目Bの情報セキュリティの問題は、それほど難しくない</span>ということを知ってください。</p>
<h2>問題</h2>
<p>今回の問題は、<strong>ファイアウォールの誤った変更を防ぐための改善策</strong>がテーマです。</p>
<p>以下に問題を示しますので、本文、設問、選択肢に、ざっと目を通してください。<br />
後で用語の意味を説明してから、再度問題を見ていただきますので、今はざっとでOKです。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：2022年12月公開サンプル問題セット問20）</span></h3>
<p>A社は栄養補助食品を扱う従業員500 名の企業である。<br />
A社のサーバ及びファイアウォール（以下，FW という）を含む情報システムの運用は情報システム部が担当している。<br />
ある日，内部監査部の監査があり，FW の運用状況について情報システム部のB部長が図1のとおり説明したところ，表1に示す指摘を受けた。</p>
<figure style="display: block; width: 100%; max-width: 600px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2025/05/ba995defb7cd3c2bf5e1c8f69c6b9673.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<figure style="display: block; width: 100%; max-width: 600px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2025/05/df2141e42adceb6cad7a20fcdc1abbce.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>B部長は表1の指摘に対する改善策を検討することにした。</p>
<p>【<span class="bold">設問</span>】<br />
表1中の指摘1について，FWルールの誤った変更を防ぐための改善策はどれか。<br />
解答群のうち，最も適切なものを選べ。 </p>
<p>【<span class="bold">解答群</span>】<br />
ア Endpoint Detection and Response（EDR）をコンソールに導入し，監視を強化する。<br />
イ FWでの運用担当者のログインにはパスワード認証の代わりに多要素認証を導入する。<br />
ウ FWのアクセス制御機能を使って，運用担当者をコンソールからログインできる者，リモートからログインできる者に分ける。<br />
エ FWの運用担当者を1人に限定する。<br />
オ 運用担当者の一部を操作ログの確認だけをする者とし，それらの者には操作ログの確認権限だけを付与する。<br />
カ 運用担当者を，FWルールの編集を行う者，操作ログを確認し，操作承認をする者に分け，それぞれに必要最小限の権限を付与する。<br />
キ 作業を行う運用担当者を，曜日ごとに割り当てる。 </p>
</div>
<h2>問題の中にある用語の意味</h2>
<p>
以下に、今回の問題の中にある重要な用語の意味を示します。<br />
ここでは、用語の一般的な意味だけでなく、その用語から問題を読み取るポイントも示しています。<br />
用語の意味がわかったら、もう一度問題を読み直してください。きっとスラスラと理解できるはずです。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">ファイアウォール</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「ファイアウォール（firewall＝防火壁）」は、外部から自社ネットワークに入ってくるデータと、自社ネットワークから外部に出ていくデータの宛先と差出人を確認し、許可されているデータだけを通過させるシステムです。この問題では、A社のファイアウォールの運用状況に、セキュリティ上の問題があることがテーマになっています。</p>
<h3><span class="bold">ファイアウォールのルール</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「ファイアウォールのルール」とは、外部と自社ネットワークの間で、データの通過を許可するか禁止するかを取り決めたものです。この問題では、ファイアウォールの運用において、ルールの編集、操作ログの確認、ルールの確認および操作の認証、という業務があります。</p>
<h3><span class="bold">ファイアウォールのアクセス制御機能</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「ファイアウォールのアクセス制御機能」は、ファイアウォールが、ルールに従ってデータの通過を許可および禁止する機能です。</p>
<h3><span class="bold">操作ログ</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「操作ログ（log＝記録）」とは、システムを利用した記録のことです。多くの場合に、いつ、だれが、どのような操作をしたたが記録されます。この問題では、ファイアウォールのルールの編集などが、操作ログとして記録されます。</p>
<h3><span class="bold">ネットワークを経由せずコンソールでログイン</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「ネットワークを経由せずコンソールでログイン」とは、コンピュータに直接接続されているキーボードとディスプレイを使ってログインすることです。「コンソール（console＝操作卓）」とは、コンピュータを操作する装置（キーボードとディスプレイ）のことです。この問題では、ファイウォールの運用において、利用者IDごとにコンソールとリモートのどちらでログインできるかが設定でき、どちらログインしても、同一の機能を利用できます。</p>
<h3><span class="bold">ネットワークを経由してリモートからログイン</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「ネットワークを経由してリモートからログイン」とは、コンピュータに直接接続されているコンソールではなく、ネットワーク経由でログインすることです。この問題における注目点は、【操作ログ】で説明したことと同様です。</p>
<h3><span class="bold">Endpoint Detection and Response（EDR）</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「Endpoint Detection and Response（末端の検知と対応）」は、エンドポイント（ネットワークの末端に位置するサーバやPCなど）において、セキュリティの問題を検知して対応することです。この問題では、ファイアウォールの操作ログを使って検知と対応を行うことがEDRに該当します。</p>
<h3><span class="bold">多要素認証</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「多要素認証」は、パスワードだけでなく、生体認証やICカードなど、2つ以上の要素を使って本人の認証を行うことです。この問題では、ファイアウォールのログインにパスワードを使うとだけあるので、多要素認証は使われていません。</p>
</div>
<h2>問題の解き方</h2>
<p>
内部監査部からの指摘は「FWの運用の作業の中で、職務が適切に分離されていない」です（FWはファイアウォールの略称）。<br />
設問では「FWルールの誤った変更を防ぐための改善策」として最も適切なものを選択肢から選びます。</p>
<p>問題の図1に示された「FWの運用状況」の中で、職務が適切に分離されていないことが原因で、FWルールの誤った変更が生じることに関する記述は、「FWの機能には、FWルールの編集、操作ログの確認、及び操作承認の三つがある」および「現在は、6名の運用担当者とも全権限を付与されており、運用担当者はFWのルールの編集後、編集を行った運用担当者が操作に誤りがないことを確認し、操作承認をしている」です。</p>
<p>6名の運用担当者全員が、FWルールの編集、操作ログの確認、操作承認の全権限を持つので、同じ運用担当者が、自分で編集したFWルールを確認して承認するということもできてしまい、誤った変更が生じる可能性があります。</p>
<p>選択肢の中で、この問題の対策となるのは、選択肢カの「運用担当者を、FWルールの編集を行う者、操作ログを確認し、操作承認をする者に分け、それぞれに必要最小限の権限を付与する」です。</p>
<p>したがって、正解は、選択肢カです。</p>
<p>【正解】<br />
選択肢カ</p>
<hr class="mag_tp50 mag_bt50" />
<p>
もしも、今回の問題を見て「自分には用語の知識が不足している」と感じたなら、科目Bの問題だけでなく、科目A（および旧制度の午前試験）の問題も練習することをお勧めします。<br />
科目Aの問題の多くは、用語の意味をテーマにしているので、知識の補充ができるからです。</p>
<p>情報セキュリティの分野だけでなく、それに関連するネットワークやシステム構成要素の分野の問題も練習してください。</p>
<p>この連載は、今回で最終回です。<br />
これまで記事をお読みいただきました皆様に、この場をお借りして、厚く御礼申し上げます。</p>
<p>それでは、またどこかでお会いしましょう！
</p>
<style>
h4 {
  font-size: 1.1rem;
}
h3 + h4 {
  margin: 1em 0 1em;
}
div.card-panel {
  padding: 3rem;
}
@media screen and (orientation: portrait){
div.card-panel {
  padding: 2rem;
}
}
div.card-panel > h3 {
  font-size: 1.2em;
  padding-left: 1em;
  border-left: 5px solid #3f51b5;
}
div.card-panel > h3:first-of-type {
  margin-top: 0;
}
div.card-panel .chip {
    background-color: #3f51b5;
}
</style><p>The post <a href="https://fenavi.seplus.jp/important_terms/keyword_5/">ファイアウォールの誤った変更を防ぐための改善策｜科目B情報セキュリティを解くための重要用語</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>受注管理システムの操作権限｜科目B情報セキュリティを解くための重要用語</title>
		<link>https://fenavi.seplus.jp/important_terms/keyword_4/</link>
		
		<dc:creator><![CDATA[矢沢 久雄]]></dc:creator>
		<pubDate>Mon, 21 Apr 2025 00:55:23 +0000</pubDate>
				<category><![CDATA[科目 B]]></category>
		<category><![CDATA[過去問演習]]></category>
		<guid isPermaLink="false">/?post_type=important_terms&#038;p=8590</guid>

					<description><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。 毎回1問ずつ、科目Bの情報セキュリティの問題を取り上げて、問題の中にある用語の意味と、問題の解き方を説明します。 用語の意味がわかれば、科目Bの情報セキュリテ [&#8230;]</p>
<p>The post <a href="https://fenavi.seplus.jp/important_terms/keyword_4/">受注管理システムの操作権限｜科目B情報セキュリティを解くための重要用語</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>
この連載は、基本情報技術者試験の受験者を対象としたものです。</p>
<p>毎回1問ずつ、科目Bの情報セキュリティの問題を取り上げて、問題の中にある用語の意味と、問題の解き方を説明します。<br />
<span class="u">用語の意味がわかれば、科目Bの情報セキュリティの問題は、それほど難しくない</span>ということを知ってください。</p>
<h2>問題</h2>
<p>今回の問題は、<strong>受注管理システムの操作権限</strong>がテーマです。</p>
<p>以下に問題を示しますので、本文、設問、選択肢に、ざっと目を通してください。<br />
後で用語の意味を説明してから、再度問題を見ていただきますので、今はざっとでOKです。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：2022年12月公開サンプル問題セット問19）</span></h3>
<p>A社は従業員200名の通信販売業者である。一般消費者向けに生活雑貨，ギフト商品などの販売を手掛けている。取扱商品の一つである商品Zは，Z販売課が担当している。 </p>
<p>〔Z販売課の業務〕<br />
 現在，Z販売課の要員は，商品Zについての受注管理業務及び問合せ対応業務を行っている。商品Zについての受注管理業務の手順を図1に示す。 </p>
<figure style="display: block; width: 100%; max-width: 600px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2025/04/795316b92fc766b0181f6fef074f03fa.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>〔Jシステムの操作権限〕<br />
　Z販売課では，Jシステムについて，次の利用方針を定めている。<br />
 　［方針1］ ある利用者が入力した情報は，別の利用者が承認する。<br />
 　［方針2］ 販売責任者は，Z販売課の全業務の情報を閲覧できる。</p>
<p>Jシステムでは，業務上必要な操作権限を利用者に与える機能が実装されている。<br />
この度，商品Zの受注管理業務が受注増によって増えていることから，B社に一部を委託することにした（以下，商品Zの受注管理業務の入力作業を行うB社従業員を商品ZのB社販売担当者といい，商品ZのB社販売担当者の入力結果を閲覧して，不備があればA社に口頭で差戻しを依頼するB社従業員を商品ZのB社販売責任者という）。 </p>
<p>委託に当たって，Z販売課は情報システム部にJシステムに関する次の要求事項を伝えた。</p>
<p> 　［要求1］ B社が入力した場合は，A社が承認する。<br />
 　［要求2］ A社の販売担当者が入力した場合は，現状どおりにA社の販売責任者が承認する。 </p>
<p>上記を踏まえ，情報システム部は今後の各利用者に付与される操作権限を表1にまとめ，Z販売課の情報セキュリティリーダーであるCさんに確認をしてもらった。</p>
<figure style="display: block; width: 100%; max-width: 600px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2025/04/0161352a3d2ab457dfa6640c52a8eb52.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>【<span class="bold">設問</span>】</p>
<figure style="display: block; width: 100%; max-width: 600px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2025/04/ea902eb8beb4d725706957d314d97c63.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
</div>
<h2>問題の中にある用語の意味</h2>
<p>
以下に、今回の問題の中にある重要な用語の意味を示します。<br />
どれも、IT関連の特殊な用語ではなく、一般用語といえるものですが、この問題における意味を理解してください。<br />
そして、用語の意味がわかったら、もう一度問題を読み直してください。きっとスラスラと内容を読み取れるはずです。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">操作権限</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「操作権限」は、システムにどのような操作を行えるかということです。この問題では、受注管理システムの利用者ごとに、閲覧、入力、承認の権限が付与されます。</p>
<h3><span class="bold">入力</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「入力」は、システムに情報を登録することです。この問題では、A社の販売担当者、およびA社から委託を受けたB社の販売担当者が入力を行います。</p>
<h3><span class="bold">承認</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「承認」は、システムの操作内容に問題がないかどうかを確認することです。この問題では、入力の内容に問題がないかどうかを、A社の販売責任者が承認します。</p>
<h3><span class="bold">閲覧</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「閲覧」は、システムに登録されている情報を見ることです。この問題では、B社の販売担当者が入力した情報を、B社の販売責任者が閲覧して、不備があればA社に口頭で報告します。</p>
</div>
<h2>問題の解き方</h2>
<p>
空欄a1の選択肢には「Z販売課の販売責任者」「商品ZのB社販売責任者」「商品ZのB社販売担当者」があります。<br />
空欄a1には、Jシステムの閲覧の権限が付与されていますが、入力と承認の権限が付与されていません。<br />
「Z販売課の販売責任者」には、承認の権限を付与する必要があるので（「商品ZのB社販売責任者」には承認の権限はありません）、空欄a1は「商品ZのB社販売責任者」または「商品ZのB社販売担当者」です。</p>
<p>これで、正解を選択肢ウ、エ、オに絞り込めます。</p>
<p>空欄a2の選択肢ウは「Z販売課の販売責任者」、選択肢エは「商品ZのB社販売担当者」、選択肢オは「商品ZのB社販売責任者」です。<br />
空欄a2には、Jシステムの閲覧と入力の権限が付与されていますが、承認の権限が付与されません。</p>
<p>「Z販売課の販売責任者」には、承認の権限を付与する必要があるので、空欄bは選択肢ウの「Z販売課の販売責任者」ではありません。<br />
選択肢エの「商品ZのB社販売担当者」には、閲覧と入力の権限が必要です。<br />
選択肢オの「Z販売課の販売責任者」には、閲覧の権限だけが必要です。</p>
<p>したがって、空欄a2は選択肢エの「商品ZのB社販売担当者」であり、選択肢エが正解です。</p>
<p>【正解】<br />
選択肢エ</p>
<hr class="mag_tp50 mag_bt50" />
<p>
もしも、今回の問題を見て「自分には用語の知識が不足している」と感じたなら、科目Bの問題だけでなく、科目A（および旧制度の午前試験）の問題も練習することをお勧めします。<br />
科目Aの問題の多くは、用語の意味をテーマにしているので、知識の補充ができるからです。</p>
<p>情報セキュリティの分野だけでなく、それに関連するネットワークやシステム構成要素の分野の問題も練習してください。</p>
<p>それでは、またお会いしましょう！
</p>
<style>
h4 {
  font-size: 1.1rem;
}
h3 + h4 {
  margin: 1em 0 1em;
}
div.card-panel {
  padding: 3rem;
}
@media screen and (orientation: portrait){
div.card-panel {
  padding: 2rem;
}
}
div.card-panel > h3 {
  font-size: 1.2em;
  padding-left: 1em;
  border-left: 5px solid #3f51b5;
}
div.card-panel > h3:first-of-type {
  margin-top: 0;
}
div.card-panel .chip {
    background-color: #3f51b5;
}
</style><p>The post <a href="https://fenavi.seplus.jp/important_terms/keyword_4/">受注管理システムの操作権限｜科目B情報セキュリティを解くための重要用語</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>ECサイトの脆弱性に対処する組織｜科目B情報セキュリティを解くための重要用語</title>
		<link>https://fenavi.seplus.jp/important_terms/keyword_2/</link>
		
		<dc:creator><![CDATA[矢沢 久雄]]></dc:creator>
		<pubDate>Tue, 18 Feb 2025 04:00:02 +0000</pubDate>
				<category><![CDATA[科目 B]]></category>
		<category><![CDATA[過去問演習]]></category>
		<guid isPermaLink="false">/?post_type=important_terms&#038;p=8568</guid>

					<description><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。 毎回1問ずつ、科目Bの情報セキュリティの問題を取り上げて、問題の中にある用語の意味と、問題の解き方を説明します。 用語の意味がわかれば、科目Bの情報セキュリテ [&#8230;]</p>
<p>The post <a href="https://fenavi.seplus.jp/important_terms/keyword_2/">ECサイトの脆弱性に対処する組織｜科目B情報セキュリティを解くための重要用語</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>
この連載は、基本情報技術者試験の受験者を対象としたものです。</p>
<p>毎回1問ずつ、科目Bの情報セキュリティの問題を取り上げて、問題の中にある用語の意味と、問題の解き方を説明します。<br />
用語の意味がわかれば、科目Bの情報セキュリティの問題は、それほど難しくない、ということを知ってください。</p>
<h2>問題</h2>
<p>今回の問題は、<strong>ECサイトの脆弱性に対処する組織</strong>がテーマです。</p>
<p>以下に問題を示しますので、本文、設問、選択肢に、ざっと目を通してください。<br />
後で用語の意味を説明してから、再度問題を見ていただきますので、今はざっとでOKです。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：2022年12月公開サンプル問題セット問17）</span></h3>
<p>
製造業のA社では，ECサイト（以下，A社のECサイトをAサイトという）を使用し，個人向けの製品販売を行っている。<br />
Aサイトは，A社の製品やサービスが検索可能で，ログイン機能を有しており，あらかじめAサイトに利用登録した個人（以下，会員という）の氏名やメールアドレスといった情報（以下，会員情報という）を管理している。Aサイトは，B社のPaaSで稼働しており，PaaS上のDBMSとアプリケーションサーバを利用している。</p>
<p>A社は，Aサイトの開発，運用をC社に委託している。A社とC社との間の委託契約では，Web アプリケーションプログラムの脆弱性対策は，C社が実施するとしている。</p>
<p>最近，A社の同業他社が運営しているWebサイトで脆弱性が悪用され，個人情報が漏えいするという事件が発生した。そこでA社は，セキュリティ診断サービスを行っているD社に，Aサイトの脆弱性診断を依頼した。脆弱性診断の結果，対策が必要なセキュリティ上の脆弱性が複数指摘された。図1にD社からの指摘事項を示す。</p>
<figure style="display: block; width: 100%; max-width: 600px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2025/02/795316b92fc766b0181f6fef074f03fa.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>【<span class="bold">設問</span>】<br />
図1中の各項番それぞれに対処する組織の適切な組合せを，解答群の中から選べ。</p>
<p>【<span class="bold">解答群</span>】</p>
<figure style="display: block; width: 100%; max-width: 400px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2025/02/49124b861ac7453524c56d19d1e52ef9.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
</div>
<h2>問題の中にある用語の意味</h2>
<p>
以下に、今回の問題中にある重要な用語の意味を示します。</p>
<p>ここでは、用語の一般的な意味だけでなく、その用語から問題を読み取るポイントも示しています。<br />
用語の意味がわかったら、もう一度問題を読み直してください。きっとスラスラと理解できるはずです。
</p>
<p>
各社の役割を整理すると、以下になります。・・・用語の説明の「この問題では」に記述
</p>
<p class="grey lighten-5 c-round" style="padding: 1em;">
A社・・・Aサイト（ECサイト）を使って個人向けの商品販売をします。<br />
B社・・・PaaSを提供します。Aサイトは、PaaS上のDBMSとアプリケーションサーバを利用します。<br />
ここで、注意してほしいのは、PaaSは、ハードウェア、OS、ミドルウェア（DBMSとアプリケーションサーバ）を提供しますが、アプリケーションは提供しないことです。<br />
C社・・・Aサイトの開発と運営を委託され、Webアプリケーションの脆弱性対策は、C社が実施する契約になっています。<br />
D社・・・Aサイトの脆弱性診断をします。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">ECサイト</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「EC（Electric Commerce＝電子商取引）サイト」は、自社の製品やサービスをインターネット上で販売するためのWebサイトです。この問題では、ECサイトであることは、設問には関係ありません。</p>
<h3><span class="bold">脆弱性</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「脆弱性」は、プログラムに欠陥や不具合があることが原因で、外部からの攻撃を防げないことです。「セキュリティホール（セキュリティ上の欠陥）」とも呼ばれます。この問題では、OS、DBMS、Aサイトに脆弱性があります。</p>
<h3><span class="bold">OS</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「OS（Operating System）」は、コンピュータを操作するための基本機能を提供するソフトウェアです。OSの上で動作するソフトウェアをアプリケーションと呼びます。この問題では、OSがPaaSとして提供されています。したがって、OSの脆弱性は、PaaSを提供している組織が対処するべきです。PaaSという用語の意味は、後で説明します。</p>
<h3><span class="bold">DBMS</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「DBMS（Data Base Management System）」は、データベースの機能を提供するソフトウェアです。DBMSは、OSでもなく、アプリケーションでもなく、それらの間に存在するものなので、「ミドルウェア」と呼ばれます。この問題では、DBMSがPaaSとして提供されています。したがって、DBMSの脆弱性は、PaaSを提供している組織が対処するべきです。</p>
<h3><span class="bold">アプリケーションサーバ</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「アプリケーションサーバ」は、アプリケーションを実行する機能を持ったサーバです。DBMSと同様に、アプリケーションサーバもミドルウェアです。この問題では、アプリケーションサーバがPaaSとして提供されています。したがって、アプリケーションサーバの脆弱性は、PaaSを提供している組織が対処するべきです。</p>
<h3><span class="bold">PaaS</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「PaaS（Platform as a Service）」は、アプリケーションを実行するための土台となるハードウェア、OS、ミドルウェア（DBMSやアプリケーションサーバなど）を、ネットワーク上のサービスとして提供します（アプリケーションは提供しません）。この問題では、B社のPaaSを使って、A社のECサイト（Webアプリケーション）を稼働させています。したがって、PaaSに関する脆弱性は、PaaSを提供しているB社が対処するべきです。</p>
<h3><span class="bold">クロスサイトスクリプティング</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;"><span class="chip mag_rt10 white-text">意味</span>「クロスサイトスクリプティング」は、悪意のあるWebサイトを経由して、脆弱性のあるWebサイトに接続し、そこで悪意のあるスクリプト（HTMLやプログラム）を実行する攻撃です。この問題では、Aサイト（アプリ）にクロスサイトスクリプティングの脆弱性があります。</p>
</div>
<h2>問題の解き方</h2>
<p>
この手の問題を解くときには、常識的に考える、ということが重要です。<br />
常識的に考えて、問題の項番1、2、3に示された脆弱性に対処する組織は、それらを提供している組織、または、それぞれの対処を実施することを契約している組織でしょう。</p>
<p>項番1のOSの既知の脆弱性に対処するのは、OSがPaaSとして提供されるので、PaaSを提供しているB社です。</p>
<p>項番2のクロスサイトスクリプティングの脆弱性に対処するのは、クロスサイトスクリプティングがWebアプリケーション（ここではAサイト）に対する攻撃なので、委託契約でWebアプリケーションの脆弱性対策を実施することになっているC社です。</p>
<p>項番3のDBMSの既知の脆弱性に対処するのは、DBMSがPaaSとして提供されているので、PaaSを提供しているB社です。</p>
<p>以上のことから、選択肢カが正解です。
</p>
<p>【正解】<br />
選択肢カ</p>
<hr class="mag_tp50 mag_bt50" />
<p>
もしも、今回の問題を見て「自分には用語の知識が不足している」と感じたなら、科目Bの問題だけでなく、科目A（および旧制度の午前試験）の問題も練習することをお勧めします。<br />
科目Aの問題の多くは、用語の意味をテーマにしているので、知識の補充ができるからです。</p>
<p>情報セキュリティの分野だけでなく、それに関連するネットワークやシステム構成要素の分野の問題も練習してください。</p>
<p>それでは、またお会いしましょう！
</p>
<style>
h4 {
  font-size: 1.1rem;
}
h3 + h4 {
  margin: 1em 0 1em;
}
div.card-panel {
  padding: 3rem;
}
@media screen and (orientation: portrait){
div.card-panel {
  padding: 2rem;
}
}
div.card-panel > h3 {
  font-size: 1.2em;
  padding-left: 1em;
  border-left: 5px solid #3f51b5;
}
div.card-panel > h3:first-of-type {
  margin-top: 0;
}
div.card-panel .chip {
    background-color: #3f51b5;
}
</style><p>The post <a href="https://fenavi.seplus.jp/important_terms/keyword_2/">ECサイトの脆弱性に対処する組織｜科目B情報セキュリティを解くための重要用語</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>委託業務での情報セキュリティリスク｜科目B情報セキュリティを解くための重要用語</title>
		<link>https://fenavi.seplus.jp/important_terms/keyword_1/</link>
		
		<dc:creator><![CDATA[矢沢 久雄]]></dc:creator>
		<pubDate>Mon, 27 Jan 2025 06:00:48 +0000</pubDate>
				<category><![CDATA[科目 B]]></category>
		<category><![CDATA[過去問演習]]></category>
		<guid isPermaLink="false">/?post_type=important_terms&#038;p=8551</guid>

					<description><![CDATA[<p>この連載は、基本情報技術者試験の受験者を対象としたものです。 毎回1問ずつ、科目Bの情報セキュリティの問題を取り上げて、問題の中にある用語の意味と、問題の解き方を説明します。 用語の意味がわかれば、科目Bの情報セキュリテ [&#8230;]</p>
<p>The post <a href="https://fenavi.seplus.jp/important_terms/keyword_1/">委託業務での情報セキュリティリスク｜科目B情報セキュリティを解くための重要用語</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>
この連載は、基本情報技術者試験の受験者を対象としたものです。</p>
<p>毎回1問ずつ、科目Bの情報セキュリティの問題を取り上げて、問題の中にある用語の意味と、問題の解き方を説明します。<br />
用語の意味がわかれば、科目Bの情報セキュリティの問題は、それほど難しくない、ということを知ってください。
</p>
<h2>問題</h2>
<p>
今回の問題は、<strong>委託業務での情報セキュリティリスク</strong>がテーマです。</p>
<p>以下に問題を示しますので、本文、設問、選択肢に、ざっと目を通してください。<br />
後で用語の意味を説明してから、再度問題を見ていただきますので、今はざっとでOKです。
</p>
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">問題（出典：令和5年度公開問題問6）</span></h3>
<p>A社は，放送会社や運輸会社向けに広告制作ビジネスを展開している。<br />
A社は，人事業務の効率化を図るべく，人事業務の委託を検討することにした。<br />
A社が委託する業務（以下，B業務という）を図1に示す。 </p>
<figure style="display: block; width: 100%; max-width: 700px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2025/01/795316b92fc766b0181f6fef074f03fa.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>委託先候補のC社は，B業務について，次のようにA社に提案した。<br />
　・B業務だけに従事する専任の従業員を割り当てる。<br />
　・B業務では，図2の複合機のスキャン機能を使用する。</p>
<figure style="display: block; width: 100%; max-width: 700px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2025/01/2b530e80c7d0de90885e285c5d798063.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>A社は，C社と業務委託契約を締結する前に，秘密保持契約を締結した。<br />
その後，C社に質問表を送付し，回答を受けて，業務委託での情報セキュリティリスクの評価を実施した。<br />
その結果，図3の発見があった。 </p>
<figure style="display: block; width: 100%; max-width: 700px; margin: 0 auto;">
<div class="material-placeholder">
    <img decoding="async" src="/wordpress/wp-content/uploads/2025/01/c8856789ec11ab8b1013037cef6929f9.jpg" alt="" style="width: 100%; height: auto; display: block;" />
  </div>
</figure>
<p>そこで，A社では，初期設定の状態のままではA社にとって情報セキュリティリスクがあり，初期設定から変更するという対策が必要であると評価した。</p>
<p>　<br />
【<span class="bold">設問</span>】<br />
対策が必要であるとA社が評価した情報セキュリティリスクはどれか。<br />
解答群のうち，最も適切なものを選べ。</p>
<p>　<br />
【<span class="bold">解答群</span>】</p>
<p>　ア　：　B業務に従事する従業員が，攻撃者からの電子メールを複合機からのものと信じて本文中にあるURLをクリックし，フィッシングサイトに誘導される。その結果，A社の採用予定者の個人情報が漏えいする。</p>
<p>　イ　：　B業務に従事する従業員が，複合機から送信される電子メールをスパムメールと誤認し，電子メールを削除する。その結果，再スキャンが必要となり，B業務が遅延する。</p>
<p>　ウ　：　攻撃者が，複合機から送信される電子メールを盗聴し，添付ファイルを暗号化して身代金を要求する。その結果，A社が復号鍵を受け取るために多額の身代金を支払うことになる。</p>
<p>　エ　：　攻撃者が，複合機から送信される電子メールを盗聴し，本文に記載されているURLを使ってBサーバにアクセスする。その結果，A社の採用予定者の個人情報が漏えいする。 </p>
</div>
<h2>問題の中にある用語の意味</h2>
<p>
以下に、今回の問題中にある重要な用語の意味を示します。</p>
<p>ここでは、用語の一般的な意味だけでなく、その用語から問題を読み取るポイントも示しています。<br />
用語の意味がわかったら、もう一度問題を読み直してください。きっとスラスラと理解できるはずです。
</p>
<div class="card-panel mag_h30 c-round">
<h3><span class="bold">ファイルサーバ</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;">
<span class="chip mag_rt10 white-text">意味</span>「ファイルサーバ」は、ファイルの保存を行えるサーバです。この問題では、複合機でスキャンして作成されたPDFファイルを、メールに添付して利用者に送りますが、ファイルのサイズが大きい場合は、それをファイサーバに保存し、保存先のURLを利用者にメールで知らせます。
</p>
<h3><span class="bold">複合機</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;">
<span class="chip mag_rt10 white-text">意味</span>「複合機」は、コピー、スキャナ、FAXなど、1台で複数の機能を持った事務機です。この問題の複合機には、スキャンして作成されたPDFファイルをファイルサーバに保存する機能や、PDFファイルをメールに添付して送る機能があります。
</p>
<h3><span class="bold">URL</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;">
<span class="chip mag_rt10 white-text">意味</span>「URL（Uniform Resource Locator）」は、ネットワーク上にあるデータの場所を示す統一的な書式の文字列です。代表的なURLには、「www.seplus.jp/index.html」のようにWebサイトのHTMLファイルの場所を示すものがあります。この問題では、ファイルサーバに保存されたPDFファイルのURLが、利用者にメールで知らされます。そのURLをクリックすれば、ファイルサーバのダウンロードページに移動して、PDFファイルを入手できるのでしょう。
</p>
<h3><span class="bold">フィッシングサイト</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;">
<span class="chip mag_rt10 white-text">意味</span>「フィッシング」は、「魚釣り」を意味するfishingと、「洗練された」を意味するsophisticatedを組合せた造語だといわれています（他の説もあります）。偽のメールで、本物ソックリの偽のWebページ（これが「フィッシングサイト」です）に誘導して、そのWebページを操作した利用者の情報を盗みます。この問題では、ファイルサーバの偽のダウンロードページに誘導して、利用者にIDとパスワードを入力させて、それらを盗むのでしょう。
</p>
<h3><span class="bold">スパムメール</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;">
<span class="chip mag_rt10 white-text">意味</span>「スパムメール」とは、勝手に送られてくる迷惑メールのことです。英国のテレビのコメディ番組で「スパム」という言葉を何度も連呼して相手を困らせる、という場面があったことが由来だといわれています。この問題では、複合機の利用者に偽のメールが送られてきますが、その目的は、フィッシングサイトに誘導して情報を盗むことであり、何度もメールを送って迷惑をかけることはないので、スパムメールとはいえないでしょう。
</p>
<h3><span class="bold">復号鍵</span></h3>
<p class="grey lighten-5 c-round" style="padding: 1em;">
<span class="chip mag_rt10 white-text">意味</span>平文を暗号文にすることを「暗号化」と呼び、暗号文を平文に戻すことを「復号」と呼びます。暗号化と復号の演算で使われる数値を「鍵」と呼びます。暗号化で使われる鍵を「暗号鍵」と呼び、復号で使われる鍵を「復号鍵」と呼びます。この問題の選択肢では、重要なデータを勝手に暗号化して、復号鍵を得るための身代金を要求する、という攻撃手法が示されています。ただし、それに関する記述は、問題の本文にはありません。
</p>
</div>
<h2>問題の解き方</h2>
<p>
A社では、初期設定の状態のままでは情報セキュリティリスクがあり、初期設定を変更する対策が必要であると評価しています。</p>
<p>この問題では、選択肢に示された文書の中から、対策が必要であるとA社が評価した情報セキュリティリスクとして最も適切なものを選びます。<br />
用語の意味がわかって、問題の内容を理解できたら、それぞれの選択肢が適切か不適切かを判断できるでしょう。
</p>
<p>
図3に示された発見事項を見ると、誰がスキャンを実行しても、電子メールの差出人アドレス、件名、本文、および添付ファイル名が初期設定のままであり、さらに、初期設定の情報がベンダーのWebサイトで公開されているので誰でも閲覧できる、とあります。</p>
<p>このことから、<span class="u">初期設定の状態のままでは、攻撃者が複合機になりすまして電子メールを利用者に送り、そこにあるURLをクリックさせて悪意のあるWebサイトに誘導するリスクがあります。</span></p>
<p>したがって、「攻撃者からの電子メールを複合機からのものと信じて本文中にあるURLをクリックし、フィッシングサイトに誘導される」という選択肢アは適切です。</p>
<p>攻撃者が送るメールは、スパムメールを目的としたものではないので、選択肢イは不適切です。<br />
添付ファイルを暗号化して身代金を要求するという記述はないので、選択肢ウは不適切です。<br />
攻撃者が複合機から送信されるメールを盗聴するという記述はないので、選択肢エは不適切です。</p>
<p>【正解】<br />
選択肢ア</p>
<hr class="mag_tp50 mag_bt50">
<p>
もしも、今回の問題を見て「自分には用語の知識が不足している」と感じたなら、科目Bの問題だけでなく、科目A（および旧制度の午前試験）の問題も練習することをお勧めします。<br />
科目Aの問題の多くは、用語の意味をテーマにしているので、知識の補充ができるからです。</p>
<p>情報セキュリティの分野だけでなく、それに関連するネットワークやシステム構成要素の分野の問題も練習してください。</p>
<p>それでは、またお会いしましょう！
</p>
<style>
h4 {
  font-size: 1.1rem;
}
h3 + h4 {
  margin: 1em 0 1em;
}
div.card-panel {
  padding: 3rem;
}
@media screen and (orientation: portrait){
div.card-panel {
  padding: 2rem;
}
}
div.card-panel > h3 {
  font-size: 1.2em;
  padding-left: 1em;
  border-left: 5px solid #3f51b5;
}
div.card-panel > h3:first-of-type {
  margin-top: 0;
}
div.card-panel .chip {
    background-color: #3f51b5;
}
</style><p>The post <a href="https://fenavi.seplus.jp/important_terms/keyword_1/">委託業務での情報セキュリティリスク｜科目B情報セキュリティを解くための重要用語</a> first appeared on <a href="https://fenavi.seplus.jp">基本情報技術者試験 受験ナビ｜科目A・科目B対策から過去問解説まで 250本以上の記事を掲載</a>.</p>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
