本ページはプロモーションが含まれています
本日はビットコイン基礎知識編「ハッシュ関数とは」です!
ビットコインについて調べていると「ハッシュ関数」という単語がよく出てきます。どういった意味なのか、そしてビットコインのシステムの中でどのように使用されているかを説明させていただきたいと思います。
もちろん、初心者向けの当ブログ内では技術的な事を抜きにして簡単に概要を説明させていただきます!
目次
- ハッシュ関数とは
- ハッシュ関数の使われ方
- まとめ
1 ハッシュ関数とは
ハッシュ関数とはなんでしょうか?
まず語源です。
ハッシュ(hash)=細かく切れたもの
ハッシュドビーフなどで使われるあのハッシュは「細かく切れたもの」という意味があります。
それが語源ですのでハッシュ関数とは
「細かく切れた(切る)関数」
ということになります。
なんのこっちゃ
ですよね。
ハッシュというもので使われるものには「ハッシュ関数」の他に「ハッシュ値」というものもあります。
「ハッシュ値」とは
「細かく切れた値」
です。
では、この「細かく切れた」というのがどういう意味かというと
「復元できない」
という意味なのです。
つまり、
「ハッシュ値」=「復元不可能な値」
「ハッシュ関数」=「復元不可能な値を導くための関数」
ということなのです。
スポンサー
2 ハッシュ関数の使われ方
さて、ハッシュ関数やハッシュ値はビットコインのシステムの中のどこで出てくるのでしょうか?
実はあらゆる場所でハッシュ関数が使われています。
どういうことかと言いますと「復元できない」という特性を活かして「暗号」として用いられるのです。
「暗号通貨」と呼ばれるビットコインにはよく使われています。
最も検索した時に出てくるのが「マイニング(採掘・承認)」の説明の時の「ハッシュ」です。
ビットコインは取引の際に中央管理人がいないので皆でその取引が正しいかどうかを「承認する」システムにより運営されています(下図)
その「承認」に用いられるのが「ハッシュ関数」「ハッシュ値」なのです。
以前の記事で
「承認」とは「規則性のない数字当てゲーム」である!
と言いました。(以前の記事よく出てくる単語「ノンス」とは – とってもやさしいビットコイン)
この「規則性のない文字当てゲーム」に「ハッシュ」が必要なのです。
つまり、「承認」作業でどんなことが行われているかというと(簡単に言います!)
①「ランダム文字列(自分で考えた適当な文字列)」を出す
↓
②「ハッシュ関数」によりその「文字列」を「復元不可能」な「ハッシュ値」にする
↓
③「取引による正しい文字列」なら「承認」可能。「間違った文字列」であれば①へ
というようにして、「承認」作業が行われているのです!(もちろん簡潔に説明しております)
しかもこれが10分で「承認」が行われるように設定されている(難易度が自動で調整される)ので驚きです!(参照なぜビットコイン取引は10分かかるか – とってもやさしいビットコイン)
要するに「ハッシュ関数」によってビットコインのシステムがセキュリティ上でも運営上でも役に立っている。
ということです!
3 まとめ
いかがでしたでしょうか?とっても簡単に「ハッシュ関数」についてご説明させていただきました。
実際にビットコインをご利用される方はこのぐらいの知識で全く問題ないと思います。
色々な技術が駆使されてビットコインはシステムが回っているのです。
他にも興味深いシステムは沢山ありますので今後もご説明させていただければと思います!
関連記事
スポンサー