Many people has heard about Bitcoins, the decentralized virtual currency, but as famous as it could be, most of the population doesn’t know exactly what it is and how it works, not to mention is barely used.
What are BITCOINS?
A Bitcoin is a decentralized, worldwide, virtual currency system. It’s a peer-to-peer distributed system in which users own a key that are usually stored in digital wallets on each user’s computer, and that key is used to prove the ownership of a transaction unblocking the value and letting different owners use it. It’s Worldwide because it’s not based in any country in particular, virtual, because there are no physical coins that represents it, and decentralized because the currency is “created” by mining. Mining Bitcoins is, basically, find mathematical solutions to problems while a bitcoin transaction is happening. Every ten minutes (aprox) someone is able to validate the transaction and then is rewarded with brand new bitcoin.
Bitcoins appear mostly as an alternative to solve conventional-currency problems such as trusting in authentication of the user or the centralized system itself. The first problem in particular can be embraced with cryptographic digital signatures and physical currency system, but the centralized system is still an inconvenience, making it easier to be targeted by hackers.
How to use BITCOINS
First thing is owning a Wallet. You can choose a wallet fitting your needs, there are many of them. In Choose Your Wallet you can compare and decide between some of them. Once you have installed you wallet, you will see it requires password and passphrases, which should be (for your own sake) very strong.
You can get BITCOINS using Bitstamp (European) or Coinbase (US-Based) or either offering products and services for bitcoins. A Bitcoin transaction consist on an ownership chain in which the owner of a certain amount of BTC can grant partially or totally that quantity, by signing that the value now is owned by the other part. A transaction basically moves a value from “input” to “output”. Another kind of transaction is a lot of small inputs and one output, equivalent to change small currency for a larger paper (and inverse).
Keys and Wallets
The ownership of BTC is established with digital keys, which are stored in a file in the Wallet of the owner, those keys are generated by the software and the internet is not needed. That currency is not validated, tho, until is properly signed and included in the blockchain in the process of the transaction (remember the Mining?) in which resides the decentralized trust and cryptography.
A private bitcoin key is a complete random 256 bits number. The public key is generated from the private random key using a one way function, elliptic curve multiplication. At the same time, the public address is generated from the public key using a one way function:
PUBLIC KEY -> HASH160 -> PUBLIC KEY HASH -> BITCOIN ADDRESS
The last step (from Public key hash to the Bitcoin Address) is generated using Base58Check (based in Base64 system). This is a text-based binary encoding format developed for bitcoins, a method that uses lower- and upper case letters, numbers and missing 0, O, l and I.
Nowadays BTC are, still, barely used. It’s true that there are some online shops you can spend BTC, and some physical places too. But when buying legally, users preferred currency is still conventional. The anonymity Bitcoins grants to users has made it a popular resource for illegal transactions on the internet, which doesn’t help in the public opinion of it. Even though, the virtual currency future expectation is positive, its user trust and decentralized nature makes it the perfect system when centralized systems security fails.
(This was also posted in my Medium)
Originally written in: https://dev.to/terceranexus6/bitcoins-d00