大学生にもわかりやすく仮想通貨ビットコインの仕組みを10000字で図解する。マイニングやブロックチェーンとは

ビットコイン
自分の経歴と得意分野
東京の下町で一人暮らしをする早稲田卒のシステムエンジニア。 一人暮らしで得たライフハック、株やお金、ビジネスに関する話題が得意。 カフェが大好き。
ひろろをフォローする

大学生だからこそ、仕組みを知ってから投資して欲しい

最近話題になっているビットコイン、もしくは仮想通貨。大学生の間でも投資している人が少なくない。

が、少し冷めた目で見てしまうのが、ビットコインが何者なのか全く理解せずに買っている人が多く

僕

どうして買ったの?

と聞いても論理的な説明が返ってくる場合はほとんどありません。

もしくは、ここでは説明をしませんが、チャートのテクニカル分析能力が全くないのにも関わらず「暴落したから買い時だ」と話すのは、個人的には全く意味が分からない、理解が出来ない点でもあります。

恐らくネットに溢れる断片的な説明の記事を読んでいるため、点と点は知っているものの、線として繋がっている実感がないのでしょう。

しかし、仕組みもわからずに仮想通貨に投資する行為は、内装や立地を見ないでマンションを買うような行為、もしくは会社がどのような事業をしているか理解せずに株を買う行為と同じ

逆に基礎的な仕組みを理解しておけば、仮想通貨に関する最新ニュースを読んだ際に「この先は、こうなるに違いない」と仮想通貨の売買を自分の考えで判断できるようになります。

少なくとも、ネット上に無数にある「今は買うべき、今は売るべき」という記事の質を見極めての取捨選択が可能に。

この記事を理解すれば「とりあえず、雰囲気買いの域は脱出。取引所の口座は開いても良い」レベルまで持っていけるように設定しましたので、多少長くなりますがお付き合いください。

この記事はビットコインの仕組みをほとんど知らない人向けに書いているため技術に詳しい人から見れば怪しい部分もあるかもしれませんが「革新的な技術を、なるべく難しい用語を使わずに多くの人に理解して欲しい」という気持ちから書いています。ご了承ください。
記事内での画像の©が昔のブログ名になっていますが、気にしないでください。

銀行の中央集権制とビットコインの非中央集権制の違い。P2Pとは

一般的に技術者からよく言われるのが、「ビットコインの仕組みは革命だ」ということ。具体的には何が凄いのでしょうか。

まず1つ、中央集権制、非中央集権制、P2Pという単語がキーワードになってきます。

私たちが日常生活で、半ば無意識的に利用している銀行の送金システム。通販サイトや家賃の振り込み、公共料金の支払いなどでお世話になっています。その際のお金の流れを整理してみましょう。

中央集権制の仕組みの説明

銀行の中央集権制の仕組み

銀行が中央で存在感を示しているのが理解できますか。

例えばAさんからCさんに送金をする場合、Aさんから銀行に送金分と手数料を振り込みます。すると、銀行がAさんに代わり、Cさんに送金してくれるわけです。Aさんから直接Cさんに送金している訳ではなく、銀行が仲介役となっている構図がポイント。

今まで、銀行を介さずに送金する方法は、直接渡す以外ありませんでした。確かに、郵便局から封筒に入れて送ることは可能ですが、結局は郵便局に手数料を払い仲介してもらっているわけで、本質的には銀行の中央集権制とは変化がありません。

銀行は事業として、営利団体として存在するため、手間賃として手数料が発生します。

実際、ATMを利用しての10万円程度の送金であれば、400円程度の手数料。ネットバンキングを利用してのスマホからの送金であれば、もう少し安いですが。

また、今までの取引データや、口座の残高データが吹っ飛んだら控えめに言ってヤバイ。もちろん、大手の銀行はセキュリティに対して何百億以上の投資をし、バックアップも厳重にしているため、確率としてはかなり低いですが。

それだけでなく、もし銀行が倒産した場合、預金は1000万円までしか保証されません。つまり、1500万円の預金がある場合、1000万円しか返ってくる保証はないという意味。

