Создатель SegWit представил новый язык смарт-контрактов биткоина
Разработчик Bitcoin Core Питер Велле представил Miniscript, новый язык программирования для упрощения разработки смарт-контрактов для сети биткоина.
Опубликовав соответствующее сообщение в рассылке для разработчиков биткоина, Питер Велле отметил, что работа над Miniscript длилась почти год, и в ней также приняли участие Эндрю Поэлстра и Санкет Саньялкар.
Just announced our Miniscript project website on the bitcoin-dev mailinglist: https://t.co/vOceWbgPe0
— Pieter Wuille (@pwuille) August 19, 2019
Теперь, как говорит бельгийский разработчик, проект вышел на тот этап, когда к нему необходимо привлечь больше внимания.
Для понимания того, к чему пришел Питер Велле, необходимо напомнить о Script – языке смарт-контрактов биткоина, который позволяет указать определенные условия, при которых может состояться трата криптовалюты.
Это может быть определенное количество времени, до истечения которого монеты невозможно потратить, или система мультиподписи, требующая подписей нескольких участников транзакции.
Miniscript построен поверх этого языка и призван его оптимизировать. Во-первых, речь идет о чисто визуальном восприятии кода. Так, если в языке Script запись выглядит следующим образом:
то в языке Miniscript она имеет такой вид:
or_d(c:pk(A),and_v(vc:pk_h(B),older(144)))
Однако, что более важно, Miniscript, по словам Велле, представляет собой новый способ написания структурированных скриптов, обеспечивающий возможность проведения различных видов статического анализа, создания генерических подписей и модифицируемого набора условий для выполнения смарт-контрактов.
Imagine a company wants to protect its cold storage funds using a 2-of-3 multisig policy with 3 executives. One of the executives however has a nice 2FA/multisig/timelock based setup on his own. Why can't that entire setup be one of the multisig "participants"?
— Pieter Wuille (@pwuille) August 19, 2019
В своем треде в Twitter Питер Велле пишет:
«Допустим, компания хочет защитить хранимые в холодном хранилище средства при помощи системы мультиподписи 2-из-3 с тремя участниками. Один из участников, однако, имеет собственный хороший набор на основе двухфакторной аутентификации, мультиподписи и блокировкой по времени. Почему бы не сделать всю систему компании одним из участников мультиподписи?»
В настоящий момент Miniscript доступен в имплементациях для языков C++ и Rust. По словам Велле, работа над проектом продолжается, однако проведенные обширные тесты внушают уверенность, что дизайн языка не только совместим с текущим консенсусом сети биткоина, но и не требуют каких-либо изменений в нем.
Более того, разработчики также планируют расширить структуру Miniscript таким образом, чтобы язык поддерживал будущие изменения скриптов, которые могут быть включены в кодовую базу биткоина.
Питер Велле добавил, что работает над внедрением частей языка в Bitcoin Core, если у сообщества разработчиков возникнет желание их включить, и верит, что это могло бы быть очень полезно для биткоина, однако в идеале он видит его как часть технологии для кошельков.
Напомним, Питер Велле также является одним из главных авторов и создателей протокола Segregated Witness (SegWit) – самого крупного на сегодняшний день апгрейда в сети биткоина, активация которого состоялась в августе 2017 года.
Подписывайтесь на канал Forklog в YouTube!
Рассылки ForkLog: держите руку на пульсе биткоин-индустрии!