ブロックチェーン関連のニュースが連日のように取り上げられています。
例えば、下記のようなニュースを目にしたことはあるのではないでしょうか。
また、ガートナーのハイプ・サイクルに記載されている通り、一時的な流行を抜けて本格的な活用が広がる事が見込まれています。
一方で、その仕組みや活用例などよくわからないという方も多いのではないでしょうか。
そこで今回はブロックチェーンの仕組みや活用例について解説していきます。
Contents
1. ブロックチェーンとは
いくつかの「取引」をまとめた記録(ブロック)を鎖(チェーン)のようにつなげて管理する仕組みです。
この「取引」はビットコインのような暗号資産(仮想通貨)だけに限りません。
金融・製造・医療・登記などあらゆる分野に適用されます。
ブロックチェーンは単一の技術ではなく、分散型台帳技術(DLT:Distributed Ledger Technology)と呼ばれる分散型のデータベース(台帳)の実装手段の1つとして、ハッシュ・電子署名・コンセンサスアルゴリズムなど複数の要素技術を組み合わせた総称です。
その組み合わせにより特性も変わりますが、概ね以下のような特徴を持ちます。
非中央集権型、自立分散型
多数の参加者(≠全参加者)が全ての取引履歴である台帳を共有(複製を保持)します。
従来のような取引の信頼性を担保する第三者機関(銀行や企業など)を必要としません。
また、台帳情報が共有されているため、高い透明性を誇ります。
追記専用
台帳に対しては取引の追加のみが可能であり、削除や修正は出来ません。
耐改ざん性
各ブロックには直前のブロックから生成される値が含まれています。
この値は元の情報が少しでも変わるとまったく違う値となり、計算にも時間がかかります。
改ざんには刻一刻と追加される新規ブロックも含め、対象以降の全ブロックについての修正が必要となるため、ブロックが長くなるほど改ざんは不可能とされています。
透明性、トレーサビリティ(追跡可能性)
参加者が台帳を共有しているため、いつでも自由に個々の取引内容を参照・追跡することが可能です。
耐障害性、高可用性
一部の参加者のコンピュータに問題が生じても残りの多数の参加者が台帳を保持しているため、ブロックチェーンネットワーク全体としては何ら問題となりません。
※経済産業省:ブロックチェーン技術を利用したサービスに関する国内外動向調査 より
筆者がブロックチェーンを凄いと感じたのは、上記特徴を備える事で取引成立に不可欠な「信頼」を銀行や企業といった第三者機関からブロックチェーンという仕組みそのものに変えたという事です。
まさにパラダイムシフトと呼ぶにふさわしく、世界中で注目・利用されているも納得出来るのではないでしょうか。
余談ではありますが日本ブロックチェーン協会ではブロックチェーンを以下のように定義しています。
1) ビザンチン障害を含む不特定多数のノードを用い、
時間の経過とともにその時点の合意が覆る確率が0へ収束するプロトコル、
またはその実装をブロックチェーンと呼ぶ。
2) 電子署名とハッシュポインタを使用し改竄検出が容易なデータ構造を持ち、且つ、
当該データをネットワーク上に分散する多数のノードに保持させることで、
高可用性及びデータ同一性等を実現する技術を広義のブロックチェーンと呼ぶ。
2. ブロックチェーンの活用例
前述の通りブロックチェーンは様々な分野で活用されています。
ここでは、その実例をいくつか紹介します。
暗号資産(crypto-assets)
ビットコインやイーサなどに代表されるデジタル上でのみ取引される通貨のようなものです。
ブロックチェーンは元々ビットコインの実装手段として生まれた技術でもあります。
名称として一般的に浸透しているのは「仮想通貨」ですが、日本政府は法定通貨(日本円や米国ドルなど)と区別するため、2019年5月の資金決済法改正より「仮想通貨」から「暗号資産」という名称に変更しています。
「仮想→暗号」は海外での一般的表現であるcryptoに合わせただけである一方、「資産→通貨」に暗号資産の現状と当局の思いが込められているように感じます。
日本銀行:お金の機能とは?によれば、通貨には下記3機能が必要とされていますが、暗号資産は2.および3.がまだ不十分であると判断されたのではないでしょうか。
- 価値の保存機能
- 交換機能 (→暗号資産は使える場面が限定的)
- 価値の尺度機能 (→暗号資産は値動きが激しい)
スマートコントラクト
スマートコントラクトとは、第三者を介さずに契約が履行される仕組みです。
わかりやすい例としては自動販売機が挙げられます。
※事前に金額が提示されており、利用者が必要な金額を投入してボタンを押すと自動的に商品が提供される。
ブロックチェーンとの組み合わせにより、活用の幅が飛躍的に広がりました。
いくつか事例を紹介します。
NFT(Non-Fungible Token:非代替性トークン)
データ所有権などの権利を記録したデジタル資産です。
トークンはデジタル上での何らかの価値を表現したもの、非代替は美術品や土地といった替わりがなく数量や単位で表せないものを指します。(代替可能なものの例はお金やポイントカードのポイントなど)
従来のデジタル資産は簡単にコピーできるため資産価値が生まれにくいといった問題がありましたが、スマートコントラクトを利用してNFTの所有者や取引履歴を記録する事で唯一無二のものとして扱えるようになり、デジタル画像やゲーム内アイテムなどに「希少性」を持たせ、そのオリジナルを「所有」するという新しい価値を生み出しました。
DeFi(Decentralized Finance:分散型金融)
中央管理者のいない金融仲介システムです。
金融サービスには取引(株式・債権など)やレンディング(貸付)など様々なサービスが存在していますが、これまでは金融機関による中央集権的な管理が必須でした。
これをスマートコントラクトに置き換える事で信用履歴審査や本人確認が不要となり、無人での管理・運用が可能となったため、誰もが・何時でも・何処でも・より早く・より安くサービスを受けられるようになり、利用が急速に拡大しています。
3. ブロックチェーンの仕組み
最初に述べた通り、ブロックチェーンは複数の要素技術の組み合わせです。
ここでは、ブロックチェーンを構成するそれぞれの要素技術について説明します。
P2P(peer to peer)
複数のコンピュータが1対1で直接通信を行う接続方式です。
従来のクライアント・サーバ方式では、情報を保管し機能を提供する「サーバ」とそれを利用する「クライアント」で役割や保持する機能が明確に分かれていました。
この方式ではサーバに処理が集中する事から、サーバが使えなくなるとシステム全体が使えなくる、高性能(高価)なサーバが必要といった問題点がありました。
これに対してP2PではPeer(同等・仲間)という言葉の意味通り、各コンピュータにサーバ・クライアント両方の役割や機能を持たせる事で、一部のコンピュータに問題が生じてもシステム全体が稼働可能となり、高価なサーバも不要となりました。
ハッシュ
あるデータを変換して得られる固定長のデータをハッシュ値、その変換を担う数学的関数をハッシュ関数と呼び、下記の特徴を持ちます。
- 入力データの長さは任意だが出力は固定長
- 同じハッシュ関数に同じ入力を与えた場合の出力が変わらない(ランダム要素が無い) また、ブロックチェーンでは下記特徴も加えた暗号学的ハッシュ関数が使用されます。
- 入力データがわずかでも変われば、出力が大きく変わる
- ハッシュ値から入力データを復元するのが事実上不可能
- ハッシュ値が一致する2つの入力データ見つけ出すのが事実上不可能
ブロックチェーンではこれらの特徴を利用し、新しいブロックの作成時に前のブロックのハッシュ値を保持する事でデータの改ざんを容易に検出可能としています。
ハッシュ関数のアルゴリズムは「MD5」「SHA-2」「RIPEMD-160」など複数存在します。
下記はSHA-2のバリエーションの1つであるSHA-256を利用した際のハッシュ化の例です。
電子署名
デジタル上のデータに対し、下記2点の妥当性を証明する仕組みです。
- 本人証明:署名者により作成されたものであること
- 非改ざん証明:データが改ざんされていないこと
電子署名では公開鍵暗号基盤(PKI:Public Key Infrastructure)と呼ばれる方式が用いられます。
この方式では署名者が管理する「秘密鍵」と誰でも利用可能な「公開鍵」のペアを作成しますが、片方の鍵で暗号化したデータは、ペアとなる鍵以外では復号(元のデータに戻す事)できないという特徴があります。
鍵の生成方法としてはRSA・楕円曲線暗号などが存在しますが、いずれも暗号文が平文よりも大きくなってしまうため、前述のハッシュを用いて本文ではなく本文から生成したハッシュ値を暗号化します。
電子署名の目的にデータ本文の暗号化は含まれません。
紙文書の印鑑や署名と同様に当事者以外から読めても問題ないという考えです。
コンセンサスアルゴリズム
ブロックチェーンへのブロック追加の際に、各参加者が適切なものかを確認・合意(コンセンサス)するための仕組みです。
P2Pネットワークでは、故意・悪意を問わず参加者から不完全なデータが送られる可能性があります。
このため、ブロックを誰が作成するのか、各参加者が届いたデータをどう正しいと判断するのかを決めておく必要があります。
様々なコンセンサスアルゴリズムが考案・利用されていますが、以下に代表的なものを紹介します。
PoW(Proof of Work)
最も早く計算処理を実施した人がブロックを追加できる方式です。
暗号資産ではビットコイン(BTC)など幅広く使用されているベーシックな方式です。
下図に示すナンス(Nonce:umber used once)と呼ばれる値を計算し、最初に発見した参加者がブロック追加の権利と報酬として暗号資産を得る事が出来ます。
ハッシュの特性上、ナンスを見つけるのは運任せの総当たりによる膨大な計算が必要になりますが、各参加者の検証はとても容易です。
また、先頭n桁部分を変更する事で難易度調整が可能で、ビットコインではブロックの生成時間が約10分となるように2016ブロック毎に難易度が調整されています。
PoS(Proof of Stake)
暗号資産の保有量が多い参加者ほどブロックを追加できる確率が高くなる方式です。
暗号資産ではポルカドット(DOT)などで使用される他、イーサ(ETH)でもPoWからPoSへの移行が予定されています。(プラットホームであるイーサリアム2.0のフェーズ2より)
PoSではPoWで問題となっていた環境問題(膨大な計算量により大量の電力が消費される)が解消されます。
一方で、資産が保有されやすくなるため流動性の低下や中央集権化の課題が指摘されています。
PoI(Proof of Importance)
PoSの課題点を克服するため、保有量以外に取引回数や取引量などの要素を加え流動性を考慮した方式です。
暗号資産ではネム(XEM)に採用されています。
” ITで、どこまで行けるか ” 私たちボンズテックは設立以来、金融系システムの開発に強みを持っています。 最近では、技術力を高く評価していただき、他業界からお声がけをいただく機会も増えてきました。 「IT×漁業」なんてこともやってます。 ITで、どこまで行けるか。 私たちの技術はどこまで通用するのだろうか。 ボンズテックの開発意欲は留まることを知りません。 まだ見ぬ世界を、ITで。 ボンズテックではこれまでの貴方の経験を活かした仕事をご用意いたします。 ぜひ、これからも成長を続けるボンズテックで貴方も一緒に働いてみませんか? ボンズテックの採用情報はこちらから