【エンジニア目線】ブロックチェーンの大いなる可能性

ブロックチェーン

ここ数年ですっかり有名になった暗号通貨(仮想通貨)。

暗号通貨の雄であるビットコイン(Unicodeにも記号「」が追加されましたね)、スマートコントラクトがウリのイーサリアムなど、様々な暗号通貨やそのプロジェクトが存在します。

現状は投機対象としての色が強かったり、実験的なプロジェクトが多かったり、また各国の規制があるなど、通貨本来の使い方としてはまだまだといったところではありますが、その反面、将来性や発展途上ならではの魅力を感じるのも事実です。

エンジニアの方の中では、暗号通貨に使われる「ブロックチェーン」という技術に興味を持つ方も居ると思います。

とは言え、名前を聞いた事がある程度で、どういったものかよく知らないという方も意外に多いので、僕(ウェブアプリケーションメインのエンジニア)の目線で、それについて書いていこうと思います。

今更ながら、ブロックチェーンとは?

ブロックチェーンというのは、ビットコインをはじめとする暗号通貨の根幹を成す技術で、おおまかには

  • 取引(やりとり)の記録(誰が誰にいくら送金した、など)を繋げていく
  • 取引の記録は改ざんが困難
  • 繋がっている取引の記録を、全員で管理する

といった特徴があります。

ただ、これを聞くと、エンジニア的には

「データベースと何が違うんだ?何が画期的なんだ?」

と思う方も居ると思います。

一般的なDBシステムとの違い

確かに、単純に取引を記録していくだけであれば、履歴テーブルのようなものをMySQL等のような従来のDBに作れば容易に作れます。

しかしその場合はDB(のサーバ)が1つ存在しており、そこへ読み込んだり書き込んだりする事になりますが、ブロックチェーンの場合は取引に参加しているコンピュータがそれぞれデータを持っています。

  • 取引の記録は「トランザクション」と呼ぶ
  • トランザクションが持っている独自の値を「ハッシュ値」と呼ぶ
  • トランザクションやハッシュ値が入っている箱を「ブロック」と呼ぶ
  • ブロックが一連の取引記録として繋がっているので、この技術を「ブロックチェーン」と呼ぶ

ブロック同士は、手前のブロックのハッシュ値を持つ事で繋がっており、この値は取引内容を使って生成しています。

そのため、もし途中の記録が改ざんされると、それ以降のハッシュ値と合わなくなるので、改ざんが困難となります。

また、この取引のデータはどこかに1つだけ存在しているのではなく、世界中にあるネットワーク内のコンピュータが持ち合っています。

新たなブロックの生成(簡単に言うと、膨大な計算が必要)も、有志のコンピュータのリソースを使うのですが、ビットコインの場合はブロックを生成したリソースのアドレスへ、報酬としてビットコインが貰えます。

これがマイニングと呼ばれるものですが、この仕組みをPoW(Proof of Work)と呼びます。

まとめると、DBのようにデータを書き込んだり読み込んだり参照したりという事が出来るだけでなく、以下の特徴があります。

  • データが中央管理ではなくネットワーク内に分散していて管理者という概念がない
  • 改ざんされにくい
  • 通貨によってはネットワーク内の有志がブロックを生成するとその人へ報酬が貰える(マイニング)

ちなみにこのサイトは、エンジニアが手を動かしながら(JavaScriptの最低限の知識が必要です)ブロックチェーンの概要を知れるので、おすすめです。

なぜブロックチェーンが注目されるのか

ブロックチェーンについては、技術そのものも重要ですが、それによってどんなメリットがあるか、という事を考えると、注目されている事が腹落ちします。

一番注目すべき特徴は、「DBシステムのようにデータが1つの媒体ではなく、分散されている」という事です。

普通、DBやそれを利用したシステムを扱う場合は、そのサーバの管理者がいて、その人が運用をしています。(「中央集権型」と呼ばれる)

なので、その管理者が都合の良いように書き換える事が可能で、その書き換えた情報も、管理者以外にはブラックボックスとなっています。

しかし、ブロックチェーンの技術を使ったビットコインだと、「データが分散」「改ざんが困難」「取引が公開されている」という特徴があるので、管理者に操作されないというか、そもそも管理者という概念がありません。

それによって、誰にも操作されない、健全でクリアな取引が可能となります。(厳密には、51%問題と呼ばれる課題等があるのですが話が複雑になるので今回は省略します)

ただ、暗号通貨を普通の取引所(日本のコインチェックやビットフライヤーなど)で取引する場合、あくまでその取引所自体は中央集権型として存在しているので、分散型技術を中央集権で管理しているという形になりますので、注意です。

DEXと呼ばれる分散型の取引所もあるのですが、長くなってしまうので、それについては別記事で書く予定です。(ちなみに、中央集権型の取引所をCEXと呼びます)

ブロックチェーンによる中央集権型ではない分散型の技術は、特定の権力者(国で言えば政治家)に左右されない経済圏を作る事が可能で、それこそが最大の特徴であり、また今の世の中に対するアンチテーゼでもあります。

各国(特に先進国)が暗号通貨の普及に否定的なのは、そこにあります。(中央集権型でない世界になると、国の政治家たちといった権力者達がお役御免になるので)

ブロックチェーンには大きな可能性を感じる

僕は以前、ブロックチェーンや暗号通貨については、取り扱っている業務の現場にいた事があるので、そういう意味では身近な存在でした。

しかし、当時は

「ギャンブルみたいな金儲けが出来るからか盛り上がっているが、何が良いのかわからない」

といった温度感でした。

しかし今年になり、投資を始めようと暗号通貨を購入する機会があり、色々調べていると、

「管理者なしに取引やその信用担保が出来るとなると、インターネットという技術が世界の国際化を加速化させたように、ブロックチェーンは国際化どころか国という枠自体をなくすようなインパクトがあるな

と、今更ながらに思いはじめました。

それから興味深いと感じるようになり、それと同時にブロックチェーンという技術にも興味が湧くようになりました。

そもそも、組織に属するのが苦手でフリーランスになったし、ずっと日本という国に属するのも嫌だと感じたから海外移住したいと思っているので、そうなるのも自然だなと自分で思います。

ただ、ブロックチェーンについては前述した概要より実際はかなり複雑で、技術の応用についても、まだまだ試行錯誤のフェーズです。

また情報も既存技術に比べると少なくて、特に日本語となると、最新情報はあまり見かけませんし、技術的な課題もまだまだあります。

なので僕自身も少しずつ学習していけたらと思います。

タイトルとURLをコピーしました