「銀行が倒産なんてない」と思われるかもしれませんが、つい2016年頃には「(日本でいう日銀に相当する)ドイツ銀行の財務状況がヤバいのではないか」という噂から、「もしかしたらリーマンショック以上が再来するのでは」という時期もありました。

また、国が財政破たんするような状況になった場合、法貨(日本の場合は円。アメリカの場合はドル)はほぼ無価値になります。

ビットコインは仕組みとしては「1国に依存しない通貨」であるため、例え日本が財政破綻したとしても価値が0になることはないと考えられます。

国や銀行に縛られない通貨という表現がわかりやすいでしょうか。誤解を恐れずに言えば、世界中の人が参加するビットコイン国という1国の法定通貨であると表現できるかもしれません。

P2Pにより実現される非中央集権制の仕組みの説明

では、ビットコインを送金する場合の流れを図で表してみます。

P2Pの仕組み

この非中央集権の仕組みは「P2P」と呼ばれる通信方式により成り立ちます。

先ほどの図の銀行のような中央に大きな権力を持つ組織が無い訳です。

P2Pでは、参加者が蜘蛛の巣のように繋がっているため、例えばAさんからCさんに送金する際には直接送れるのです。

ただ、銀行と違い、明確な責任者が見当たりません。中央集権制の場合、トラブルがあった場合は「しっかり送金できていないぞ」と銀行に文句を言うことが出来ました。ではどうするか。

P2Pでは、P2P参加者がそれぞれ同じ取引データを管理するのです。

銀行の場合と比較して、取引データを管理するコストが抑えられるため、安い手数料(もしくは0、詳しくは後述)で済みます。

また、複数いるP2Pネットワーク参加者は全員、今までの取引データを自分のパソコンに保存しています。たとえ、誰かのパソコンが壊れても、世界中の誰か1人がインターネットに繋がっている以上、データはこの世界から消失しません

この2つの図は「既存の仕組み=中央集権制」と、「それをぶち壊そうとするレジスタンス=非中央集権制」の二項対立に感じる人もいるかもしれません。

しかし、銀行系のベンチャーキャピタル(=有望な未上場のベンチャー企業に投資、成長してから利益を回収する投資会社の事)が、仮想通貨の取引所を運営する企業に投資している背景を考えると

僕

必ずしも、どちらかが優れている、どちらかだけが生き残る、という考え方は違うのでは

と個人的には考えています。

例えば、ここではP2Pの良い点を重視して紹介しましたが、中央集権制の方が柔軟に仕様を変更できるというメリットがあります。

権力が1人に集まっている方が、仕組みを変えるときは楽です。複数人で管理をするのは、技術的な改良をどのように進めるか等、意思決定が難しい。

手数料やデータの保持性はP2Pに利があると思いますが、個人的には、仕組みとして共存していくと思っています。

ちなみに、SkypeもP2Pの仕組みを利用していたり。

ブロックチェーンを大雑把に解説。銀行の取引台帳とのイメージの違いを明確に

ビットコインと同じくらいに有名な単語の1つにブロックチェーンが挙げられます。

記事の後半で更に詳しく仕組みを解説しますが、ここでは大雑把なイメージを図で感じて貰いたい。

ブロックチェーン技術の図説

図で説明しつくしたので、言うことはない。

では、銀行の取引データはどのように管理されているのか見てみましょう。

銀行の台帳

先程のブロックチェーン技術は、個々の取引データブロックが密接に関わりあっている(とはどういうメリットに繋がるのかは後述)一方、銀行の仕組みでは取引データ同士では特に結びつきが無い。

恐らく、頭の中がモヤモヤで一杯だと思いますが、今は、雰囲気で違いを感じて貰えれば十分です。

公開鍵と秘密鍵の仕組みで安全性がわかる

少し話題を変えて、公開鍵秘密鍵の話をします。

少し難しい話になりますが、Webサイトや電子メールでも利用されている、今では一般的に使われている技術ですから、知っておいて損はないかと。

公開鍵と秘密鍵はセットになっています。

例えば、公開鍵Aと秘密鍵A’のように。イメージしやすいように具体的には「NJHjkd269sfeUj9smiKD3F…」みたいな文字列で表します。

