改ざん、なりすましを防ぐためのハッシュ関数とは?

スキルアップに必要な勉強録
Facebook

今日はハッシュ関数について学びました。

まず・・・ハッシュ関数とはそもそもなんなのでしょうか?

ハッシュ関数とは

ハッシュ関数とは、改ざん、なりすましを防ぐためにつかう方法です。

重要な書類を相手に送る際に、そもそも、書類を送ってくる相手が本当に本物なのか?送る途中で、改ざんなどがされていないのか?

そんな不安が付きまといますよね。

そんな時に使われるのがこのハッシュ関数なのです。

使われる場面としては、電子署名、プロバイダーにパスワードを振る時などがあります。

一方で、この前学んだ暗号化というのは、第三者に見られるのを防ぐために、内容に鍵をかけて、暗号化することを言います。

暗号化→第3者に見られるのを防ぐ
ハッシュ関数→改ざん、なりすましを防ぐ

こんな感じです。

電子署名

では、電子署名を使って契約書を送るケースについて見ていきたいと思います。

AからBに大切な書類を送る場合に使われるのが電子署名です。

契約書などの大切な文書にハッシュ関数をかけます。

これを要約値と言い、この要約値と、契約書を合わせて、電子署名付き契約書と言います。

この電子署名付き契約書にAの秘密鍵をかけてBに送るのです。

これは唯一、Aの公開鍵をつかって開けることができます。

Bは開けれることによって、送り主はAのなりすましではないということがわかります。

しかし、送ってきたAは本人でも、契約書自体が、誰かに改ざんされている場合がありますよね。

この時に、この改ざんを防ぐ方法があるんです。

Bに送られてきた契約書にハッシュ関数をかけることによって、要約値が出てきます。

この要約値と、Bに送られてきた電子署名(要約値)を見比べるのです。見比べた結果、同じだった場合、この文書は改ざんされていないということがわかるのです。

プロバイダーの仕組みも同じで、パスワードをハッシュ関数をかけることで、かいざん、なりすましを防いでいます。

しかし、ここで疑問が・・・。

そもそもこの公開鍵自体が本物でなかったら?

それを防ぐための役所があります。それが認証局(CA)と呼ばれる場所なんです。

認証局とは?

認証局はそもそもの公開鍵が正しいのかを証明する場所です。

会社は認証局に公開鍵をお金を払い預けておくことで、この公開鍵は本物だということを証明できます。

認証局で有名なところはベリサインがあります。
https://www.verisign.com/

最後に

ということで、この記事ではハッシュ関数について書かせていただきました。

少しわかりにくい分野かもしれませんね。。。

タイトルとURLをコピーしました