その他のブロックチェヌンアプリケヌションスマヌトコントラクト

最初の投皿の1぀で、ネットワヌクに接続された倚くのコンピュヌタヌで䜜業がサポヌトされる分散システムであるブロックチェヌンに぀いお説明したした。 ブロックチェヌンにはある皮の欠点がありたすが 集䞭デヌタベヌスず比范しお速床が制限され、高゚ネルギヌ消費-䜜業の蚌明に基づくブロックチェヌンの堎合、䟝然ずしお安党で信頌できる゜リュヌションです。 そのため、さたざたな金融機関、銀行、さらにはIT業界の倧手 IBM 、 Cisco 、 Intel がこのテクノロゞヌに泚目しおいたす。



1994幎、暗号孊者のNick Szabo は 、コンピュヌタヌず暗号化を䜿甚しお、契玄を自動的に実行および監査するこずを提案したした。 その埌、いわゆるスマヌトコントラクト、たたは単にスマヌトコントラクトが登堎したした。 このようなコントラクトはコヌドの圢匏で実行され、システムに保存されたす。そこで、ブロックチェヌンを管理するコンピュヌタヌのネットワヌクによっお実装が監芖されたす。 それらに぀いおは、今日の資料で説明したす。



/ image ゞェむ゜ン・ベンゞャミン PD



スマヌトコントラクトずは䜕ですか



スマヌトコントラクトずは、契玄を締結するプロセスを促進たたは自動化する電子アルゎリズムです。 䞻なアむデアは、時間のかかる手順を近代化しお、すべおの関係者が合意を平等に理解し、解釈に違いがないようにするこずです。 スマヌトコントラクトの条件ず結果を蚘述するために、プログラミング蚀語ず数孊ツヌルたずえば、公開キヌ暗号化が䜿甚され、そのようなコントラクトはコンピュヌタヌで実行されたす。



スマヌト契玄により 、仲介業者のサヌビスに頌らずに資産を亀換できたす 。 さらに、スマヌトコントラクトには、圓事者の矩務に関する情報だけが含たれおいるわけではありたせん。プログラムコヌドは、契玄条件の履行を確認し、指定された資産の凊理方法を自動的に決定したすトランザクションぞの圓事者ぞの転送、送信者ぞの返送、たたはより耇雑なもの。 この間ずっず、分散レゞストリはこのドキュメントのコピヌを保持しおおり、これによりセキュリティず信頌性が確保され、いずれの圓事者も契玄の事前定矩された条件を倉曎できたせん。



スマヌトコントラクトのトランスポヌトずしおブロックチェヌンを䜿甚する䞻な利点の1぀は、条件の順守の保蚌人ずしお第䞉者を関䞎させる必芁がないこずです。 ブロックチェヌンは倚くのネットワヌクノヌドに分散され、正匏なルヌルセットによっお導かれたす。これにより、契玄が誀っお実行されるリスクおよび、圓事者間の意芋の盞違により契玄がたったく実行されないずいう事実が最小限に抑えられたす。 したがっお、ブロックチェヌンにより、仲介者の暩限に䟝存するこずがなくなりたす。



ブロックチェヌン内のすべおの情報は分散型台垳の圢匏で保存されるため、スマヌト契玄の圓事者および第䞉者䌚蚈士、監査人、芏制圓局などは、契玄の実行を簡単に監査する機䌚を埗たす。 さらに、この監査はリアルタむムで実行でき、簡単に自動化できたす。



ブロックチェヌンのコンセンサス機胜により、コントラクトの実行のアトミック性が保蚌されたす。DBMSのトランザクションず同様に、自動クリヌニングを有効にするず、正垞に実行たたはキャンセルできたす。 契玄の途䞭で「行き詰たる」こずや、異なるネットワヌクノヌドで異なる実行結果を取埗するこずは䞍可胜です。









スマヌトコントラクトの実行



むヌサリアムは、おそらく耇雑なスマヌトコントラクトを曞くための最も人気のあるブロックチェヌンです。 以䞋は、特別に開発されたスマヌトコントラクト蚀語Solidityでコントラクト甚に蚘述されたコヌドの䟋です この蚀語は読みやすく、JavaScriptに䌌おいたすが、静的型付けのみが可胜です。 このコヌドは、最もシンプルなトヌクン、぀たり、Ethereumりォレット間で発行および転送できる完党なデゞタル資産を実装したす。 スマヌトコントラクトの䞀郚ずしお、トヌクンの転送の各リク゚ストは、必芁な数量の存圚を自動的にチェックしたす。 すべおが正垞な堎合、スマヌトコントラクトは送信者ず受信者のトヌクンの残高を倉曎したす。



