はじめに(翻訳者より)
Arweaveプロジェクトは2017年にICOを行い(その際は「Archain」という名称でした)、以来継続的にコラムやリリースなど情報発信を続けてきています。
それらの情報の大部分が英語で発信されたものであるため、日本人に向け、少しずつ翻訳して紹介していきます(都合上、意訳を多く含みます。文末にリンクを張りますので可能なら原文も確認してみてください)。
SmartWeaveの紹介:Arweaveでスマートコントラクトを構築する
2020年6月12日
本日、私たちは「SmartWeave」のプロトタイプを発表します。
これは新しいスマートコントラクトプロトコルで、Arweaveネットワーク上で計算量の多いDappsを実現します。
SmartWeaveはARトークンを使用し、開発者がJavascriptを使ってあらゆる種類のスマートコントラクトアプリケーションを構築することを可能にします。
SmartWeaveは現在プロトタイプであり、まだテスト段階ですが、ここで実際に試すことができます。
SmartWeaveはどのように機能するのですか?
従来のスマートコントラクトシステム(例えばEOSやEthereum v1)では、すべてのノードがすべての取引を実行し、無効な操作が含まれるものは拒否されます。
SmartWeaveでは、ネットワークノードにスマートコントラクトのコードを実行させる代わりに、「遅延評価」システムを採用し、取引の検証の計算をスマートコントラクトのユーザーに押し付けるという異なるアプローチをとっています。
ユーザがSmartWeaveのコントラクトと対話するとき、ユーザは有効な状態遷移のチェーンの終わりに到達するまで、dApp上の先行する各トランザクションを評価します。
コントラクトの終端(「先端」)に到達すると、ユーザーはコントラクトへの呼び出しを評価し、その結果の状態遷移をArweaveネットワークに書き込みます。このプロセスは継続的に繰り返され、新しいユーザーは継続的に互いのトランザクションを検証し、自身の状態遷移を追加していくのです。
このモデルでは、Arweaveネットワークは一般的なデータ合意・共有レイヤーとして利用され、ユーザーは対話したいコントラクトのトランザクションを検証する面倒を見ます。
この効果の1つは、バリデーターをスマートコントラクトの作業から解放し、結果としてスマートコントラクトのインタラクションに支払う「ガス」の必要性をなくすことです。
その代わり、開発者は、ユーザーが契約の実行に参加するためにこの計算を繰り返す必要があることを認識した上で、任意の量の計算を許可する自由が与えられます。
この「遅延評価」のスタイルは、スケーラブルなスマートコントラクト実行のための強力な基盤を提供するだけでなく、複雑な金融モデリングからGPUレンダリング、あるいは畳み込みニューラルネットワークの実行まで、非常に重い計算を必要とする、まったく新しいタイプのスマートコントラクトを構築することを可能にします。
SmartWeaveプロトコルとのやりとりは、単純にレイヤー1のArweaveデータトランザクションです。
スマートウィーブを動かすトークンは、Arweaveプロトコルでデータ保存に使われているのと全く同じARです。
最近発表したレイヤー2のデータバンドル技術を使って、SmartWeaveの互換性の可能性を探る研究が進められています。もし可能であれば、SmartWeaveは最もスケーラブルなスマートコントラクトシステムの1つになり、典型的なブロックチェーンのコンセンサス制約ではなく、各スマートコントラクトのユーザーの帯域幅によって制限されたスループットで取引を処理することができるようになります。研究の進展に応じて、このページでお知らせします。
現在、SmartWeaveはプロトタイプの段階にあり、多くの重要な機能がまだ開発中です(例えば、外部コントラクトの呼び出しなど)。
それでも、v0.1はArweaveネットワーク上で稼働しており、今日から実験を開始することができます。
しかし、はっきり言って、現在のテストバージョンはバグを含んでいる可能性が高いです。監査とさらなるテストが完了する前に、金融アプリケーションにスマートウィーブを使用することを選択した場合、問題が発生した場合に備えて、契約において関係者とフォールバックプランを合意しておく必要があります。ご自身の責任で進めてください。
Arweaveチーム