Digital Currencies

What is digital currency exactly?

in this article I will talk about the concept of digital currency. What they are, what purpose do they serve, and what kind of infrastructure is needed to keep them alive and functional. Then we will dig a bit into how things work with some good practical examples.

I want to give you a solid understanding of how a decentralized currency works. With this foundational knowledge you will be able to read more complex articles about the topic. I will sacrifice a lot of technical details to make the explanations more straightforward.

So… What do you mean by Digital Currency?

A digital currency is the opposite of a physical currency like cash or metal coins. It allows a person to buy goods or services with often very fast transaction times and achieve borderless transfers of value. It can be both globally accepted or just restricted within a set community such as a videogame network or social club.

In order for digital currencies to work, there needs to be a record of everyone’s balance, as well as a history of all the transfers of value from each person using the currency. This prevents somebody malicious to double-spend his balance or to create and assign to himself a large amount of money out of nowhere.

This is where the interesting part comes: traditionally, digital currency has been centralized. Centralized means that there is one company or institution that keeps track of everyone’s balance and oversees/approves/rejects transactions between any user. An example of this are banks, which keep an internal private record of accounts.

In 2009 the script was flipped.

After the disastrous collapse of Lehman brothers, a mysterious man or group of programmers called Satoshi Nakamoto  got very disappointed with central institutions.

They wanted to create a more transparent infrastructure to keep and exchange value. So they published a whitepaper illustrating a new technology that allows to support a digital currency in a decentralized way. It would work thanks to software and cryptography. (to find the whitepaper you can google “bitcoin whitepaper”)

The digital currency that Satoshi created is called Bitcoin and it gained a lot of popularity among tech and finance experts since then.

Wait a second.. decentralized? So if NO bank or institution stands in between us who the hell keeps track of accounts, balances and transactions between users of the currency? Well that’s the real innovation that Bitcoin introduced! And the answer is that everyone does. The records are distributed transparently among a peer-to-peer network. Each member of this network has equal privileges and is equipotent compared to others.

oversemplification of a peer-to-peer network

So this is exactly why by using Bitcoin I can even send a million dollars (in Bitcoins not USD) from person A in Canada to another person B in Africa in minutes. I can do this using my smartphone or laptop without relying on any intermediary at all. The peer to peer network’s members, called Miners, will make sure that the transaction is valid, that the balance of person A is sufficient, and that person B receives the amount.

Miners will only take a small fee to do these tasks, very very small compared to traditional wire transfer fees. Miners achieve this bookkeeping / accounting ability thanks to complex cryptographic algorithms.

So between centralized and decentralized digital currencies, this website and my articles will be focused primarily on decentralized ones.

Let’s dive a bit deeper into Bitcoin, the most successful and popular example of decentralized digital currency, and go over a couple more details about what makes it work so well. From now on we will refer to decentralized digital currencies as cryptocurrencies.

Blockchain, a strong decentralized foundation for moving value

Ok so now you know that a cryptocurrency works because there are thousands and thousands of computers (called Miners) running the Bitcoin core software 24/7 around the globe. These Miners, as mentioned early, will make sure everything works properly, that nobody cheats the system, and that people can exchange their digital currency without problems.

Why calling them Miners? They are computers, not people!

True, they are just computers not people with protective helmets and pickaxe, but they are called Miners because they have a similar job. They both use energy to get precious valuable materials out of nowhere. So for example the human miner would use muscle energy to get gold, while the bitcoin miner will use electrical energy to perform complex cryptography math that secures and supports the bitcoin network.

Here comes the next logical question to ask: why would I ever expend electrical energy to support/mine the bitcoin network? Because I get REWARDED, with bitcoins coming from transaction fees and with newly generated coins.

This is how bitcoin miners actually look like.

Without going too deep into mining, let’s just take a step back. I hope you understood the basics of why the network behind Bitcoin works. Now I need to add another important term, which is Blockchain.

