- Crypto 101: A simple guide to understanding and researching cryptocurrencies
If you are sick of hearing about Bitcoin and cryptocurrencies from your friends and family and do not understand what they are talking about, then you are in the right place. I know this may seem like a long read, but I promise you, if you get through all of it, you will know more than most people who are involved in this space. First of all, I would like to tell you that you are not alone if you are still confused about this space. I would say about 90% of people still can’t explain what Bitcoin really is. Even if you know a little bit but you are still confused, you will learn quite a bit from this piece. I have noticed that there are a lot of scattered information about different parts of the underlying technology and history behind cryptocurrencies, but there is no guide for regular people on how everything works behind the scenes. I wrote this article as an overall guide to make sure you understand the history and technology of Bitcoin and other cryptocurrencies. Whether you are interesting in investing or simply want to know more about the technology, this article will help you significantly.
To say that cryptocurrencies are simply digital cash is extremely misleading. There are so many use cases for cryptocurrencies that it would be hard to explain all in one article. Although there are several cryptocurrencies that are specifically used for the purpose of peer to peer digital cash, it certainly is not the only use case for the blockchain technology. To say that cryptocurrencies are all digital cash is the equivalent of saying the internet is only useful to chat online with people around the world.
Before we even start talking about how to research cryptocurrencies, it is important to understand the underlying technology (blockchain) and history behind cryptocurrencies. I am not going to go into too much detail behind all the technology and history, but give you a quick and simple explanation of how the blockchain technology works and where it came from. My main goal is to explain to non-tech people how this extremely complicated and revolutionary technology works. So, if you feel a little lost or do not understand some of the technical terms, don’t be discouraged, just continue and by the end, things will hopefully start to make more sense.
In order to understand something thoroughly, it is important to know where it came from. Although cryptocurrencies have been in the public eye in the recent years, cryptography has been around for a long time. In it’s simplest form, cryptocurrencies are digital assets that can be transferred from one person to another without the need of a third party, such as banks or institutions. Cryptography is used in order to verify and secure these transactions. Without the usage of cryptography, blockchain or cryptocurrencies would not be possible.
To fully understand cryptocurrencies you must first know what cryptography (the crypto part of crypto-currency) is. One of the most complicated topics in our modern history is cryptography. In simplest terms, the study and practice of securely transferring private information between two parties are called cryptography. Until modern times, cryptography was used for the simple purpose of secure communication using encryption and decryption. Encryption is changing a readable and understandable piece of information (for example a plain text) to something that can’t be understood (a cipher) without some private missing piece (or a private key). An example of encryption would be to convert a plain text into a combination of numbers and letters in an order (or key) only known to the communicants. Decryption is the same as encryption but in reverse (converting an unreadable message to something easily understandable using the corresponding private key). One of the earliest use cases of cryptography dates back to over 2000 years ago in the time of Julius Caesar called Caesar Cipher. Caesar used this cipher to secretly communicate with his generals. In Caesar Cipher, the letters in the alphabet were shifted three times in one direction to encrypt a message and three times in the opposite direction to decrypt the message. The breaking of ciphers (secret code/message) is called cryptanalysis. According to many sources, the rise of code breaking and cryptanalysis was arguably based on a book written some 1200 years ago by a famous mathematician and early Muslim World scholar named Al-Kindi (801–873 CE) called “Manuscript on Deciphering Cryptographic Messages”. Cryptanalysis was particularly important during world war II where many machines were developed to break secrete message communications between rival countries involved in the war.
With the progress of advanced mathematics and computer science, modern cryptography has changed significantly. Modern cryptography not only involves secure communication but also authentication, data integrity, confidentiality and many other use cases. Arguably, we could divide cryptosystems into two forms of cryptography; symmetric cryptography and asymmetric cryptography (also known as public-key cryptography). In symmetric cryptography, the same private key must be shared between the two communicants in order to encrypt and decrypt the secret message. This is risky because if a third party gains access to the shared private key, they could easily decrypt the message. In asymmetric cryptography, complex mathematical equations are used to generate two keys — public and private. As the name suggests, the public key can be shared with everyone without compromising any security, but the private key must only be known to the owner. Anyone could send a message to the receiver and use the receiver’s public key to encrypt the message. The receiver (not even the sender) could then decrypt that message using their corresponding private key, which will be only known to the receiver. One of the most famous asymmetric algorithms is known as RSA algorithm (developed by three Standford professors). RSA algorithm uses a complex mathematical equation known as the prime factorization method. The product of two large prime numbers is used to generate a public key. Based on today’s current known computing power, it would take several decades to factorize this number. Therefore it is considered to be one of the safest algorithms to generate public keys. Below is a short video explaining asymmetric encryption and RSA algorithm:
In simplest terms, blockchain is a continuously expanding list of records (blocks) that are joined together (chained) and secured using cryptography. Blockchain is the backbone of Bitcoin and cryptocurrencies. In blockchain, each block points to its previous block using a cryptographic hash function. This hash function is a very complicated method but for our purposes, it basically takes in an input value (message) and outputs a hash value which is a random set of numbers and letters that have nothing in common with the input value. A cryptographic hash function is extremely difficult to reverse. The slightest change to the input value would generate a completely different hash value (output message). This is ideal for blockchain because each hash value must match the previous one in order for it to be authenticated and added to the chain.
In blockchain, every computer connected to the system is called a node. Every node keeps a copy of each transaction and confirms each transaction that gets added to the system. This is called a distributed ledger system. This is a decentralized system which eliminates the need for a central location that would control or change any information passing through. This brilliant combination of the distributed ledger and cryptographic hash is what is known as the blockchain. It is practically impossible to manipulate or change any information in the blockchain since every node connected to the system has a copy of all the records. In order to hack into this system, one would have to change every copy at every connected node. This simply cannot be done since the nodes connected to the system are distributed around the globe. Every piece of information, whether a financial transaction, someone’s identity, or any other data is controlled by people (nodes) around the world. This in my opinion is the definition of true democracy. If you are still confused, here is a great video that visually explains these topics.
After the 2008 market crash, an anonymous individual or group of individuals by alias name Satoshi Nakamoto released a document in which he introduced Bitcoin: a peer-to-peer electronic cash system. In this document, also known as a white paper, he stated the flaws of the current financial system and a solution (Bitcoin) that would be the birth of cryptocurrencies, Bitcoin being the first one.
“Commerce on the Internet has come to rely almost exclusively on financial institutions serving as trusted third parties to process electronic payments. While the system works well enough for most transactions, it still suffers from the inherent weaknesses of the trust based model. What is needed is an electronic payment system based on cryptographic proof instead of trust, allowing any two willing parties to transact directly with each other without the need for a trusted
third party”. Satoshi Nakamoto
The first Bitcoin was created (mined) in January 2009. Using computer processing power, Bitcoin is generated by solving extremely complex mathematical equations. In blockchain, mining is basically the process of keeping records. It is hardcoded in the Bitcoin software that only 21 million Bitcoins will ever be created. Therefore, as the word suggests, just like mining for a scare precious metal (gold for example), the process of creating Bitcoin is also called mining. As more people join the mining network, the difficulty level of mining increases. The system adjusts the difficulty level every often to count for the mining power of the overall network. Because of this difficulty level increasing day by day, nowadays Bitcoin is mined by connecting hundreds and thousands of computer graphic cards together (also known as mining pools) to solve these mathematical problems faster. Here is a simple demonstration of Bitcoin mining.
Bitcoins and many other cryptocurrencies are mined using a Proof-of-Work (PoW) system (algorithm). Before cryptocurrencies came into the picture, PoW system was used to protect clients from denial of service (DoS) or spam attacks. For example, let’s explore what happens when you visit a website. Every time you visit a website, you are requesting some piece of information from the servers that the website’s content is hosted on. Now the website you are demanding information from can handle only a certain amount of requests per second and if it gets overloaded, the system crashes causing the website to become irresponsive. Hackers take advantage of this vulnerability by programming a DoS attack that sends thousands of requests which causes the system to overload and not respond to any requests. On a very simple level, a similar example is when you sometimes visit a website and you have proof you are not a robot by clicking on a check box or solving a small puzzle (CAPTCHA). This process is applied in sending spam emails as well. To combat this issue, in a PoW system, the requester is required to perform some computations that require processing power before they are granted access to the website. Or in our in our spam email scenario, the sender of the email must solve a small puzzle that uses a small amount of processing power before the email is sent. This process is known as Hashcash. If you are a legit requester (one or group of small individuals requesting some information), your computer will solve the requested puzzle without you even noticing it. But if you are a spammer who is sending millions of emails at once, or you are a hacker that is trying to send millions of requests to a website, you will need an extremely high amount of processing power to perform that request. Obviously high amounts of processing power mean extremely costly operation. The PoW system used in Bitcoin and Ethereum mining is similar but uses other cryptographic functionality to avoid the double-spending problem. As the name suggests, double-spending is when one digital cash is spent more than once.
Now that you have a basic understanding of PoW, let’s start exploring how a block is mined and added to the blockchain using PoW. PoW is a very complicated system so if you get lost, don’t be discouraged. I will do my best to keep things a simple as possible.
A block, among other things, consists of a block header that includes a cryptographic hash of the previous block, a hashMerkelRoot, the block version, a difficulty number, nonce, and a timestamp.
When a transaction is announced into the network (for example, Alex sends 2 Bitcoins to Jamie), miners bundle these transactions into a block and try to solve a very complicated math problem or a puzzle using massive amounts of computer processing power. In order for the block to be added to the network, it must include the proof-of-work. Each block contains the SHA-256 (Secret Hash Algorithm with a 256-bit hash value) cryptographic hash of the previous block (think of this as each block securely pointing to the previous block in the blockchain). The network announces a difficulty rate with approximately (currently) 42–43 zeros as its prefix. Miners have to combine the cryptographic hash with a number called nonce to come up with the answer to the puzzle (difficulty level). Since cryptographic hash functions are used (see above cryptography section), the only way to solve this puzzle is using a method called the brute-force search method. In this method, the miners keep changing (guessing) the nonce to come up with a solution to this puzzle. To simply explain this, imagine if you had a formula with the answer and one of the two inputs 786 + X == 346734873. In this formula, in order to find X, you would have to keep guessing a different X value (starting from 0 and incrementing by 1) that would give you 346734873 when added to 786. Similarly in mining, nonce would be our X and the difficulty level would be 346734873. As you can imagine with 42–43 zeros as the prefix, the computation would require trillions of tries to come up with the solution. This is why so much processing power is required to mine a Bitcoin. Therefore the more processing power you have, the faster you would solve the puzzle. The mining network adjusts the difficulty level approximately every 2 weeks to maintain the average time between blocks to ten minutes. Once the miner solves the puzzle, they announce it to the network. The nodes connected to the network then check to make sure the block is valid. The validation process is a lot quicker and easier since the nodes are only doing the verification, not the proof. For example, let’s say you want to open a 3-combination lock. To come up (guess by trial and error) with the combination of the lock, it would take a lot of time. However, once you have the combination, it is very is easy to check whether the combination is valid or not (lock opens or not). This is the same idea behind block validation in Bitcoin. Once the block is validated, it is added to the blockchain and the miner who came up with the solution for the puzzle gets rewarded with 12.5 newly minted Bitcoins (as of today) and the transaction fees. Every 4 years, the Bitcoin reward decreases by half until all the 21 million Bitcoins are mined. Once all the Bitcoins are mined, miners will only be rewarded with the transaction fees.
Since bitcoin transactions and verifications are done through nodes, the entire ledger is available for anyone to download. The entire ledger is simply the record of each transaction ever made in the bitcoin network, starting from the first transaction. If you want to run a full node, the ledger might take several hours to download, but you only need to do it once because once a transaction is verified by all the nodes, it can longer be duplicated or changed. For instance, If Bob wants to send two Bitcoins to Lisa, all the nodes connected to the system must verify that two Bitcoins were subtracted from Bob’s stack, and got added to Lisa’s stack. This verification process is done by all the nodes connected to the network. Once all the nodes come to a unanimous agreement (consensus), the transaction is processed and the ledger of all the connected nodes get updated.
You might be wondering at this point, how does one store Bitcoins? Since Bitcoin is a digital currency, it’s only ideal to imagine the storage will happen digitally. Storage of Bitcoins can be done by the usage of digital wallets. Since you can’t really separate Bitcoins from the blockchain, digital wallets are technically a storage of reference or credentials to your Bitcoins in the distributed ledger system that give you the ability to spend them. As mentioned above, Bitcoin and cryptocurrencies use asymmetric or public key cryptography. Therefore, in its simplest form, digital wallets are a combination of these public and private keys, which give you access to spend your Bitcoins. Since Bitcoins are all part of the distributed public ledger, anyone can see which address (public) owns how many Bitcoins. This is a topic of confusion to a lot of people because technically the Bitcoin amount shown in your wallet is not stored inside that wallet but is merely a reference to that address in the ledger and whoever owns the corresponding private key to that public address (key), have access to spend those coins. Let’s say Jack has acquired 5 Bitcoins and he has stored it in a digital wallet with the public address of 1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2. Anyone can see the public address but since Jack is the only one with the corresponding private key, he is the only one who can spend those bitcoins. Here is a quick video explaining how wallets work.
Alternative coins or altcoins are other forms of cryptocurrencies that use the same underlying technology as Bitcoin. As mentioned before, blockchain is the backbone of cryptocurrencies. It is extremely important to understand that not every altcoin or cryptocurrency that use blockchain is used as a form of digital cash. In my opinion, the blockchain technology is as revolutionary as the internet itself and its use cases are increasing on a daily basis. Any industry that would improve by being decentralized, can be incorporated through blockchain. A few examples of industries that I think have a desperate need for blockchain usage would be banking, crowdfunding, advertising, retail, medicine (e.g. medical record information), travel, insurance, real estate, government and voting, credit (private personal data), cloud computing (storage and processing power), forecasting, cybersecurity, charity and many more. I could go on for several pages for each of the mentioned industries of why it is beneficial for them to use blockchain. I must mention, that most of the industries I described above and much more have already been tapped into by blockchain. There are hundreds of new startups in the cryptocurrency market that are targeting these spaces. These startups create decentralized applications (DApps) on smart contract platforms to come up solutions for these problems using the blockchain technology.
Simply put, a smart contract is a digital contract based on computer code that has unalterable predetermined terms. In smart contracts, all the predefined terms are verified and forced digitally without the presence of a third party facilitator. Since smart contracts are performed in the blockchain, all the parties (nodes) will have a copy of the contract including its predetermined terms signed and agreed upon by everyone. This process reduces cost, fraud, inefficiency, and arguments that happen constantly with our current system. In smart contracts, one can put forth a triggering event for execution of the contract in the code. Once this event is triggered or the set condition is met, the contract would automatically execute. For example, let’s say, John and Mark, who are Patriots and Eagles fans accordingly, are planning to watch the Superbowl game this year. To make things interesting, they each bet $50 before the game starts on their own teams. They transfer their money to a smart contract on the blockchain and hard code the agreed terms by both parties and a triggering event beforehand. The terms would be that whoever wins the bet, the total amount of $100 would be automatically transferred to that person’s bank account. The triggering event, in this case, would be the moment the game is complete and the final scores are announced. As soon as the game finishes, it is announced that the Eagles have won. The smart contract triggering event is met and therefore the smart contract executes at that moment, sending $100 to Mark’s account without any arguments or third party involvement. Obviously, this a simple example on a very small scale, but the idea is to show the simplicity and potential of smart contracts. Now imagine if the amount increases and more parties get involved, in our traditional system, we would need lawyers, court cases, accountants, banks and many others to make sure all parties involved in the contract follow the terms. Smart contracts completely remove all these additional costs and headaches since everything is set in advance and executed the moment the triggering event is met. If you are still confused, here is a quick video further explaining smart contracts.
In my opinion, the real value of blockchain is in smart contracts. The possibilities of innovation in this field are endless. Currently, there are hundreds of new startups (DApps) that are taking advantage of smart contracts to target different industries. DApps are hosted on smart contract platforms. Although there are several new and upcoming smart contract platforms, Ethereum and NEO are the most popular ones so far. Instead of creating a new original blockchain for each DApp, Ethereum and NEO allow DApps to be built and deployed on top of their existing platforms. This allows developers to take advantage of the existing tools and resources that these smart contract platforms offer, which allows for faster and more efficient development of DApps.
Ethereum is the first and most popular open-source decentralized smart contract platform that was created by Vitalik Buterin in July of 2015. Currently, most of the DApps in the market are made on top of Ethereum’s platform. According to coinmarketcap.com, it has the second largest market capitalization behind Bitcoin. The main programming language used to create DApps on Ethereum’s platform is called Solidity. Developers have to learn this new programming language in order to create DApps and deploy them in Ethereum’s platform. DApps that are deployed on smart contract platforms, raise money in the form of a process called initial coin offerings (ICOs). Just like initial public offerings (IPOs) for a regular stock, during the ICO stage of a new DApp, one can participate to get the coins before they hit the exchanges. The coins created in Ethereum’s platform are referred to as the ERC20 tokens. ERC20 tokens are basically a set of rules and guidelines that must be met before a DApp is allowed to be part of the Ethereum network. As of now, Ethereum is mined using proof-of-work algorithm (same as Bitcoin). However, because of the high cost of power and resource using in the PoW system, Ethereum is working on switching a new system called Proof-of-Stake (PoS). I am not going to go into too much detail about the PoS system since it is still being researched on but simply put, in a PoS system, the more coins you hold, the more power you have in the system. Let’s say Amy owns 2% of the entire Ethereum coins, she can, therefore, mine or validate up to 2% of the entire network’s transactions. This not only solves the massive energy usage issue that a PoS system currently has, but also gives the miners an incentive to keep holding more coins and therefore increasing its value.
Another popular and promising smart contract platform is NEO (previously known as Antshares). It is also important to mention that NEO is not only a smart contract platform but it is aiming to digitize real-world assets with a digital identity on the blockchain. The combination of all three is known as the Smart Economy. NEO uses a completely different and very interesting algorithm called the delegated Byzantine Fault Tolerance (dBFT). While most of the cryptocurrencies today use PoW (few PoS), NEO is using the dBFT algorithm to reach consensus. I will quickly explain how it works but if you are interested to explore more please visit NEO’s documentation on their website neo.org. In a Byzantine-fault-tolerant system, a faulty component can show different implications to the detectors. This system is named after the Byzantine generals problem, where the Byzantine army generals would plan to attack a city but needed to have full consensus from all the general to have a successful and coordinated plan of attack or retreat. The plan of attack or retreat would rely on a 66% consensus from all the general. Similar idea is used in NEO’s block consensus algorithm (dBFT). In order for a block to be added to NEO’s blockchain, it must be validated and approved by 66% of the entire nodes in the system. This eliminates the effect of any faulty or malicious nodes that are connected to the system. A block is introduced to the system by a node known as the “speaker node”. If that block gets approved by the rest of the nodes, it gets added to the blockchain. However, If it is rejected by the other nodes, that speaker node is removed and another node is selected as the speaker. NEO’s ecosystem is divided into two tokens — NEO and GAS. The NEO token is used as a share of the system, while GAS is the utility token used to interact with NEO’s ecosystem. For example, if you want to create a new dAPP on NEO’s ecosystem, the fees and interactions are executed using GAS. If you hold NEO in an approved wallet (e.g. Neon wallet) or a participating exchange (e.g. Binance), GAS is generated automatically with the creation of each NEO block (just like a dividend). This gives the investors an incentive to hold the NEO tokens (similar to PoS) for a longer period of time causing the value of NEO to increase. Another advantage of NEO is that a smart contract (DApp) can be developed in many existing popular coding languages such as Java, Python, .NET, and others. dAPP tokens created on NEO’s platform are known as the NEP-5 (similar to Ethereum’s ERC20) tokens.
Now that you hopefully have a good understanding of how everything works, you can research the most promising cryptocurrencies with the knowledge you have gained so far. During your research here are a few things to consider:
- Technology — It is very important to do the research on the technology and ask yourself this very simple yet important question — “Does it need blockchain?”. With all the information above you can now differentiate between companies that are solving a real world problem with the use of blockchain and ones that are taking advantage of the blockchain hype. Blockchain is a revolutionary technology but it is not an ideal solution for every single issue. If it is not solving a problem or making an existing space significantly better and more productive, then chances are it will not succeed. You have to understand that people don’t like to change the way they do things unless they see a huge advantage over that what they are used to.
- Team — A company is only as good as its team. I cannot emphasize enough how important this item is. Every code has bugs and every startup has issues in the beginning. The difference between success and failure in the beginning stages of a company relies on the strength of its team. A company not only needs to have a good number of strong technical staff but also a solid marketing team. It doesn’t matter how good your technology is if nobody has heard about it. If you are researching a new blockchain company, I would suggest researching into the background of each team member (Linkedin profiles, education, social media, in-person meetups and other available resources) to make sure they know what they are doing.
- Community — Another important factor is investigating the involvement of the community. Digging deep into sites like Reddit, Twitter, Telegram, Slack, and other social media and cryptocurrency talking forms shows the involvement and interest of the community about the particular company. The development community is another crucial part of the research. NEO, Ethereum, Bitcoin and other well-known cryptocurrencies are popular because they have a global community of developers. You should also check their GitHub page to see the activity of their code commits and updates. This shows that the development is in constant process.
- Market — Finding out the market details for the cryptocurrency you are interested should be a significant portion of your research as well. Knowing the details of the total token supply, market capitalization, percentage of the total supply held by the founding members, and percentage of total supply reserved for company use (marketing, partnerships, developer rewards) are among things to consider. For example, if you see that a company’s founding members and partners hold 90% of the total supply of their coins, then you can imagine how much control they will have over the market of that company. After all, what is the point of a decentralized system if the majority of the company’s supply is held by a few people.
- Others — DO NOT LISTEN TO OTHERS. I have seen so many people get burned because of this. There are so many unqualified people in YouTube channels, Twitter, Reddit, and other social media platforms advising people on what to buy or what not to buy. You have to understand, a lot of people are biassed because of their own investments. Always rely on your own research. Cryptocurrencies are still at its infancy stage. As I mentioned before, the majority of coins in this space will fail as time goes on. Currently, there are over 1500 cryptocurrencies and more are being added on daily bases. When you are researching, not only do you have to consider items 1–4, but also make sure that the company you are looking at is doing something unique (especially the low market cap coins). There are a lot of copycats out there who are there to take advantage of you.
- Sources — There are many sources that you can find helpful information about these companies. A good place to start would be coinmarketcap.com, Twitter, YouTube, Reddit, Telegram, similarweb.com (finding web traffic for sites), Slack, Github (looking at code), medium (reading research articles), Steemit.com, quora.com, and other similar helpful sources related to cryptocurrencies. As I mentioned before, only use these sources for research purposes, don’t invest on a company because somebody told you so.
The above items are only a start to your research journey. There are so many things to consider but I don't want to lengthen this article more than it already is. If you follow the above steps, you will be taking a step into the right direction. To get you started, some really interesting companies that I think are great to look at are OmiseGo, IOTA, ADA, Monero, Golem, Civic, Basic Attention Token (BAT), Lisk, Steem, Matryx, Ark, Request Network, Siacoin, and Ripple. Obviously, there are many more promising ones that I have not mentioned but honestly, most of the top 50 - 100 coins in coinmarketcap.com are worth looking into (for research purposes).
I wholeheartedly believe that blockchain will change our world for good. If we have learned one thing from the past, it is that we can not trust a central entity to control our data, identity, money, and pretty much everything else important. Currently, most people only look at the financial aspects of cryptocurrencies, but once the hype settles and the noise quiets, the focus will shift on how to use blockchain properly. We will see the rise of new industries that will use blockchain to improve our lives. Many existing companies in the future will incorporate blockchain to improve their efficiency and provide better services to us. That being said, we are still in the very early stages of this new technology revolution and like with any disruptive technology, bumpy roads are always part of the journey.
Hopefully you gained some valuable information from this article. I wish you and all these great startups success in the future. Lets hope our generation will change the world for the better.
Disclaimer: Statements on this article represent author’s personal views and shall not be taken as investment advice. The information on this article is provided for discussion purposes only, and are not investing recommendations. Under no circumstances does this information represent a recommendation to buy or sell assets, cryptocurrencies, or securities.
- Date of publication:
- Sat, 03/10/2018 - 18:42
Click on the link - it will be copied to clipboard