公開鍵とは、全世界にオープンに知らされている鍵のこと。つまり、Aさん自身が

あなた
Aさん

これ、自分の公開鍵Aだから、全世界の皆に教えておくよ

というイメージ。

一方、それに呼応する秘密鍵A’は

あなた
Aさん

いや、これはマジで自分だけの秘密

というように、世界中でAさんただ一人しか知らない幻の鍵を表します。

暗号化

データを公開鍵で暗号化した際に、どの鍵であれば開くのか」を整理すると

 

データを公開鍵Aで暗号化→秘密鍵A’で解読可能
データを公開鍵Aで暗号化→公開鍵Aでは解読不可

公開鍵で暗号化したら、それに呼応する秘密鍵でなければ開かないということ。

実に面白い仕組みです。数学の理論が用いられています。

わかりやすく例えれば、家の鍵を閉めたら、開ける時には「開けるため専用の鍵」でなければ開かないということ。

この仕組みを公開鍵暗号方式と呼びます。相手に読まれたくない際に文章を暗号化する手段として活躍したり。

下の図が公開鍵方式での暗号化を説明しています。

電子署名

ブロックチェーンには、秘密鍵と公開鍵の別の特徴を応用した「電子署名」という技術が使われています。

実は、先ほどの仕組みに加えて「秘密鍵A’で暗号化したものは、公開鍵Aでしか開かない」という特徴も持っており、この仕組みが考え方の根本にあります。

秘密鍵と公開鍵の仕組みで改ざんが出来ない仕組みがブロックチェーン技術にはある

先程の図と似ていますが、Aさんが自分の秘密鍵で暗号化しているところに注意。

「AからBに1BTCを送金します」というデータを、Aさんは自分の秘密鍵で暗号化します。Bさんは当然、Aさんの公開鍵を知っている(公開鍵は全世界に知らされているから)ため、Aさんの公開鍵を利用して暗号化されたデータの解読を試みます。

  1. Aさんの公開鍵で問題なく開いた場合
  2. 悪者が改ざんを仕掛けてきた場合

2つのパターンについて。まずは1から。

Aさんの公開鍵で問題なく開いたということは、最終的に、唯一対応するAさんの秘密鍵で閉められたということを暗示しています。

そして、Aさんの秘密鍵を知っているのは世界でただ一人Aさんしかいません。

電子署名により「これはAさんから送られてきた」と証明が可能になります。

では次に、「悪者が改ざんを仕掛けてきた場合」について。

AさんからBさんに「1BTC送るよ」という文章が「湿気た柿ピー送るよ」という文章に改ざんされた場合、非常に困ります。

冗談はさておき、もし1BTCが100BTCに改ざんされた場合を想像したら、非常に混乱が起こることが目に浮かぶでしょう。「ビットコインは改ざん出来る」という脆弱性から、ブロックチェーン技術そのものへの不信感が生まれます。

しかし、この改ざんも自動的に防ぐシステムが電子署名なのです。

書き換えようと、Aさんの公開鍵で中身を開けることは出来ます。公開鍵は誰でも知っているから。

が、中身を書き換えて再度ばれないように犯人が元に戻そうと思ったとしても、犯人はAさんの秘密鍵を知らないため、再度閉じることが出来ない。

犯人が適当な秘密鍵で閉じなおした場合は、Bさんは開けないため「これはおかしい」となる。

 

先ほど紹介した公開鍵による暗号化は「他人に盗み見されない」ことが目的でしたが、ここで説明している電子署名の目的は「本人が送ったことを証明するとともに、改ざんされていないか確認する」ことです。

実際には、この2つの仕組みが組み合わさり使われていたりします。

発掘(マイニング)の仕組みのキーワードは、ノンスと送金手数料という報酬にある

「発掘する」「マイニングする」という言葉を聞いたことがありますか。

これは、本当に鉱山を掘ったり、「ネット上に隠れているビットコインを探し当てるゲーム」という意味では決してないです。

マイニングとは「取引データをブロックチェーンに付け加える権限を得るために、問題を解きまくる作業」のこと。

たぶん意味がわからないと思います。「残業する権利を得るために残業する」くらい意味がわからないと思います。

