Address Public Private key verification

5

Apologies if this question has been asked before, but when a bitcoin client wishes to send funds to an address, does the bitcoin protocol force the client to verify that the address has a corresponding private key?

For example, I am given an address and I want to send a btc to this address, before I am allowed to authorize this transaction does the bitcoin protocol force me to verify that the address can decrypt a message encrypted from its public key?

Charles Hoskinson

Posted 2013-04-19T00:16:05.417

Reputation: 969

Question was closed 2013-04-19T08:46:09.627

Transactions are not encrypted. They do use cryptographic signed messages though.Stephen Gornick 2013-04-19T01:13:46.817

I'm aware that transactions are not encrypted but the address we send money to is part of a public private key pair. One could verify that the address is legitimate by requiring the receiver to encrypt and decrypt a test message with his pub-pri keypairCharles Hoskinson 2013-04-19T01:46:06.450

The checksum scheme seems to fail for one in four billion addresses. Yes this is sufficientCharles Hoskinson 2013-04-19T01:49:29.653

Answers

3

No, there is no enforcement that a private key exists.

However, due to a Bitcoin address including a checksum, it is very unlikely for the client to create a transaction when for an address with a typo, paste error, or other erroneous data. There are addresses that will pass the checksum test in which, presumably, no private key exists. 1BitcoinEaterAddressDontSendf59kuE is, in all likelihood, one such address.

Stephen Gornick

Posted 2013-04-19T00:16:05.417

Reputation: 26 118

That's what I thought. Thanks for the fast answerCharles Hoskinson 2013-04-19T01:44:35.320

Also, that would mean you would need tons of additional information to form a transaction, including the public key which you currently don't need. It would kind of defeat the whole point of addresses.David Schwartz 2013-04-19T12:02:46.787