スマートコントラクトって何? 「競合との協業」という新たなビジネスの地平を開ける仕組みである理由とは:Ethereumではじめる“スマートコントラクト開発”(1)(1/2 ページ)
本連載では、「Ethereum」を使った契約の条件確認や履行などを自動で行う「スマートコントラクト」の開発方法を紹介していきます。第1回目は、スマートコントラクトとは、どのような仕組みで、どのような場面で使えるのかを紹介します。
超入門スマートコントラクト
「スマートコントラクト」は、ブロックチェーン技術を活用したアプリケーションプラットフォームの中で、契約の条件確認や履行などを自動で行うことから、研究開発が進み、注目されている技術です。
本連載では、スマートコントラクトの概念や仕組みを整理しつつ、DApps(Decentralized Applications:分散ノード上で実行されるアプリケーション)のスマートコントラクトのコーディング方法、企業向けアプリケーション開発の実践方法について解説していきます。
スマートコントラクトの概念を理解しよう
スマートコントラクトとは?
スマートコントラクトを、これまでにも見聞きしたことがある人は少なくないでしょう。しかしスマートコントラクトをご自身の言葉で説明するとしたら、人によって内容に違いが出てくるのではないかと思います。本連載では、スマートコントラクトを、次のように定義します。
- インターネット上の電子商取引である
- 契約を締結し、契約締結と同時にサービスを自動的に実行する機能を有する
- このシステムに使用される資金やコンテンツを保護するセキュリティ機構を有する
スマートコントラクトの概念はブロックチェーンよりも古く、米国のコンピュータサイエンス/暗号技術の研究者であるNick Szaboによって考案されたといわれています。ウィキペディアにある「Nick Szabo」氏のページでは、スマートコントラクトを次のように説明しています。
The phrase and concept of "smart contracts" was developed by Szabo with the goal of bringing what he calls the "highly evolved" practices of contract law and practice to the design of electronic commerce protocols between strangers on the Internet.
「スマートコントラクト」という呼称と概念はSzabo氏によって開発されました。この概念は、インターネット上における他人との電子商取引プロトコルの設計に、「高度に進化した」契約と実行の商習慣をもたらすことを目的としています。
上記を簡単な表現に言い換えると、次のように言うことができます。
スマートコントラクトとは、インターネット上の電子商取引において、契約の締結とサービスの実行を自動的に行えるように高度に進化したシステムのこと。
この表現は抽象的で捉えどころがないかもしません。Szabo氏が2004年に米国で開催したIEEEのワークショップで発言した下記の説明が、スマートコントラクトをより具体的にイメージしやすいかもしれません。
A canonical real-life example, which we might consider to be the primitive ancestor of smart contracts, is the humble vending machine.
スマートコントラクトの初期の原型であると一般的に考えられる実例は、一般的な自動販売機です。
The machine takes in coins, and via a simple mechanism, dispense change and product according to the displayed price.
自動販売機は、硬貨が入ると表示された価格に従って商品を提供します。
The vending machine is a contract with bearer: anybody with coins can participate in an exchange with the vendor.
自動販売機は商品運搬者が用意した契約です。硬貨を持っている人は誰でも業者との取引に参加できます。
さらに、Szabo氏は次のような説明もしています。
The lockbox and other security mechanisms protect the stored coins and contents from attackers, sufficiently to allow profitable deployment of vending machines in a wide variety of areas.
自動販売機のロックボックス(金庫)およびセキュリティ機構は、さまざまな場所に自動販売機の設置を可能にするために、投入された硬貨および販売商品を攻撃者から保護しています。
以上の説明を整理すると、前述のスマートコントラクトの定義になります。
定義した内容を仮想通貨「Bitcoin」に照らし合わせると、Bitcoinは「通貨を送金、保管することに特化したスマートコントラクト」ということになります。そのBitcoinの機能を拡張、発展させてあらゆる取引に対応することを目指しているのが、今日研究が進んでいるスマートコントラクトシステムです。
スマートコントラクトの重要な要素である「ブロックチェーン」とは?
スマートコントラクトは、「Ethereum」や「Hyperledger Fabric」などの「ブロックチェーン技術」を活用したアプリケーションプラットフォームの中で実行されるプログラムやアプリケーションを指す言葉として知られています。
スマートコントラクトの重要な要素であるブロックチェーンは、個々の取引のセキュリティを高める「暗号化」というトランザクション特性や、分散ノード間のデータの整合性を保つ「合意アルゴリズム」という分散処理特性などの特性を持つ技術です。ブロックチェーンは、これらの特性により、堅牢なミドルウェアとして存在することができ、スマートコントラクトの自動実行機能を活用するシステム基盤として整ってきました。
自動実行を実現するシステム基盤は、人のメンテナンスを必要としない堅牢な基盤であることが望ましいと考えられますが、それをブロックチェーンが支えているというわけです。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 今の仕事が自動化されたとき、われわれはどう生き残るのか?――IBM Watson Summit Tokyo レポート
AIなどテクノロジーの急速な進展は、既存の業界構造を変えるだけではなく、われわれの生活や社会の仕組みそのものも大きく変えていくといわれている。では例えば、今ある仕事の多くが自動化されるという予測については、われわれは一体どのようなスタンスで受け止めれば良いのだろうか? - ブロックチェーンは「取引コストゼロ」の世界を実現しようとしている
本特集では金融業界がFinTechでビジネスを拡大するために必要な技術要件を浮き彫りにし、一つ一つ解説していく。今回は、FinTechの潮流の中で、特に注目を浴びているキーワード「ブロックチェーン」についてのセミナーの模様を紹介する。その応用分野は狭義の「金融」にとどまらない。流通やヘルスケア、音楽、ゲーム、さらには「契約」全般など、幅広い可能性を秘めたブロックチェーンの可能性を探る。 - 銀行員も知っておきたいブロックチェーンの仕組み、業務への応用事例と留意点
本連載では、銀行系システムについて、その要件や歴史を整理しつつ、スマートフォンを使う銀行取引やブロックチェーンなど、新しい技術が及ぼす影響を考察していきます。今回は、ブロックチェーンの仕組みを概説し、その特徴を踏まえて、FinTechや銀行業務での活用形態、システム化に向けた留意点について解説します。