The blockchain is the name of the technology that powers the decentralized currency Bitcoin. How? By providing a decentralized database that these Miners can use to keep track of all the accounts information. They do this by chaining together blocks of transactions.

All the Miners of the network share the same exact copy of the Blockchain database among each other, so they know accounts balances and they can check past transactions anytime. Also very importantly, they can create and insert new transactions whenever for example person A pays person B with bitcoins.

Your balance is visible by everyone, and everybody can inspect the blockchain. But here’s the catch, it will not say “Federico owns N bitcoins” but it will say “account #123rf3e5gfwa324wce… owns N bitcoins” instead, creating a fair amount of anonymity and transparency.

So to summarize, the tasks that make a cryptocurrency functional are done by miners, and miners use the blockchain as a way to record every information. That’s why in conferences or educational material you almost always hear the Blockchain defined as a distributed ledger.

a simple representation of the bitcoin blockchain

So block, and chain… Is it because it is a chain of blocks? Yes! Each block starts empty, and is filled by miners with new transaction info as they happen. The miners spend electricity to compete to solve a complex cryptographic challenge that validates transactions. As soon as a miner wins that cryptographic challenge he will be said to have “mined” that block. So he proceed to chain it back to the previous block found and broadcast a message to all the other miners in the network. The message broadcasted will tell every other miner to stop mining for that block and start mining another new block with new transactions happening in the world. The cycle repeats.

Here I’m really just scratching the surface and I’m leaving behind a lot of technical details, but it’s important to grasp the basics and what are the key points. Should I sum it up one more time in few sentences? Let’s do it!

Cryptocurrencies exist, the first one invented was Bitcoin. Bitcoin is supported by a peer-to-peer network of miner computers, which use complex math to do their job as bookkeepers. Miners write down everything on the Blockchain database, which is what everyone in the network agrees and relies on.

You wanna be a smart guy and try to cheat the network by including a wrong transaction in the blockchain and broadcast it? Well the math that the miners perform will catch that immediately, and your version of the blockchain will be wrong compared to the ones that the majority of the network has, and it will be ignored and discarded.

We basically got digital gold! Badass!

Now that you know what a blockchain is, and what is it’s role in digital currency, I will take one last step deep into this topic, and talk about the fact that there are different types of blockchains.

Not all blockchains were created equal…

We can all agree that the blockchain is a complex technology, and that has a lot of moving parts under the hood. So what happens when you change a moving part or implement something differently?

For example let’s say I decide to change the cryptographic algorithm that the miners need to execute, the size of the block, or some other technical mechanism.

What happens at that point is that I will have another new type of blockchain, therefore I have another type of digital currency! This is exactly why if you have been reading about cryptocurrencies already, you have probably not only heard of Bitcoin, but also of Litecoin, Ethereum, Dogecoin, Monero, ZCash and many many more.

Most of these new blockchains after 2009 were basically modifications of the bitcoin original one. Developers would literally clone the source code of the Bitcoin core, modify whatever they deemed necessary, and release that as a new cryptocurrency with a new name.

This was a big trend, and that’s why new alternative currencies popped up each week.

But one day a russian developer took the concept of bitcoin blockchain and did much more than changing its settings and parameters.

He turned that idea into an even more powerful and capable distributed ledger. That guy is called Vitalik Buterin and he is the founder of Ethereum, and the Ether cryptocurrency.

Ethereum’s blockchain does not only store financial bookkeeping data like bitcoin does. It stores virtual machine states. Don’t worry if you don’t know what it means, just know that the ethereum blockchain allows for “Smart Contracts” to be uploaded into it. Everyone can see and interact with these smart contracts with complete transparency and without being able to corrupt or cancel them.

Here a world of possibilities opens. With Ethereum not only we can now transfer value from A to B in a decentralized way. We can also write complex (or simple) contracts that bind A and B with some rules. Rules that are set permanently on the blockchain, without even needing a central authority to enforce them / oversee them.

