※2024/5/14更新
※ 本記事では、基本情報技術者試験の対策として私が勉強したことを備忘録的にまとめておきたいと思います。
少しでも参考になれば嬉しいです。
はじめに
さて今回は、基本情報対策としてディジタル署名についてまとめます。
ネットワーク上でデータをやり取りする以上、そのデータが改ざんされていないかどうかを確認することはとても大切です。
そのために使われている技術がディジタル署名と呼ばれるものです。
基本情報の試験対策では、どのようにしてディジタル署名を作成し、どのようにしてデータ改ざんをチェックするのかを理解しておくことが大切です。
図を入れてイメージしやすくしているので、これを機会に覚えましょう。
ちなみに私はこの参考書を使って勉強してました。
漫画形式で読みやすく、分かりやすい内容になっているため、無理なく学習を進められると思います。
過去問を解きまくり、不明点があれば参考書で知識を補う、このサイクルで試験対策するのが私のオススメです!
最新版はこちらです。
少し内容が異なる部分もあるかもしれませんが、大まかには変わらないはずですので、安心して下さい。
ディジタル署名とデータ改ざんチェック
ディジタル署名とは??
最初にもお話しましたが、ディジタル署名とはデータが改ざんされていないかどうかを確認するために用いられるものです。
データに署名を付与して相手に送り、相手はその署名を確認することで、データが改ざんされていないかどうかを確かめます。
このディジタル署名は「公開鍵暗号方式」を応用した技術です。
そのため、「秘密鍵」と「公開鍵」の違いをキチンと理解することがとても大切です。
ディジタル署名の利点もチェックしておきましょう。重要なポイントですからね。
- データの完全性:
データが送信中に改ざんされていないことを保証します。
- 認証:
データの送信者が本物であることを確認します。
- 非改ざん性:
署名は改ざんされると無効になり、変更が検出されます。
- 法的効力:
デジタル署名は法的に認められ、契約や文書の電子的な取引に使用できます。
図を添付しているので、照らし合わせながら手順をイメージしましょう。
データ改ざんチェックの流れ
- 「送信者」は、データをハッシュ関数にかけることで、メッセージダイジェスト(ハッシュ値)を得る。
- 「送信者」は、メッセージダイジェストを「送信者」の「秘密鍵」で暗号化することでディジタル署名を生成する。
- 「送信者」は作成したディジタル署名をデータに付与し、送信する。
- 「受信者」は、ディジタル署名を「送信者」の「公開鍵」で復号することで、メッセージダイジェストを得る。
- 「受信者」は、受信したデータを送信者と同じハッシュ関数でハッシュ化し、メッセージダイジェスト(ハッシュ値)を得る。
- 「送信者」から送られてきたデータに付与されているメッセージダイジェストと、「受信者」が手順5. で作成したメッセージダイジェストを比較する。
- 1つのデータからハッシュ関数によって生成されるメッセージダイジェストは常に同じになるので、手順6. でメッセージダイジェストを比較した結果が同じなら、通信内容が改ざんされていないことが証明される。
(データが改ざんされていたらメッセージダイジェストが変わってしまいますからね。)
これだけは覚えよう!
さて今回は、ディジタル署名を付与してデータの改ざんをチェックする手法についてまとめました。
大切なポイントは2つですかね。
★Point1
「秘密鍵」と「公開鍵」がペア
★Point2
「秘密鍵」は絶対に秘密
「公開鍵」で暗号化したものは、ペアとなる「秘密鍵」でしか復号できないですし、その逆もまたしかりです。
ですので相手にデータを送る際は、相手側でデータを復号できるよう相手が公開している「公開鍵」で暗号化し、それを相手側の「秘密鍵」で復号してもらうというわけです。
しっかりと流れをイメージして、試験合格を目指しましょう!
前回まとめた記事も読んでもらえると嬉しいです!
基本情報以外の勉強記事も是非!
オススメ参考書 & Udemy講座
過去問編
兎にも角にも過去問を解かないことには始まりません。解いて解いて解きまくりましょう!
特に以下の参考書は問題数が多いのでオススメです。
この1冊だけ買って、とりあえず1周すれば合格がかなり近くなると思います!
科目A+B両方合わせて4セット収録されてるとかヤバすぎます・・・
知識網羅編
以下は知識網羅編として、講義系の参考書、動画をピックアップしています。
1からしっかりと学習し、知識を身に着けたい方はとてもオススメです。
過去問を解きまくり、不明点を参考書で補う。これが最高の勉強サイクルです~
私が勉強する際に使用していたオススメ参考書は以下です。
上記シリーズの最新版は以下です。(内容はそこまで変わらないはずですが・・・)
私がぜひオススメしたい、Udemyの講座もいくつかピックアップしておきます。
誰かに解説してもらった方が分かりやすい場合もありますからね~
画像でもボタンでも、どちらを押下しても講座へ飛べるようにしてありますので是非!
コメント