-
Notifications
You must be signed in to change notification settings - Fork 0
Tech: redeemWid
- Javascript в redeemWddr позволяет реализовать полезную логику "задешево"
-
Multisig (2 из 3 и др)
-
Сверка txSpawner с инпутами, кто подписал транзакцию (спавнер / остальные в инпутах)
-
Эмит аутпута из скрипта, Изменение параметров аутпута (если итоговая сумма аутпута <= 0 делает его дальнейшее использование невозможным)
-
Получение параметров UTXO по определенным критериям
-
crowd funding: анлок средств в пользу wId когда накоплена достаточная сумма (включая за период) либо возврат средств отправителям
-
Можно получать txStamp и "текущее" время (время блока), Анлок средств только в заданные промежутки времени
-
Анлок средств при наличии factCheck, например wId текущего txSpawner-а (на урле из белого списка)
-
скрипт возвращает 0 или !0, 0 - транзакция невалидна. В течении некоторого проверка может повторяться (актуально только для спаунера транзакции) при автопересоздании транзакции
-
проверка/эмит inputTag/outputTag
-
Комиссия обозначена отдельным полем. в скрипт все суммы входят уже за вычетом комиссии. Комиссия берется как нужно по nativeScript (из txSpawner чаще всего)
-
набор инпутов и аутпутов решает txSpawn-ер, и подписывает своим ключем соответственно
-
Транзакция на wId: "вшитый" скрипт (nativeScript)
-
redeemWid скрипты добавляются только нормализованные (пробелы/наименования), без циклов (for/loop), без рекурсии, без eval, рекурсию, без RegExp (либо лайт-вариант), хранятся в транзакции в виде b64, при проверке (только при попытке использования в инпуте) налагаются лимиты на память, количество "тактов", время исполнения. при ошибках исполнения - логика как в clientSpvMode
-
персональный garbageCollection = "подъем" старого/старых UTXO (limitTxGcMinInterval) на один хэш за вычетом комиссии
nativeScript
-
"pw", pay2wId = "сверить хеш+подпись и остаток за минусом комиссии вернуть назад"
-
"ml", mineLoot = передать mineLoot майнеру без комиссии
-
"cl", comissionLoot = передать blockComission blockSpawner-у без комиссии
-
"mp", mineProposal = метка на майнинг, с комиссией и общими правилами включения в блок
Необходимо
- перебор инпутов (вместо циклов)
- эмит аутпута (на хеш, с суммой или blobId)