Questions tagged [transaction-verification]

Refers to the process of checking the validity of transactions.

Filter by
Sorted by
Tagged with
3 votes
1 answer
45 views

What Lightning Network transaction information is usable to provide a verifiable public index of received payments?

I have in mind a protocol architecture that includes value transfer, where BTC is the unit of account. To make the protocol scalable I could specify use of the Lightning Network protocol. In this case,...
  • 244
3 votes
1 answer
161 views

When was the 10,000 B limit for scripts introduced?

The file src/script/script.h defines a MAX_SCRIPT_SIZE of 10,000 B. Among other instances, the MAX_SCRIPT_SIZE is used in the IsUnspendable() check, which allows us to avoid adding outputs with ...
  • 65.4k
2 votes
1 answer
48 views

What rules does a node execute to determine if a transaction is valid and propagate it to other nodes?

How does a node decide whether a transaction is valid and whether to propagate it to other nodes? Could you please mention some of the basic rules that nodes follow for such a purpose?
  • 35
4 votes
2 answers
1k views

Why does IsCoinBase() check if there is exactly one input?

In the Bitcoin Core source code there is a function to check if a given transaction is a coinbase or not: bool IsCoinBase() const { return (vin.size() == 1 && vin[0].prevout....
1 vote
2 answers
95 views

When The Unlocking Script Is Created, Who Verifies The Script?

I am familiar with the many ways an unlocking script is created. But in this scenario, lets use P2PKH. When we generate the unlocking script (excuse the simplicity): <dup> <hash160> <...
  • 147
1 vote
1 answer
70 views

The true reason bitcoin needs merkle proof for SPV wallet?

I know exactly what merkle tree is, and I know it is used to verify a transaction is in a block with just a hundred of bytes flowing through my network cable (btw do I really lack that megabytes ...
  • 151
0 votes
1 answer
36 views

Is there a way to know how many of currently unconfirmed transactions in the MemPool is currently being attempted by other miners?

Assume there there 100 unconfirmed transactions currently in the MemPool. And the size of a block is such that it's roughly made up of 10 transactions. Now when a miner completes the Proof of Work &...
0 votes
3 answers
52 views

What algorithm do miners use to validate individual transactions in a broadcasted solution before accepting it to their blockchain?

If proof of work is a consensus algorithm that guards against malicious nodes from adding faulty blocks, what actually happens when a miner successfully confirms a fraudulent block (i.e. a block that ...
1 vote
2 answers
78 views

Curiosity, Minimal transaction accepted as valid? (zero input/ zero output)

$ bitcoin-cli decoderawtransaction 00000000000000000000 { "txid": "f702453dd03b0f055e5437d76128141803984fb10acb85fc3b2184fae2f3fa78", "hash": "...
0 votes
1 answer
121 views

Does every single node in the blockchain validate the transactions in the mempool?

I have read several responses to various questions SE. Some responses partially respond to the question so I was hoping to get your help to bridge my gaps in understanding. Does every single node on ...
0 votes
2 answers
51 views

What databases is used to see if a transaction is valid?

When you check a transaction before adding it to a block what data source is used as a source to make sure all the coinbase transactions are valid.
0 votes
1 answer
56 views

Using EQUALVERIFY with different public keys, but generated from the same seed

I am building certain system that involves Bitcoin and therefore I need to understand well how it works under the hood. In order to receive funds, for every new transaction new public key and its hash ...
  • 57
1 vote
1 answer
67 views

How and when do nodes stop broadcasting a transaction?

Suppose a node begins broadcasting a signed transaction. Question 1. At what stage is the signature verified? In §5 of the whitepaper, verification only appears during block acceptance after mining. ...
1 vote
3 answers
61 views

Why can't I modify someone else's transactions, if I have their signature data?

As I know, signature system is adding signature to end of transaction. And doesn’t hash transaction, so others can know my signature. If I can send a message directly to the node, can I use other’s ...
1 vote
1 answer
66 views

How many times and where exactly is ECDSA used in Bitcoin?

I'm currently a little confused about where exactly ECDSA is used in the transaction process... some resources seem to say it's used once, whereas others seem to say it's used three times. Which is ...
  • 13
1 vote
1 answer
33 views

Trying to understand a nonstandard transaction in bitcoin tests

I am trying to implement a bitcoin script interpreter and today I stumbled upon a nonstandard transaction in tx_valid.json which gave me a lot of headaches. The transaction in question has the ...
0 votes
1 answer
99 views

Why is OP_XOR disabled? Are there any forks on which it has been enabled? [duplicate]

Why is OP_XOR disabled? Are there any forks on which it has been enabled? Are there any plans to enable it? Perhaps this is the answer, still perhaps there is another reason for the bitwise logic ...
  • 244
0 votes
2 answers
53 views

Can the order of transactions not strictly follow the chronological order?

Suppose I have 1 bitcoin, I give Alice 0.2 bitcoin first, then Bob 0.2 bitcoin immediately, both transactions are legal can miners reverse the chronological order when packing block ? If (1) is true, ...
2 votes
1 answer
285 views

How does validating a transaction get more and more hard?

As far as I know, to prevent double-spend attack and to confirm that a specific transaction is valid, miners have to go through all blocks in the blockchain and check the sender's history of ...
3 votes
1 answer
84 views

Bitcoin transaction script debugging strategy - how to debug 'invalid script' errors

I've been playing around with DLC transactions but I can't seem to create a valid CET transaction to conclude simple all or nothing bets. Further details below on my specific case, though this ...
  • 198
0 votes
1 answer
104 views

Are the block headers kept in memory?

Bitcoin Core keeps block data as files in the file system and blocks indexes in a LevelDB database to make the search process of transactions and blocks faster. But Bitcoin Core also stores block ...
  • 13
0 votes
1 answer
276 views

Watch incoming transaction with node.js

I would like to watch a set of Bitcoin addresses and be able to execute some logic as they receive a payment. According to this answer it can be done using blockchain.info: const Socket = require('...
  • 137
0 votes
2 answers
100 views

Block 170 transaction validation in the old days

I'm trying to understand how to validate the first non-coinbase transaction, that is transaction 1 of block 169, as it was validated in the old days. This transaction has one input, which decoded ...
0 votes
3 answers
100 views

How much time do miners spend validation?

Before mining, miners have to validate previous block and transactions which exist in mempool. Then, they pick up some validated transactions from pool and start mining on top of validated block using ...
1 vote
1 answer
46 views

Why there are signature and public key pair on blocks when transaction verifying is over

I'm student studying about bitcoin and blockchain. I want to know why all blocks have signature and key pair after the transaction is over. Why I ask this, I'm studying post quantum cryptography (PQC) ...
  • 27
1 vote
1 answer
59 views

What's the difference between an 'address' and an 'addressHash' in a transaction on a bitcoind node?

I'm listening to a ZMQ socket; it's sending out messages every time my node receives a transaction. The message is the binary value of the transaction itself. When I decode the binary (using a tool in ...
0 votes
1 answer
30 views

Bitcoin transaction validation is not based on a static pattern, but instead is achieved through the execution of a scripting language

What is static pattern and why it is not used in transaction validation and why execution pattern is used through the scripting language i am a bit confused need a clear explanation.
0 votes
1 answer
125 views

My transaction is in review for over 24hrs on blockchain, I want to cancel it

Please I want to cancel my in review transaction on blockchain. How will I go about it. Please help me,I need answers as soon as possible.
0 votes
0 answers
31 views

Transaction not received? [duplicate]

Can someone help me? i did my first transaction From ID : 3FxvvRt1wpTHzN8xYVBXMsrGB6aTSrndBQ To ID: 3LSGTkzC62tgTALSGHF7Ztw1dPF5Vyg38B The adresses are right, not fault to find? Thanks
  • 1
0 votes
1 answer
79 views

Bitcoin wallet key pair change and transaction validation

For anonymity reasons key pair of a wallet can change. Then how does miner validate if a sender has enough bitcoins? After key pair change blockchain history contains only old public key as a wallet ...
0 votes
1 answer
92 views

What does verifying a fake transaction mean?

Dear China: please ban bitcoin mining. Four large Chinese mining pools control almost 60% of bitcoin supply and could in theory collude to verify a fake transaction: Goldman https://twitter.com/...
user avatar
1 vote
1 answer
139 views

Error validating a transaction with blockcypher

I've created a testnet transaction using blockcypher API (https://api.blockcypher.com/v1/btc/test3/txs/new) and then signed the transaction using the signer (go lang). And then sent signed transaction ...
  • 13
3 votes
1 answer
103 views

Function combinerawtransaction is not working

I have multiple partially signed transactions that I want to combine into one transaction. All those transactions were signed using the same key so it should be possible to combine all those partial ...
0 votes
1 answer
116 views

How are the unlocking script + locking script executed?

I just wanted to verify the input of transaction 7de75. The related output is index 10 of transaction 00f64. The locking script defined in 76a91 (index 10) is: OP_DUP OP_HASH160 ...
3 votes
1 answer
258 views

Inner working of OP_IF and OP_ELSE

How does OP_ELSE work exactly? Is there an else if in Script? According to https://en.bitcoin.it/wiki/Script#Flow_control, the statements after an OP_ELSE are executed in three cases. It says: If ...
  • 63
1 vote
1 answer
100 views

Why does the value range of outputs need to be restricted?

In the 'tx messages' section for protocol rules we have Each output value, as well as the total, must be in legal money range For each input, if the referenced output does not exist (e.g. never ...
  • 320
1 vote
0 answers
89 views

Generating zero-amount transactions in regtest mode?

I'm setting up a larger test network of regtest nodes in which all of them should be easily capable of creating blocks and sending transactions. To this end, I'm looking for a simple way for the nodes ...
  • 11
1 vote
3 answers
351 views

How does the blockchain resolve arbitration issues?

I understand that a bitcoin wallet is nothing but a transaction record performed on the block chain. How are transaction details updated in the decentralised block chain? In a centralised system a ...
0 votes
0 answers
206 views

Final Balance -Balance showing different then Coinspot BTC wallet

Bit of a beginner question I have been using crypto wallets for a few months and have basically learned through trial and error. The question is my BTC wallet on Coinspot has a $0 and 0.0 BTC balance. ...
1 vote
1 answer
57 views

What exactly does the "For each input, if the referenced output exists in any other tx in the pool, reject this transaction." tx validation rule mean?

I am currently following the "tx" messages section of en.bitcoin.it/wiki website, and I need some clarity about the following rule regarding the validity of a transaction: For each input, ...
3 votes
2 answers
839 views

How are transactions verified with only the Bitcoin address, not the public key?

I understand how asymmetric cryptosystems and digital signatures work: You generate a (private key, public key) pair. You never share the private key, you make the public key ... well, public. You ...
1 vote
1 answer
72 views

How does a miner verify a transaction which is spending an output of another transaction in the same block?

It is mentioned in this post that: If all validation of all transactions in a block succeeds, the consumed inputs are removed from the database, and all outputs of those transactions added as fresh ...
  • 13
2 votes
0 answers
100 views

How do i debug a bitcoin transaction

My main problem is understanding how to convert the response from bitcoin-cli "decoderawtransaction" to the script format i am supposed to put in the debugginng tool. i.e my problem is ...
  • 121
0 votes
1 answer
102 views

Verifying a P2WSH by hand

To test my understanding of the signing and verifying process i tried to verify some random Bitcoin transactions by hand. Sadly i got stuck with a P2WSH transaction, i choose the following transaction ...
  • 3
0 votes
1 answer
138 views

Can't Make Sense of Why OP_CHECKSIG Fails Here

I'm try to get to grips with verifying the signature of a P2PKH transaction. I have an example transaction: 9ec4bc49e828d924af1d1029cacf709431abbde46d59554b62bc270e3b29c4b1 I am trying to verify the ...
  • 309
8 votes
1 answer
473 views

Full list of "special cases" during Bitcoin Script execution (p2sh, p2wsh, etc.)?

When executing a Bitcoin Script, there are some "special cases" where the interpreter performs extra verification beyond just executing scriptSig and then scriptPubKey. For example, if the ...
  • 207
5 votes
1 answer
236 views

When the UTXO in the cache is full, what strategy is used to replace one UTXO with another in the cache?

The UTXO set is stored on the disk, but some UTXOs are also stored in the cache. When validating a transaction, you need to query the UTXO pointed to by the input of the transaction. First, you go to ...
  • 155
0 votes
1 answer
131 views

why is transaction history from genesis to date necessary to store on the blockchain to prevent double spending?

I am beginning to understand the mechanism of bitcoin blockchain, and I was wondering something. The transactions history represents the 'state' of the bitcoin at any point (or EVM according to the ...
  • 3
0 votes
1 answer
104 views

How can be proven that a signature is valid with it's public key

If someone wants to make a transaction, they need to sign the transaction data with their private key. For example Sign(transactionData, privateKey) creates the signature. What is exactly this Sign ...
0 votes
1 answer
91 views

Will the Bitcoin network discredit a transaction if you do a simple transfer on a multi-sig after you found the collision on that address?

Let's say you found a collision for an address on the Bitcoin network. You have its private key. Will you be able to transfer any money around or will the network prevent it or does it get verified? ...

1
2 3 4 5 6