なぜ彼らは、わざわざ書き込む権利が欲しいのか。

簡単に言えば、書き込みのお手伝いをするとビットコインが報酬として貰えるから。

この件は少し後で話しますが、とにかく、マイナー(マイニングする人)の動機がわかったところで、マイニングの仕組みを簡単に説明します。

Nonceとハッシュでマイニング

まず問題が提示されます。

その問題とは

ある数にどのようなキーワード(このキーワードは、一般的にはNonce、ナンス、ノンスと呼ばれます)を加えたら正解が出るか当ててください。

という内容。

正解の条件はその時によりますが、基本的には0がN個続く英数字になっています。ちなみに、このNの数は頻繁に調整しています。

これは「パソコンの頭が良かったらすぐ解けるような問題」ではなく、ビットコインのマイニングの場合、基本的には数の暴力のみによって解決されます。

4桁の暗証番号を忘れてしまった際に0000から試していくあれ」と一緒のイメージです。

これをPOW(Proof Of Work)といいます。workは「仕事量」を意味します。ちなみに、他の仮想通貨では、それぞれPOWとは少し違ったマイニング形式を取っているコインも存在します。

マイナーの動機について、マイニングの報酬と送金手数料

誰かがいち早くNonceを見つけ出したとします。

すると他のマイナーも確認作業に移ります。

4桁の暗証番号と一緒で「4567が正解だ」とわかってしまえば4567を打ち込むだけで確認作業が出来るので、Nonceを数の暴力で探し出した労力と比較すれば一瞬で完了する作業です。

そこで全マイナーのパソコン能力の51%以上が「このNonceは正しい」と判定すれば、書き込みの権限が与えられ、書き込みの報酬として、新しいビットコインが発行された分(ブロック毎に新しいビットコインが発行され、マイニングした人に付与されます。上限は2100万BTCと決められており、2040年頃が到達時期とされています)、そのブロックで利用された送金手数料が手に入ります。

51%(厳密にいえば50%を微量上回った数)というのは「過半数以上が正しいと言っているのだから、正しいのだろう」という前提で決められたものです。

ですから、理論上は改ざん可能ということになりますが、全世界のマイナーの51%の計算能力を保有する状況は現実的ではありません。そのような計算能力を誇るマシンを開発できれば、改ざんしている場合ではなく、起業して莫大な財産が築けますから。

更に、改ざんといえども「自分に100BTCを送る」のような都合の良い改ざんは出来ない上、改ざんが行われたらビットコインの価格も下落し、改ざんした本人も打撃を受けますから、例え51%も持つ人がいたとして、普通にマイニングしていた方が儲かり合理的

改ざんする動機が無いという訳。

マイナーは儲かるのか。想像以上に大きい組織でのマイニングと電気代

きっと

あなた
あなた

ひょっとして、ビットコインに投資するより、マイニングに専念した方が良いのでは。

と企み始めている読者が半数くらいいると思いますが、個人で行うには、知識や環境を整えるための時間と初期費用、つまり労力を考えるとコスパが悪いと思います。

先ほどはNonceを4桁の暗証番号で例えたので実感が沸かないかもしれませんが、最近では

  • マイニング専用マシンを
  • 電気代が安い国で
  • 工場のように事業化している

ので、とても一般人には敵いません。

電気代という資源の無駄遣いがビットコインへの批判に繋がっているくらいです。「この素晴らしいシステムを維持する事を考えたらコスパが良い」と反論をする人もいるらしいですが、このような話に首を突っ込むのやめておきます。

マイニング施設の様子。騒音がヤバいです。

承認時間が早ければ良いとは限らない。1ブロックの承認が10分に設定されている理由

承認まで10分かかるとどこかで聞いたことがあるかもしれません。

「クレジットと比較すると遅過ぎるのでは」と言われそうですが、これには先程述べたマイニングの仕組みが背景にあります。

マイニングの難易度の調整

先程「正解に必要な、頭からの0の数を増やしたり減らしたりすることで、難易度を調整している」と述べました。

ビットコインが誕生したのは2013年ですが、5年も経てば当然、コンピューターの性能もあがってきます。また、マイナーが増えれば、それだけコンピューター能力の総量も増えます。そのため、0の数を増やすことでインフレを起こさないようにしているのです。

