tg-me.com/CryptoBotan/977
Last Update:
✅✅✅
Прежде чем писать о Noinput (о котором обещал рассказать в этом посте), разберемся с SIGHASH...Пригодиться😒
Signature Hash Types
⬇️⬇️⬇️
Вспомним о транзакциях BTC.
Bitcoin транзакция — это подтверждённая подписью секция данных, которая передаётся по сети и собирается в блоки.
Юзер пытается совершить транзакцию и потратить средства. Ему надо доказать, что он авторизовал транзакцию. Для этого используются подписи которые вычисляются на основе хэша транзакций. Хэш транзакции генерируется частями транзакции. Эти части транзакций зависят от типа Sighash.
Подписи, подтверждают, что владелец PublicKey хочет потратить соответствующие монеты в конкретной транзакции. Важно, что трата происходит не всей подписанной транзакции, а ее части.
Определяет эту часть подписанной транзакции для траты такая вещь как "метка sighash (Signature Hash Types)".
SIGHASH - Это метка для подписей биткойнов, который указывает, какие части транзакции подписывает подпись. (По умолчанию используется SIGHASHALL).
SIGHASH позволяет построить контракты, в которых каждая сторона подписывает только часть договора, позволяя изменять другие части без их участия
Имеется 3 типа SIGHASH:
SIGHASHALL - устанавливает требование, что все части транзакции (все входы и выходы, кроме входных скриптов) должны быть подписаны, а следовательно никакая из этих частей не может быть изменена. Упрощенно это выглядит так: "Я согласен вложить свои деньги, если каждый вложит свои деньги, таким способом."
SIGHASH_NONE - подписывает все входы, но не выходы. Другие пользователи могут обновлять транзакцию. Упрощенно: "Я согласен вложить свои деньги, если каждый вложит свои деньги, таким способом, но мне плевать куда они будут потрачены."
SIGHASH_SINGLE - подписываются только соответствующие входные и выходные данные (выходные данные с тем же индексным номером, что и входные данные). Упрощенно: "Я согласен вложить свои деньги, если каждый вложит свои деньги, но меня волнуют только моя часть средств."
Плюс ко всему вышесказанному, существует специальный модификатор ANYONECANPAY, который можно использовать с любым из трех типов SIGHASH. Этот модификатор игнорирует все вводы, кроме текущего. Т.е. подписывается только один вход.
BY CryptoBotan

Share with your friend now:
tg-me.com/CryptoBotan/977