Skip to main content
Share Your Experience: Take the 2024 Developer Survey

Questions tagged [transaction-malleability]

A property of Bitcoin transactions that allows them to be replicated with another transaction id before they are included in a block.

Filter by
Sorted by
Tagged with
0 votes
0 answers
54 views

Is there anyway to produce the transaction's hash created by sender?

It seems that when someone wants to send Bitcoins, he creates a transaction and the transaction_id will be transaction's hash. after block confirmation this id will be change and we can find out this ...
Mohsen Ghorbani's user avatar
0 votes
0 answers
63 views

Question about Second-Party Transaction Malleability described in book "mastering bitcoin"

In book "mastering bitcoin", 3rd edition, page 136, there is a statement as below. "Tx1 spends the second output of Tx0 to two new outputs, one to Alice for her share of the joint funds,...
fa william's user avatar
5 votes
1 answer
263 views

What types of transaction malleability exist and which one of them does SegWit solve?

I am little confused about what types of transaction malleability exist in bitcoin and which one of them does SegWit solve. Here Antoine Poinsot talks about txid malleability and third-party ...
dassd's user avatar
  • 1,099
1 vote
1 answer
80 views

Bitcoin transaction malleability is it only for unconfirmed transaction?

I do understand what is transaction malleability and how to do it in practice eg. DER-encoded ASN.1, ECDSA and know that these 2 have been fixed. Also there are some other types (do not know examples),...
WebOrCode's user avatar
  • 353
5 votes
2 answers
283 views

Is a transaction with a non-segwit input STILL considered malleable? If so how?

Below are a few examples of witness malleability, along with reasons why I believe they are no longer valid: DER Malleability For every DER signature with (r,s), there exists 2 valid 's' values -> ...
Peter's user avatar
  • 115
1 vote
1 answer
132 views

Why is it a bug that a Taproot tree allows a Tapleaf to be repeated on multiple levels of the tree?

On the bitcoin-dev mailing list Russell O'Connor stated: There is a bug in Taproot that allows the same Tapleaf to be repeated multiple times in the same Taproot, potentially at different Taplevels ...
Michael Folkson's user avatar
4 votes
1 answer
256 views

When is a Miniscript solution malleable?

I'm having some trouble understanding malleability in miniscript. Specifically I cannot get why some solutions can be used instead of other. I think using an example may help. Say, for instance, this ...
landabaso's user avatar
  • 248
2 votes
1 answer
175 views

How and when were high-s signatures made non-standard?

I was just trying to pin-point which BIP made high-s signatures non-standard. BIP62 proposed it as a new consensus rule, but was withdrawn. I couldn't find it in another BIP.
Murch's user avatar
  • 75.7k
0 votes
1 answer
195 views

Where are signatures stored in segwit, and why are addresses different?

So I'm researching SegWit, and as far as I'm aware, it re-organizes the data structure of transactions so that the ECDSA signature is not included in the preimage of the Tx Hash. I am also aware that ...
bitcash complex's user avatar
0 votes
1 answer
30 views

Integrity of Bitcoin transaction outputs

I am a noob. Currently, I am reading Mastering Bitcoin book. If I understand correctly, output of a bitcoin transaction is just a locking script with this format: scriptPubKey: "OP_DUP OP_HASH160 ...
noooooob's user avatar
3 votes
1 answer
77 views

Do BIP199's HTLCs suffer from script malleability?

Do BIP199 HTLCs suffer from sigscript malleability like multisigs do due to OP_CHECKMULTISIG?
arshbot's user avatar
  • 1,788
4 votes
0 answers
59 views

What are the malleability threat vectors when passing PSBTs to other actors?

If I am passing a PSBT (Partially Signed Bitcoin Transaction) between multiple people, and I pass on my signature for my UTXOs for given inputs, can someone take advantage of malleability and cheat me ...
arshbot's user avatar
  • 1,788
5 votes
1 answer
253 views

Are the witnesses segregated with Schnorr signatures?

SegWit fixed transaction malleability by just moving the signature out of the block of data that's being hashed to form the transaction id. However, Schnorr does not suffer from signature malleability ...
Dalit Sairio's user avatar
1 vote
2 answers
243 views

what does segwit remove?

It's said that Segwit removes signature data from transactions which makes block have more space for more transactions. Question 1) If SegWit removes signature data, where does it put it exactly ? ...
Nika Kurashvili's user avatar
1 vote
1 answer
196 views

Are P2PKH or P2SH transactions malleable?

BIP66 fixed one source of transaction malleability and segwit, to my understanding, fixed the rest of the sources. Yet, there are still many common types of non-segwit transactions in use, like P2PKH ...
Pedro's user avatar
  • 753
1 vote
1 answer
91 views

Transaction malleability in Testnet

I want to replicate transaction malleability to study it. I have two transactions data signed in testnet. One it's the original, ...
monkeyUser's user avatar
1 vote
1 answer
458 views

