情報セキュリティは、個人や企業が保有する機密情報、個人情報、知的財産などを、不正アクセス、漏洩、改ざん、ウイルス感染などの脅威から守るために非常に重要です。適切な対策を怠ると、信用の失墜、金銭的な損失、法的責任、事業継続の危機につながるリスクがあります。情報セキュリティは、事業継続と企業の信頼維持に不可欠な要素のためしっかり学習しておきましょう。

画像参照:https://group.gmo/security/security-all/information-security/
メッセージダイジェスト関数
メッセージダイジェスト関数は、ハッシュ関数の一種です。また、一方向ハッシュ関数とも呼ばれ、任意の文字列から固定長の擬似乱数(ハッシュ値)を生成するアルゴリズムのことを指します。メッセージダイジェスト関数は、次のような特徴を持っています。
- 入力値のサイズと関係なく一定サイズの出力値が得られる。
- 入力が異なれば、同じ出力値が出る可能性は極めて少ない。
- 出力値から入力を求めることが極めて難しい。
- すでに与えられている出力値と同じ出力値となる別の入力を見つけることが極めて難しい。
ポイント
メッセージダイジェスト関数を利用する場合、出力値が同じであれば入力は同じと判断できるため、出力値は文書の「指紋」の役割を果たします。
デジタル署名
デジタル署名は、メッセージダイジェストを署名者の秘密鍵で暗号化したものです。
デジタル署名は、次の手順で付与します。
付与手順
- メッセージをメッセージダイジェスト関数に入力してメッセージダイジェストを作成する。
- メッセージダイジェストを署名者Aの秘密鍵で暗号化し、デジタル署名とする。
- メッセージとデジタル署名をまとめて1ファイルとして送信する。
デジタル署名が付与されている文書を受け取った人は、デジタル署名を検証することで下記内容を満たしていることを確認する。
- 内容が第三者によって改ざんされていないこと
- 文書の作成者が署名を行った本人であること
検証手順
- ファイルからメッセージ部分を取り出して、メッセージダイジェスト関数に入力してメッセージダイジェストを作成する。
- ファイルからデジタル署名を取り出して、署名者Aの公開鍵で復号しメッセージダイジェストを入手する。
- 1のメッセージダイジェストと2のメッセージダイジェストを比較し、一致することを確認する。
3の工程でメッセージダイジェストを比較した際に、同じであれば改ざんされていない正しい文書と言えます。しかし、比較した際に異なっていた場合、文書が改ざんされているか、文書の作成者が署名を行った本人でないことになります。正しい文書ではないため、再度Aさんに文書を送り直してもらうようにしましょう。
デジタル署名を付与してもメッセージが暗号化されるわけではありません。メッセージを第三者に読まれないようにするためには、デジタル署名を付与した上で、さらにメッセージを暗号化する必要があります。
公開鍵証明書と認証局(CA)
Aさんのデジタル署名を検証するには、Aさんの公開鍵が必要です。公開鍵のためAさんからもらうことが可能なものの、Aさんだと思っていた人物が実はBさんであり、そのAさんになりすましたBさんから偽物の公開鍵をもらってしまう可能性があります。
上記のような状況を避けるために、中立的な第三者が公開鍵の正当性を保証する必要があります。これから紹介する「公開鍵証明書」および「認証局(CA)」が公開鍵の正当性を保証する技術および組織になります。
公開鍵証明書
公開鍵証明書とは、一般的に「公開鍵」とその所有者の情報を結びつける「証明書」という、暗号技術を指す名称です。 ネットワーク上におけるユーザー同士の通信では、第三者が当事者になりすますリスクを伴います。 そのため身元が証明されたユーザーのみで通信ができるよう、物理的な鍵をかけるようにデータを暗号化する必要があります。
認証局(CA)
認証局(CA)とは、ウェブサイト、企業、個人に対して電子証明書を発行する、信頼されている組織です。 TLS/SSL 証明書を発行するとき、認証局はウェブサイトのドメインを認証し、証明書のタイプによってはその運営元組織も認証します。

コメント