The answer about the detail of MeritMoney links is very helpful!
Is there a chance we can get a similarly detailed answer about vaults? It seems like an even more complex feature than on-blockchain escrow.
I'm curious about the idea of reducing the reliance on cold storage.
Ive been digging into that feature recently as well, since I do not believe it's finished yet (on all wallet UI's at least).
I found a lot helpful in the bluepaper:
https://www.merit.me/uploads/2018/bluepaper.pdfPage 22:
" Safety is a property that users have discovered they value greatly. Many thirdparty
services now provide vaulting a feature on top of existing currencies. Merit
provides a decentralized approach to vaulting by implementing a simplified form
of covenants. Merit extends the existing Bitcoin scripting system with new
opcodes which enable important safety features such as vaulting that doesn’t
require a trusted third-party. In addition to new scripting opcodes, Merit’s
unique beaconing system. "
" Merit builds upon the Bitcoin scripting system by introducing several new opcodes
which allow building decentralized vaults. The existing Bitcoin scripting
system is designed so that scripts have minimal context around their execution.
Merit chose to extend Bitcoin’s scripting system because it is well understood by
the broader community, well tested, and also not Turing complete. The latter
property significantly improves the safety of the overall system. Other cryptocurrencies
that have Turing complete virtual machines like Ethereum have
been shown to be too error-prone and easily exploitable. By building on Bitcoin’s
Forth-like stack-based virtual machine, the overall system is more natural
to reason about and control. "
" Bitcoin scripts have no insight into the outputs of a transaction. Merit improves
upon Bitcoin’s scripting system by providing OPCODES which give script context
about the transaction the script is executing in. We introduced three new
OPCODES which allow vaults to work and some additional OPCODES to reduce
the instruction count for vault scripts minimizing their cost.
These new opcodes can be used to construct a vault script that only allows
funds to be transferred to a whitelist of addresses at a specific rate limit. "
It continues to describe the scripts on page 23/24
and there is a great breakdown on page 26 of "Figure 8: Parameterized Script Validation State Machine"
Someday I'll be able to post images. but I hope that helps juice up your curiosity!