スマートコントラクトの定義
スマートコントラクトは、他の契約と同様に、契約の条件を確立するものです。しかし、従来の契約とは異なり、スマートコントラクトの条件は、イーサリアムのようなブロックチェーン上でコードとして実行されます。スマートコントラクトにより、開発者はブロックチェーンのセキュリティ、信頼性、アクセス性を活用し、ローンや保険から物流やゲームに至るまで、高度なピアツーピア機能を提供するアプリケーションを構築することができるようになります。
他の契約と同様に、スマートコントラクトは契約や取引の条件を規定します。しかし、スマートコントラクトが「スマート」なのは、契約条件が弁護士の机の上に置かれた紙ではなく、ブロックチェーン上で動作するコードとして確立・実行される点である。スマートコントラクトは、銀行などの「信頼できる仲介者」を介さずに金銭の授受を行うというビットコインの基本的な考え方を発展させ、どんなに複雑な取引でも安全に自動化・分散化できるようにしたものである。また、イーサリアムのようなブロックチェーン上で動作するため、セキュリティ、信頼性、ボーダーレスなアクセス性を提供します。
スマートコントラクトはなぜ重要なのですか?
スマートコントラクトにより、開発者はさまざまな分散型アプリケーションやトークンを構築することができます。新しい金融ツールから物流やゲーム体験まで、あらゆる場面で利用されており、他の暗号トランザクションと同様にブロックチェーンに保存されます。スマートコントラクトアプリはブロックチェーンに追加されると、一般的に取り消したり変更したりすることはできません(例外もありますが)。
スマートコントラクトを利用したアプリは、しばしば「分散型アプリケーション」または「Dapps」と呼ばれ、銀行業界の変革を目指す分散型金融(DeFi)技術も含まれます。DeFiアプリは、暗号通貨保有者が、銀行や他の金融機関に手数料を取られることなく、世界中のどこからでも複雑な金融取引(貯蓄、ローン、保険)を行えるようにするものです。現在人気のあるスマートコントラクトを利用したアプリケーションには、以下のようなものがあります。
Uniswap : スマートコントラクトを通じて、ユーザーが中央当局の為替レート設定なしに特定の種類の暗号を取引できるようにする分散型取引所。
Compound:スマートコントラクトを利用したプラットフォーム。スマートコントラクトを利用して、投資家は利息を、借り手は銀行を介さずに即座に融資を受けられるようにするプラットフォーム。
USDC : スマートコントラクトにより米ドルにペッグされた暗号通貨で、1USDCは1米ドルの価値となる。UDDCは、ステーブルコインと呼ばれる新しいカテゴリーのデジタルマネーの一部である。
では、このスマートコントラクトを利用したツールはどのように使うのだろうか。USDCと交換したいイーサリアムを保有していると想像してください。Uniswapはスマートコントラクトによって、自動的に最適な為替レートを見つけ、取引を行い、USDCを送ることができます。そして、USDCの一部をCompoundに入れ、他の人に貸すと、アルゴリズムで決定された金利を受け取ることができる。すべて銀行や他の金融機関を使うことなく。
従来の金融では、通貨の交換にはお金と時間がかかります。また、個人が自分の流動資産を地球の裏側にいる見知らぬ人に貸すことは簡単ではありませんし、安全でもありません。しかし、スマートコントラクトは、これらのシナリオの両方を、そして他のさまざまなシナリオを可能にします。
スマートコントラクトは、どのような仕組みなのだろうか。
スマートコントラクトは、1990年代にNick Szaboというコンピュータ科学者兼弁護士によって初めて提案されました。Szaboは、スマートコントラクトを自動販売機に例えたのは有名な話です。25セントでソーダの缶を売っているマシンを想像してください。あなたが1ドルを機械に投入し、ソーダを選択すると、機械はあなたの飲み物と75セントのお釣りを出すか、(あなたの選択が売り切れの場合)別の選択をするか、ドルを取り戻すように促すように仕向けてある。これは、単純なスマートコントラクトの例です。ソーダの機械が人間の仲介なしに販売を自動化できるように、スマートコントラクトは事実上あらゆる種類の交換を自動化することができます。
スマートコントラクトは、様々なプログラミング言語(Solidity、Web Assembly、Michelsonなど)で記述されています。イーサリアムのネットワークでは、各スマートコントラクトのコードはブロックチェーン上に保存され、関係者はコントラクトのコードと現在の状態を調査してその機能を確認することができる。
ネットワーク上の各コンピュータ(または「ノード」)は、ブロックチェーンと取引データとともに、既存のすべてのスマートコントラクトのコピーとその現在の状態を保存しています。
スマートコントラクトがユーザーから資金を受け取ると、そのコードがネットワーク上のすべてのノードによって実行され、結果と結果の価値の流れに関するコンセンサスに達する。これにより、ユーザーが未知の相手と複雑な金融取引を行う場合でも、中央の権威なしにスマートコントラクトを安全に実行することができるのです。
イーサリアムのネットワーク上でスマートコントラクトを実行するには、一般的に「ガス」と呼ばれる手数料を支払う必要があります(これらの手数料によってブロックチェーンが稼働し続けるため、このような名称が付けられています)。
ブロックチェーン上に展開されたスマートコントラクトは、通常、作成者であっても変更することができない。(これは、検閲や停止ができないようにするためです。)
スマートコントラクトには、多くの潜在的なメリットがあります。
透明性:スマートコントラクトはブロックチェーン上に作成・保管されるため、取引記録は入手可能であり、(理論的には)不変である。これにより、紙の証跡に存在する可能性のある曖昧さを排除することができます。また、規制当局は監査時に取引記録を確認することができます。
自律性 : 一般的な契約締結の際に当たり前のように存在する仲介者は、契約に含まれる条件を実行する上で最終的には必要不可欠なものではありません。スマートコントラクトでは、第三者が価値を預かるのではなく、署名者2人のみが関与する。
効率性 : スマートコントラクトは、コードに記述された条件を自動的に実行するため、非常に効率的である。主要な当事者のみが関与することで、時間とリソースを節約することができます。また、自動実行されるため、プロセスのスピードアップにもつながるコスト削減。第三者を介さないため、取引コストを削減できる。不動産や融資など特定の業界では、第三者への手数料が高額になることがあるため、それらを排除することで大幅なコスト削減が可能になる。
スマートコントラクトにはデメリットもある。
スマートコントラクトには多くのメリットもありますが、デメリットもあります。主にヒューマンエラーの可能性と規制の曖昧さなど、いくつかの欠点があります。
ヒューマンエラー: スマートコントラクトが作成され、ブロックチェーンに格納されると、スマートコントラクトに関するすべてのことが自動化されます。しかし、実際のコードは依然として人間のプログラマーによって書かれています。つまり、ヒューマンエラーの可能性は排除されておらず、コントラクトには間違いが含まれる可能性があります。
規制:スマートコントラクトは、さまざまなブロックチェーンベースのテクノロジーと同様に、まだ政府機関による包括的な規制はありません。これはポジティブなことですが、フィンテック規制の前例があるため、危険なゲームと言えます。政府機関が法的なハンマーを下すことを決定した場合、スマートコントラクトに依存する人々は、不透明な規制の海を航海することになる可能性があります。
現在、イーサリアムが最も人気のあるスマートコントラクトのプラットフォームですが、他の多くの暗号通貨ブロックチェーン(EOS、Neo、Tezos、Tron、Polkadot、Algorandなど)も実行可能です。スマートコントラクトは、誰でも作成し、ブロックチェーンに使える状態にすることができる。そのコードは透明で公に検証可能であるため、利害関係者であれば誰でも、スマートコントラクトがデジタル資産を受け取る際に従うロジックを正確に見ることができるということです。