見出し画像

【高校情報1】デジタル署名・デジタル証明書・ハッシュ値の仕組み(情報セキュリティ)

◆◆はじめに◆◆

デジタル署名(電子署名)は、流れが複雑なので理解できるまでは混乱する分野になります。
理解できると確実に得点源になります。

公開鍵暗号方式、ハッシュ関数それぞれについて説明した後に、デジタル署名の説明を段階を追って説明しています。

デジタル署名と混同しやすいものに、デジタル証明書(電子証明書、公開鍵証明書)があります。
こちらについても、違いを明確にして説明しています。

高校情報Ⅰのセキュリティ分野はこの部分が肝(説明や理解に苦労する分野)になると思うので活用いただけると幸いです。

いままで、デジタル署名について3本動画をアップしていましたが、今までの20倍時間をかけて制作しました。

情報Ⅰ共通テスト対策 書籍出版します!



◆◆解説動画◆◆

■資料ダウンロード■

情報教育の底上げが目的なので、資料を修正して、
学校・塾(営利目的含む)の授業等で利用して頂いて問題ありません。
私への連絡不要ですが、利用する際には、
YouTubeチャンネル・情報Ⅰ動画教科書・IT用語動画辞典を
紹介してもらえると嬉しいです。

https://toppakou.com/info1/download/99_資料/09_デジタル署名.pptx

◆◆文字おこし◆◆

はじめに問題です。

画像1

差出人がミライで3通の手紙が届きました。2通は偽物の未来が書いたものです。
本物のミライはこのようなハンコを持っています。
本物のミライから届いた手紙はどれでしょう。

回答ありがとうございます。

画像2


正解は2番です。
本物のミライしか持っていないハンコが押印しているから、2番が正解となります。
現実の世界なら、公的機関が発行する、印鑑証明書があれば更に信用力が増しますよね。


インターネットの世界でも、届いた文書が送信者本人が差し出したか、そして途中で書き換えられていないかどうかということが判断できる仕組みがあります。
それをデジタル署名と言います。今日はこのデジタル署名について基礎から詳しく説明していきます。

画像3


まず、暗号化、復号、鍵の基礎用語について説明します。
暗号化
データの内容を第三者にわからなくする技術または手法
「こんにちは」という文字列があった場合、このような意味不明な文字に変換され解読不可能になります。

そして復号は
暗号化されたデータをもとのデータに復元することになります。
復号は「復号化」と最後に「化」漢字を付与してはいけません。

この暗号化されていないデータのことを平文と言います。

この、暗号化と復号には鍵というものを使います。
鍵と言っても、物理的な鍵ではなく、パスワードの文字列の様なものになります。

画像4


今から説明する、デジタル署名は、公開鍵暗号方式とハッシュ関数という大きく2つの技術を使っています。

まず、公開鍵暗号方式について説明していきます。
==

画像5


公開鍵暗号方式は、暗号化と復号に使う鍵が異なるものになります。
鍵ペアと言って秘密鍵と公開鍵の2種類の鍵を使います。

秘密鍵で暗号化したデータを復号できるのは公開鍵だけになります。


公開鍵で暗号化したデータを復号できるのは秘密鍵だけになります。

その名の通り、秘密鍵は、発行した本人以外知られてはいけない鍵になります。
一番初めのクイズの例で言ったら、本人しか持っていないハンコの様なものです。
一方、公開鍵はその名の通り公開情報なので、漏れても良い情報になります。

ガッキーからミライに公開鍵暗号方式を使って、
第三者に漏れないように、文書を送ります。

まず、前準備としてミライが公開鍵と秘密鍵の鍵ペアを生成します。
そして、秘密鍵は漏らしたらいけない情報なので、ミライの公開鍵の方をがっきーにあらかじめ渡しておきます。

そして、がっきーはミライの公開鍵を使って、文書のデータを暗号化し、送信します。
途中で、通信が傍受されてもミライの秘密鍵でしか復号できなので、文書の中身はわかりません。

そして、ミライに届いたとき、ミライが持っている秘密鍵で復号すれば、平文にもどり
ミライは中身を確認できます。

――

画像6


こんどは逆にミライからガッキーに手紙を送りましょう。
ミライの秘密鍵でメールを暗号化してガッキーに送付します。
ガッキーはミライの公開鍵で復号ができます。
でも、ここで疑問に思われた方がいると思います。
公開鍵は公開情報だからガッキー以外も手に入れることができます。盗聴された場合にミライの公開鍵を使って復号ができてしまいます。

