仮想通貨比較 仮想通貨取引所比較 ニュース

Smartcontract

スマートコントラクトとは?仕組みや使用事例について

スマートコントラクトとは、予め条件が満たされたとき、取引を自動実行する仕組みのことを言います。この「契約の自動化」の仕組みと、実際の使用事例について、メリット・デメリットを交えながらご紹介致します。

CoinHack Newsで申し込み数の多い仮想通貨取引所
2019/12/14 現在
Ranking 1st DeCurret
ディーカレットは、ビットコインやリップル、ライトコインなどのデジタル通貨の取引を担う金融サービスを提供しています。 期間限定で1,000円をプレゼントするキャンペーン開催中!
Ranking 2nd Coincheck
ビットコインを簡単購入するならCoincheck。イーサリアムやリップル、モナコインなどの話題の仮想通貨も取り扱っています。
Ranking 3rd BITPoint
手数料無料で仮想通貨取引を行うことができます。セキュリティ管理がしっかりとされているので初心者にもオススメの取引所です!

スマートコントラクトとは?

スマートコントラクト

スマートコントラクトとは、あらかじめ定められた条件が満たされたとき、取引を自動実行する仕組みを指します。

例えば、「指定したアドレスへ0.1ETH送られてきたら、送り元のアドレスにトークンを送付する」といったプログラムをあらかじめ定義しておくと、人が関与することなく自動的にプログラムが実行されます。

決済までの取引行為が自動化されるため、スマートコントラクトは「契約の自動化」と言い換えることができます。

メリットは、支払いが行われるまでの期間を短縮できたり、料金を支払ったのにサービスが提供されないといった不正を防止したり、仲介者を介さないことによるコストを削減できたりすることです。

スマートコントラクトが初めて実装されたのは、イーサリアムという仮想通貨のブロックチェーンです。

取引内容と通貨の送金情報が紐づくため、仮想通貨の取引情報のみが記録されている通常のブロックチェーンよりも、幅広い分野に活用できます。

スマートコントラクトの仕組み

スマートコントラクトの仕組みスマートコントラクトを実行するまでの流れは、以下のとおりです。

  • 1 契約の定義
  • 2 イベントの発生
  • 3 契約執行・価値交換
  • 4 決済
管理者は、「1 契約の定義」で「どんなことが発生したらどんなことを行うか」といったプログラムをあらかじめ定義しておきます。

「2 イベントの発生」~「4 決済」においては、管理者は関与しなくてもプログラムが自動的に執行されます。

それぞれのプロセスを、詳しく見ていきましょう。

契約の定義

契約の定義のフェーズでは、管理者はプログラミング言語を用い、スマートコントラクトを事前定義します。

プログラムが発動する「執行条件」と、どのようにプログラムが動くかといった「執行内容」をあらかじめ定義します。

スマートコントラクトの記述に用いられる言語は、イーサリアムではSolidty、LISKではJavaScrip、NEOではC#、VB.Net、F#、Java、およびKotlinとなっており、スマートコントラクトを利用するプラットフォームによって異なります。

イベントの発生

「イベントの発生フェーズ」では、プログラム発動のきっかけとなる信号がプログラムに送られます。

例えば、「外部アカウントから通貨が送金される」、「外の気温が30度以上になったことがセンサーから送信される」といった外部からの信号が、スマートコントラクトのプログラム発動のきっかけとなります。

これらの「プログラム発動のきっかけとなる信号」は、あらかじめスマートコントラクトプログラムに定義されたものです。

契約執行・価値交換

「契約執行・価値交換」のフェーズでは、あらかじめ定義された条件に従ってプログラムが実行されます。

プログラムが発動する外部信号をきっかけに、「送金元のアドレスにトークンを10個送付する」や「車のキーとなるデジタル証明書を送付する」などといったサービスが、契約を結んだ方に提供されます)。

この契約執行の際に送付されるのは、トークンや車のキーとなるデジタル証明、不動産の取引証明書などデジタル形式のものとなります。

決済

決済のフェーズでは、仮想通貨による決済が行われます。

例えば、「商品を自宅で受け取ったというデータが送信された」ことをきっかけにプログラムが発動し、自動的に「商品代金の決済が行われる」といったことが可能です。

スマートコントラクトのメリット

スマートコントラクトのメリットスマートコントラクトの仕組みについてはご理解いただけたと思います。

では、スマートコントラクトを利用するとき、得られるメリットはどのようなものがあるでしょうか。

以下の順番に見ていきましょう。
  • コスト削減
  • データ改ざん防止

コスト削減

スマートコントラクトの最も大きなメリットは、コストの削減です。

従来、見知らぬ人同士が取引を行うには、信頼できる第三者機関を必要とします。

例えば、インターネット上で商品を購入するときは、お店側は「きちんと支払ってもらえるか」といったことが気になりますし、消費者側は「きちんと商品は届くのか」と不安になります。

ですから、商品と代金の安全な交換を保証してくれる、クレジットカード会社等に代金の支払いを仲介してもらいます。