scriptsig-not-pushonly (code 64) during send transaction in regtest

I create a transaction in regtest without send it, I have transaction data signed. I modified a little bit the scriptSig in order to replicate transaction malleability, I add two operations (2 OP_DROP)...
monkeyUser's user avatar
2 votes
1 answer
187 views

Multisig refund transaction flaw in Lightning Network talk

I was watching Tadje Dryja's talk at SF Bitcoin Devs conference on transaction malleability, which formed part of the basis behind the Lightning Network. At 17'45", I saw this example. Prior to ...
GViz's user avatar
  • 143
3 votes
1 answer
220 views

Transaction malleability

I have been reading about transaction malleability a lot still doesn't make sense to me. Is there a script I can use to test it out ? If the transaction that is malleable is changed by the attack, how ...
Wuncler's user avatar
  • 45
1 vote
2 answers
223 views

How does storing the witness outside of the block prevent malleability?

I have some question on how segregated witness work. I'm reading this post and in the answer exist this phrase Since signature data (witness data) is stored outside the transaction (and outside ...
vincenzopalazzo's user avatar
2 votes
2 answers
136 views

Are non-SegWit transactions still malleable?

SegWit was (amongst other improvements) introduced to fix malleability issues. Does that mean that non-SegWit transactions are still malleable? If so, what types of malleability could still happen in ...
SCBuergel's user avatar
  • 125
1 vote
1 answer
204 views

Following SegWit implementation, is BIP-146 signalling and implementation still on the docket?

Is BIP 146, which defines using the low S value, still on the docket to be signalled and implemented given that SegWit fixed the txid malleability issue by moving the witness outside the transaction? ...
Ugam Kamat's user avatar
  • 7,407
5 votes
2 answers
98 views

Why SHOULD the funding tx consume BIP 141 inputs?

In BOLT 02 we read that the funding TX should only consume segwit inputs. The sender: when creating the funding transaction: SHOULD use only BIP141 (Segregated Witness) inputs. What is the reason ...
Rene Pickhardt's user avatar
3 votes
2 answers
258 views

Why is the wtxid considered malleable?

Why is the wtxid considered malleable since the transaction is unconfirmed? How can a third-party modify it?
dcfg's user avatar
  • 404
4 votes
1 answer
1k views

In ECDSA, why is (r,−s mod n) complementary to (r, s)?

I am trying to find resources in previous malleability posts, but couldn't find derivations/proofs of this fact or how the exact low-s value is derived. Any pointers would greatly appreciated.
James C.'s user avatar
  • 2,511
0 votes
1 answer
71 views

How malleability ussue works?

Can you explain malleability issue, please? This is what I read here: https://qz.com/175565/why-nobody-can-withdraw-bitcoins-from-one-of-the-currencys-largest-exchanges/ "When a transaction record ...
D-Samp's user avatar
  • 61
5 votes
2 answers
355 views

Why didn't Bitcoin implement segwit in the first place?

Why didn't Bitcoin implement segwit in the first place? Why and how does non-segwit Bitcoin enable a miner to change a transaction's txid? From Mastering Bitcoin ch. 7 § "Transaction identifiers": ...
Geremia's user avatar
  • 4,640
1 vote
1 answer
74 views

Transaction Malleability, if i want to change signature, what part should I change, so that it would remain valid?

I know what transaction malleability is, but I don't understand how someone can change my signature so that it would remain valid. For example, If I want to change signature what part should I change, ...
Nika Kurashvili's user avatar
0 votes
1 answer
63 views

"comment" and "to" of malleated transactions

I'm using the bitcoin core wallet and trying to build some programs around it. I see that comment and to can be added to transactions locally. If I understand it correctly, both are stored in local ...
Will Gu's user avatar
  • 368
0 votes
1 answer
97 views

Can transaction id be used to verify a transaction?

I have seen alot of questions here on "Transaction Malleability issue". Editing of transaction id can be done by miners or nodes which relay the transaction. What I want to know is whether the ...
SMJ's user avatar
  • 141
7 votes
3 answers
800 views

Why was transaction malleability fix required for Lightning network?

Transaction malleability is that TXID can be changed modifying the signature slightly without the private key. To implement Lightning Network, it was required to fix the malleability. However, I ...
ogw_yuya's user avatar
  • 635
1 vote
1 answer
97 views

Why are miners allowed to change a tx id?

BIP 62 proposed to make transaction malleability impossible. Why was this retracted and why are miners allowed to change a transaction id? Also, what does it mean when someone says signatures ...
lolololol ol's user avatar
2 votes
1 answer
241 views

What does malleable mean in "transaction malleability"?

Does malleable mean modifiable? If you can malleate a transaction you can modify some of its parts leaving the transaction as still valid (the signatures are not broken). If you can malleate the ...
croraf's user avatar
  • 1,248
4 votes
1 answer
394 views

Lightning network: how was malleability actually fixed?