実はこのパターンは、ミライ本人から送られてきたことが分かるのです。
ミライの秘密鍵はミライ本人しか持っていません。
ミライしか持ってない秘密鍵で暗号化できた文書を、ミライの公開鍵で復号できたということでその文書がミライ本人から送られてきたという証明になります。
セキュリティ用語で、「真正性」が確認できたといいます。

---
次に、ハッシュ値について説明していきます。

画像7

ハッシュ値はメッセージダイジェストとも言います。
直訳すると、「文書の要約」という意味ですが、どんなに長い文書でも、ハッシュ関数という、機能を使うことで決められた短い文字列が返却されます。
このときハッシュ関数から戻される値をハッシュ値といいます。
要約と言いましたが、ハッシュ値から元の入力値が何だったかということは推測することは出来ません。

ここまでで、いったい何の役に立つんだと思われている方が多いと思います。

このハッシュ値にはいくつか特徴があります。
・たとえば入力値が同じ内容なら、何度ハッシュ関数に入れても同じ値が返却されます。
・逆に入力文字を少しでも変えると全く違うハッシュ値になります。

具体的な例で説明していきます。

画像8

ミライからがっきーに文書を送るときの例で説明していきます。
分かりやすくするために暗号化は無しとします。

まずミライは、送信する予定のメッセージをハッシュ関数に入れて、ハッシュ値を求めます。
ここでは、ハッシュ値をabc123としましょう。
そして、そのハッシュ値とセットでメッセージを送ります。

しかし、途中で悪人がいてメッセージの内容を変更したとします。


メッセージをうけとったがっきーは、ミライと同じハッシュ関数を使ってメッセージのハッシュ値を求めます。そのハッシュ値とミライから送られてきたハッシュ値を突き合わせます。途中メッセージが書き換えられて入力情報が変わったので、ハッシュ値が一致しません。
がっきーは、このことで途中でメッセージが書き換えられている、つまり改ざんされているということを検知することができます。

つまり、ハッシュ値は改ざん検知で用いられます。
このメッセージが改ざんされていないこと。つまり完全であることをセキュリティ用語で「完全性」といいます。

デジタル署名はこのハッシュ値と公開鍵暗号方式を混ぜ合わせた方式になります。

画像9

ミライからがっきーにメッセージを送る流れで説明していきます。

まず、ミライは先ほどと同じように送信するメッセージをハッシュ関数に入れてハッシュ値を算出します。
そして、得られたハッシュ値を自分自身の秘密鍵で暗号化します。
この秘密鍵で暗号化したハッシュ値をデジタル署名といいます。

そして、デジタル署名とメッセージを一緒に送信します。

がっきーは届いたデジタル署名をミライの公開鍵で復号します。。
復号できた時点で、ミライ本人から送られてきたということつまり、真正性が証明できます。

そして、届いたメッセージをハッシュ関数に入れてハッシュ値を求め、
先ほどミライの公開鍵で復号したハッシュ値と突き合わせます。

値が一致すれば、改ざんされていないことが証明されます。

つまり、デジタル署名は、真正性確認と完全性確認ができるということです。

画像10

今話した内容は、ミライの公開鍵自体が本物であることが前提です。
その公開鍵が本物つまりミライ本人の物であることを、第三者機関が証明するものがあります。それが、デジタル証明書です。

印鑑証明も、自らのハンコを、第三者機関である役所が本物であることを証明してくれますよね。

デジタル証明書もこれと似たイメージで、ミライはあらかじめ自身の公開鍵を信頼できる第三者機関に申請して、デジタル証明書を発行してもらいます。
この第三者機関のことを、認証局やCAと言ったりします。

画像11

先ほどのメッセージとデジタル署名を送信するときに、デジタル証明書も一緒に送付します。
証明書の中には、ミライの公開鍵が入っていて認証局がこれは本物ですとお墨付きを与えています。

デジタル証明書の詳細はまた別動画で説明します。

画像12


それでは、今日の要点確認です。

画像13


デジタル署名について
・ハッシュ値を利用することでメッセージが改ざんされていないことを確認できます。つまり完全性の確認ができます。

・公開鍵暗号方式を利用することで、秘密鍵を持つ本人がメッセージを送付したことが証明できます。つまり真正性の確認ができます。

・公開鍵自体の信頼性は、認証局(CA)が発行するデジタル証明書で確認できます。

色んな技術要素が出てきましたが、セキュリティ試験で必ず問われるところなのでそれぞれの役割を押さえておきましょう。

今日は以上になります。最後までご視聴ありがとうございました。



この記事が気に入ったらサポートをしてみませんか?