Addresses Used In Bitcoin
Proposed in 2008, the Bitcoin network is free to join for anyone. It is a clear and transparent transition system. Although its mathematical and programming groundings are complex, there are many things that regular users don’t actually need. For instance, there are several wallets that do approximately the same things. But if your only goal is to send and receive money you don’t really have to know all their differences.
One of key elements of Bitcoin is its addressing system. Addressing is a crucial concept for any transferring system. No matter what you want to send (letters, goods, money), you can’t do it without a receiving address. Bitcoin has a bit different concept in use. Let’s have a look at its key points.
Among key Bitcoin concepts are anonymity and privacy. Major banks and financial corporations collect your personal data, while Bitcoin does not require any information unless you want to provide it yourself. This way, the community protects itself from data fishing and information leakage. However, there is a reverse side of the coin. You own only those assets that you can manage. If someone steals your funds and you can no longer manage them — they are not yours anymore.
The addressing system in Bitcoin has no reference to an assets owner. Every time you send some funds to an address, you don’t really know who the receiver is. It might be your neighbor or a person living on the other side of the planet.
A Bitcoin address can be considered both as a complex composition of components and as a solid unit. Here we will explain some of its simplest details.
Addresses in Bitcoin have a huge available range. The common numbers representation in IT uses the binary system in bits. Each address that can be used as a recipient contains 160 bits. This means that the overall number of available addresses is equal to 2160. After transferring it to the decimal, we get approximately 1,5*1048. Assuming that human population is 7 billion, this gives 1,5*1040 per person. Quite a lot.
Another interesting fact comes from the address processing. According to the official references, they are received from a 256-bit public key with the help of two hashing operations: SHA-256 and RIPEMD-160. Since hashing brings a lot of data mixture, it is impossible to predict which addresses will be received from the neighboring pair of public keys.
The last interesting fact concerns the consequences of size reduction. Hashing from 256 into 160 bits obviously reduces the range of addresses. Having 32 bytes from the start, we get 20 bytes in the end. Reducing common parts, we receive 12 bytes of different preliminary combinations per single final address. This gives us 7,9*1028 values that might be changed to the same final address of 160 bit.
In combination, all the above facts lead to the following consequences:
- A participant can use many addresses to manage assets.
- Even slight changes in a public key result in absolutely unpredictable address changes.
- There is a tiny probability to receive the same address from different keys.
Addresses used in Bitcoin are simple in their basic functionality. Wallets generate new addresses on demand. You simply give someone this address and, if they paid you, the next time you check the funds you will see money in your account. Still, there are many complex details about addresses, including scripts, encoding schemes, and different approaches in different projects. We will talk about them in our next articles.