第7章 プログラミング・セキュリティ・AI運用
DS検定のITセキュリティの整理|3要素・暗号化・電子署名
DS検定のスキルチェックリストの第7章には「ITセキュリティ」があり、機密性、完全性、可用性、暗号化、電子署名、公開鍵暗号化方式、秘密鍵、ハッシュ関数、OAuth、アクセストークンなどがキーワードに並びます。この分野は、被害の形から3要素に振り分ける問題と、鍵を使う向きを取り違えさせる問題に分けて整理すると、混ざりにくくなります。
このページは、NISTの用語集、NIST FIPS 186-5、RFC 6749の記述を読み直し、選択肢で間違えやすい点だけを取り出しています。
この記事の目次
公式情報の確認
試験日、料金、申込条件、試験方式など変動する情報は、公式情報を最終確認してください。 当サイトの一次情報確認日: 2026-10-02。
試験の出題範囲・実施要項は変動するため、受験前に公式情報を確認してください。
結論
- 機密性は漏洩の防止、完全性は改ざんや破壊の防止、可用性は必要なときに使えること
- 公開鍵暗号では、公開鍵で暗号化し、秘密鍵で復号する
- 電子署名では向きが逆で、秘密鍵で署名を作り、公開鍵で検証する
- ハッシュ関数は、任意の長さの入力を固定長の出力に写す関数で、出力から入力を求めることは計算上できないとされる
- OAuthは、第三者のアプリに限定的なアクセスを任せる認可の枠組みで、アクセストークンはその認可を表す文字列
ITセキュリティの中身
第7章のキーワード欄を、次の3つのまとまりに分けて読みます。右端は、このページで確認した要点です。
| まとまり | キーワード欄の主な語 | 要点 |
|---|---|---|
| 情報セキュリティの3要素 | 機密性、完全性、可用性、アクセスレベル | 守る対象を3つの性質に分けて読む。どの被害がどの性質に当たるかを問う形が多い |
| 暗号と署名 | 暗号化、電子署名、公開鍵暗号化方式、秘密鍵、ハッシュ関数 | 暗号化と署名では、公開鍵と秘密鍵を使う向きが逆 |
| 認可の仕組み | OAuth、アクセストークン | パスワードを渡さずに、限定した範囲のアクセスだけを第三者のアプリに任せる仕組み |
第2章には、マルウェア、消失、漏洩、サービスの停止といった脅威の語もあります。章全体の位置づけは出題範囲の整理のページ、データの置き場所の用語はデータ基盤の比較のページにあります。
機密性・完全性・可用性
NISTの用語集は、3つの性質を次のように定義しています。選択肢では、被害の例がどの性質に当たるかを答える形が考えられるため、右端の被害の形とセットで覚えます。
| 性質 | NISTの定義 | 防ぐ被害の形 |
|---|---|---|
| 機密性Confidentiality | 情報へのアクセスと開示について、許可された範囲の制限を保つこと。個人のプライバシーや企業の秘密情報の保護を含む | 情報の漏洩を防ぐ |
| 完全性Integrity | 不適切な改変や破壊から情報を守ること。情報の否認防止(あとから否定されないこと)と真正性の確保を含む | 情報の改ざんを防ぐ |
| 可用性Availability | 情報へのアクセスと利用が、必要なときにタイムリーかつ確実にできること | サービスの停止を防ぐ |
右端の「防ぐ被害の形」は、定義から導いたこのページの整理です。1つの事故が複数の性質に関わることもあります。単独の用語解説は機密性、完全性、可用性にあります。
出典: NIST コンピュータセキュリティ用語集「Confidentiality」「Integrity」「Availability」
公開鍵と秘密鍵の向き
英語版Wikipediaの「Public-key cryptography」は、公開鍵方式では公開鍵を広く配ってよく、対応する秘密鍵だけを秘密に保てばよいと説明します。暗号化と電子署名では、鍵を使う向きが逆になります。
| 用途 | 作る側 | 読む・確かめる側 |
|---|---|---|
| 暗号化(公開鍵暗号) | 誰でも公開鍵で暗号化できる | 対になる秘密鍵の持ち主だけが復号できる |
| 電子署名 | 送り手が秘密鍵とメッセージから署名を作る | 対応する公開鍵を持つ人なら誰でも、署名がメッセージと合うか検証できる |
- 共通鍵方式は、送り手と受け手が同じ鍵を使い、両者がその鍵を秘密に保つ必要がある。1970年代半ばより前の暗号方式は、すべてこの方式だったと説明されている
- NIST FIPS 186-5は、デジタル署名を、データの不正な変更の検出と署名者の真正性の確認に使うと述べる
- 署名を偽造しようとする人は、秘密鍵を知らない限り、公開鍵での検証を通る組み合わせを作れない
出典: 英語版Wikipedia「Public-key cryptography」、NIST FIPS 186-5
ハッシュ関数
NISTの用語集は、ハッシュ関数を、任意の長さのビット列を固定長のビット列に写す関数と定義します。暗号化とは違い、鍵で元に戻すことを目的にしていません。
- 衝突耐性:同じ出力になる、異なる2つの入力を見つけることが計算上不可能であること
- 原像計算困難性(一方向性):ランダムに選んだ出力に対して、その出力になる入力を見つけることが計算上不可能であること
- 第二原像計算困難性:ある入力が与えられたとき、同じ出力になる別の入力を見つけることが計算上不可能であること
用語の単独の解説はハッシュ関数にあります。
出典: NIST コンピュータセキュリティ用語集「Hash function」
OAuthとアクセストークン
RFC 6749の冒頭は、OAuth 2.0を、第三者のアプリがHTTPサービスへ限定的なアクセスを得られるようにする認可の枠組みと説明します。 資源の持ち主とHTTPサービスのあいだで承認のやり取りを仲立ちして、持ち主に代わってアクセスする方法と、第三者のアプリが自分自身としてアクセスする方法の2つが書かれています。
- アクセストークンは、保護された資源にアクセスするための資格情報
- アクセストークンは、クライアントに対して発行された認可を表す文字列で、通常はクライアントから見て中身が読めない形をとる。
出典: RFC 6749(The OAuth 2.0 Authorization Framework)の要旨と1.4節
選択肢の読み方
資料の記載から、選択肢を次のように読みます。
- 「サービスの停止は、機密性を損なう被害である」は、必要なときに使えることを指す可用性の定義と合わない
- 「電子署名は、公開鍵で署名を作り、秘密鍵で検証する」は、秘密鍵で署名を作り公開鍵で検証するという説明と逆
- 「ハッシュ関数は、出力から元の入力を復元するための関数である」は、原像計算困難性(一方向性)と合わない
- 「アクセストークンは、パスワードそのものである」は、クライアントに発行された認可を表す文字列という定義と合わない
ここで挙げた読み方は、一次資料の記載から導いたこのページの整理で、出題を予想するものではありません。
DS検定の学習に使う書籍(Amazon)
試験範囲を通して読むときの1冊です。読んだ章は、このサイトの章別問題で確かめられます。
よくある質問
機密性・完全性・可用性は、どう覚え分ければよいですか?
被害の形で分けると読みやすくなります。見てはいけない人に見られる(漏洩)は機密性、書き換えられる(改ざん)は完全性、使いたいときに使えない(サービスの停止)は可用性です。NISTの用語集は、完全性に「不適切な改変または破壊」からの保護を含めています。
共通鍵暗号と公開鍵暗号の違いは何ですか?
英語版Wikipediaによると、共通鍵方式は送り手と受け手が同じ鍵を使い、両者がその鍵を秘密に保つ必要があります。公開鍵方式は、公開鍵を広く配ってよく、対応する秘密鍵だけを秘密に保てばよい方式です。
電子署名は、メッセージを暗号化して隠す技術ですか?
目的が違います。NIST FIPS 186-5によると、デジタル署名はデータの不正な変更の検出と、署名者の真正性の確認に使います。鍵の使い方について、英語版Wikipediaは、送り手が秘密鍵とメッセージから署名を作り、対応する公開鍵を持つ人が検証できると説明します。
ハッシュ関数と暗号化は同じものですか?
同じではありません。NISTの用語集の定義の一つは、ハッシュ関数を、任意の長さのビット列を固定長のビット列に写す関数としています。そのうえで備えるべき性質に、衝突耐性、原像計算困難性(一方向性)、第二原像計算困難性を挙げます。出力から元の入力を求めることが計算上不可能であるべきとされ、鍵で元に戻す暗号化とは性格が違います。
OAuthとアクセストークンは、何を実現する仕組みですか?
RFC 6749は、OAuth 2.0を、第三者のアプリがHTTPサービスへ限定的なアクセスを得るための認可の枠組みと説明します。アクセストークンは、保護された資源へアクセスするための資格情報で、クライアントに対して発行された認可を表す文字列です。