Section 3.1.2 of the Lightning paper (Version 0.5.9.2, last modified 14 January 2016) discusses ways to fix the transaction malleability issue, which prevented Bitcoin transactions from spending UTXO ...
Sergei Tikhomirov's user avatar
0 votes
1 answer
270 views

malleability in 2-of-2 multisig payment channel

I am having issues understanding 2-of-2 multisig, with regards to the malleability attack. Where Alice and Bob set up a multisig payment channel where Alice sends 1 BTC in order to do multiple tx ...
user62261's user avatar
1 vote
1 answer
1k views

What can be the reason to change transaction ID?

I always thought that when my wallet create a transaction, it's transaction id is fixed (it is the SHA256 of the transaction message). Yes, the transaction might not be included in the next block (and ...
Salvador Dali's user avatar
1 vote
1 answer
570 views

Why is BIP-147 (Dealing with dummy stack element malleability, part of segwit) necessary?

Given BIP-11 (M-of-N Standard Transactions) it's not clear why BIP-147 (Dealing with dummy stack element malleability) is necessary. BIP-11 states: OP_CHECKMULTISIG transactions are redeemed using ...
Rich Apodaca's user avatar
  • 2,421
1 vote
1 answer
176 views

What's the easiest way for a third party to malleate a transaction?

Let's say I am a node. A transaction has been relayed to me, and one of the scriptSig fields is: <sig> <pubKey> What is the easiest way for me to malleate this transaction? For example, ...
inersha's user avatar
  • 3,145
3 votes
1 answer
522 views

Does Segwit mean easier government monitoring?

I have noticed a steady stream of PR articles talking ad nauseum of the dangers of a contentious hard fork and how miners refusing to signal segwit are screwing us all. Many are quite well written and ...
maple_shaft's user avatar
0 votes
1 answer
93 views

tx-malleability who re-signed the tx?

It would be really great if there was a way to loop through all the txids in a new block and be able to check if you (can) sign your original transaction the same way it was re-signed - that it ...
Ben Muircroft's user avatar
0 votes
1 answer
121 views

How did blockr.io see this?

Here's the pushed/broacast-ed tx http://tbtc.blockr.io/tx/info/d8e5dac095d5f6133e6c3f11e1d9f923c04dac0824f9f8ce0000573df7cc8080 txid was malleated to txid (when the tx was added into the block): ...
Ben Muircroft's user avatar
2 votes
2 answers
184 views

testnet3 frequent tx malleability

Related How confirm my own doublespend transaction got confirmed This is not about double spends and I believe that the related question is not about double spends ether! On bitcoin's testnet3 I am ...
Ben Muircroft's user avatar
2 votes
2 answers
261 views

How confirm my own doublespend transaction got confirmed

Transactions in the testnet are right now almost always double spent with a new txid (possible due to tx malleability). This is actually quite nice for testing purposes. So I'm wondering - when I ...
tobi's user avatar
  • 135
2 votes
2 answers
106 views

If well-built wallet software can avoid transaction malleability, why does the lightning network need an additional malleability fix?

My understanding is that wallets can avoid creating malleable transactions. If so, why does a lightning network need SegWit or some other tx malleability fix?
murty's user avatar
  • 272
1 vote
1 answer
163 views

OP_RETURN malleability?

Can anyone alter the data after OP_return? My question needs to have more characters, so I insert an example, that doesn't hurt: "vout" : [ { "value" : 0.00000000, "n" : 0, ...
nopara73's user avatar
  • 826
1 vote
0 answers
309 views

How to create walletconflicts in regtest mode?

I play with Bitcoin Core 0.13 in regtest mode using python. Now I use bitcoin-testnet-box, I have two nodes connected to each other. I want to create a walletconflict. I want to get gettransaction <...
Yevhen's user avatar
  • 173
2 votes
1 answer
222 views

Bitcoin Core 0.13 -- jsonrpc interface -- conflicted transactions

I use bitcoind's Wallet feature to manage my bitcoins. Using json-rpc interface, how can I check that a transaction is a conflicted one? And, how can I get txhash of a transaction, that spends those ...
Yevhen's user avatar
  • 173
3 votes
1 answer
452 views

How are transaction IDs generated and how are they then changed by transaction malleability?

How are the transaction IDs generated for a Bitcoin transaction? How can the transaction ID change due to a transaction malleability attack?
tbolt's user avatar
  • 264
2 votes
1 answer
299 views

why is double-spend not an issue for payment channels?

Micropayment Channels (MPC) cannot be used currently because of transaction malleability, I hear. AFAIK, people saying that have in mind that the refund & payment tx, which have as input the ...
hartmut's user avatar
  • 681
5 votes
2 answers
683 views

Are Micropayment channels still subject to malleability after BIP65?

After BIP 65, are simple, unidirectional, MPC still subject to transaction malleability? More specifically: Is the payee at risk because of malleability? If yes, how? (as far as I understood, the ...
hartmut's user avatar
  • 681