00:06
はい、こんばんは、こんにちは。おはようございます。
今日も楽しくおしゃべり❗まこにぃの部屋をやっていきたいと思います。よろしくお願いします。
ちょっとグダグダになってしまいましたが、今日もやっていきたいと思います。
ビットコインの仕組みを、なるべく分かりやすくやっていきたいと思います。
前回までは、ハッシュ関数の話をしましたね。
ハッシュ関数って何かな、ということを話しました。
ここから、ハッシュ関数を使って、ビットコインがどういうふうに成り立っているか、ということをやっていきたいと思います。
ビットコインを承認するのに、たくさん計算しなければならないというルールを決めたというのがあるんですけども、
なぜ計算をたくさんしなければならないのか、というところからいきたいと思います。
結論は、こうすることで取引履歴を正しく保存することができるということなんですね。
これをたくさん計算することが、正しく取引履歴を保存することができますよ、という仕組みになっているわけですね。
どういうことかと言いますと、ここからがあれです。
前回学んだ通り、ハッシュ関数には適当な数値を入力すると、ランダムに並んだ数字が適当に出力されますよ、という話でしたよね。
この仕組みを使って、ビットコインの取引記録に、例えば僕がその取引記録に当てずっぽうの数字を入れました。
そうすると、例えば985という数字を当てずっぽうに入れたら、
なんとね、先頭から5番目までの数字が、ゼロが5つ並んだ数字が出てきたとします。
これってすごい奇跡的じゃないですか。こんなのね、最初にゼロが5つ並ぶなんてこと。
まあ珍しいでしょ。なんかすげえラッキーだなと思うじゃん。
このゼロが5つ並んだ、このハッシュ値がね、985と言ったら、その985を入れて取引記録に985をくっつけたハッシュ関数に投げたら、ゼロが5つ並ぶ数字がたまたま出てきたと、ハッシュ値が。
03:04
これはすごい、この特別な数字になるのってすごいよねっていうことなんですよ。
例えばこのゼロが5つ並ぶってどのぐらいの確率かっていうと、この一つ一つの数字って64文字あるんですよ。
この64文字って何かっていうと、ゼロから9と大文字のAからZ、小文字のAからZ、そしてプラスとスラッシュの文字合わせて64文字なんですけども、この64分の1なわけですよね、ゼロが1個出るのが。
それが5個出るってことは64分の1の5乗っていうことなんです。計算すると10億分の1ぐらいですよね。
10億分の1って相当じゃない?
当てずっぽーの数字入れてね、10億分の1の確率で出てきたこのゼロが5つ並んだ先頭からね、数字って特別だよねっていうことで、この985っていうのはすごい特別な数字だっていうことになるわけですよ。
本来なら、当てずっぽーに入れたからね、僕が。当てずっぽーに入れてたまたま出たんですけども、本来なら10億回計算しなきゃいけない。
10億回計算して、ゼロが5つ並ぶ数字を見つけなきゃいけないんですけど、たまたま985っていう数字が見つかりました。
この985っていう数字がビットコインの取引記録が正しく保管されることを証明する鍵となるわけですよ。
例えば僕がですね、そのある取引記録を正しいかどうかを証明するというか、正しいかどうかを証明するときにですね、その記録にこの985っていう鍵を入れれば付けてね、保管してやる。
985の保管してやる記録に985をくっつけてハッシュ値に投げると、必ずゼロが5つ並んだ数字が出ますよってことになるので、この記録は正しいね、この取引記録は正しいものだねっていうことがわかるわけですよ。
この取引記録が正しさを証明する鍵となるわけですね、この985っていうのが。たまたま計算してゼロが5つ並ぶ、そのハッシュ値がゼロが5つ並ぶ数字が出たことが特別なので、この985っていう特別な数字は取引記録が正しいということを証明する鍵になるわけですよ。
06:06
例えばこれをね、改ざんデータに改ざんデータがある、改ざんしようと思って改ざんデータを入れたとしますよ。それで985をくっつけてハッシュ関数に投げてもゼロが5つ並ぶ数字にはならないんですよ。
なぜならハッシュ関数っていうのは、その前のデータが一文字でも何か違ったら違う数字を出してくるので、違うハッシュ値を出してくるっていう仕組みなので、985は985っていう鍵を使っても改ざんデータが正しい取引記録と一文字でも違っているものなので、
特別な数字、ゼロが5つ並ぶ数字は絶対出てこない。なので、この特別な数字を使うことで不正や改ざんに気づけるわけですね。
ということで、要するに改ざんデータ、そういう改ざんや不正ができないという仕組みになっております。
このあでずっぽうに数字を入れて計算を繰り返して、たまたま特別な数字が見つかったら、その特別な数字が取引記録の正しさを証明する鍵になりますよっていうことなんですね。
今説明したのが、このことを仕事の証明と言います。英語で言うとproof of workって言うそうです。何言ってるかわかんないですけどね、僕は。仕事っていうのは計算ですね。計算のことを言います。
電子マネーはですね、管理者への信用が必要だったんですけども、ビットコインは計算量を信用の基盤にしているということですね。なので、中央が言いませんよっていうことになっております。
でもさ、ここでさ、ちょっと悪い人だったり頭のいい人だったりしたらさ、こうすれば改ざんできるじゃんっていうのがね、気づいた人もいるかもしれませんけど、この改ざんデータを入れて、僕が改ざんデータを入れてですね。
で、このたまたまゼロが5つ並ぶ数字をもうすごく計算して計算して計算して、たまたまその数字が見つかったとしますよ。例えば635という数字が見つかったとします。そしたら改ざんできんじゃん、改ざんできんじゃんっていう風に思ったりしますよね。
09:01
めちゃくちゃ計算すれば、自分がめちゃくちゃ計算してたまたまゼロが、先頭からゼロが5つ並ぶ数字を見つければ改ざんできちゃうんじゃんって思ったりしますよね。
で、ここですごいのが、この里市仲本さんでしたっけ。この人、誰だった?里市さんですよね。違う人だね。あ、そう、里市仲本さんがね、すごいすごいんですよ。里市仲本さんがね、この改ざんをできない仕組みを見つけたというか、考え出したわけですね。
本当に天才だと思う。どういうことかというと、ルールを2つ決めたんですね。まず、1つ前のブロックのハッシュ値を次のブロックの頭につけるっていうことを決めました。そしてもう1つ、計算量の最も多いものを信用するっていうことを決めました。
どういうことかというと、まず、例えばさっきの取引記録の985を入れたブロックがありますね。ブロックで985、そしてまた、そのビットコインの取引ってさ、もうずっとずっとされてるから、また次のブロックが出てきますよね。
その取引記録の入ったブロックが出てきて、そのブロックが出てきたときに、その前の985のときの取引記録のハッシュ値をそのブロックの先頭にくっつけてやると。
そうすることで、例えば改ざんした人が一生懸命計算してですね、ちょっと待ってください。とりあえずそういうふうにした。
くっつけてくっつけて、その前の記録のハッシュ値、出てきたハッシュ値を頭に先頭につけて、それをどんどん繋がっていく。そのブロックがどんどん、記録のブロックが、取引記録のブロックがどんどん繋がってるので、このことをブロックチェーンというんですね。
ちょっとごめんなさいね、僕は思い出しながら喋ってるので、ちょっと分かりづらいところもあるかもしれませんけど、ごめんなさい。
要するに、最初に出てきた記録の2985という特別な数字を入れたときに出たハッシュ値、ハッシュ関数から出てきたハッシュ値、0が5つ並んだ特別な数字、特別なハッシュ値を先頭にくっつけると。
12:09
次のブロックの先頭にくっつける。そしてまたその計算されていって、また特別な数字が例えば7813というのが出たとしたら、それにまた次の取引のやつがくっついてて、その前の1つ前のハッシュ値がまた次の取引のブロックの先頭にくっついているということをして、どんどんどんどん連なっていっているから、ブロックチェーンだということなんですよ。
で、なんでこれが改ざんできないかっていうのがすごいところで、例えばだから、その正しい記録の方の、今言ったその正しい記録の方の取引記録というところに985を入れて、その先頭にハッシュ値がくっついてるでしょ。
次のブロックのところには、その前回のハッシュ値がくっついてると。
改ざんした方のやつは、僕が改ざんしようと思って改ざんデータに一生懸命計算して、もしその特別な数字が見つかったとしても、次のブロックがやってきたときに、その取引記録がやってきたときに、
その前回の僕がやった改ざんしたデータの方のハッシュ値がくっつくので、僕ここで地獄が始まるんですよ。
なぜなら、自分が改ざんしたデータのハッシュ値がその先頭につくので、正しい方の方は世界中みんなで計算してくれるんですけど、自分が改ざんした方は、僕がまた次のブロックも一生懸命自分一人で計算しなきゃいけないんです。
特別な数字を見つけなきゃいけないんです。
そうやって記録していかなきゃいけない。
そうこうしているうちに、正しい方のブロック、ブロックチェーンの方は、どんどんどんどん取引が、世界中の人が計算してくれるから、どんどんこの特別な数字を見つけてはブロックが連なっていくじゃないですか。
でも自分は一生懸命一人でやってるから、もう全然追いつかないと。
15:04
ここで出てくるのが2個目のルールで、計算量の最も多いものを信用するってことになってるんですよ。
だから、僕は一人でやらなきゃいけないので、全然遅いけど、正しい方の正規ルートのブロックチェーンの方は、どんどんどんどん計算量が多いので、結局僕の方が少ないので、こっちは承認、こっちは全然ダメ、計算量少ないよね、こいつ信用しちゃダメだよっていうことになって、正しい方の方が信用されていく。
どんどんどんどん連なっていって、計算量が多いので、不正できませんよっていうことになるんですね。
いや、すごくないですか。すごくないですか、これ。
ね。僕も喋っててよくわかる。ちょっと難しいなと思うけど、これ言葉だけじゃわからないかもしれないんだよな。
でもね、なんとなくわかってくれればいいんですけども、不正できないんですよ。
要するに不正をしようと思ったら、自分一人で永遠に計算し続けなきゃいけなくなってる仕組みなんですよ。
不正者が、改ざんデータを入れた瞬間に、自分でやんなきゃいけなくなっちゃうんですね。
世界と戦わなきゃいけない人に一人で。
なので、事実上、改ざんできませんよっていう仕組みになっているということですね。
これで、ビットコインは電子証明とブロックチェーンという技術において、安全な通貨として使えるようになっていますよという仕組みになっております。
なんとなくわかってくれたかな。
いや、もう本当にね、すごいね。こんなこと考える人いるんだね。
いや、本当にすごいと思う。
いろいろ見てることは本当にすごいなと思うんですけど、天才だな。
いや、本当天才だわ。
ということで、今日はここまでにしましょう。
ここでビットコインがどういう仕組みでちゃんと通貨として成り立っているかっていうのをここまでやってきました。
明日はね、最後のまとめな感じで、ちょっとね、最後のこの仕組みが、
18:04
明日はこの仕組みがどうやって動いているのかっていうところですね。
仕組みはできましたけど、これを動かさなきゃいけないじゃないですか。
完璧な仕組みでも動かす人がいないといけないので、これがどうやって動いているのかを最後のまとめに、
明日お話ししたいと思います。
ビットコインについてね、ちょっとでも興味が持っていただけて勉強したいなと思ってくれれば幸いです。
ちょっとね、難しい難しいって言いたくないんですけども、割と頭がボーンってする感じのことなので、
僕なんとなく理解し始めましてきてるんですけども、
あなたもね、これを聞いてちょっと勉強してみようかな、自分でもちょっと調べてみようかなと思ったかと思ってくれれば、
僕は大成功だと思っておりますので、よろしくお願いします。
ということで、今日のお相手も、いつも笑顔で明るく元気な51歳の部盛り、
まこにーこと山崎誠がお送りいたしました。
いろんな概要欄にテーラーバートンのリンクとか、いろんなリンク貼ってあります。
僕はメルカリでお店やっておりますので、そちらもちょっと見てくれれば嬉しいです。
ということで、今日も最後まで聞いてくれてありがとうございました。
それでは皆さんお幸せに。またねー。
今日もありがとう。ちょっと長くなっちゃったね。
一生懸命聞いてね。