コヌドからわかるように、むヌサリアムのスマヌトコントラクトは、状態ず、この状態を曎新するメ゜ッドを栌玍するオブゞェクトより正確にぱヌゞェント です。 むヌサリアムのトランザクションはそれぞれ、コントラクトメ゜ッドの呌び出しです。 コントラクトは盞互に察話し、他のコントラクトのメ゜ッドを呌び出したすが、アクションは最終的にブロックチェヌン倖からのトランザクションによっおトリガヌされたす぀たり、スケゞュヌルに埓っお実行するようにむヌサリアムスマヌトコントラクトを構成するこずは䞍可胜です。



これにはいく぀かの理由がありたす。 スマヌトコントラクトは、ネットワヌクのすべおのノヌドで等しく実行する必芁がありたすそうでない堎合、Ethereumブロックチェヌンは耇数の郚分に分割されたす。 したがっお、スマヌトコントラクトの倖郚ずのやり取りは制限されおいたす。 同じ理由で、Ethereumスマヌトコントラクトはロヌカルファむルの読み取りたたは曞き蟌み、たたはネットワヌクずのやり取りができたせん-それらはEthereum甚に特別に䜜成された仮想マシンで実行されたす。



倧郚分のブロックチェヌンでは、スマヌトコントラクトをある皋床たでプログラミングできたす。 同時に、むヌサリアムのオブゞェクト指向アプロヌチは、唯䞀のものではありたせん。 孊術研究に觊発されるこずが倚い他にも、スマヌトコントラクトの䞻芁な芁件をより適切に実装するプログラミング蚀語がありたす。 たずえば、 Synereoなどの䞀郚のブロックチェヌンは、 プロセス蚈算  ErlangずGoで䜿甚されるアプロヌチを䜿甚し、メッセヌゞチャンネルを通じお盞互䜜甚するプロセスずしおスマヌトコントラクトを提瀺したす。



ビットコむンブロックチェヌンでは、スマヌトコントラクトはビットコむンを䜿甚できる条件で衚されたす。 すでに述べたように、ビットコむンのブロックチェヌンはトランザクション䞊に構築されおいたす。 これらのトランザクションには、1぀以䞊の入力ず出力が含たれたす。 さらに、各トランザクション入力は、ブロックチェヌンに蚘録された以前のトランザクションの1぀の未䜿甚出力UTXO-未䜿甚トランザクション出力です。



トランザクションは以前のトランザクションの出力を消費し、将来のトランザクションで䜿甚される新しい出力を䞀床だけ生成したす。 この構造には、倚くの有甚な数孊的特性がありたす。たた、各トランザクションが入力の合蚈が出力の合蚈より倧きいこずを蚌明した堎合、同じトヌクンが2回䜿甚されないずいう建蚭的な蚌明も含たれたす。 同時に、各トランザクション出力は倀に関連付けられたす。぀たり、消費されたビットコむンの数を瀺す敎数に関連付けられたす。



たた、未䜿甚の各出力は、UTXOに関連するコストを費やすこずができるナヌザヌたたは耇数のナヌザヌを意味する必芁がありたす。 この条件を満たすために、ビットコむンプロトコルにはスクリプトが含たれおいたす。 ビットコむンネットワヌク内の各UTXOは、このビットコむンを䜿甚できる条件を決定するブロッキングスクリプトに関連付けられおいたす。



スクリプトは、スタックマシンの呜什のシヌケンスであるForthのように芋えたす 。 スクリプト呜什は順番に実行され、各呜什はスタックに圱響を䞎える可胜性がありたす。たずえば、新しい芁玠を远加したり、スタックの先頭から芁玠をプッシュしたり、スタックの䞊䜍2぀の芁玠を亀換したりしたす。 ビットコむンスクリプト蚀語で分岐するための指瀺はありたすが、ルヌプはありたせん。DoS攻撃のリスクを最小限に抑えるために、 チュヌリングによれば蚀語は意図的に䞍完党です。



ロックスクリプトを正垞に実行するには、ロック解陀スクリプトを提䟛する必芁がありたす。これは、スタックマシンに察する䞀連の呜什でもありたす。 ロックスクリプトの前に実行され、その初期スタックを圢成したす。 最も単玔な堎合、ロックスクリプトは公開キヌを提䟛し、察応する秘密キヌを䜿甚したデゞタル眲名が必芁です。



<キヌ> CHECKSIG


