I’ve three questions with regard to replay safety.
Q1 => Some non-standard scripts (like x + 2 = 5) don’t require signatures (so naturally no SIGHASH_FORKID
) to spend the UTXOs. Are these UTXOs and transactions nonetheless liable to replays?
Q2 => I’ve learn the paperwork from the inception of Bitcoin Money and realized that the legacy transaction digest algorithm just isn’t getting used anymore. From my understanding, the 4-byte sighash sort is appened on the rear of the digested transaction enter (Each for SigVersion::BASE and SigVersion::WITNESS_V0) and if a singular sighash flag is used, the uint256 SignatureHash
end result could be fully totally different. The SignatureHash
perform within the src/script/interpreter.cpp
file of Bitcoin Money solely permits BIP-143 digest algorithm when SIGHASH_FORKID
is in use. What if Bitcoin Money builders solely enforced using SIGHASH_FORKID
and embraced Segwit? Is a singular sighash flag not sufficient to stop replays?
Q3 => If a singular sighash flag (SIGHASH_FORKID
) just isn’t sufficient to stop replays, then is it due to the malleability problem on legacy transactions?