Need a more concrete example? Allright! Let’s say I’m an entrepreneur and want to launch a new product. I need money to fund my idea, so here is what I will do with the Ethereum blockchain:

  1. I will write a smart contract to governs my crowdfunding campaign, and I will say that everyone can send Ethers to this crowdfunding contract to support and fund my idea.
  2. To be fair towards the community, I will include a clause in my contract that says that if I don’t reach 1 million dollars By the end of 2017, I will fully refund every single person that contributed.
  3. I will also include another clause that says that if I do reach 1 million, then I will have enough resources to start my project so I will move the funds from the contract to my company wallet and start working.

In our traditional world, this sounds a bit hard to enforce right? Well it is not hard at all with Ethereum Blockchain-based smart contracts!

Once I upload the code of the contract, and the contract gets “Mined” permanently into the Ethereum blockchain, it becomes an incorruptible piece of software embedded in that chain of blocks. And no matter what, it will be able to receive funds, and it will be able to check the total contribution balance and enforce the clauses I wrote in point 2 and 3.

The code enforces itself, and every contributor can rest assured that they will have their money back if my project does not get enough funding.

Again just scratching the surface here, but you can see how powerful this technology is. It opens up a new dimension for trusting each other, and creates decentralized and transparent laws or applications that everyone can interact with. (Users would interact with these smart contracts by using their Ether digital token)

This also does not mean that the bitcoin blockchain is “inferior” or less powerful than the Ethereum one. It is just simpler, and accomplishes mainly the task of moving value from A to B.

Ask this question to an engineer: What is the big quality that simple products have? And he will reply to you saying that simple things are less prone to errors, less vulnerable to security exploits, and do their focused task to the best extent.

In my opinion it is also immmature to generally say: bitcoin is better than ethereum, ethereum is better than bitcoin, etc. because they serve very different purposes and the particular use case needs to be taken into consideration when picking between the two cryptocoins.

How to buy cryptocurrency

You can buy cryptocurrencies by transferring your fiat currency to Coinbase and exchange it for bitcoin, ethereum or Litecoin. Use this link to get a 10 USD (8 EUR) bonus in bitcoin when purchasing 100 dollars (80 EUR) or more in cryptocurrencies.

If you want to purchase alternative cryptocurrencies, you need to make an account with crypto exchanges like binance, cryptopia or HitBTC. You initially transfer your bitcoins (or ethers or litecoins) from coinbase to the exchanges, and then use it to purchase any coin you want.

Conclusion

Given all this information, you hopefully now know the basics of how digital money works, what is the first coin launched to the public, and how its backbone makes it solid and usable all over the world without the need of a central authority overseeing everything.

Then you saw how something powerful as bitcoin, was an inspiration for an even more flexible and customizable technology, Ethereum.

Finally the brief comparison between the bitcoin and ethereum blockchain pointed out something fundamental in software engineering which is that, as you make things more complicate and expand their functionality, you also have to deal a lot more with security and software bugs.

If you have any questions, or want to say your opinion, write a comment! Would love to hear your thoughts!

Fede

Full Stack Software Engineer at Keenn.com

Share
Published by
Fede

Recent Posts

The Blockchain Notary: 5-minute file certification without corruptible intermediaries

Hello everyone, this article is going to be cool, because I finally got to write…

5 years ago

Are You an Ethereum Developer for Real? Answer These 5 Questions!

Hello friends! I received a reddit notification a few days ago from the r/ethdev subreddit.…

5 years ago

How I deployed a dapp on Ropsten from an EC2 instance (without using Infura)

This is a fairly technical article that I want to publish to help fellow developers…

5 years ago

[VIDEO] Creating and signing a Raw Ethereum Transaction

Today we're looking into a more technical way of creating and signing a transaction. We're…

5 years ago

[VIDEO] Anatomy of an Ethereum Transaction

Here's a video I made about the components of a transaction in Ethereum: https://www.youtube.com/watch?v=u9dR66TdVGA Here…

5 years ago

[Q&A] Where did Bitcoin start?

This is a very simple question that can be answered by looking at the history…

5 years ago