万が一商品が届かないときは、クレジットカード会社に連絡すると支払いをキャンセルできます。

ただし、第三者機関が取引に介在することで、仲介手数料が発生します。

スマートコントラクトでは、契約が自動的に履行されることが保証されており、安心して買い手と売り手が直接取引を行えるため、第三者機関を必要としません。

ですから、従来の取引よりもコスト削減ができるとされています。

データの改ざん防止

スマートコントラクトのデータの改ざん防止において、ブロックチェーンが大きな役割を果たします。

なぜなら、ブロックチェーン技術は極めて改ざんされにくいシステムだからです。

ブロックチェーンのデータの更新作業を行うコンピュータは、公平な競争を基に選ばれ、さらに更新されたデータが正しいかどうか他の多数のコンピュータが再検証を行います。

また、ブロックチェーンを改ざんするには、更新されるデータを以後すべて改ざんしなくてはいけないため、容易ではありません。

スマートコントラクトがブロックチェーンに実装されることで、第三者が実行された取引の内容を改ざんすることは不可能となり、信頼性が高いシステムとなります。

スマートコントラクトのデメリット

スマートコントラクトのデメリットスマートコントラクトのメリットは、コスト削減とデータの改ざん防止ということはご理解いただけたと思います。

では、スマートコントラクトにおけるデメリットには、どういったものがあるのでしょうか?

以下の順番に見ていきましょう。
  • 契約の変更ができない
  • プログラミング言語で契約内容が書かれている

契約の変更ができない

スマートコントラクトのデメリットは、プログラムで事前にきっちりと定義されるため、契約に交渉の余地が入らないことです。

通常の契約交渉においては、値引きしたり納期を延ばしたりなど、一つ一つの契約によって契約内容に違いがあるもの。

しかし、スマートコントラクトでは、取引内容をひとつひとつ変えることは仕組み上不可能です。

ですから、もし契約内容を変更したい場合にはスマートコントラクトを利用することができず、だれかが調整を行う必要があります。

ですから、スマートコントラクトは契約交渉のない取引にしか採用することができず、なかなか活用が進まない要因のひとつとなっています。

プログラミング言語で契約内容が書かれている

もう一つのスマートコントラクトのデメリットは、スマートコントラクトを定義するのにプログラミング言語を用いる必要があり、現在行っている契約をそのまま移行できないことです。

書類やコミュニケーションをもとに行っていた契約の、微妙なニュアンスの言葉をプログラミング言語に変換することは大変難しく、これまで行ってきた契約内容をスリム化する必要が出てきます。

人間の言葉を完全にプログラミング言語に置き換えることが難しいため、このようなデメリットがあります。

スマートコントラクトとイーサリアムの関係

スマートコントラクトとイーサリアムの関係ビットコインに次ぐ時価総額を持つイーサリアムは、スマートコントラクトの仕組みを初めて実装したブロックチェーンプロジェクトです。

この章では、スマートコントラクトとイーサリアムの関係性について見ていきましょう。

具体的には
  • イーサリアムとは?
  • スマートコントラクトを実装するために開発された側面を持つイーサリアム
の順番に解説します。

イーサリアムとは?

イーサリアムとは、2014年にヴィタリック・ブテリン氏によって開発されたブロックチェーンのプラットフォームです。

イーサリアムの特徴は、アプリケーションを作成するプラットフォームとなることです。

ビットコインのブロックチェーンでもアプリケーションを作成することはできましたが、融通が利かず、作られるアプリケーションはほとんどありませんでした。

開発者のブテリン氏は、世界中の仮想通貨開発者たちの「もっとたくさんの機能をもったアプリケーションを作成したい」という要望に応えるため、アプリケーションプラットフォームとなるイーサリアムを開発しました。

なお、イーサリアムで発行される通貨ETH(イーサ)は、イーサリアム上で動作するアプリケーションを動かすときに消費されます。

スマートコントラクトを導入するために開発された側面を持つイーサリアム

イーサリアムは、アプリケーションのプラットフォームとなることはご理解いただけたと思います。

では、アプリケーションのプラットフォームとなることと、スマートコントラクトはどのような関係があるのでしょうか?

実は、イーサリアム上で実行されるアプリケーションは、スマートコントラクトを利用して開発されます。

スマートコントラクトは、設定された条件を満たすと自動的にプログラムが実行するように記述されたコードであるため、このスマートコントラクトを利用してイーサリアム上でさまざまなアプリケーションが開発されています。

ですから、イーサリアムが開発された背景には、スマートコントラクトを実装するといった側面があります。

イーサリアム以外でスマートコントラクトを導入している仮想通貨

イーサリアムが、ブロックチェーン上にスマートコントラクトを実装した初めてのシステムであることはご理解いただけたと思います。

では、イーサリアム以外にもスマートコントラクトを実装した仮想通貨はあるのでしょうか?

実は、以下の仮想通貨においても、スマートコントラクトが実装されています。
  • NEO(NEO)
  • LISK(LISK)
  • EOS(EOS)
  • Ethereum Classic(ETC)
  • VeChain(VEN)
