仮想通貨について調べた。マイニングとは?なんで価格変動するの?
この記事はITC Advent Calendar(1) 8日目の記事です
その一
https://adventar.org/calendars/2563
その二
https://adventar.org/calendars/2640
初めまして、がっちゃんです。
本年度のITCの部長やってます。
今回は最近ハマってる仮想通貨について書きます。
ブロックチェーンとか、マイニングとか、なんで価値が上下するのかとか書きます。
そもそも仮想通貨とは?
Bitcoinに代表される、 ブロックチェーン技術を使った決済システム のこと。
そのシステムの上で扱われる通貨の単位もBTC(ビットコイン)と呼ばれるため、混同されることが多いのですが、(Bitcoinにおいては)実は技術的には決済システムが存在するだけなのです。
記事の中では、システムや総称を Bitcoin システム内の仮想通貨の単位を BTC と表記します。
ブロックチェーンとは?
決済記録を(DB)をみんなで鎖型に繋いで管理しましょうっていう考え方です。
みんなが決済記録を持っていて、みんなの取引を見れるようにしておくことで、
不正を行った場合、多数決の要領で「この取引は不正だ!」と見抜くことができるようになっています。
↓ 不正な取引記録がある台帳を連結しようとすると…
↓ 不正であることがすぐにわかるため、チェーンから除外することができる
このような形のシステムのため、 送金(の反映)にある程度の時間がかかってしまう のです。
伝言ゲームのように送金情報が伝搬し、それが不正ではないかを確認します(合意を取る)。
ブロックとは
ブロックチェーンとはその名の通り、鎖のように繋げて管理すると先に書きましたが、
チェインするもの、ブロックとは何なのかを書いていきます。
まず、ブロックとは以下の3つをまとめた概念で、 マイニングによって生成 されます
- 前のブロックのハッシュ値
- 取引の情報
- Nonce(ノンス)
ブロックの中に前のブロックのハッシュ値が入っていることから、ブロックチェーンしている状態と扱われるようになりました。
引用: http://www.nttdata.com/jp/ja/services/sp/blockchain/mechanism/
ブロックの中の取引の情報
取引の情報はブロックに挿入してブロックチェーンのネットワークに上げないと、取引が成立したと言えず、また、そのブロック自体は平均10分に一度しか作成(発掘)されないために送金処理に時間がかかってしまうのです。
Nonce(ノンス)
後述のマイニングで変動させる数値で、変動させた結果。マイニングの項で解説を行います。
前のブロックのハッシュ値
ハッシュ値はブロックの中にある3つの情報をまとめてハッシュ関数にかけて求めます。
このため、 もしも前の取引の情報の一つが改ざんされていた場合、全く違うハッシュ値が出てくるため次のブロックが本来のハッシュ値と違う!と気づく ことができます。
ブロックチェーンではこの機構を分散型で行うことによって、信頼性が担保され、通貨として担保できるという仕組みです。
マイニングとは?
先に記述した、ブロックを作ることです。
しかし、ただデータをひとまとめにしてハッシュ値を求めてブロックを作るだけでは誰でもすぐにできてしまうので、ルールが決められています。
Bitcoinをはじめとした仮想通貨ではそのルールによって 難易度調整 が行われます。
最も汎用的なルール
出力されるハッシュ値の最初のn文字分が0であること
これが最もよく使われるルールで、それ以外のハッシュ値が出るブロックはブロックチェーンのブロックとして認められません。
どうやってルール通りのハッシュ値を出す?
先の文章の Nonce(ノンス) を使用します。
ブロックチェーンのブロックの仕組みとして、
- 前のブロックのハッシュ値
- 取引情報
は与えられたものを使うしかありません。(改変したりしたらブロックチェーンの原則が崩壊する)
その為、ブロックの中にある、唯一の可変な値 Nonce(ノンス) を調整(という名の総当り)して、出力されるハッシュ値をルールに則る形に調整します。
この、狙い通りのハッシュ値が出るまでNonce(ノンス)をガチャる行為を マイニング と呼びます。
基本的にノンスガチャには莫大なCPU・GPUリソースがかかる(毎回ハッシュ化の計算をする)ため、ルールに則ったブロックを見つけた人には、報酬が支払われます(一定量のBTCの権利をもらえる)
(めちゃめちゃ運が良ければ、数回の計算でブロックを発掘できて12.5BTC(1600万円)が転がり込むことも?※ほぼ不可能です)
なんで価格が上下するの?
これに関しては現実世界の需要と供給による値動きと理由は一緒で、
金の価値が上下したり、株価が上下したり、日本円が上下するのと一緒です。
要するに、 需要が高まれば(沢山の人がほしいと思って買えば)値が上がるし、供給のほうが多くなれば(ほしいと思う人が減って売りが進めば)値が下がる のです。
Bitcoinにおいては、
BTCはマイニングでしか手に入らない
= 電気とCPU/GPUリソースを消費してBTCを得る形(ソロマイニングの場合は等価交換にはなりにくい)
です。
そのため、ブロックが発掘されるたびにBTCが市場に増えていきます。
しかしながら、マイニングの難易度調整機能によってブロック生成の時間が調整され、一気に市場に出回らないようにしているので、Bitcoin側のインフレにはなりにくいと言われています。
代わりに、ここ最近(2017/12/08)では、需要が恐ろしく高まってマイニングで生まれる報酬ビットコインの量の増加よりもほしいと思う人・額の増加が高まっていることによってビットコインの価格が急上昇しているということです。(もちろん、多分に個人的見解が含まれています。)
まとめ
いかがだったでしょうか?
自分も勉強不足でこの記事を書くにあたって勘違いに気づいたりしたのですが、この技術おもしろいです。
そして、技術的に面白いし実用性が見いだせることによって、沢山の人が興味を持っていて、それによって価値が上がり、その波に乗って利益を得たりもできるのです。
まだまだ自分も勉強不足ですが、めっちゃ面白い領域なので、これからも調べていこうと思います。
直近ではこのホワイトペーパー読むところから始めようかな。
- http://kogarashi.net/pitchblende/wp-content/uploads/2014/03/BitcoinWhitepaperJapanese.pdf
では、長々と書きましたが、読んでいただきありがとうございました!
もし、間違いや何か疑問に思うことがありましたらご連絡くださいませ…!
まだまだ自分も勉強中のため、勘違いしているところがあるかもしれませんので、よろしくお願いします!
ここから仮想通貨を一緒にはじめましょう!
bitFlyerは(手数料が比較的が高いですが)免許証とかなしで学生証とかでも登録できて、新規参入しやすいです!
coincheckはBitcoin以外の銘柄が色々おいていたり、比較的手数料が安いです!
このURLから飛んでもらえるとアフェリエイトが入ったりするので…始めるならぜひここからはいってくれると…嬉しいなぁ…(/ω・\)チラッ
そして、ためになったのであれば…
BTC: 3MdLmRkXorA1yHqecJy2HToHyVLLE5PJjy
BCH: 3MdLmRkXorA1yHqecJy2HToHyVLLE5PJjy
MONA: MSdhAey4fUEoZEAvfnQBkCaPHHLttkx4Gk
モナゲリンク:
と使い方 => http://dhpkww12.hatenablog.com/entry/2017/06/14/123425