スマートコントラクトが理解できない・・・
仮想通貨のイーサリアムやLISKなどに採用されている土台的な仕組みとして
”スマートコントラクト”というものがあります。
この”スマートコントラクト”という言葉…かなり理解するのが難しくないですか?
私も初めて”スマートコントラクト”という言葉をネットで調べた時には全く意味が理解できませんでした。
スマートコントラクトは
「ブロックチェーン上で契約を自動化する仕組み」というような解説がされていることが多いですが、
「契約って何?」
「自動化されるってどういうこと?」
なんて疑問が浮かんできて、なかなかイメージが出来ませんでした。
しかし、理解できないままでは落ち着かず、ネットや本で調べるうちにだんだんと仕組みが理解できるようになったので、いまいち”スマートコントラクト”が理解できていないあなたに、私が理解したスマートコントラクトの仕組みについてシェアしたいと思います。
他のサイトや本などでは理解できなかったスマートコントラクトを少しでも理解して貰えるように解説していきます。
目次
スマートコントラクトの仕組みをブロックチェーンを知らなくても理解できる解説

スマートコントラクトの仕組みを理解する際に、まず初めにぶち当たる壁がブロックチェーンだと思います。
ほとんどのスマートコントラクトの説明は、ブロックチェーンが理解できていることが前提で説明が進んでいくので話がうまく呑み込めない場合が多いです。
そこでまずは、ブロックチェーンの概念を取り払った状態でスマートコントラクトの解説をしていきます。
スマートコントラクトの仕組み=自動販売機の仕組み?
スマートコントラクトの仕組みは、自動販売機の仕組みに例えられることがよくあります。
自動販売機にお金を入れてボタンをポチっと押すと、飲み物が出てきますよね。
120円の飲み物を買う時に200円入れると80円のおつりが返ってきます。
このように、私たちが自動販売機で飲み物を買う時に必要なのは、
”お金を入れる” ”ボタンを押す”
という2つの手順だけで、他の手順は全て自動化されています。
例えば、先ほどのように余分にお金を入れると、おつりが自動で計算されて返却口に出てきます。
また、ボタンを押すだけで、欲しい飲み物が選択されて下の取り出し口に出てきます。
さらに、1円玉や5円玉を入れても自動で判別されて返却されるようになっています。
以上のように私たちが意識しなくても、自動販売機の中で色んなことが自動で勝手に行われているんです。
実は、今まで説明してきたことが、
スマートコントラクトの「契約を自動化する仕組み」に当てはまります。
まず、自動販売機で言う”契約”とは
- ボタンを押された飲み物を取り出し口に持ってくる
- ボタンを押されたとき、余分にお金が入れられていたらおつりを計算する
- 計算されたおつりの分だけ返却口に返す
- 1円玉や5円玉が入った場合は、すぐに返却する
などの、あらかじめ決められた手順・約束のようなものです。
そして、”自動化”とは、これらの”契約”を私たちが意識しなくても勝手に実行してくれるということです。
だから、私たちが自動販売機で飲み物を買う時に、わざわざおつりの計算をする必要はありませんし、欲しい飲み物を自動販売機の鍵を開けて中から取り出す必要もありません。
”お金を入れてボタンを押す”以外の手順はすべて自動販売機の中で勝手にやってくれます。
”契約”
・ボタンを押された飲み物を取り出し口に持ってくる
・ボタンを押されたとき、余分にお金が入れられていたらおつりを計算する
などなど…
”自動化”
”契約”の内容を知らなくても勝手に実行してくれるということ
スマートコントラクトの仕組みをイーサリアムの事例を用いて解説

先ほどまでは、スマートコントラクトをブロックチェーンの概念なしで説明してきました。
これから先の解説はブロックチェーンについて、少し理解しておいた方がわかりやすと思うので、ブロックチェーンについてよく知らないという場合はこちらの記事を参考にしてみて下さい。
それでは、イーサリアムの事例を用いてスマートコントラクトの仕組みを解説していきます。
※ここでは、”契約”とは何か?
どの”契約”を自動化するのか?
ブロックチェーンに何の情報を保存するのか?
について考えながら読み進めることをオススメします。
イーサリアムを活用した難民支援プロジェクト

