Skip to main content

Questions tagged [transaction-verification]

The process in which every Bitcoin node checks every part of every Bitcoin transaction worldwide for conformance to standard rules and uses the complete history of all previous Bitcoin transactions to check that money being spent in a transaction has not previously been spent in any earlier transaction since the beginning of Bitcoin.

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

Is this a scam? [duplicate]

I made an account with karcof.com so someone could pay me. Once the account was created the sender sent me 41k in BTC. So now I have a balance of 41k on my karcof account. I tried to withdraw it but ...
0 votes
2 answers
31 views

hashTypeCode/sighash flag example byte arrays for each type

Say I have this (randomly selected) transaction confirmed: txprev.txid: 64891cd6a9771adf75b343367850198633d2865df516533f523ce33fdf8c55c2 txprev.version : 01000000 txprev.input count : 01 ...
0 votes
1 answer
51 views

What is the hashTypeCode?

After a transaction is serialised ready for signature or signature verification, a 4 byte hashTypeCode must be added (step 9 here). As it's derived from a single byte, it has 256 possible values. What ...
3 votes
1 answer
2k views

Verifying a bitcoin trx on the Unix cmd line with OpenSSL?

I want to use openssl on unixoide systems to verify a transaction. I step on errors, when trying to verify a bitcoin trx’s hash. Here I am working on Mac OSX and OpenSSL (1.0.2a 19 Mar 2015). I know ...
0 votes
1 answer
49 views

How to validate a bitcoin transaction

Sorry for the noob question, but I just installed bitcoin core last week and am running a full node. I want to verify a transaction I sent to a new coldcard wallet. How do I do this in core?
1 vote
2 answers
806 views

How does this simple script use the OP_CHECKSIG opcode?

I have this Script P2PKH <A Signature> <A Public Key> OP_DUP OP_HASH160 <A Public Key Hash> OP_EQUALVERIFY OP_CHECKSIG The bitcoin.org documentation say this The entire ...
0 votes
1 answer
64 views

Can I create multiple OP_RETURN UTxO in single transaction

Is it possible to generate multiple OP_RETURN utxos in one transaction? I see there is an answer for that in 2015, I wonder if it's still the case. I know nothing prevents us from doing so, but ...
0 votes
2 answers
216 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 ...
2 votes
2 answers
1k views

How does mining verify a transaction?

I’m very much new to understanding this whole bitcoin concept. As far as I’m concerned, nodes mine for a nonce that, when paired with the data of the block, result in a hash that suffices some ...
0 votes
1 answer
47 views

Monitoring a sequence of bitcoin transactions

Me and a person I met on the internet have agreed to a sequence of two btc transactions, but neither of us trusts the other party. We would like to hire a person to monitor the sequence on the ...
0 votes
0 answers
56 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 ...
2 votes
1 answer
1k views

How does merkle tree verification of transaction work?

From what I have read, suppose B sends 1 bitcoin to C. C wishes to verify B's payment and asks C for the block number (location) that input transaction is located at. (Is this correct understanding/...
0 votes
1 answer
86 views

How many nodes and edges does the UTXO-coinbase graph have?

Imagine a graph where the leaf nodes are the UTxOs, the intermediate nodes are spent TxOs (vout), the root nodes are the blockheaders and coinbase merklepairs, and the edges are the data required to ...
2 votes
1 answer
102 views

What is the point of having a script language now?

When I first started learning how transaction are validated, it made sense why a script language was needed: the scriptPubKey was executed along the scriptSig, the software just executes this "...
2 votes
1 answer
97 views

Does the stack have access to the current block height when validating transaction?

In the "Freezing funds until a time in the future" example here https://en.bitcoin.it/wiki/Script it mentions that the "Top stack item is checked against the current time or block ...
0 votes
0 answers
32 views

Using high-level language to verify blocks

I would like to know if there exists a low-level library in Python or any other language that automates the process of verifying blocks, i.e. verifying the hash, the merkle root and the transactions. ...
0 votes
0 answers
52 views

Lib bitcoinconsensus verification returns SCRIPT_ERR_INVALID_STACK_OPERATION on a P2SH multisig output

I tried to verify an old transaction 6a26d2ecb67f27d1fa5524763b49029d7106e91e3cc05743073461a719776192 P2SH multisig input 0 using lib bitcoinconsensus and I got SCRIPT_ERR_INVALID_STACK_OPERATION. ...
2 votes
1 answer
177 views

Certain spent P2PKH outputs give error: Non-canonical DER signature

