8 votes
Accepted

How can someone verify the signature of a Bitcoin ECDSA signature without knowing the signer's public key?

Simple, the sender shows the pubkey when spending from whatever address the bitcoins are in. As part of the verification, the receiver (actually, every node in the network), can verify that the pubkey ...
  • 7,639
7 votes
Accepted

Block verification time

It depends significantly if you're asking about the average, N-th percentile time, or a worst case including the possibility of maliciously constructed blocks. Nodes use the first copy of a block ...
  • 7,519
6 votes

Different error messages under "Mandatory script verify flag failed."

But aren't both errors just variant of a failure in executing the OP_EQUALVERIFY? At what step of the evaluation each error is thrown and what can we make out of it? No, they're different errors. ...
  • 28.9k
6 votes
Accepted

Verifying Block 124724

assert coinbase_amount == block_reward + total_tip That's not correct. The actual consensus rule would be coinbase_amount <= block_reward + total_tip (in other words: miners are allowed to burn ...
6 votes
Accepted

Unable to verify Bitcoin 23.0 release due to developer keys being untrusted/uncertified

I have then ran gpg --verify SHA256SUMS.asc SHA256SUMS and when I do this, gpg is reporting multiple keys are not certified with a trusted signature - there is no indication that the signature belongs ...
  • 63.3k
5 votes
Accepted

Verifying a bitcoin Signature and what is the transaction data that is signed?

What you described only works for transactions with one input and one output. In general, what you do is you take the transaction that you want to verify, remove the scriptSigs from all of the inputs,...
  • 63.3k
5 votes

Why do I have to deposit BTC as missing turnover

You are almost certainly being scammed. Bitcoin wallets do not require activation. In any case, even if you were dealing with some entity that does require verification for using their services, the ...
  • 16.6k
5 votes
Accepted

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

As others have pointed out, this largely depends on what kind of transaction you're verifying. More inputs and more signatures means longer verification, and for pre-SegWit inputs the computational ...
4 votes
Accepted

How to check if raw transaction is signed?

You could: $bitcoin-cli decoderawtransaction <HEX> Then check if all your vins have a correct scriptSig. A unsigned tx would look like (partial): { "txid" : "...
4 votes

What exactly is checked at various -checklevel's?

The other answer seems to be out of date, even at the time it was answered. The following seems to be a more up to date explanation: From https://bitcointalk.org/index.php?topic=141200.msg1504768#...
  • 141
4 votes
Accepted

Transaction verification by miner VS full node with & without SegWit

Do full nodes have any incentive to validate transactions they're not directly benefiting from? Yes. If they did not validate all blocks and transactions, they could end up on a blockchain fork ...
  • 63.3k
4 votes

How do you know that Block, the Merket Root & the hashes in the path are authentic?

Forget about the Merkle tree. Assume that instead, the block header would just contain a hash of the concatenation of all transactions. A lightweight node could then download all headers, verify ...
4 votes
Accepted

Should I verify the Bitcoin Core release signing keys?

Is it recommendable/indispensable? Yes, it is a MUST not just recommendable. There are a number of ways in which an attacker could modify the binary that you download from the bitcoin.org website. ...
  • 7,018
4 votes

Bitcoin i have been asked to send money for a private key

This is most likely a scam! there have been a similar question recently Why do I have to deposit BTC as missing turnover There is no need to send bitcoin or money to receive a private key or unlock a ...
  • 2,433
3 votes

Different error messages under "Mandatory script verify flag failed."

I was facing the same issue while I was creating a raw transaction. I got the message: mandatory-script-verify-flag-failed (Script failed an OP_EQUALVERIFY operation) I figure out that the issue ...
  • 1,101
3 votes

Ethereum - how is the output of a contract computation verified?

Other nodes do the same computation, in a deterministic fashion, and they compare their result to the result the miner got. That's why there's no function that returns random results - different nodes ...
  • 28.9k
3 votes
Accepted

How can transactions be verified without the private key?

Bitcoin transactions are not encrypted, they are cryptographically signed. You can use a public/private keypair 2 ways: (massive simplification warning) Encrypt a message using a public key and then ...
  • 693
3 votes
Accepted

bitcoind - how to find out what is affecting the verificationprogress

The verification progress is an estimate, based on how many transactions have been seen versus known statistics about the transaction rate on the network. If the latest block timestamp is in the past,...
3 votes
Accepted

How Bitcoin dose find and verify UTXO ? is this efficient?

How Bitcoin dose find and verify UTXO? By Bitcoin, I think you must mean "Bitcoin core" - the Bitcoin wallet software derived from the original reference implementation by Satoshi Nakamoto. The word ...
3 votes

Are there possible attack/failure scenarios when no new nodes verify old signatures anymore (keeping the assumevalid defaults)?

If you assume that a particular block is valid, then you are also assuming that all blocks prior to it are also valid, and by extension, all transactions and their scripts and signatures. This is the ...
  • 63.3k
3 votes
Accepted

Verifying the Pizza transaction in Python

OK, answering my own question.. There were three problems: VerifyingKey.verify's default value for hashfunc is hashlib.sha1, but we need hashlib.sha256. So, we need to add a hashfunc=hashlib.sha256 ...
  • 193
2 votes

Transaction verification process in full nodes

A bit late, but for the audience eventually searching for this response: point toward some technical resource where I could find that description ? https://en.bitcoin.it/wiki/Transaction#...
  • 5,036
2 votes

What is "Verifying last 288 blocks at level 3"?

bitcoind -help-debug shows these options, not shown in man bitcoind or bitcoind --help: -checkblocks=<n> : Check the last n blocks. Defaults to 6, and 0 indicates checking all which would take ...
2 votes

Can each Bitcoin and Satoshi be uniquely identified?

Can each Bitcoin and Satoshi be uniquely identified? 1. Does each Satoshi have it's own unique identity? No. If I show you transaction xyz on blockchain.info, you can see where the groups of ...
  • 3,146
2 votes

How can someone verify the signature of a Bitcoin ECDSA signature without knowing the signer's public key?

static bool verify ( const QByteArray& dgst, const QByteArray& pub, const QByteArray& sig ) { return 0 < ECDSA_verify ( 0, (const quint8*)dgst.constData ( ), 32, (const quint8*)...
  • 6,664
2 votes

how do nodes verify that a block has been solved and can be added to the blockchain

StephenM wrote a good answer to that: The difficulty (or nBits as it is called in the code) is shorthand for how difficult it is to solve the block. Essentially, it encodes a target value, and ...
  • 28.9k
2 votes

How is it possibile to verify payments without running a full network node?

You are right, in order to prove that a transaction is confirmed in a block you need more than only the Merkle root. The information needed is called the Merkle path and consists of the left/right ...
2 votes

Why do I have to deposit BTC as missing turnover

You are being scammed! Don't send any BTC to them. Proper Bitcoin wallets are generated on your computer / phone, they contain bunch of private keys, each of one has corresponding address, to which ...
2 votes

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

You can't cancel a transaction. You can broadcast another transaction with a higher transaction fee (replace-by-fee) sending back to an address you own and hope that gets confirmed before the original ...
2 votes

How long is SIGHASH?

So how long SIGHASH is? The sighash type is a number (it is 1, 2, 3, 129, 130, 131; or since BIP341/BIP342 also 0). It doesn't have a length per se. When computing the signature hash, the sighash ...

Only top scored, non community-wiki answers of a minimum length are eligible