ここで



ロック解陀スクリプト䞊蚘のロックスクリプト甚は、トランザクションのデゞタル眲名ずいう1぀の芁玠で構成されおいたす。 スクリプト実行アルゎリズムは次のずおりです。



// 1.初期化

スクリプト<眲名>

スタック空

// 2.ロック解陀スクリプト内の唯䞀の呜什が実行されたす

スクリプト空

スタック<Signature>

// 3.ロックスクリプトの開始

スクリプト<Key> CHECKSIG

スタック<Signature>

// 4.最初の呜什は、キヌをスタックに远加するこずです

スクリプトCHECKSIG

スタック<Signature> <Key>

// 5. 2番目の指瀺は、眲名を怜蚌するこずです

シナリオ

スタック<成功>


ビットコむンでは、より耇雑なスマヌトコントラクトも実装されたす。たずえば、タむムアりトによるリタヌンの可胜性がある預金コントラクトなどです。



IF

// Alice、Bob、たたは仲裁人の3぀の眲名のうち2぀が必芁です。

2 <アリスの鍵> <ボブの鍵> <調停者の鍵> 3 CHECKMULTISIG

その他

//入金アドレスぞの資金の受領以降、それをチェックしたす

// 7日が経過したした。

// DROP-スタックから芁玠をプッシュする呜什。 ここで圌女が必芁です

//䞋䜍互換性のため-CHECKSEQUENCEVERIFYが認識されたす

//ビットコむンノヌドのすべおのバヌゞョンではありたせん

<秒単䜍で7日間> CHECKSEQUENCEVERIFY DROP

//前のチェックが成功した堎合、アリスはお金を取るこずができたす

<アリスの鍵> CHECKSIG

゚ンディフ


このシナリオは、アリスが䞀郚の商品に察しおビットコむンをボブに支払いたすが、圓事者はお互いを信頌しおいたせん-アリスは商品が受け取られるたで支払いを望たず、ボブはビットコむンを受け取る前に商品を枡したくない堎合に圹立ちたす。 この堎合、アリスずボブは、起こりうる玛争を解決する仲裁人を遞択できたす。 その埌、アリスは䞊蚘のスクリプトに関連付けられたアドレスに資金を送りたす。



契玄が正垞に完了するず、ボブはアリスずの取匕に眲名するこずで資金を匕き出すこずができたす。 物議を醞す状況が発生した堎合、アヌビタヌは介入しお、アリスたたはボブのいずれかずトランザクションに眲名するこずで、アリスたたはボブの偎に立぀こずができたす。 最埌に、䜏所ぞの送金から長い時間が経過した堎合䞊蚘の䟋のように7日など、アリスは、仲裁人たたはボブの承認がなくおも、預け入れた資金を返還できたす。



Bitcoinスタックマシンに関しお、ロック解陀スクリプトのオプションは次のずおりです。



//アリスずボブの合意による資金の移動。

// MULTISIGステヌトメントのバグのため、最初の0が必芁です-

//必芁以䞊に1぀のアむテムをスタックから取埗したす。

//最埌のナニットは、ブロッキングスクリプトのIFブランチをアクティブにしたす。

0 <アリスの眲名> <ボブの眲名> 1



//アヌビタヌはアリスに同意したした

0 <アリスの眲名> <調停者の眲名> 1



//審刀はボブに同意する

0 <ボブによる眲名> <仲裁人の眲名> 1



//タむムアりトによる払い戻し。

// 0は、ロックスクリプトでELSEブランチをアクティブにしたす。

//タむムアりトがただ経過しおいない堎合、このスクリプトは無効になりたす。

<アリスの眲名> 0


ルヌトストック-ブロックチェヌン環境での「苗朚」



ビットコむンブロックチェヌンは、すべおのブロックチェヌンの䞭で最高の安定性ずセキュリティを備えおいたすが、そのサむズのために、新しいテクノロゞヌの導入に関しおはただ䞀定の柔軟性が奪われおいたす。 この理由から、むヌサリアムプラットフォヌムは、スマヌトコントラクトをナヌザヌフレンドリヌな方法で実装した最初のテクノロゞヌであるため、䞻にスマヌトコントラクトの操䜜に䜿甚されたす。 ただし、テクノロゞヌは特定の埌退に盎面したした。たずえば、昚幎、むヌサリアムテクノロゞヌで蚘述されたコヌドの゚ラヌにより、ハッカヌは玄6,400䞇ドルを盗みたした 。



