はじめに
近年の仮想通貨ブームによりブロックチェーンという用語が多くの場所で聞かれるようになりました。ビットコイン、イーサリアムはじめ多くの方が資産運用の一貫としてこれら技術に触れる機会が増えて来ていると思います。しかしブロックチェーンの概念は漠然と理解はしているものの、実際はどのような技術で動いているのか、そしてなぜ通貨として使われ、今後どのような分野で応用されていくかを意識する方は少ないと思います。
本blogではブロックチェーンの基本から今後のビジネスでの利用シーンをとらえつつ、VMware Blockchain とは何かを皆さまと数回に分けて一緒に考えていく機会となれば幸いです。
ブロックチェーンとはなにか?
一般的には下記のような定義ができます。
- 取引データをブロック単位で台帳に記載して複数のコンピュータ間(レプリカノード)に保存
- 各コンピュータ間で台帳が改ざんされていないか相互検証を行う
- データのブロックをチェーン状につないで蓄積し、改ざん等の不正行為から情報を守る
複数のレプリカノード達を接続してブロックチェーンネットワークを構成していきますが、一般的に次の2通りの実施形態があります。
- 自由参加型(Permission less):不特定多数がノードに参加(ビットコイン等が採用)
- 許可型(Permissioned):管理者が許可したノードのみ参加
VMware Blockchain は許可型のブロックチェーンネットワークを構成します。具体的には次のような構成要素、状態によって成り立ちます。
- 分散ネットワーク化したレプリカノード達
- 各レプリカに台帳を保存(分散型台帳技術 / Distributed Ledger Technology)
- 各レプリカの相互検証方法
- 耐障害性に優れた通信プロトコル
- コンセンサス・アルゴリズム
- スマートコントラクト
つまり、図1のような構成になることがお分かり頂けると思いますが、ここでスマートコントラクトと言う概念が現れます。
スマートコントラクトとは
一般的に下記のような定義があります。
- ある条件が満たされたときにトランザクション(取引)が自動的に実行する
- トランザクションが第三者に介入されない
よく自動販売機が例としてあげられます。これは購入者が商品を選択し商品を受け取る間、取引が自動的に行われ、第三者による介入がないことか来ています。
- 購入者が商品を選択⇒代金投入⇒商品の払い出し
しかし、このスマートコントラクトとブロックチェーンと何が関係しているのでしょうか?
先ほどの台帳の中には大変重要な情報が記述されており、この情報を利用者が更新する必要が出てきた場合(例えば新しい取引を行った等)レプリカノード間で台帳の検証を行い情報の追加を行うかどうか合意形成を取る必要があります。つまり各ノードが一定の条件に達し、台帳の情報を更新する際にこのスマートコントラクトと言う概念においてトランザクションが自動的に実行されることを意味します。
トランザクション(取引)が自動的に実行されるとはどういうことでしょうか?
自動販売機の例にもどり購入者をA、自販機をBとするとAとB間で商品の売買契約が成立したことになりますが、スマートコントラクトの世界観ではこれをプログラム言語化することで自動化を行います。
よってスマートコントラクトとは…
- 資産のやり取り、権利の譲渡等の契約事項をプログラム言語化しBlockchain 環境上で安全に実行可能にするプラットフォーム。
これらを体現する言語して下記2つがメジャーなスマートコントラクト言語として知られています。
- DAML (Digital Asset Model Language):Digital Asset 社提供
- Solidity:Ethereum にてスマートコントラクトを記述する言語、SDK
つまりブロックチェーンとはレプリカノード間の合意形成を安全に、素早く、自動的に行うことが必要であり、スマートコントラクトはこれら要素を実現する技術となります。
ブロックチェーンはどのような分野で利用されるか?
ブロックチェーンと言えばビットコインに代表されるように金融関係で多くの実績がありますが仮想通貨以外の分野でも多く利用されています。そしてそれらユースケースには2つ共通点があります。
- Multi-party Application:一つのトランザクションに複数の関係者が必要となる。
- Single Source Of Truth :(SSOT / 信頼できる唯一の情報源)が求められる。
1つ目はある取引を行う際に複数の企業もしくは部署を跨ぐ必要がある。
2つ目はそれらセクションを跨いでも単一の情報源を信頼して処理を進める必要がある。
例:稟議書
ある担当者が稟議書を作成しハンコを押印し次の担当者たちへリレーする(課長→部長→社長)
各担当者がスタンプラリーをしている際に、ハンコを信頼できる唯一の情報源(SSOT)として確認しながら稟議書を次の担当者に渡しています。これはまさにあるトランザクションを行うのに複数の関係者を跨いでいるのでマルチパーティアプリケーションと言えます。
そしてハンコをSSOT ととらえているのはブロックチェーンネットワークにおいて各ノードに保管されている台帳を相互に監視/検証しあっている状態があるため、台帳の情報は十分信頼が可能な情報といえます。
よってこのような複数の企業や部署を跨ぐ必要がある業務をこなす場合、各担当者がブロックチェーンに記載されている情報を参照しながら進めることで、極めて安全な処理/決済を進めることが可能になります。
VMware Blockchain はすでに幾つかの金融機関で利用されており、上記のユースケースに則しています。
まとめ
仮想通貨で注目を浴びたブロックチェーンはすでにあらゆる商業分野において活用されはじめています。特に決済関係において複数の企業や部署を跨ぐような処理を安全かつ高速に処理を進める必要がある分野でスマートコントラクトと言う新しい概念がそれらを助け付加価値を与えています。
次回第二回はVMware Blockchain の具体的な内容について触れていきたいと思います。