Bitcoin Forum
September 23, 2024, 09:17:21 PM *
News: Latest Bitcoin Core release: 27.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Transaction ID formation  (Read 2129 times)
No_2 (OP)
Hero Member
*****
Offline Offline

Activity: 905
Merit: 1033


BTC: the beginning of stake-based public resources


View Profile
February 12, 2015, 05:22:52 PM
Last edit: February 12, 2015, 06:22:25 PM by No_2
 #1

I understand each transaction in the blockchain has a unique ID, is this generated when it is created or at the time it is written to the blockchain? Or is it generated by some other means?
domob
Legendary
*
Offline Offline

Activity: 1135
Merit: 1170


View Profile WWW
February 12, 2015, 05:53:12 PM
 #2

I understand each transaction in the blockchain has a unique ID, is this generated when it is created or at the time it is written to the blockchain? Or is it generated by some other means?

The tx ID is basically a hash of the transaction data.  So, in some sense, it is created as soon as you create the tx.  At least when it is broadcasted to the network, the ID becomes known publicly.  So not at mining time.

There's a small caveat, though:  Due to a process called "transaction malleability", it is possible that someone (who need not be related to the tx in any way) can alter the tx in such a way that it is still valid, "means" the same thing but has a different ID.  In that sense, you only know the (final) ID for sure once the tx is confirmed.

Use your Namecoin identity as OpenID: https://nameid.org/
Donations: 1domobKsPZ5cWk2kXssD8p8ES1qffGUCm | NMC: NCdomobcmcmVdxC5yxMitojQ4tvAtv99pY
BM-GtQnWM3vcdorfqpKXsmfHQ4rVYPG5pKS | GPG 0xA7330737
No_2 (OP)
Hero Member
*****
Offline Offline

Activity: 905
Merit: 1033


BTC: the beginning of stake-based public resources


View Profile
March 13, 2015, 10:57:39 AM
 #3

...
There's a small caveat, though:  Due to a process called "transaction malleability", it is possible that someone (who need not be related to the tx in any way) can alter the tx in such a way that it is still valid, "means" the same thing but has a different ID.  In that sense, you only know the (final) ID for sure once the tx is confirmed.

Thanks.

There was a lot of news about how transaction malleability had been fixed in Bitcoin Core 0.8/0.9 did this not resolve transaction malleability? Or are you saying one cannot assume that all nodes on the network are conforming to not causing transaction malleability when relaying transactions?
Carlton Banks
Legendary
*
Offline Offline

Activity: 3430
Merit: 3080



View Profile
March 13, 2015, 11:44:54 AM
 #4

There was a lot of news about how transaction malleability had been fixed in Bitcoin Core 0.8/0.9 did this not resolve transaction malleability? Or are you saying one cannot assume that all nodes on the network are conforming to not causing transaction malleability when relaying transactions?

It wasn't fixed, but the range of circumstances under which it can be performed were mitigated somehow. And Core client reports when a doppelganger txid shows up in the mempool, whereas previously it reported both tx's as being valid (as well as reporting the wallet balance to be similarly valid  Cheesy) . I believe the BIP66 implementation in 0.10.0 is supposed to add a little more mitigation/step towards being fixed, but that's not even meaningful until the version 3 block creation threshold is reached.

Vires in numeris
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!