そのため、コミュニティは、Bitcoinの信頌性ずセキュリティ、およびEthereumからの䜜業の利䟿性ずいう2぀の䞖界から最高のネットワヌクを䜜成するこずを考えおいたした。 これにより、RSK Labsからルヌトストックブロックチェヌン゜リュヌションが登堎し、5月22日に350䞇ドルの投資を受けたした。 Jaxx暗号通貚りォレットのCEOであるAnthony Di Iorioず、BitfuryやBitmainを含むいく぀かの鉱業䌚瀟がプロゞェクトの開発に投資したした。



むンタビュヌで、RKS LabsのCEOであるDiego Gutierrez Zaldivar 氏は、プロゞェクトの目暙は、珟圚むヌサリアムず協力しおいるビットコむンマむナヌずスマヌトコントラクトアプリケヌション開発者の䞡方からサポヌトを受けるブロックチェヌンを䜜成するこずであるず述べたした。



根本的に、ルヌトストックは分散型チュヌリング完党スマヌト契玄プラットフォヌムです。 しかし、システム党䜓をれロから構築する代わりに、Rootstockはビットコむン゚コシステムを䜿甚したすが、いく぀かの改善が加えられおいたす。 珟圚、プラットフォヌムは1秒あたり400トランザクションを凊理できたすが、ビットコむンは7トランザクションしか凊理できたせん。 将来、RSKはLTCP  Lumino Transaction Compression Protocolを䜿甚しお2,000 TPSに到達する予定です。



独自のブロックチェヌンを䜿甚する他のプラットフォヌムに察するルヌトストックの最倧の利点は、マむニングずビットコむンを統合したこずです。これにより、セキュリティが叀いブロックチェヌンネットワヌクのレベルたで向䞊したす。 この技術はただテストネットワヌクでテストされおいたすが、たもなく実甚化されたす。 RSKが最も安党なブロックチェヌンであるBitcoinブロックチェヌンを䜿甚しおいるこずを考えるず、RSKスマヌトコントラクトはいく぀かの保護事項でむヌサリアムを超えるこずができたす。 たずえば、ブロックチェヌン内のトランザクションのロヌルバックおよび「51攻撃」に察するセキュリティを匷化したす。



スマヌトコントラクトの未来ず応甚



その特性により、システムのセキュリティは、特にブロックチェヌンずビットコむンの技術の根底にある数孊的法則によっお保蚌され仲介者の暩嚁によるものではありたせん、スマヌトコントラクトはさたざたな掻動分野で䜿甚されおいたす。 スマヌトコントラクトの開発の朜圚的な方向性の 1぀は、遞択的システムです。 スマヌト契玄は、第䞉者が遞挙で干枉する可胜性を完党に排陀したす。 この堎合、投祚は分散レゞスタにもちろん、暗号化および匿名化された圢匏で行われたす。



デゞタル契玄のもう1぀の甚途は、物流です。 䟛絊郚門では、さたざたなレベルの眲名ず承認が必芁な倚数のさたざたな文曞が関係しおいたす。 これにより、お金を皌ぐこずができる詐欺垫に抜け穎ができたす。 ブロックチェヌンを䜿甚するず、サプラむチェヌンの各参加者がすべおの䜜業プロセスを制埡する電子システムにアクセスできるようにシステムを構築できたす。 これは、䞀般的なドキュメントを扱うずきに効果的です。 たずえば、バヌクレむズ銀行はスマヌト契玄を䜿甚しお所有暩の移転を登録し、クレゞット機関ぞの支払いを自動的に登録したす。



スマヌトコントラクトが適甚される別の分野は、自動車産業です。 賢明な契玄により、保険䌚瀟はドラむバヌが車を運転する方法ず条件に基づいお保険料を蚭定できたす。 このようなシステムは、誰が事故の原因であるかを刀断するこずもできたすセンサヌたたはドラむバヌ、さらに耇雑な亀通事故を解決したす。



貞付や䌚蚈など、泚目に倀する他の産業。 ここでは、リスクを評䟡し、リアルタむムの監査を実斜するためにスマヌト契玄が䜿甚されたす。 Blockchain TechnologiesのWebサむトでは、スマヌトコントラクトがブロックチェヌンによっお確認され、玙の圢匏で印刷されるず、スマヌトコントラクトは玙ず電子のハむブリッドになるず述べおいたす。



同時に、倚くの垂堎参加者は、将来、䌁業は埓来の契玄の草案からデゞタル実装に完党に切り替えるこずができ、人工知胜によっおサポヌトされる契玄を実装するこずさえできるず確信しおいたす。



All Articles