LISK(リスク)においては、スマートコントラクトを記述する言語に、プログラマーの多いJavaScriptを採用しており、一般的なプログラマーが参加しやすいことが特徴です。

スマートコントラクトの使用事例

スマートコントラクトの使用事例スマートコントラクトの概念は、1996年にコンピュータ科学者のNick Szabo氏によって生み出されました。

論文のなかで、Szabo氏は、「コンピュータは見知らぬ人同士で取引を行うことを可能にしたが、従来の契約をそのままコンピュータに引き継ぐことは難しい。だから、人間が契約書類と言語で行なっていた契約を、コンピュータが読める言語に置き換え、コンピュータが契約を履行する仕組みが求められる。」と言及しています。

ここでは、スマートコントラクトの概念を実装している以下の3つについて見ていきます。
  • 自動販売機
  • DAO(自律型自動化組織)
  • DApps(分散化アプリケーション)

自動販売機

1996年に発表されたSzabo氏の論文の中で、スマートコントラクトを実装した最も古い事例として、自動販売機が挙げられています。

自動販売機に硬貨を投入し購入ボタンを押すと、商品が提供されますし、自動販売機に商品の在庫が無ければ、契約は破棄されお金が戻ってきます。

また、商品の購入代金より多くお金が投入されると、商品とともにおつりを出します。

このように、どのような条件で商品を提供するかあらかじめ定義されており、プログラムを発動する条件に当てはまらないときは返金する仕組みになっている点が、スマートコントラクトを実装していると言えます。

DAO(分散型自動化組織)

DAO(ダオ)とは、スマートコントラクト上で動作する、管理主体の存在しない組織です。

一般的な企業において、営業マンがお客様と交渉し取引行為を行いますが、DAOには取引を行う営業マンはいません。

一体どのようにして取引を行うのかというと、スマートコントラクトにあらかじめ取引条件を定義しておき、人を介せずに自動的に契約を執り行います。

また、企業方針を決める経営者も存在せず、DAOネットワークの参加者の投票によって選挙が行われ、公平な方法で方針が決められます。

ですので、スマートコントラクトが組織レベルで適応されたものがDAOと言えます。

DAOのメリットは、人の介在が必要な取引を無くすことでコストを削減でき、提供するサービスの料金を低く抑えることができる点です。

ちなみに、世界初のDAOは、システム管理者が存在しない世界初の仮想通貨・ビットコインだと言われています。

DApps(分散型アプリケーション)

DAppsは、Decentralized Application(分散型アプリケーション)のことで、ブロックチェーン上で動作するアプリケーションを指します。

先述した通り、ブロックチェーン上で動作するアプリケーションは、スマートコントラクトを利用して作成されます。

イーサリアム上で作成されたDAppのひとつ、音楽配信サービスujomusicを例に挙げて説明しましょう。

ujomusicでは、音楽を購入することによるアーティストへのロイヤリティの支払いを、スマートコントラクトで自動化しました。

これまでアーティストが収入を得るまでに最大1年待つ必要があり、また中間業者が多かったため、得られる手数料はわずかだったという問題をスマートコントラクトで解決しています。

スマートコントラクトで契約を定義することで、消費者が音楽を購入すると、すぐにアーティストへ報酬が支払われます。

他の分野への応用も期待されているスマートコントラクト

他分野への応用

ここまで、スマートコントラクトについて解説しましたが、ご理解いただけたでしょうか?

スマートコントラクトとは、あらかじめ定義された条件が満たされたときに取引プロセスを自動実行する仕組みです。

契約の定義・イベントの発生・契約執行/価値移転・決済という4つのフェーズに分かれています。

メリットは、人件費や仲介業者が不要になることによるコスト削減や、改ざんに強い点です。

ただし、柔軟な取引ができないことや、これまで行っていた取引内容を、プログラミング言語にすべて置き換えることが難しい点はデメリットと言えます。

最初にスマートコントラクトを実装したのはイーサリアムでしたが、イーサリアム以外にもNEO・EOS・LISK・Ethereum Calssic・VeChainにおいてスマートコントラクトが実装されています。

さまざまな分野に活用できるとされているスマートコントラクトが、今後どのようなサービスや仮想通貨に利用されるのか注目が集まります。

CoinHackの新しいサービスができました!

投資家の方に向けて「仮想通貨の最新価格が知りたい」「取引所毎のスプレッド差が気になる」「時価総額ランキングを確認したい」「価格が大幅上昇した通貨が知りたい」を解決するためのサービスを提供開始しました。

誰でも簡単にチャートによる仮想通貨価格の一覧比較仮想通貨取引所の一覧比較を行なうことができます。是非利用してみてください!

投資家の為のあらゆる情報を網羅しました

仮想通貨・取引所の最新情報比較
CoinHackで提供している情報は、お客様に対する情報の提供を目的としており、投資・その他の行動を勧誘する目的で運営しているものではありません。仮想通貨銘柄の選択、売買価格等の投資の最終決定は、お客様ご自身の判断でなさるようにお願いいたします。