Invoice address

From Bitcoin Wiki
Revision as of 16:56, 29 November 2011 by Casascius (talk | contribs) (Addresses are case sensitive and exact)
Jump to: navigation, search

A Bitcoin address, or simply address, is an identifier of approximately 33 alphanumeric characters, always beginning with the number 1, that represents a possible destination for a Bitcoin payment. Addresses can be generated at no cost by any user of Bitcoin. For example, using the Bitcoin software, one can click "Get Address" and be assigned an address. It is also possible to get a Bitcoin address simply by creating an account at an exchange, to which a Bitcoin address will be automatically assigned.

An example of a Bitcoin address is 175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W.

A Bitcoin address is like an e-mail address

Like e-mail, you can send Bitcoins to a person by sending Bitcoins to their address. Somewhat unlike e-mail, one person can, and is encouraged, to have an unlimited number of different Bitcoin addresses. It is recommended that you use a unique address for each transaction. Most Bitcoin software and websites will help with this, by generating a brand new address each time you perform a transaction, or will provide a button you can click for a new one.

When using a web site that accepts Bitcoins or holds Bitcoin balances on your behalf, that website will assign a Bitcoin address to your account, so you can transfer funds into your account at the site. Very much unlike e-mail, this address will probably change every time funds come in, but the previous addresses will usually remain permanently valid for receiving additional funds. When you send Bitcoins to your account at a web site, they will usually be credited to your account at that web site within an hour (depending on the site's policy) to ensure that the transaction is confirmed.

Addresses can be created offline

Creating addresses can be done without any Internet connection or contact with the Bitcoin network. Creating addresses does not consume any resources on the network - the network only knows about an address when it is first used in a transaction. Because addresses can be created so easily and at no cost, it is trivial to create temporary "throwaway" addresses that can be discarded if never needed.

It is also possible to create large batches of addresses offline, using other software tools. Generating batches of addresses is useful in several scenarios, such as e-commerce websites where a unique pre-generated address is dispensed to each customer who chooses a "pay with Bitcoin" option.

Addresses are case sensitive and exact

Bitcoin addresses are case-sensitive. Bitcoin addresses should be copied and pasted using the computer's clipboard wherever possible.

If you hand-key a Bitcoin address, and each character is not transcribed exactly - including capitalization - the incorrect address will most likely be rejected by the Bitcoin client. You will have to check your entry and try again.

The Bitcoin address format includes 32 error checking bits, so the probability that a mistyped address is accepted as being valid is 1 in 232 or about 1 in 4.29 billion.

Each address has a "private key"

For every visible address, there is a corresponding secret number known as a private key. When using a Bitcoin client, private key numbers are typically stored in the wallet file. The private key has a special purpose - it is mathematically needed to create transactions acceptable to the Bitcoin network that respend the funds originally sent to the address. If the private key to an address is lost (for example, in a hard drive crash and the user didn't have backups of the wallet file), any associated Bitcoins are lost forever.

What's in an address

Most Bitcoin addresses are 33 characters. They consist of random digits and uppercase and lowercase letters, with the exception that the uppercase letter "O", uppercase letter "I", lowercase letter "l", and the number "0" are never used to prevent visual ambiguity. Bitcoin adheres to a rule of always using the number "1" as the first character - this allows visual discrimination from other types of random character strings that might look like Bitcoin addresses - such as private keys which start with "5", or coins from Bitcoin's testnet (which start with "m" or "n"), or coins from other cryptocurrency systems derived from Bitcoin's source code (which are not compatible with Bitcoin).

Some Bitcoin addresses can be shorter than 33 characters. A significant percentage of Bitcoin addresses are only 32 characters - these are completely valid. Every Bitcoin address stands for a number - somewhat like an account number. These shorter addresses are valid simply because they stand for numbers that happen to start with zeroes, and when the zeroes are omitted, the encoded address gets shorter.

Several of the characters inside a Bitcoin address are used as a checksum so that typographical errors can be automatically detected and rejected.

See Also