BitVM: как реализовать смарт-контракты в биткоине
Анализ повышения конкурентоспособности проекта и снижение востребованности технических решений альткоинов при расширенных возможностей BTC. Проведение исследования нового подхода для проверки любых более сложных вычислений через сеть с помощью BitVM.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 07.12.2024 |
Размер файла | 15,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Санкт-Петербургский государственный экономический университет
BitVM: как реализовать смарт-контракты в биткоине
Рудик Е.Д. студент
г. Санкт-Петербург, Россия
Аннотация
Расширенные возможности BTC повышают конкурентоспособность проекта и снижают востребованность технических решений альткоинов. С помощью BitVM предлагается новый подход для проверки любых более сложных вычислений через сеть. В статье рассматривается, что именно это такое, как выглядит техническая реализация и каковы преимущества и недостатки BitVM.
Ключевые слова: криптовалюты, полнота по Тьюрингу, языки программирования.
Abstract
Rudik E.D.
St. Petersburg State University of Economics (St. Petersburg, Russia)
BITVM: HOW TO IMPLEMENT SMART CONTRACTS IN BITCOIN
Enhanced capabilities of BTC increase the competitiveness of the project and reduce the demand for technical solutions of altcoins. With BitVM, a new approach is proposed to test any more complex computations over the network. This paper discusses what exactly this is, what the technical implementation looks like and what the advantages and disadvantages of BitVM are.
Keywords: BitVM, BTC, cryptocurrencies, Turing completeness, programming languages.
Опубликованный разработчиком биткоина Робином Линусом официальный документ под названием «BitVM: вычислить что угодно на биткоине» привлек много внимания не только в криптосообществе, но и за его пределами. За счет использования функций, доступных после обновления Taproot, должна быть обеспечена проверка любых сложных смарт-контрактов, то есть особых условий для выпуска определенного количества BTC. конкурентоспособность альткоин сеть
Особенностью является то, что нет необходимости менять правила консенсуса посредством хард- или софтфорка. Более сложные вычисления сами по себе не происходят непосредственно в сети биткоина. Только утверждение о результате этого сложного расчета может быть проверяемо оспорено в сети на основе заранее согласованных условий.
Полнота по Тьюрингу.
Концепция, которую часто широко используют, - это концепция «полноты Тьюринга» или «силы Тьюринга», которая делает заявление о мощности компьютерной системы или, в целом, язык. Современные «общие» языки программирования, такие как C++, Java или Python, считаются полными по Тьюрингу. Можно осуществить на этих языках все вычисления, которые может выполнить машина Тьюринга или любой компьютер. Насколько это на самом деле легко - другой вопрос, но по крайней мере теоретически эти языки достаточно мощны для этого.
Однако это не относится к небольшому специальному языку: Bitcoin Script. Все выходы в сети криптовалюты обеспечиваются небольшой программой, выходные данные которой решают, можно ли потратить соответствующий BTC или нет. Здесь они намеренно полагаются на очень ограниченный набор команд и ограниченное пространство для хранения, чтобы участники сети не подвергались утопически сложным и трудоемким проверкам транзакций. BitVM ничего в этом не изменит, поскольку он будет использоваться где угодно, в первую очередь за пределами сети биткоина.
Основной принцип.
Почти сравнимая с моделью безопасности канала Lightning, BitVM не полагается на прямую проверку, а вместо этого предполагает, что фактическая попытка мошенничества всегда будет оспорена заинтересованным лицом. Если участник канала Lightning пытается обмануть своего коллегу, например, публикуя устаревшее состояние канала в сети биткоина, существует заранее определенный механизм, с помощью которого мошенник может быть наказан.
Этот базовый принцип доведен до крайности в BitVM. В идеале все расчеты происходят за пределами сети биткоина, например, непосредственно между двумя участниками. Эти «расчеты» могут быть чем угодно. Например, в игре в шахматы, победитель может выиграть определенное количество BTC. Проблема: что будет делать победитель партии, если ему откажут в выигрыше?
Эту фундаментальную проблему доверия в сложных соглашениях необходимо каким-то образом обойти, вовлекая сеть биткоина в качестве независимой стороны, не обременяя ее реальной сложностью, то есть игрой в шахматы. Хотя это совсем не просто, BitVM предлагает элегантный, хотя и сложный подход к этому.
Техническая основа BitVM.
Все, что происходит на компьютерах, можно разбить на два числа: ноль и единицу. Каждая функция, какой бы сложной она ни была, каждое представление на экранах и даже эта статья состоит в какой-то степени из последовательных нулей и единиц. Любая программа, которая, конечно, состоит только из нулей и единиц, также может быть представлена очень простыми логическими схемами, более или менее эффективно в зависимости от структуры схемы.
После обновления Taproot стало возможным комбинировать в сценарии множество различных «путей», то есть различных условий и процессов. Это значительно сокращает объем памяти, необходимый для транзакций биткоина для сложного сценария, поскольку фактически публикуется только критический путь.
Когда два участника договариваются о шахматной партии, они представляют логические процессы шаг за шагом в таком огромном дереве различных возможностей. Эти сложные расчеты и приготовления происходят заранее и за пределами сети биткоина.
Скрипт, сведенный в выходные данные Taproot в одно значение хеш- функции, теперь готов к использованию. Если оба участника следуют правилам своей игры в шахматы, победитель может просто выплатить свое вознаграждение через простой путь вывода в скрипте. Обе стороны счастливы, и совершенно нормальная транзакция оказывается в блокчейне биткоина с точки зрения места для хранения.
Но чтобы оценить реальную безопасность BitVM, конечно, следует предположить худший вариант: один из участников пытается обмануть другого. На этом этапе будет начата заранее определенная (и подписанная участниками) игра «вызов-ответ», в которой сделанное утверждение (о победе в шахматной партии) может быть поочередно подвергнуто сомнению или опровергнуто проверяющей стороной. Если утверждение на самом деле ложно, обманываемый человек всегда сможет опровергнуть или наказать своего контрагента, что, очевидно, чрезвычайно снижает стимул к совершению мошенничества - аналогично ситуации в Lightning Network.
Даже в случае попытки мошенничества теоретически в сети биткоина окажется лишь несколько дополнительных транзакций, поэтому это не вызовет непропорционального потока транзакций.
Любые расчеты на самом деле могут быть проверены через сеть биткоина при условии, что партнер или стороны всегда имеют возможность оспорить предполагаемые нарушения правил.
Недостаток, вероятно, уже очевиден на этом этапе: сложные вычисления происходят не в сети биткоина, а за ее пределами. Миллиарды предварительно рассчитанных промежуточных шагов необходимы даже для довольно простых смарт-контрактов, не говоря уже о бесчисленных подписях, которые необходимы, по крайней мере, каждые несколько шагов, чтобы обеспечить максимально точное разрешение конфликтов в чрезвычайной ситуации.
Предложение BitVM технически очень интересное и еще раз показывает, что все варианты использования, при условии достаточного спроса на них, могут быть реализованы с помощью биткоина. Хотя BitVM изначально является лишь доказательством концепции, вскоре первые более сложные решения будут реализованы на практике и предложены первые улучшения с точки зрения эффективности подхода.
Список литературы
1. Разработчик Spiderchain: «Биткоину нужна виртуальная машина Ethereum»
2. Доминирование BTC близко к многолетнему максимуму
Размещено на Allbest.ru
...Подобные документы
Общие характеристики смарт-карт. Архитектура микросхемы: компоновка элементов микрокомпьютера смарт-карты, размещение процессора, памяти, периферийных модулей, блока ввода-вывода. Комплексный подход к обеспечению информационной безопасности смарт-карт.
курсовая работа [423,9 K], добавлен 26.11.2013Составляющие информационных систем: определение, соотношение, изменчивость, выбор подхода к проектированию. Принципы построения корпоративных систем. Обзор технических решений для построения локальных вычислительных систем. Схемы информационных потоков.
курсовая работа [571,6 K], добавлен 16.10.2012Уникальные электронные ключи как средство аутентификации пользователей. Особенности смарт-карт и USB-ключей. Анализ функциональных возможностей, установка и настройка Rutoken. Утилита администрирования, управление драйверами, браузер сертификатов.
курсовая работа [3,6 M], добавлен 23.01.2013Примеры построения тестов и технологии исследования алгоритмов на их основе. Построение тестов на основе метода покрытия решений и проведение исследования соответствующего исходного алгоритма и алгоритма с ошибками в операторах проверки условий.
контрольная работа [224,8 K], добавлен 24.05.2016Изучение возможностей среды статистических вычислений R для классификации многомерных неоднородных ассиметричных данных с помощью Expectation-Maximization (EM) алгоритмов. Использование R для анализа модели смеси вероятностных распределений (FMM).
реферат [1,8 M], добавлен 09.12.2014Эффективность применения объектного подхода для программных систем. Детальное проектирование и реализация системы, реализующей процессы создания и взаимодействия объектов. Распознавание компьютером печатных букв с помощью многослойной нейронной сети.
курсовая работа [38,0 K], добавлен 09.03.2009Преимущества архитектуры CUDA по сравнению с традиционным подходом к организации вычислений общего назначения посредством возможностей графических API. Создание CUDA проекта. Код программы расчёта числа PI и суммирования вектора CPU, ее технический вывод.
курсовая работа [1,4 M], добавлен 12.12.2012Выбор структуры, обзор различных вариантов создания нового проекта. Управление поведением MS Project 2007 при запуске. Создание нового проекта на основе шаблона. Список стандартных шаблонов. Установка общих параметров проекта, параметров планирования.
презентация [2,0 M], добавлен 15.03.2014Создание программного обеспечения, с помощью которого ручной труд производственного персонала может быть заменен на более производительный c широким использованием возможностей персонального компьютера. Требования к функциональным характеристикам.
дипломная работа [2,1 M], добавлен 08.06.2014Разработка программного средства для поиска альтернативных решений многокритериальных задач. Проектирование программного средства с помощью объектно-ориентированного подхода. Пример листинга программного кода. Особенности работы программы на примере.
контрольная работа [346,5 K], добавлен 11.06.2011Создание структуры интеллектуального анализа данных. Дерево решений. Характеристики кластера, определение групп объектов или событий. Линейная и логистическая регрессии. Правила ассоциативных решений. Алгоритм Байеса. Анализ с помощью нейронной сети.
контрольная работа [2,0 M], добавлен 13.06.2014Описание взаимодействия клиентов с терминалом с помощью графического языка UML для объектного моделирования. Представление моделей в виде диаграмм: вариантов использования (прецедентов), последовательности, коопераций, классов, состояния, размещения.
лабораторная работа [1,5 M], добавлен 23.10.2014Анализ применения нейронных сетей для прогнозирования ситуации и принятия решений на фондовом рынке с помощью программного пакета моделирования нейронных сетей Trajan 3.0. Преобразование первичных данных, таблиц. Эргономическая оценка программы.
дипломная работа [3,8 M], добавлен 27.06.2011Анализ бизнес-ситуации в области продаж сканеров в г. Днепропетровске. Прогнозирование стоимости сканеров на период исследования и на неделю вперед с помощью функции MS Office Excel "ПРЕДСКАЗ". Использование формул для автоматизации процесса вычислений.
курсовая работа [314,9 K], добавлен 16.08.2010Характеристика организации обработки информации в информационной системе управления. Программная реализация и алгоритм решения комплекса задач по внедрению смарт-карт. Анализ и оценка эффективности информационных технологий управления документооборотом.
дипломная работа [2,3 M], добавлен 05.07.2010Организация бездисковой загрузки с помощью iSCSI-таргета. Использование UML-диаграммы для представления работы бездисковой загрузки. Создание и настройка образа, особенности его раздачи через сеть. Описание процесса загрузки. Прием стандартного образа.
курсовая работа [2,6 M], добавлен 08.12.2016Использование офисного пакета Microsoft Project для управления проектами. Связь задач с помощью зависимостей, определяющих порядок выполнения задач относительно друг друга. Разбиение проекта на фазы. Представление плана работ с помощью диаграммы Ганта.
контрольная работа [40,4 K], добавлен 22.03.2012Реализация экспертных систем любой сложности, решение любых головоломок и шарад с помощью языка логического программирования Prolog. Основные понятия в языке Prolog. Правила логического вывода и запросы. Процедуры логического вывода и принятия решений.
курсовая работа [19,0 K], добавлен 24.05.2012История создания процессоров семейства К7, выпущенных на платформе РС. Свойства архитектуры и технические характеристики процессора AMD Athlon (Thunderbird). Строение и назначение системной шины EV6. Изучение расширенных возможностей технологии 3DNow!™.
реферат [3,7 M], добавлен 03.10.2010Написание программы входа пользователя в систему через пароль. Необходимость содержания входа в систему через ввод, проверки пароля, а также регистрации пользователя с занесением его имени и пароля в базу данных. Блокировка системы при неверном пароле.
лабораторная работа [2,7 M], добавлен 19.10.2009