ビットコインとは一体何なのか?
Wikipediaによると下記のとおりですが、これだと何のことやらさっぱりわからないですよね。一つ一つわかりやすく解説していきたいと思います。
ビットコイン(英: bitcoin)は、公共トランザクションログを利用しているオープンソースプロトコルに基づくPeer to Peer型の決済網および暗号通貨である。
わかりやすい言葉に置き換えると、ブロックチェーン(分散型台帳システム)を利用したお金ということです。このブロックチェーンがピア・ツー・ピアを採用しています。ピア・ツー・ピアって下記のようなイメージです。
従来のクライアントサーバー型では顧客情報は中央で管理していますが、P2Pは各人で分散管理しているイメージになります。例えば、銀行などは、各支店のデータを中央が一括管理していますよね?ビットコインは中央の管理者がおらず、世界中の人のパソコンで動いているというイメージです。
🐭 DAppsとは?
このことから、フェイスブックなどのアプリケーションは中央集権型と言えますが、ビットコインは管理者が存在しない非中央集権型アプリケーションといわれます。Decentralized Applicationsの略で、非中央集権型、もしくは自律分散型アプリケーションでと呼ばれます。因みにDAppsと書いて、ダップスと読むらしいです。
🐔 オープンソースとは?
オープンソースというのは、ワードプレスをイメージしてください。ワードプレスもソースコードを世界に公開しているので、勝手に改変してかっこいいテンプレをつくって販売したり、プラグイン(ちょっとした機能)を作って自由に販売できちゃう感じです。任天堂などの製品を勝手に改変してサービスを作って販売すると逮捕されちゃいますよね? Wikiの説明にあるオープンソースプロトコルとは、プロトコルが手順とか仕組みという意味ですので、ブロックチェーンの手順(仕組み)を公開してるイメージです。ですので、勝手にそれを使って、色々つくれちゃうんです。
😺 なぜ台帳なの?
取引がすべて記録されているから台帳なんです。ブロックチェーンは改ざん不可能な台帳として注目を集めましたが、一つの取引記録のハッシュを、次の取引に受け渡していきます。そうすることで新しいブロックを生成しているイメージです(これがブロックチェーンと言われる由来)。これを改ざんするとなるとすべての記録に遡る必要があるので、そんな膨大な労力をかけて不正をする人はいないということなのです。これに対して、従来のクライアントサーバー型であれば、内部の人間がデータを改変しようとすれば出来るわけです。
※因みにハッシュとは、暗号のベースになる技術で、一つの長いデータから短い文字列を作り出すものをハッシュ関数といいます。←このような手順を踏んで作り出されたものをハッシュと呼ぶ。この部分は意外に重要なのですが、非エンジニアには難しい概念かもしれませんね(汗)
🐶 マイニングとは何か?
わかりやすく例えるなら、私たちが、取引所からビットコインを買い付けしたり、太郎くんが花子さんに1BTCを送金したりする際の、事務処理といったイメージです。銀行であれば銀行員が事務処理しますが、ビットコインは世界中の人が事務処理してくれるイメージです。その処理する内容のことをトランザクションといいます。このトランザクションに応じてビットコインが支払われるのです。このようにトランザクションに応じた手数料をもらうことをマイニングといいます。因みに、中国ではこのマイニングにより億万長者がたくさん誕生しましたが、日本の電気代は高くマイニングをしても元がとれません。
※補足:ビットコインの世界でいうトランザクションとは、一つのブロックの中にトランザクションが複数入っている状態を指します。具体的には、太郎が花子に5BTC送ったという履歴が記録されています。言葉では理解しづらいので実際の動画を見てみましょう。
実際にテスト環境でマイニングをやってみます。
これまでお話してきたことも、実際にやってみないとイメージがわかないと思いますので、こちらの動画をご覧ください。
※Gethというのは、簡単に言うと、時価総額第二位のイーサリアムという通貨をマイニングしたり、話題のスマートコントラクトを作るために導入するものです。ゲスとよみます。この言葉を知ってるだけでエンジニアから凄い!と思われちゃいます。 Gethの詳細はこちらから