ビットコインは問題の難易度を平均10分で解けるように頻繁に調整をしています。

ではなぜ10分という時間に設定したのか。1分の方がすぐに決済認証が出来て便利なのではないか。

 

小学校3年生の算数の時間をたとえに挙げてみましょう。

先生が「1+1はなんですか?わかった人は手を挙げて」と聞けば元気な挙手が30人一斉に。しかし、先生は誰が一番早く手を挙げたか判断することが出来ません。

とはいえ、「書き込む権限は1人だけ」という説明をした通り、先生は誰か1人にしか答えを言う権限を出せません。困った。

 

今度は「百ます計算を10枚解き終わった人は手を挙げて」と厳しい課題を出したとします。確かに同時に手が挙がることはまずないでしょう。が、先生はマジ暇です。採点が出来ないため、ペン回ししかすることがありません。

 

逆にわかり辛かったかもしれませんが、大体こういう意味合い。

承認時間が短すぎると同時に正解者が出てしまい、ブロックチェーンが2つに分裂してしまうことがあります。同時にブロックチェーンを付け加える人が2人存在してしまうから。

この問題に対しては、しばらく様子を見てから、ブロックチェーンが長く続いた方を正しいとする共通認識で対応しています。ですから、厳密に言えば、完全な承認は10分ではなくもう少し長くかかるのですが。

だからといって、承認時間が長すぎれば、確かにこの分岐は起こりにくいものの、利用者が使いづらい

まあ、ちょうどいい時間が10分やろ

となったわけです。

ビットコインと銀行との送金手数料を比較してみる

ここで説明した内容ですが、ビットコインの価格暴騰と市場参加者の激増により、2018年1月時点では、かなり成り立たなくなっています。

具体的には、1BTC当たりのレートが高いため、送金手数料が銀行よりも高くなり、また1ブロックあたりに送信できるデータ量が決まっているため送金が詰まり、承認にかなり時間がかかってしまう、と、現状ではビットコインの優位性がかなり失われています。技術に解決する方法を模索しているようですが。

取引所への手数料も、かなり頻繁に変更が行われているため、詳しくは最近データを確認ください。以下の説明では、特に修正はしておりませんので悪しからず。

10万円を送金する場合を大雑把に計算します。

  • 銀行国内送金手数料…他行宛てだと432円
  • 銀行国際送金手数料…約5000円(円から相手の国の通貨に変換して届ける場合)
  • ビットコイン国内送金手数料…取引所への手数料0.0005BTC(1BTC=50万円のレートを仮定すると約250円)+自分で金額を指定できる追加手数料
  • ビットコイン国外送金手数料…国内の場合と同様

となります。

銀行から国内の他行に送金する場合は、家賃の振り込みなどで皆さんも馴染みがあるかもしれません。

一方、そもそも銀行から国際送金をしたことない人の方が多いかもしれませんが、そもそも手数料の仕組みが複雑すぎるので、実際にいくらかかるのか一目ではわからないデメリットもあります。また、送金に1週間以上かかることが一般的です。

ビットコインの場合は、国が介在していないため国内国外送金手数料は変わりません。ビットコインを扱う場合、一般的には取引所を開設することになりますが、取引所への手数料0.0005BTCが発生します。

それは納得出来るとして「自分で金額を指定できる追加手数料」が気になっているはず。

実はこの手数料、マイニングの仕組みの項目で説明した「マイナーの報酬」の一部に割り当てられます。ですから、マイナーは手数料を多く払ってくれる人の取引データを優先的に書き込みます。手数料を多く払った方が承認が早くなるという訳。

あなた
あなた

とはいえ、送金手数料を0に設定した人がいつまでたっても承認されない問題はないのか。

そこで「ある程度承認待ちが続いた人には、強制的に載せてあげる」ルールがあります。

たとえマイナーへの報酬手数料を0に設定していても、時間はかかるが承認はされるから安心。

ブロックチェーンは改ざんが出来ない構造になっている

この記事の初めにブロックチェーンの大雑把なイメージを掴んでもらいました。もう一度図を載せておきます。

