Skip to main content
QUICK REVIEW

[論文レビュー] Maintaining Smart Contracts on Ethereum: Issues, Techniques, and Future Challenges

Jiachi Chen, Xin Xia|arXiv (Cornell University)|Jul 1, 2020
Blockchain Technology Applications and Security参考文献 101被引用数 27
ひとこと要約

この論文は、イーサリアムスマートコントラクトのデプロイ後メンテナンスにおける課題について、初めての実証的研究を提示する。9つのメンテナンス固有の問題と、是正、適合、完全化、予防のカテゴリに分類された41の手法を同定した。131篇の論文を対象とした体系的文献レビューと、GitHubの165名の開発者を対象としたアンケートを通じて、ツールの不足、不変性制約、進化するエコシステムの要請といった重要なギャップが明らかになった。これらは開発者や今後の研究の方向性に対して実用的な示唆を提供する。

ABSTRACT

Software development is a very broad activity that captures the entire life cycle of a software, which includes designing, programming, maintenance and so on. In this study, we focus on the maintenance-related concerns of the post-deployment of smart contracts. Smart contracts are self-executed programs that run on a blockchain. They cannot be modified once deployed and hence they bring unique maintenance challenges compared to conventional software. According to the definition of ISO/IEC 14764, there are four kinds of software maintenance, i.e., corrective, adaptive, perfective, and preventive maintenance. This study aims to answer (i) What kinds of issues will smart contract developers encounter for corrective, adaptive, perfective, and preventive maintenance after they are deployed to the Ethereum? (ii) What are the current maintenance-related methods used for smart contracts? To obtain the answers to these research questions, we first conducted a systematic literature review to analyze 131 smart contract related research papers published from 2014 to 2020. Since the Ethereum ecosystem is fast-growing, some results from previous publications might be out-of-date and there may be a gap between academia and industry. To address this, we performed an online survey of smart contract developers on Github to validate our findings and received 165 useful responses. Based on the survey feedback and literature review, we present the first empirical study on smart contract maintenance-related concerns. Our study can help smart contract developers better maintain their smart contract-based projects, and we highlight some key future research directions to improve the Ethereum ecosystem.

研究の動機と目的

  • イーサリアムスマートコントラクトがデプロイされた後、是正、適合、完全化、予防のメンテナンスの観点から関連する懸念事項を同定し、分類すること。
  • 包括的な文献レビューを通じて、スマートコントラクト開発における現在のメンテナンス手法を分析すること。
  • 165名のスマートコントラクト開発者を対象としたオンラインアンケートを通じて、実世界の実務家による検証と文脈化を実施すること。
  • スマートコントラクトシステムの持続可能性と保守可能性を向上させるために、主な課題と今後の研究の方向性を強調すること。

提案手法

  • 2014年から2020年までに発表された131篇のスマートコントラクト関連の研究論文を対象とした体系的文献レビューを実施し、メンテナンスの問題と手法を同定した。
  • GitHubに所属する165名のアクティブなスマートコントラクト開発者を対象としたオンラインアンケートを実施し、文献レビューの結果を検証し、文脈づけた。
  • メンテナンスの問題を、ISO/IEC 14764の4つのカテゴリ(是正、適合、完全化、予防)に加え、4つの包括的なプロセスレベルの課題に分類した。
  • 適用文脈に基づき、既存のメンテナンス手法を3つのタイプに分類した:オフラインチェック、オンラインチェック、その他の手法。
  • 質的洞察(文献レビューから得たもの)と実証的データ(実務家から得たもの)を統合することで、結果の妥当性と信頼性を確保するため、混合手法の三角測定を実施した。
  • 学術的研究と産業実務の間のギャップを分析した。特に、ツール、セキュリティ、進化するイーサリアムの標準について焦点を当てた。

実験結果

リサーチクエスチョン

  • RQ1イーサリアムにデプロイした後、スマートコントラクト開発者が是正、適合、完全化、予防のメンテナンスにおいて直面する主な課題は何か?
  • RQ2スマートコントラクトに用いられている現在のメンテナンス関連の手法は何か? また、実際の開発現場ではどのように応用されているか?
  • RQ3学術的文献で同定された課題と手法は、イーサリアムエコシステムにおける実際の開発者の経験とどのように一致しているか?

主な発見

  • ISO/IEC 14764のメンテナンスカテゴリの4つにわたり、合計9つの具体的なメンテナンス問題が同定された。その例として、不変性制約、ガスコストの制限、ソースコードの非公開が挙げられる。
  • 4つの包括的なプロセスレベルの課題が同定された。例として、標準化された開発手法の欠如、デプロイ後メンテナンスに向けた十分なツールの不足が挙げられる。
  • 41篇の論文を分析し、13の異なるメンテナンス手法を同定した。これらは、オフラインチェック(例:静的解析)、オンラインチェック(例:実行時モニタリング)、その他の手法(例:形式的検証)に分類された。
  • アンケートの結果、第三者コントラクトの依存関係や環境の不安定性のため、適合メンテナンスにおいて大きな課題が生じていることが明らかになった。
  • ベンチマークデータセットに含まれる脆弱なスマートコントラクトのうち、9つの脆弱性分析ツールがすべて検出できたのは42%にとどまり、ツールの有効性に顕著なギャップがあることが示された。
  • 47,518件の検証済みコントラクトを対象とした大規模な分析において、Mythrilが9つのツールの中で最高の検出精度(27%)を示した。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。