A largely abstract question (set) I've tried to answer for awhile is the nature of a TxID (32 byte hex Transaction ID hash).
First and foremost, I certainly understand the main function if this value(?) is to uniquely identify a Transaction (primarily to tracks unspent outputs, AKA UTXOs).
But let's take a random TxID, say e151de4f5a339ed545e24ecfc8f811f9143fefc10574af40721a156ff2d3a389.
- How is a TxID assigned to a Transaction?
- Are 2 identical Txs that: double spend, have identical k PRNG-signed (so not a RNG!) sigs, identical inputs/outputs (a lot of assumptions here) given identical hashes?
- Tangentially: are the Big/Little Endian expressions of TxIDs (by BCI and bitcoincore respectively) suggesting two different usages (ie TxIDs are values in one sense but akin to URIs in another: is this normal?)
I know the questions seem somewhat disparate but I think the best summation is what exactly are TxIDs?