情報処理安全確保支援士暗記無料で始める

連想配列(マップ・辞書)とは?れんそうはいれつ

連想配列(マップ・辞書)とは、整数の添字ではなく、文字列などの任意の値を鍵として要素を出し入れできるデータ構造。鍵と値の組を保持し、同じ鍵を重複して持つことはできない。内部の実装はハッシュ表か平衡二分探索木で、ハッシュ表であれば平均的に一定時間で目的の値を参照できる。ハッシュ表と平衡木では、順序が保たれるかどうかが違う。

最終更新:2026-10-06

試験情報

情報処理安全確保支援士試験の頻出用語/午前II

別名:マップ・辞書、マップ

情報処理安全確保支援士を最短で暗記・合格する →

背景

配列は添字が連続した整数であることを前提にするため、「単語」「IPアドレス」「セッションID」のような値をそのまま索引にできず、対応表を自前で用意する必要があった。この手間を言語側の基本データ構造として吸収したのがこの仕組みで、ログの集計やセッション管理の実装が数行で書けるようになり、Webアプリの内部で広く使われている。

具体例

アクセスログから送信元IPごとの認証失敗回数を数える処理は、IPアドレスを鍵にして値を1ずつ増やすだけで書ける。一定時間内に閾値を超えた鍵を抜き出せば、そのままブルートフォース攻撃の検知になる。Webアプリのセッション管理も、セッションIDを鍵に利用者情報を引く連想配列とみなせる。

試験での引っ掛け

「配列」と名は付くが、取り出す順序が登録順にも鍵の昇順にも並ぶとは限らない点が引っ掛けになる。ハッシュ表による実装では衝突が集中すると参照が最悪で線形時間まで悪化し、外部から鍵を自由に指定できる箇所では、意図的に衝突を起こして負荷をかけるHashDoSにつながる。

関連用語

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

情報処理安全確保支援士を最短で暗記・合格する →

試験での特徴
  • 分野:午前II
  • 「配列」と名は付くが、取り出す順序が登録順にも鍵の昇順にも並ぶとは限らない点が引っ掛けになる。