Правда я бы с вами немного не согласился, так как при попадании к майнеру напрямую, есть немаленькая вероятность что транзакция будет смайнена. Как мне известно пулы майнят практически все, за хорошую комиссию.
Это миф, основанный непонятно на чем и взявшийся непонятно откуда.
Кто-то, безусловно, майнит такие транзакции, к примеру некоторые ноды p2pool. Абсолютное же большинство майнеров использует политику по умолчанию и не будет майнить нестандартные транзакции, если только они не запушены через локальный RPC с модификациями. А это означает, что код формирования работы эту транзакцию не увидит, даже если её напрямую прислать на P2P порт, и даже не дойдет дело до вопросов о том, а какая вообще у транзакции комиссия. И это сделано не просто так, а в целях защиты от самых простых DoS атак. Если майнер не проверяет транзакции на соответствие шаблонам, то ему в мемори пул можно напихать мусора, приводящего к созданию блока, который при получении будет вообще невозможно провалидировать в разумные сроки. В обсуждениях на гитхабе встречаются примеры, чем набить блок, чтобы он валидировался 10 минут.
В итоге у такого майнера будет орфан, что в лучшем случае просто впустую сделанная работа. В худшем же случае, с помощью такого майнера проведут даблспенд атаку на людей, принимающих транзакции с 1 подтверждением. Никакая разумная комиссия не скомпенсирует риск потери награды за блок, плюс репутационные риски. По крайней мере, в обозримом будущем, пока генерационная часть на порядки превышает комиссии. Тем более что транзакции могут быть RBF, то есть атакующий их легко сможет перезаписать сразу после генерации майнером такого блока, и ничего на комиссиях не потеряет.
Каких причин? Невозможность пополнения адреса?
В частности, а равно как и односторонняя гарантия. Уже одного этого достаточно, чтобы решения не были эквивалентами, а потому к ним нельзя применять бритву Оккама.
Яблоки не могут быть лучше или хуже апельсинов, это субъективное сравнение.
Ну и что, нетрудно и полностью переделать транзакцию.
Нетрудно, но эффективно ли? Переделанную транзакцию нужно будет заново передавать наследнику и прочим участникам процесса, если они есть. С каждым разом это будет всё больше и больше разубеждать их в серьезности происходящего. Социальные факторы, такие как
эйджизм, тоже следует учитывать при оценке эффективности.
520*2 вроде.
Лимит именно 520 байт, потому что в целях совместимости с древними клиентами скрипт перед выполнением помещается в стек, как данные. А размер значения в стеке не может превышать 520 байт. На практике это значение несколько меньше, потому что 520 байт не кратно размеру публичного ключа.
В любом случае, этого более чем достаточно для использования в разумных рамках. Ибо этого хватит аж на 15 участников в multisig транзакции, как пример. Вероятнее всего, в будущем лимит уберут или поднимут, потому что segwit сделал возможным внесение изменений в скрипт машину без поломки совместимости с древними клиентами.