それと同様に、マイニングの手順についても、もう一度復習してください。

ここでは更に詳しく、何故ブロックチェーンが凄いと言われているのか説明したいと思います。

Nonceというキーワードには見覚えがありますね。この図は、ブロックチェーンの図とマイニングの仕組みを合体させたような図です。

誰かが一番左のブロックを改ざんしようとしたとします。

すると、正解Bが変化します。再度、違うNonceで問題を解き直す必要があるから。そして、ブロックで出た正解は次のブロックの問題として利用されます。

つまり、次のブロックの問題Bも変化するので、当然、正解Cも計算し直さなくてはなりません。

その作業を現在のブロックまで物凄い速さで変えていかなければ、辻褄が合わなくなり、P2P参加者に気が付かれてしまいます。

しかも、例え、その作業が可能である、現時点ではあり得ないレベルの高性能なビットコイン採掘専用工場を持っている人であればあるほど、わざわざ改ざんを起こしてビットコインの信頼性を落とす意味がありません。

ビットコインの思想として「そもそも不正をする意味がない」仕組み作りがなされている訳です。

ちなみに、最近では銀行でもセキュリティ強化のためにブロックチェーン技術を取り入れようという流れが来ています。

取引所は正直どこも不安定だが、あえて言うならbitFlyerをお勧めしたい

日本ではbitFlyer、Coincheck、Zaifという3つの取引所が有名です。

ただし、Coincheckは2018年1月に起こったNEMのハッキングで更に、ある意味で有名になりましたが。

個人的には、取引所はbtiFlyerをおすすめします。半年前にこの記事を書いた当時から、このことは一貫しており、事実このブログでは今までbitFlyerしか貼っていません。

その根拠として、一番安全性、セキュリティが高いと考えられるから。

bitFlyerに資金注入している株主は、メガバンク系列、証券会社系列、保険会社のベンチャーキャピタルやリクルートなど、控えめに見ても日本に大きな影響を与える超大手の企業が連なっていることから、bitFlyerに対する期待が見て取れるでしょう。また、大手がバックにいるベンチャー企業は、ベンチャーとはいえ、かなり慎重に事業拡大を進める傾向にあります。

大手3社の中では、扱う仮想通貨の種類が少ないのが難点ですが、個人的には逆にセキュリティ対策をしている表れではないかと思います。

当然ですが、仮想通貨の取り扱い種類が増えれば、それぞれに対応する必要、つまりコストと高度な人材が必要になっています。

仮想通貨の中には、個人の管理はさほど技術力はいらないが、取引所で扱おうと思えば話は別で、相当の技術力を持ったエンジニアがいなければセキュリティ管理が難しいものもあります。

これはまるっきり憶測の話ですが、管理が難しい、セキュリティ対策に穴が開いてしまう仮想通貨を扱わないからこそ、bitFlyerの扱いアルトコインが少ないのではないか。

ちなみに、Zaifは個人的にはあんまり信頼していません。

DDOS攻撃されている様子をtwitterにあげる運営の、セキュリティに対する軽い考えは、正直全く理解出来ません。

とはいえ、bitFlyerもしょっちゅうサーバーが重く、取引所としてどうなのかという部分も多々あるため、取引所の開設と利用は自己責任でお願いします。二段階認証なり、コールドウォレットなり、厳重な自己管理をした方が良いでしょう。

ちなみに、開設申し込みをしてから実際に取引が出来るまで日数がかかるため(住民票に記載の住所で葉書を受け取らないといけない)、開設だけ先に済ませて、更なる仮想通貨の勉強をする方が効率が良いでしょう。

bitFlyer ビットコインを始めるなら安心・安全な取引所で

↑ここから開設が出来ます。

とはいえ、自分は仮想通貨に投資しない訳ですが。理由はこちらで述べています。

ビットコイン含む仮想通貨に投資(投機)しない理由を負のスパイラルモデルで説明する
仮想通貨に投機しない理由 僕 税制が複雑かつ整っていないから。 という、ただ一つの理由。 そもそも投資と投機の定義の違いは難しい話ですが、個人的な定義としては、 投資は、「本質的に価値がある