Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: Frodek on March 11, 2019, 10:17:13 AM



Title: Computing transaction hash
Post by: Frodek on March 11, 2019, 10:17:13 AM
Where in code is computing transaction hash?
CTransaction::ComputeHash()?


Title: Re: Computing transaction hash
Post by: Heisenberg_Hunter on March 11, 2019, 11:41:46 AM
If you had done a general search in the code base you could have got them,

The CTransaction::ComputeHash() is present in bitcoin/src/primitives/transaction.cpp #L65 (https://github.com/bitcoin/bitcoin/blob/master/src/primitives/transaction.cpp)

Code:
uint256 CTransaction::ComputeHash() const
{
    return SerializeHash(*this, SER_GETHASH, SERIALIZE_TRANSACTION_NO_WITNESS);
}

uint256 CTransaction::ComputeWitnessHash() const
{
    if (!HasWitness()) {
        return hash;
    }
    return SerializeHash(*this, SER_GETHASH, 0);
}

BTW what are you trying to achieve with this?  ???