見出し画像

パスワード漏洩・改ざん防止のテクノロジー

こんにちは!KazのWeb3ブログをご拝読いただき、ありがとうございます!
さて、本日は、パスワード漏洩・改ざん防止のテクノロジーについてです。

今回の項目

1. ハッシュ関数とハッシュ値

2. ハッシュ値、3つのスゴい特性

3. パスワードの仕組み


1. ハッシュ関数とハッシュ値

文字や文章、パスワードの暗号化にハッシュ関数というものがある。
暗号化とは、簡単に言うと、「文字ずらし」
例えば、「APPLE」にアルファベットを1つ遅らせるという関数を使用すると
APPLE→BQQMF となる。

文字にハッシュ関数を使用すると出てくる値をハッシュ値という。
例えば、「a」にハッシュ関数を使用し、暗号化すると、
「9 ea 447 dd 3 a 066 d 2 de 6 bf 800401 efade 3」
というハッシュ値になる。

2. ハッシュ関数、3つのスゴい特性

・不可逆性
不可逆性とは、簡単に言うと、「一度変化したら元には戻せない」という特性である。
ハッシュ関数はこの不可逆性を持っているため、例えハッシュ値を盗まれたとしても、元となるデータへ変換することはできず、セキュリティが高いと言える。

・どれだけ長い文字列でも、必ず16進数、32桁のハッシュ値に変換される
「a」
をハッシュ値に変換しても
「私は昨日カレーを食べました。とてもおいしかったです。」
といった長い文章をハッシュ値に変換しても
必ず16進数、32桁のハッシュ値に変換される。

どれだけ長い文字列でも32桁のハッシュ値に変換されるため、
・データが大幅に削減できる
・元の文字数すら把握しにくい
という利点がある。

・1文字違うと、全然違う
「私は昨日カレーを食べました。とてもおいしかったです。」
この文章を1文字改ざんしたものが以下である。
「私は昨日カレイを食べました。とてもおいしかったです。」

今回はわかりやすい例を挙げたが、例えばそれが10,000字の文章であったり、莫大な金額だった場合、改ざん点に気づくのはとても難しい。
そこで活躍するのがハッシュ関数である。

上記2つの文をハッシュ値に変換すると、以下のようになる
「8 ad 554 da fi 2 3ko 87 fh 99 dtre 5yr 674da」
「9a dj f445 sf d78 93mf nai87 dfa21 nt 55 o」
1文字異なるだけで、全く異なるハッシュ値が出現する。
改ざんしたら、それが一目瞭然でわかるのがハッシュ値である。

3. パスワードの仕組み

スマホやPCのロック解除にパスワードが使用される。
その仕組みは以下のようになっている。

パスワード作成時に、それをPCに保存。
ログイン時は、入力したパスワードと、PCしたパスワードを照合させることでロックを解除できる。

ここでよくあるパスワード漏洩は、PCに保存されているパスワードを引き抜かれるパターンが多い。

ここで活躍するのがハッシュ値である。
パスワードをハッシュ値に変換しておくことで、もしそれが漏洩しても、不可逆性により、パスワードを特定することはほぼ不可能になる。

ログイン時、入力したパスワードをハッシュ値に変換し、それを保存されているパスワード(ハッシュ値)と照合させることでロック解除される仕組みになっている。

まとめキーワード

・ハッシュ関数、文章やパスワード、暗号化
・ハッシュ値
・不可逆性
・32桁の16進数
・1文字違い、全く異なるハッシュ値
・パスワード、ハッシュ値、変換、照合


パスワード漏洩と改ざん防止のテクノロジーいかがでしたか?
もし、誰かの学びや、発見になることができたら、嬉しいです!

また次回も楽しみにしていてください!





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