|
Эта публикация цитируется в 3 научных статьях (всего в 3 статьях)
Overview of the languages for safe smart contract programming
[Обзор языков для безопасного программирования смарт-контрактов]
A. V. Tyurina, I. V. Tyulyandina, V. S. Maltseva, I. A. Kirilenkoa, D. A. Berezunb a Saint Petersburg State University
b Higher School of Economics National Research University
Аннотация:
Технология распределенного реестра блокчейн становится все более популярной и находит применение в различных областях, в том числе и в финансовых технологиях. Многие блокчейн-платформы поддерживают функциональность смарт-контрактов, которые предназначены для автоматизации заключения договоров. Известны примеры, где ошибки или небрежности в коде смарт-контракта приводят к потере активов, например, из-за атаки злоумышленника или непонимания разработчиком особенностей блокчейн-платформы. На сегодняшний день существует множество различных подходов, которые позволяют сделать смарт-контракты безопаснее. Среди них инструменты анализа кода, модели вычислений и семантики языков программирования смарт-контрактов. В этой работе мы приводим обзор языков программирования смарт-контрактов, принципов их построения, а также потенциальные ошибки в программе смарт-контракта. Основная цель этого обзора - рассмотреть текущее на момент написания статьи состояние языков смарт-контрактов и возможные направления для будущих исследований, а также показать подходы, используемые сообществом для создания безопасного и удобного (с точки зрения абстракции) языка. Характеристики множества языков, такие как: уровень абстракции, парадигма, Тьюринг-полнота, проект, где язык используется, инструменты для анализа кода, система ограничения и главные особенности - были рассмотрены и сведены в таблицу. Предоставлена дополнительная информация о языках, например, о модели выполнения. Также мы кратко описали и разделили все найденные нами уязвимости по источникам их возникновения.
Ключевые слова:
блокчейн, безопасность смарт-контрактов, языки программирования.
Образец цитирования:
A. V. Tyurin, I. V. Tyulyandin, V. S. Maltsev, I. A. Kirilenko, D. A. Berezun, “Overview of the languages for safe smart contract programming”, Труды ИСП РАН, 31:3 (2019), 157–176
Образцы ссылок на эту страницу:
https://www.mathnet.ru/rus/tisp430 https://www.mathnet.ru/rus/tisp/v31/i3/p157
|
|