Miniscript - Смарт Контракт для Биткойна : 0xbt

Miniscript - Смарт Контракт для Биткойна

19.08.2019 Pieter Wuille опубликовал в списке рассылки для разработчиков биткойна, новый язык "Miniscript" для написания биткойн-скриптов в структурированном виде, позволяющий анализировать, составлять, генерировать подписи и многое другое. 

По словам Pieter Wuille, программисты Wuille, Andrew Poelstra и Sanket Sanjalkar работают над данным кодом около года. 

Miniscript - это язык смарт-контракта для биткойна, позволяющий участникам сделки указывать определенные условия, которые должны быть выполнены, прежде чем биткойн можно будет потратить. То есть к примеру можно заблокировать средства до определенного времени, прежде чем они могут быть потрачены. Или участники сделки должны ее подписать, до перемещения средств, реализация мульти-подписи. 

Язык Miniscript получил одобрение сообщества, так разработчик Bitcoin's Lightning Network Расти Рассел написал в Твиттере

"Как, черт возьми, мы это делали раньше?!"  

 В качестве примера Pieter Wuille показал, как разрешает А -брать монеты в любое время, а В - через [один] день: 

<A> OP_CHECKSIG OP_IFDUP OP_NOTIF OP_DUP OP_HASH160 <hash160(B)>
OP_EQUALVERIFY OP_CHECKSIGVERIFY <144> OP_CSV OP_ENDIF

 
В Miniscript это будет: 

or_d(c:pk(A),and_v(vc:pk_h(B),older(144)))


Т.е. Miniscript: 

  • Учитывает сочетание условий расходов, находя наиболее экономичный сценарий для его реализации.
  • Учитывает два сценария, создавая сценарий, который реализует композицию условий их расходов (например, мультисиг, где один из «ключей» является другим мультисигом).
  • По заданному сценарию выясняет, какие условия расходования разрешены.
  • Учитывает сценарий и доступ к достаточному набору закрытых ключей, создайте общее убедительное свидетельство для него.
  • Учитывает сценарий, умения прогнозирования стоимости затрат на вывод.
  • Учитывает сценарий, где могут ли определенные ограничения ресурса, такие как ограничение операций, быть затронутыми на затраты. 

Так Джимми Сонг рассказал в своем видео, как Miniscript можно использовать для поддержки Bitcoin's Lightning Network . 

Возможно, что появление языка "Miniscript" даст новый интересный толчок в развитии блокчейна Биткойна, а так же приблизит Биткойн к реальному платежному эквиваленту. 

 

Источники: 
https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2019-August/017270.html 
http://bitcoin.sipa.be/miniscript/ 
https://twitter.com/pwuille/status/1163592166062473217


0xbt

Latest comments