Certain rare spent P2PKH outputs give error: Non-canonical DER signature when I try to verify the spent output using both btcdeb (version 5.0.24) and bitcoinconsensus (version 0.20.2, using Rust ...
2 votes
2 answers
143 views

What happens to rejected transactions (i.e double spend or invalid transactions)?

Do they get put in an orphaned block or not get put into any block at all?
10 votes
1 answer
718 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 ...
0 votes
2 answers
372 views

Verify Bitcoin Transaction

Following the great post [Redeeming a raw transaction step by step example required, I came up with code below but the verification failed. // pubkeyBytes, len: 65 // ...
2 votes
1 answer
242 views

How does CoinJoin affect the total transaction size?

As I understand it, CoinJoin is a method to aggregate multiple transactions into a single transaction, mostly for privacy purposes. How does this aggregation affect the total size of the transactions?...
3 votes
2 answers
406 views

Is the UTXO set size important for non-mining full nodes?

Recently, I have seen a lot of development effort going into techniques for different ways of storing, pruning UTXO/TXOs. The main motivation cited is reducing block orphaning, which is mining-...
1 vote
2 answers
171 views

When the validity of scriptPubKey is checked?

I have a couple of questions related to validation of script in transaction output (scriptPubKey). I apologize for a little more text, but I tried to explain in detail what I don't understand. Since ...
1 vote
1 answer
101 views

Taking the existing INPUT and changing the OUTPUT to steal bitcoins. Is this a possible bitcoin theft scenario and how to prevent it?

I'm relatively new to Bitcoin and I'm wondering how Bitcoin defends against the following scenario and if it's even possible. Before I start with the scenario, just two notes: 1. There is a lot of ...
1 vote
1 answer
114 views

Do Bitcore APIs have daily limits?

I can't find online if the bitcore API (https://github.com/bitpay/bitcore/blob/master/packages/bitcore-node/docs/api-documentation.md) has daily limits for making requests, or if there is a need to ...
0 votes
1 answer
220 views

What happen to my bitcoin

I have payed last april 21 and april 25 should be my payment but it took days already here is my transaction id b5a9cb6a67429ec60c51f3aa197bec67af0003c841890132051f9fea40f71f76 And the same as april ...
1 vote
2 answers
294 views

How is a miner prevented from adding transactions without signatures to their block?

Consider I'm a miner. I mine on my own, I don't mine in pools. I have power enough to find the hash, lets say, once per 2 years. When I find the hash within those 2 years I send the block back to the ...
1 vote
2 answers
618 views

Unconfirmed transaction Bitcoin Core 22.0

I use Bitcoin Core 22.0. I sent a transaction. By mistake I chose a low feerate, and now the transaction is stuck in the mempool, and who knows if anyone will notice it. In previous versions of ...
7 votes
1 answer
3k views

How does OP_CHECKSIG work

Hi I am learning bitcoin and learning how scripting works and how to use P2PKH. I was wondering how does OP_CHECKSIG work. I want to understand what is the data that the private key signs to create ...
1 vote
2 answers
395 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 ...
1 vote
2 answers
365 views

Does running a standard Bitcoin full node mean your node verifies transactions of other members?

If I install Bitcoin Core and run it as a Full Node, will Bitcoin Core automatically verify transactions from other users? So, just by installing a Bitcoin Core Full Node, could I possibly process ...
2 votes
1 answer
117 views

Where is a transaction stored before getting added to the mempool?

A transaction is stored in the mempool before it is confirmed. However, the Bitcoin node can't verify incoming transactions with 'light speed' to add them to a mempool—it obviously needs some time. So,...
2 votes
1 answer
144 views

How come an `OP_3` P2SH redeem script is spendable?

I completed a round trip transaction with the redeem script hash: 31vFvEkyAb2iusbPip36H9rVt6pxExuaVR, whose redeem script is OP_3 (0x53) (yes I know not secure). I can understand OP_1 redeem script ...
3 votes
1 answer
204 views

Where is sum(vin) > sum(vout) check in Bitcoin Core?

I'm searching the function that validates a transaction according to Protocol rules - "tx" messages especially step 14 sum(vin) > sum(vout). I found this interesting function CheckTransaction(...
1 vote
1 answer
205 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? ...
1 vote
1 answer
738 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
1 answer
59 views

Why does the Bitcoin network encrypt the transaction data? [duplicate]

The whole process of encryption sounds useless to me. Miners/validators and full nodes need to verify each transaction. They need two pieces of information: The original transaction data The ...
1 vote
1 answer
254 views

Need a detailed step-by-step P2PK signature validation example

In the process of validating transactions by hand with a new library in elixir. I am starting with f4184fc596403b9d638783cf57adfe4c75c605f6356fbc91338530e9831e9e16, which is one of the first P2PK ...
2 votes
2 answers
490 views

Is verification of a blockchain computationally cheaper than recreating it?

One of the advantages of cryptocurrencies like Bitcoin that is often repeated is how hard it should be to manipulate past transactions. The reason that is often stated is that you would have to re-...
16 votes
1 answer
867 views

How many bitcoin transactions can be verified per second on commodity hardware in 2020?

I am trying to figure out how many Bitcoin transactions could be verified per second. Am I correct that signature verification is more expensive than computing Merkletrees and hashes and therefore ...
3 votes
1 answer
82 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,...
3 votes
1 answer
217 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 ...
4 votes
2 answers
2k views

What's the blocksize limit after segwit and how do legacy nodes deal with segwit transactions?

Normally, I heard that the bitcoin blocksize is 1MB, but with the Segwit update the blocksize can be up to 4MB, so we should say that the blocksize is 4MB, right? Moreover legacy nodes only receive ...
2 votes
1 answer
83 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?
3 votes
1 answer
2k views

Error validating transaction using BLOCKCYPHER

I recently followed the steps on the answer by StephenM347 to the following problem: Cannot access my bitcoins because my wallet is still synchronising. What can I do to spend them immediately? ...
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
176 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> <...
1 vote
1 answer
121 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 ...
0 votes
1 answer
106 views

What exactly is a bitcoin?

So I understand how blockchains work[1]. I understand how proof-of-work works[2]. And I understand how they work together. I also understand (or at least I think I do :) how transactions work (A block ...

1
2 3 4 5
7