What are segwit txs?

0

Which one is a segwit tx? A Tx that send outputs to a segwit address or A Tx that create inputs along with witness part? Which one?

should segwit tx necessarily produce outputs of type witness_v0_keyhash.

What about a Tx that has witness and send outputs of type pay-to-pubkey or pubkeyhash

lch

Posted 2018-06-08T22:36:10.350

Reputation: 183

Answers

1

Generally the definitions are as follows:

A Segwit transaction is any transaction which contains witnesses. This means that the transaction has at least one input which spends from a segwit output (P2WPKH, P2WSH, P2SH wrapped versions of those two).

A Segwit transaction does not have to produce any segwit outputs.

A transaction which produces segwit outputs but spends non-segwit outputs as inputs (so it does not have any witnesses) is not considered a segwit transaction.

Andrew Chow

Posted 2018-06-08T22:36:10.350

Reputation: 40 910

Correct me if my understanding is wrong. A Tx is segwit or non-segwit is all about how you structure the data. I mean if you separate your signatures from inputs and place them as a witness, it becomes segwit. When consuming non-segwit outputs as inputs what prevents me from adding a witness to that new TX?lch 2018-06-08T22:56:42.570

2A transaction which consumes only non-segwit outputs is not allowed to have a witness. Doing so would result in a wtxid which differs from the txid which is not allowed for transactions which only spend non-segwit outputs.Andrew Chow 2018-06-08T23:29:23.473