どうも、めじかです❗️
ブロックチェーンって、どんな仕組みなんだろう❓
ふと思われた方のために
分かりやすくまとめました😌
ブロックチェーンとは、
”ハッシュ関数” を応用して暗号化したものを
1つのかたまりにして各々をチェーンのようにつなげた
です。
こちらのサイトで学べます
例えば、
「ぐっもー忍!」
というメッセージがあったとして、
これにハッシュ関数をかけると、
以下のような16進数の数に変換されます。
これを、さきほどいった
1つのかたまりごとにやります
かたまりのことを、ブロック、と言います。
1個目のブロックには、メッセージのほかに、
ノンス、という数の情報があります。
ブロック同士をチェーンのようにつなぐためのものですね。
さきほどのように
今度は、この1つのブロックの情報全体に
ハッシュ関数をかけて
またまた16進数の数に変換するわけです。
^^^^^^^^^^
ナンス:Nonce とは、Number used once(一度だけ使用される使い捨ての数字)の略です
ちなみに、ナンスはランダムに決まるので、
地道に探し続けなければいけません。
3桁の番号のカギを、000から999まで1つずつ確認していくイメージです
これを、マイニング(掘る)と呼びます
^^^^^^^^^^
つぎに、
ぐっもー忍! に返信するため、
2つめのブロックを作りましょう。
このとき、2つめのブロックには、
1つめのブロックの情報が反映されます。
そして、まずはナンスを探します。
「掘る」ボタンを押すと、
ナンスを探し出します。
見つかると、緑になります。
それぞれのブロックごとにハッシュ関数をかけて
16進数の数に変換されて、ハッシュ値が決まっていますね。
さて、もしここで悪意をもったbotが
1つめ(過去)のメッセージを改ざんしようと書き換えた場合、、、
2つともブロックが赤になりましたね。
1つ目のメッセージが変わったためです。
こうなると、2つのブロックとも
ノンスを探し直す必要があります。
これがブロックチェーンの基本です。
けっこうシンプルだと思いません?
これが、めちゃたくさんブロックがあるので、
全部ノンスを探し直すのにめちゃ時間がかかる
だからブロックチェーンは、ほぼ改ざんが不可能
ということなんですね
2022年7月10日時点のイーサリウム上の
トランザクションの数を見てみましょう。
これは、1つのブロックについて
ノンスが探し出され、ハッシュ値が生成された数
ということになります。
その数を見てみると、
ハッシュレート
毎秒およそ100万ギガ!!
100万×10の9乗なので、1000兆個!!!
1ブロックの処理は、だいたい15秒~30秒なので、
少なくとも1景5000兆秒 → だいたい5億年!!
ほぼ改ざん不可能なのが
イメージついたでしょうか?
ただ、これはあくまで現在のコンピューターの計算能力では、
ということです。
量子コンピューターは、
現在のコンピューターの何憶倍、何兆倍の計算スピードになる
と言われています。
そうなるとわからないですね
ただ、すべての量子コンピューター化すると
ハッシュレートも上がりますので、
結局イタチごっこかもしれませんね。
ということで長くなりましたが
今回はここまでにしたいと思います。
次回からは、Solidityの主な開発環境を整えていきます!
ここまで読んでくださったあなた、本当にありがとうございます!
それではまた、お会いしましょう!
コメント