国連(国際連合:UN)では、イーサリアムを利用して難民を支援するプロジェクトを計画しているようです。
内容をざっくり説明すると、難民に食料などの物資を受け渡すというプロジェクトです。
その際に仮想通貨を活用して難民一人一人に仮想通貨を受け渡し、その仮想通貨と引き換えにお店で食料などを受け取れるようにしようと考えました。
しかし、難民はPCやスマホ、タブレットなどの機器を持っていません。
ということは、すべての難民に食料などを受け渡すことが出来ないということになります。
そこで注目されたのがイーサリアムでした。
イーサリアムなら、スマートコントラクトの仕組みを使ってブロックチェーン上に契約や取引の情報を保存することが出来ます。
つまり、イーサリアムを活用することで難民一人一人がPCやスマホを持ち歩かなくても物資の支援が出来るということです。
具体的にどのようにイーサリアムを使うのか説明していきます。
イーサリアムが難民を救済
まず国連は難民キャンプがある地域の数十店舗に”クーポン”のデータを配布します。
そして、難民一人一人がクーポンが配布されたお店に行って、国連から配布されたクーポンを使用して食料などを受け取るのですが、ここでイーサリアムが活躍します。
難民はクーポンを使用する際に目の虹彩認証で個人を判別します。
その虹彩の情報やクーポン使用・未使用の情報をイーサリアムのブロックチェーン上に保存します。
こうして個人のデータを保存しておくことで、同じ人が何度もお店に行って食料を沢山受け取ったり、そのせいで食料を受け取れない人が出ないように管理しています。
イーサリアムを難民支援に使うメリットとは?
このプロジェクトに、スマートコントラクトの仕組みを採用しているイーサリアムを使うメリットをまとめておきます。
- 難民一人一人がPCやスマホを持っていなくても、物資を受け取れる
- 難民がクーポンの管理をする必要がない
- 個人を判別する虹彩情報をブロックチェーン上に保存することが出来る
- 個人を判別しクーポンの使用・未使用の情報を保存することで、物資を一人一人に行き渡らせることが出来る
- データの管理をイーサリアムのブロックチェーンが自動で行ってくれるので、管理コストを削減できる
ビットコインでは実現不可能!なぜイーサリアムなのか?
同じ事をビットコインのブロックチェーンで実現させようとしても、残念ながら実現させることはできないんです。
ビットコインのブロックチェーンには、誰から誰に何ビットコイン送金されたかなどの情報しか保存できず、目の虹彩情報やクーポンを使ったかどうかなどの情報は保存できません。
なので、このプロジェクトにはスマートコントラクトを採用しているイーサリアムが使われているというわけです。
スマートコントラクトの仕組み:まとめ

イーサリアムを使った難民支援プロジェクトでの、”契約”が何かイメージ出来ましたか?
私はこのプロジェクトに関わっている人間ではないので、何が”契約”としてプログラミングされているのかは分かりませんが、ざっくり次のような内容の”契約”があると考えています。
- 虹彩情報を読み込んで個人を判定する
- 個人を判別してクーポンの使用・未使用を判定する
- クーポンが使用されたときに、クーポン未使用⇒使用済みという情報をブロックチェーンに保存する
- 虹彩情報を読み込んでクーポン未使用の場合のみ物資を受け取る許可を出す
- ・・・
ざっと思いついたのはこのくらいです。
もちろんもっと複雑なプログラムで、様々な”契約”があると思いますが、今回はこのくらいで勘弁してください…
そして、スマートコントラクトを組み込んでいるイーサリアムは、これらの”契約”を誰の手も介さずに自動で実行してくれます。
なので、管理コストを極限まで抑えることが出来るってわけです。
また、イーサリアムのブロックチェーンには、個人の名前・虹彩などの情報やクーポン、クーポン使用・未使用などの情報が保存されます(他にも色々な情報が保存されます)。
最後に
スマートコントラクトで自動化されている”契約”やブロックチェーン上に何を保存するのかなどは、あらかじめプログラミングされています。
これによって管理コストを削減でき、更にはブロックチェーン上にデータを保存しているので、データが改ざんされる可能性は極めて低いと考えられています。
このようにコスト面や安全面から見てもスマートコントラクトは、かなり実用性がある仕組みで、将来様々な場面で活用されることが期待されています。
今の内から、スマートコントラクトを採用しているイーサリアムやLISKなどの仮想通貨に興味を持ってみてもいいかも知れませんね。
コメントを残す