A comparison between ERC20, ERC223, and the new Ethereum ERC777 token standard
Next to the well-known ERC20 standard, other standards exist which try to improve the original standard. ERC223 is focused on security seeking to solve an ERC20 critical bug which has caused the loss of millions of dollars. ERC777 focuses on a wider set of transaction event handling functions and mass adoption
You are all familiar with ERC20 tokens as you probably own a couple, distributed by some kind of token sale. But did you know many more standards exist besides ERC20? Ethereum has a long history of developed standards.
To give you a better idea of what ERC means, it stands for “Ethereum Request for Comment”. This is a proposal submitted for discussion and suggestions to the actual standard. The number (like 20) refers to an issue number on code sharing platform Github. First, let’s take a look at the ERC20 standard.
What exactly is the ERC20 standard?
The advent of ERC20 tokens revolutionized the cryptocurrency market and opened the door to the plethora of ICO cryptocurrency projects the world witnessed during 2017. Introduced in 2015, the ERC20 code outlines a specific list of rules that a given Ethereum based token has to deploy, simplifying the process of programming the functions of tokens on Ethereum’s blockchain. Basically, ERC20 tokens are special forms of smart contracts that utilize Ethereum’s blockchain.
The most prominent examples of ERC20 tokens include Bancor, EOS, Tronix, BNB, VeChain, and Bankex.
Before the innovation of the ERC20 standard for Ethereum tokens, coders had to create specific implementation standards for developing a token and launching it on Ethereum’s network. Nevertheless, the ERC20 token code have simplified the process of creation of tokens, thanks to a streamlined protocol and smart contract standards. The ERC20 code alleviated the complexity associated with implementation of token’s smart contracts, which significantly reduced the possibility of breaking token’s contracts.
As of April 2018, there are 66,468 ERC20 token contracts, thanks to the uniformity of token code provided by the ERC20 standard, which made it easy for cryptocurrency exchanges to list various tokens on their trading platforms. As such, the ERC20 standard has helped the crypto community overcome liquidity problems that could have associated such an enormous number of Ethereum based tokens.
ERC20 token functions:
ERC20 code outlines six specific functions for tokens, which are
1- Getting the total supply of tokens via the “totalSupply” function
2- Retrieving the token balance of another account associated with the “_owner” address via the ” balanceOf(address _owner) constant returns (uint256 balance)” function.
3- Sending a specific amount of tokens “_value” to a given address via the “ transfer(address _to, uint256 _value) returns (bool success)” function.
4- Sending a specific amount of tokens “_value” from one token (contract) address to another token (contract) address via the “transferFrom(address _from, address _to, uint256 _value) returns (bool success)” function.
5- Enabling a specific account to withdraw tokens from one’s account repeatedly, while predefining the upper limit for the amount of tokens to be withdrawn with the “_value” parameter. This can be achieved via the “approve(address _spender, uint256 _value) returns (bool success)“. The upper limit for withdrawal, i.e. the “_value” parameter, can be overwritten when the function is recalled.
6- Returning the residual amount of tokens, within the preset amount defined by the upper limit allowed to be spent by the “_spender” to withdraw from the account of the “_owner“. This can be executed via the “allowance(address *_owner*, address *_spender*) constant returns (uint256 remaining)” function.
These six functions defined by the ERC20 code represent cornerstone functionality issues, which include how these tokens will be transferred between different accounts, and how users can retrieve data associated with a given ERC20 token. These group of functions are prescribed to ensure that Ethereum based tokens will function similarly within any part of Ethereum’s platform. As such, all crypto wallets that are compliant with the ether coin will also support tokens based on the ERC20 standard.
ERC20 is the first token standard of Ethereum. As is often the case with new code, it contains some bugs or logical mistakes. ERC20 assumes two ways of performing a token transaction. First of all, the transfer function lets you send tokens to someone’s address. If you want to deposit tokens to a smart contract, you should use the combination ‘approve + transferFrom’. You should authorize this contract to withdraw your tokens via the approve function. Then, you need to call a function of a contract that will handle your deposit and withdraw your tokens via the transferFrom function.
What if you deposit tokens by accident to a contract with the transfer function? The transaction will succeed but this transaction will not be recognized by the recipient contract. For example, if you send tokens to a decentralized exchange contract, then the exchange contract will receive your tokens but it will not credit this tokens to your exchange token balance. Moreover, if the decentralized exchange contract does not implement an emergency token extraction function, then it’s impossible to get your tokens back in any case, resulting in a permanent loss of the tokens. Due to this bug, the Ethereum ecosystem has lost millions of dollars already.
Why are we still using the ERC20 standard?
Reddit user u/Dexaran, creator of the ERC223 standard, is one of the first developers who notified the community about the aforementioned bug. We asked him why ERC20 is still so widely used, even when knowing about this critical bug. He gave the following reasons:
- Because of criminal irresponsibility of token developers for their deeds.
- Because Ethereum Foundation is still promoting the ERC20 token standard even when it is known to contains bugs. The same situation as it was with TheDAO previously. They need to say “Stop this now” but they will not.
- Because the main reason for token development is fund grabbing, rather than product creation.
- Because using a different standard will lead to higher network effects. This is not what we really need given that the Ethereum network already has scalability issues.
The ERC223 standard was proposed by u/Dexaran who helped creating this article. ERC223 is a token standard that allows token transfers to behave exactly as ether transactions. ERC223 utilizes event handling (considers a transaction an event) to prevent tokens from being lost in unhandled transactions. This improved standard resolves the ERC20 critical bug by making the transfer function throw an error on invalid transfers and canceling the transaction so no funds are lost. In short, ERC223 focuses on security.
Additions and problems
ERC223 adds an additional data parameter to the transfer function, to allow for more complex operations than just a token transfer.
Dexaran’s main concern is that too many people can lose their tokens by sending them to contracts using the transfer function, not the approve and transferFrom methods as earlier discussed. His solution is to modify the transfer method to check whether the receiving address is a contract (i.e. contains data) or not. If it is a contract, then it assumes that there is a tokenFallback function to call it back. The main weakness is that if the tokenFallback does not exist, then the receiving contract’s fallback function will be called and the sent tokens may still be lost.
ERC777 is a new fungible token standard that relies on ERC820 (Contract pseudo-introspection registry) and tries to solve ERC20’s problems, such as lack of transaction handling mechanisms that led to the loss of millions of dollars from the Ethereum ecosystem. In short, ERC777 focuses on adoption by offering a wide range of transaction handling mechanisms.
The main advantage of ERC777 is that it uses a new method of recognizing the contract interface. This standard assumes that there is a central registry of contracts on Ethereum’s network (this is defined in ERC820). Everyone can invoke this registry to know if a certain address (it doesn’t matter if this address is a contract or not) supports a certain set of functions i.e. `interface`.
One of the main problems of Ethereum is the inability to know what functions the contract implements. ERC820 is intended to solve this. ERC777 takes advantage of this approach, which is definitely a good idea.
On the other hand, you can create a token that will implement ERC20’s default functions alongside with the new ERC777 functions without overrides (and optionally inherit ERC20’s critical bug). This can guarantee a good network effect for this new token standard and faster adoption. As practice shows, the main goal of token developers is to raise money which assumes that they need to push their tokens to exchanges. It is easier for exchanges to support a token that implements legacy ERC20 functions (it doesn’t matter if these functions contain bugs or not) without any research on newer functionalities of new token standards. The easier it is for exchanges to support tokens on a new standard, the more developers will use it. This boosts the adoption of ERC777, while ERC223 lacks this property.
This token standard defines a completely new set of functions i.e. `send` functions instead of `transfer` functions. `authoriseOperator` instead of `approve`. `tokensReceived` handler function instead of `tokenFallback` handler function.
Such an approach can guarantee that the functions of this standard will not cross and override with functions of any other token standard, thus it is possible to make a token that will be compatible with ERC777 and ERC820 standards simultaneously.
At last, ERC777 standardizes Mint and Burn functionality of tokens.
Points of failure and security concerns
ERC777 implements the `authoriseOperator`function which allows someone to manage tokens on your behalf. Dexaran explained to us that he thinks this method is deprecated and should not be used. In addition, authorizing someone to manage tokens on your behalf hurts the network’s bandwidth and requires more gas. `authoriseOperator` already represents one transaction, and another transaction is required to perform the “authorized withdrawal”. So, two transactions are required to perform a transfer which can be done with just one transaction.
Next, the ERC777 standard contains an optional flag to prevent stuck tokens by performing some checks about the ITokenRecipient interface, and to check if the address is whitelisted. As this standard is focused on security of a network that handles tokens that are worth millions of dollars, it’s not a good thing to make these checks optional.
There are many other standards like ERC827 which combines some advantages of ERC223 with legacy ERC20 functions. The ERC664 standard focuses on the modularity of the token standard. This standard allows token contracts to be upgradeable, but it has inherited the ERC20 critical bug. Other standards include ERC721, ERC677, and ERC820, but they are less well-known.
Compatibility between standards
We asked Dexaran which standards are backward compatible. He told us we first should understand what ‘backward compatibility’ stands for: “Backward compatibility is a property of a system, product, or technology that allows for interoperability with an older legacy system, or with input designed for such a system.”
ERC20 & ERC223: ERC223 tokens are compatible with ERC20. Everything that is designed to properly work with ERC20 (like wallets) can work with ERC223 as well. The only exception here are contracts that are relying on approve + transferFrom token deposit patterns. However, it is possible to implement approve + transferFrom functions with ERC223 tokens, even if they are not included in the standard right now. As for wallets and any third party services that are not smart-contracts, they support ERC223 automatically because the input call data of ERC20 token is valid for ERC223.
ERC20 & ERC777: You can find the following statement in the ‘Backward Compatibility’ section of the ERC777 proposal: “This EIP does not introduce backward incompatibilities and is compatible with the older ERC-20 token standard.”
However, Dexaran told us the exact opposite and gave us this example: “Such wallets and services as MetaMask, Mist, and MyEtherWallet are working with ERC20 tokens. The input that is designed for the ERC20 token is a contract call that contains encoded parameters and a function signature. Function calls in the Ethereum Virtual Machine are specified by the first four bytes of data sent with a transaction. These 4-byte signatures are defined as the first four bytes of the hash of the canonical representation of the function signature. This means that `transfer(address, uint256)` and `send(address, uint256)` functions will have different signatures. As a result, the input designed for the ERC20 token will not be valid for the ERC777 token.” As we use our definition of backward compatibility, ERC777 is not compatible with the ERC20 token standard.
When to use which standard
ERC20: Reddit user u/Dexaran gave us this sarcastic advice, “When you want your investors to lose money because of bugs.”
ERC223: This token standard is also usable alongside with ERC777. ERC777 has some elegant features that ERC223 lacks, but the logic of ERC223 is straightforward compared to ERC777 which can guarantee that it cointain much less error-prone code. Moreover, ERC223 is not relying on any central service which means that your ERC223 token will only depend on your own implementation. As we have mentioned earlier, ERC223 aims at security improvements, but this rendered ERC223 tokens non-compliant with the ERC20 standards.
ERC777: This token standard is already usable. On the other hand, ERC777 has some security concerns as mentioned above. They also rely on central contract registry which is a security concern as well. A central registry can make developer’s life easier but it also acts as a central point of failure exactly as it was with Parity Multisig. All the Parity Multisigs relied on a central code library. It happened that there was a bug in the library and it was exploited. As a result, all the Parity Multisigs crashed. In addition, ERC777 defines a new set of functions. This is an attempt to allow token developers to make their tokens compatible with both ERC20 and ERC777 standards simultaneously for the sake of adoption. This means that a developer can inherit a bug of ERC20 in ERC777, but it allows a developer to use more transaction handling events.
In general: All tokens have a similar use case – ICO. I would say that ERC223 and ERC777 are trying to solve one problem of ERC20 in different ways. ERC223 is already taking its niche in Ethereum Classic instead of the ERC20.
This article was created with the help of Dexaran, the ERC223 developer. Some of Paul Edge’s comments on Ethereum’s token standards were used too.
Frequently Asked Questions
What is Cointelligence?
Cointelligence was founded in 2017 to bridge the information gap in the crypto economy. It creates relevant tools for investors, namely an impartial and accurate ICO list and rating system. Cointelligence is a market maker focused on bringing the blockchain technology and cryptocurrencies to the masses through the use of fundamental economics, real-time market data, technical analysis, and great industry coverage.
Cointelligence is dedicated to creating a platform that is honest and trustworthy. In order to help users view the market as a whole, our team of writers use their knowledge of the market from all angles to create relevant, informational articles and guides that analyze the cryptocurrency ecosystem and explain it to our audience.
What is the main goal of Cointelligence?
Cointelligence strives to open the blockchain and crypto industry to the masses in an open, transparent, and fair manner.
How do we exercise due diligence at Cointelligence?
At Cointelligence, we exercise due diligence by treating every single token as a research subject in its own right. Our research team collects data on each and every token, coin, ICO, and organization in order to obtain the most profound and authentic data in the cryptocurrency market. This data is then passed to our team of crypto experts, who review our research team’s findings from a wider scope. Using both the research and the review of said research, each ICO is given an impartial and objective rating and risk score. This analysis is then presented to our website’s users.
Who are the people behind Cointelligence?
Our entire team can be found HERE.
General Questions About the Industry
What is cryptocurrency?
A cryptocurrency is a digital asset which is used as a medium of exchange. Cryptocurrencies utilize powerful cryptography algorithms to promote the security of financial transactions on a peer-to-peer basis, control the mining or the minting of additional currency units, and verify successful completion of transfer of digital assets. Cryptocurrencies represent a unique form of digital currency, alternative currency, or virtual currency. Cryptocurrencies enjoy distributed, or decentralized, control. This is in direct contrast to centralized digital currencies and central banking financial models. The decentralized nature of a cryptocurrency relies on the distributed ledger technology, typically a blockchain, that represents a record keeping system. This system secures the identities of users in a pseudo-anonymous form, their owned cryptocurrency balances, and all executed authentic transactions that took place among users of the network.
What is a blockchain?
A blockchain is a special form of an ever growing list of records, known as ‘blocks’, which are linked together using cryptography algorithms. Public (permissionless) blockchains are utilized by cryptocurrencies. Data stored onto the blocks of public blockchains can be accessed by anyone. Private (permissioned) blockchains are utilized by businesses and rely on an access control layer to determine who can access data stored on the blocks of their private blockchain.
On any blockchain, each block includes cryptographic hash of the proceeding block. Data is recorded permanently onto a blockchain and cannot be modified. When used as a distributed, or public ledger, a blockchain is usually managed by a peer-to peer network of nodes (computers or servers) that communicate with each other via a unique inter-node communication protocol. As new blocks are generated and validated, they are broadcast to all nodes across the network. These nodes then keep a record of all information stored on the blockchain.
What makes cryptocurrency blockchains so special ?
Cryptocurrency blockchains have certain characteristics that make them special:
- Borderless – there is no distinction between any country.
- Decentralized – there is no central point of control, such as a central bank authority or government.
- Immutable – you cannot censor, freeze, or cancel transactions.
What is a token?
A token is a type of cryptocurrency that represents a particular asset or utility. Such an asset can reside on top of another blockchain. Tokens can represent any interchangeable and tradeable asset.
What is an altcoin?
“Altcoin” is an abbreviation for “alternative cryptocurrency coins” and refers to any coin other than bitcoin. Altcoins are usually referred to simply as “coins.”
What is an ICO?
An Initial Coin Offering (ICO) is a means of seed funding and crowdfunding used to raise capital for a startup or other project through the issuance of a new cryptocurrency or cryptographic token. These new cryptocurrencies or cryptographic tokens are issued via blockchain technology. Not all cryptocurrencies or ICO tokens are issued on new blockchains, as most of them are created using other well-established blockchains, such as that of Ethereum.
What are smart contracts?
Smart contracts are digital, self-executing contracts that contain the terms of the agreement between the buyer and the seller in the contract’s code. Smart contracts are kept inside a distributed, decentralized blockchain network which makes them transparent, traceable, and irreversible.
What are exchanges?
An exchange is a platform on which one cryptocurrency can be bought or sold for a specific, ever-updating price. The price is determined by free market rules (i.e. supply and demand). An exchange is also used in order to convert fiat money, such as USD or EUR, into cryptocurrency. There are currently thousands of coins traded over numerous exchanges. Altcoins are mostly traded via Bitcoin or Ethereum. In other words, users have to first purchase Bitcoin or Ethereum to be able to buy most altcoins. To exchange altcoins to fiat currencies, traders will usually have to sell them first to Bitcoin or Ethereum, before being able to exchange them for fiat money.
What is a whitepaper?
A whitepaper is an in-depth report that a blockchain-based project, such as an ICO, produces to present necessary information about the project to others. A whitepaper should include the origin of the project and the vision that leads it, the product and how will it be used, market and competitor analyses for the project’s field, and the team that created the project. The whitepaper should include information about the technical details, terms, usage of the tokens or coins of the blockchain-based project or ICO. Investors rely on whitepapers to evaluate various blockchain-based projects and identify which projects may be potentially profitable.
What is ROI?
ROI is an abbreviation for “Return On Investment”. It is a measurement used to express the investment’s profitability.
General Questions About Cointelligence’s ICO List
How can an ICO get published to this list?
Regular listing: In order to include your ICO on our list, please fill out the form found HERE. Every ICO that enters our system is thoroughly vetted. This process is completed by Cointelligence’s research team. During this process, our research team gathers all of the information regarding the ICO and validates it.
Premium listing: Cointelligence offers a premium package for ICOs. This package includes the following:
- Diverting more user traffic toward the ICO’s site by appearing higher on our ICO list and having more features on the ICO profile page.
- Getting researched and evaluated faster.
In order to purchase this package, please contact us at info@Cointelligence.com
IMPORTANT NOTE: Purchasing a premium package will never affect the rating that an ICO receives.
How can the information on an ICO profile be changed or updated?
If there are any changes or updates to be done, please send an email to our research team at info@Cointelligence.com. Please keep in mind that Cointelligence presents only valid data and that changes will be made only after our research team validates the proposed.
How can an ICO be removed from the list?
In order to remove an ICO, please contact us at info@Cointelligence.com and specify the reason for your request, as well as a proof that the removal is being requested by all members of the ICO’s team.
Where is it possible to buy an ICO’s token?
Cointelligence is not an exchange platform. Tokens can be bought via the ICO’s official website.
How do I choose an ICO to invest in?
There are many factors to consider when making a decision to invest in an ICO. Luckily, we have written an entire guide regarding this matter. You can find this guide HERE.
Disclaimer: The information provided in this website is for informational purposes only. It should not be considered legal or financial advice. You should consult with an attorney, financial advisor, or other professional to determine what may be best for your individual needs.
General Questions About Cointelligence’s Rating System
How does your rating system work?
You can find a detailed explanation of our rating system HERE.
What is the meaning of an ICO profile score?
An ICO’s profile score represents the informed opinion of our rating board, based on their research. It is not a guarantee of the success or failure of the project, merely an analysis of all the available facts.
What is the meaning of the risk score?
The Cointelligence risk score is not an indicator for the project’s quality, but rather it is an indicator of the probability that the project will or will not be realized. You can read more about the risk score HERE.
Who rates the ICOs?
Our team of crypto experts rate each ICO. Each expert is a long-standing and well-regarded member of the crypto community. In order to help ensure that our ratings stay impartial and objective, we do not disclose the the identities of our experts.
If you would like to apply to be a crypto expert on our team, please contact us at info@Cointelligence.com.
Can an ICO pay for a better rating?
How can an ICO ask for a re-evaluation or an update of their ICO score?
Please contact our research team at info@Cointelligence.com in order to be re-evaluated. Keep in mind that a score will change only if the ICO has improved its quality in the different fields listed in the rating system. The score is a reflection of the state of the ICO and in order to improve it, the ICO must improve as well.
Frauds and Scams
What are the actions Cointelligence takes in order to protect users from fraudulent ICOs?
At Cointelligence, we follow our own proprietary method focused on deeply researching the ICOs documents, team, and vision. Our method consists of:
- Website and Whitepaper – We go through an ICO’s website and whitepaper, making sure the ICO has both items and that they include the information regarding the ICO’s vision as well as method of realization. During our research we look for warning signs that may indicate a fraudulent ICO, such as plagiarism, an illogical concept, no long-term plan, or use cases that do not align with the main idea.
- Data validation – We make sure the data on the site, in the whitepaper, in social media posts, and in online publications is accurate, original and valid. We also look for a wide range of warning signs, including:
- Fake pictures of team members
- Unrealistic or unchanging values (e.g. amount raised, timers, bonuses, and sale stage)
- Fake wallet address or email address
- Censored, closed, or minimal responses from the ICO’s team to the public’s questions on social media and online forums
- Falsely claiming to be traded on main exchanges
- Having a non-existing smart contract (e.g. on Etherscan for Ethereum-based tokens) or an open-source project that has empty repositories, or no repositories, on GitHub
- Team authenticity – A real ICO must have a team of employees with active social media accounts that details the team members’ experience in past projects. The team must also be willing to perform a KYC process with us. The biggest warning sign here is an ICO with an anonymous team that have no other sign of existence. It is very important that teams are researched in order to learn about their past experience, recommendations they hold in the crypto community, and examples of their work on their social media accounts. Red flags are raised when advisors have irrelevant professional backgrounds or when investors who invest very small amounts of money appear on the main page of the ICO’s website.
- Economically Reasonable – We make sure that the financial model of the ICO is reasonable and logical. Here, we look for the following warning signs:
- Disproportionate distribution of tokens, mining, or earnings that lean toward the development and management teams
- No hard cap, a very large difference between the soft cap and the hard cap, or no refund guarantee
- A promise of success or other guarantee as a part of the ICO
How can I learn more to protect myself from investing in a scam ICO?
There is a lot you can do to protect yourself from scam ICOs. Read more about what you should look out for in the article we published HERE.
How can I report a scam?
If you believe a certain ICO to be a scam, please contact our research team at info@Cointelligence.com.
How Cryptocurrency Regulation Can Affect The Price
Often referred to as the ‘Wild West’ for traders and investors, cryptocurrency markets are continuing to make their name in the world of trading. While some believe that cryptocurrencies are a fad which is not set to last, others have a strong belief that cryptocurrencies are in fact the future of currency. As a result of their increasing popularity, many people are turning to global cryptocurrency trade platforms to trade and invest in cryptocurrencies. However, a number of countries around the world are looking at implementing some form of regulation against these platforms and cryptocurrencies as a whole, with China already banning all access to trading platforms and Japan integrating regulations after recognising Bitcoin as a viable form of currency in 2017. Here, we’re taking a closer look at how cryptocurrency regulation is likely to impact price fluctuations in the market and what the key factors are.
Mere talks regarding cryptocurrency regulations at this year’s G20 summit led many traders to become concerned over whether or not the talks would lead to massive price drops. Cryptocurrencies are already exceptionally volatile and we’ve already seen the impact of what leading political and financial figures can have on the price. For example, when a key figure from the Bank of England and FSB stated that crypto assets do not “pose risks” to the world’s economy, Bitcoin was driven up by $1000. However, the future of cryptocurrencies and their role in wider society is still under much debate, and with G20 not finalising any rules or regulations thus far, traders and investors will be looking closely at what governments are discussing over the course of the next 12 months. Any positive signs could see Bitcoin and other cryptocurrencies spike, whereas negative conversations regarding strict regulations or even an entire ban on cryptocurrencies could result in a major drop in price.
Could Regulation Stabilise Cryptocurrencies?
While the whole concept of cryptocurrencies is to remain entirely decentralised and out of the control of a single entity, some investors and experts believe that some form of regulation could actually help to stabilise the market. Regulation requires an oversight, and if countries follow in Japan’s footsteps, who have put in place a number of self-regulatory bodies not related to the government whatsoever, more people could begin to trust cryptocurrencies further. If more people are trusting cryptocurrencies, then it is highly likely that more people are going to invest in the digital assets. If this occurs, we could see the price begin to be driven upwards sparking yet another bubble – which hopefully will not burst this time.
The Future For Cryptocurrencies
Despite the increased attention given to cryptocurrencies from regulatory bodies around the world, the future still remains hazy as to how and when cryptocurrencies will become regulated. The market grew significantly in a wholly unregulated market as a result of their design, but with an increasing number of hacks and security breaches, regulations may need to be put into place in order to stabilise the volatile market. The industry remains in its infancy, and even despite some of the main currencies’ almost dangerous prices wings, the cryptocurrencies have managed to correct themselves.
As ICOs remain a key concern for many regulators, we could see the focus remain on those instead of cryptocurrencies as a whole for the time being. 2018 will be an important measurement into how regulations are likely to impact the price and the market as a whole, with Japan having already implemented a number of regulations, and with Europe, South Africa and South Korea not being far behind.
Buying your first bitcoins – A simple guide
The popularity of bitcoin, and cryptocurrency in general, has skyrocketed during the past couple of years. The soaring demand for cryptocurrencies has driven their total market capitalization to the moon, exceeding $300 billion at the time of writing this blog post. Even though many people might be tempted to buy bitcoin, the apparent complexity of the process of coin buying and storing renders some reluctant to test new waters.
In this blog post we will present you with a simple guide that will walk you through the process of buying some bitcoin and storing it in your very own wallet.
Creating an online bitcoin wallet:
Before you buy bitcoin, you have to set up the wallet which you will use to store your purchased coins. A wallet in the bitcoin ecosystem is similar to a bank account. Your bitcoin wallet is what you will use to receive, send, and store your coins. There are two forms of bitcoin wallets: software wallets (bitcoin core or desktop qt wallets) and online wallets. Software wallets are inarguably more secure than online wallets. However, using software wallets can be rather hard especially for newbies, who might completely lose their stored bitcoins if they fail to properly store their private keys. As such, for the purpose of this guide, we will show you how to setup an online wallet from blockchain.info.
Blockchain.info is by far the best and most secure online bitcoin wallet provider. With Blockchain.info, you have full control over your coins’ private keys which are never stored on the service’s online server. You can use your wallet to store, send, and receive not only bitcoin, but also ethereum and bitcoin cash.
To create your wallet, follow these simple steps:
- Go to Blockchain.info website and click on the “GET A FREE WALLET” button on the top right corner of the homepage.
2. On the signup page, enter your email and password. Don’t use words or phrases, because these would make it easy for hackers to crack your password. It is highly recommended to use long, randomly generated passwords that include letters, numbers, and special characters. There are many online services that can generate random passwords for you. I recommend using Random.org for generating your password. Generate a password with a minimum of 20 characters, and save it in a safe place. Remember that if you lose your password, you may lose access to all coins stored in your wallet. After entering your password, and re-entering it in the “Confirm Password” box, press the “Continue” button.
3. Right after you press the “Continue” button, you will be logged in automatically to your wallet’s homepage, as shown on the below screenshot.
4. After signing up, you will receive an email from blockchain.info. You have to verify your email by clicking the “YES, THIS IS MY EMAIL” button as shown on the below screenshot. The email will also include your unique wallet identifier, or your wallet ID, which you will use to log in to your wallet. Store your wallet ID in a safe place and don’t share it with anyone.
5. You have successfully now created your wallet. Now, let’s sign out and re-login to make sure that everything is working fine. Press the “SIGN OUT” button on the top right corner of the page. You will be prompted with a window that will present you with your backup recovery phrase which you will use to recover your account if you ever lose your password. The backup recovery phrase is composed of 12 words. Write it down or print it and keep it in a safe place.
6. After writing down your backup recovery phrase, press the “Final Step” button. You will be prompted with a window asking you to enter four random words from your backup recovery phrase as shown on the below screenshot.
Enter the requested words and press “Finish”. A “You have backed up your recovery phrase” message will show up. Press the “Close” button as shown on the below screenshot.
7. Now, press the “SIGN OUT” button again. The login page will appear. Now, enter your Wallet ID and password and press the “LOG IN” button, as shown on the below screenshot.
8. After logging in, your wallet’s Dashboard will show up. You’re now ready to receive bitcoin. To identify your wallet’s bitcoin address, press on bitcoin’s icon on the column on the left side of the page. On the page that shows up, press the button marked “Request” on the top, as shown on the below screenshot.
9. A window will appear displaying your bitcoin address as shown on the below screenshot. You can press the “COPY” button to copy your bitcoin address and then save it in order to use it to receive bitcoin. You can also use the “View QR Code” button to display your bitcoin address’s QR code and use it for simplicity.
You have successfully setup your bitcoin wallet and you’re ready to buy your first crypto.
Buying bitcoin via Coinbase:
Now, we will use Coinbase to buy bitcoin. Coinbase is one of the world’s most popular and secure cryptocurrency exchanges, where you can buy bitcoin using credit/debit cards and bank wire transfers.
1. Go to Coinbase.com and press the “Sign up” button. You will be prompted with a signup form, with two account types: “Individual” and “Business”. Choose the “Individual” account type, and fill in your first name, last name, e-mail, and password as shown on the below screenshot. Use Random.org to generate a random password like you did with your wallet’s password to make it hard to crack, too. After filling in all the details, press the “CREATE ACCOUNT” button.
2. A window will show up asking you to verify your email, as shown on the below screenshot. Go to your inbox, and open the “Verify your email address” message sent to you from Coinbase and press the “Verify Email Address” button.
3. After successfully verifying your email address, login to your account using your email and created password. When you sign in for the first time, you will be asked to link your mobile phone to your account, as shown on the below screenshot.
4. After entering your mobile number, an SMS will be sent to your phone including a special code. Enter the code and press the “Submit” button as shown below.
5. Now, click the “Add Payment Method” button at the top of the page, and then on the payment method selector choose “Credit/Debit Card”. When doing so, you will be asked to complete a photo ID verification process which usually takes no more than 24-48 hours. Next, you will be prompted with the card verification screen, where you will have to enter your credit/debit card information including name, address (it should match the card’s billing address), and CVV code. Coinbase will ask to make two pending charges to your card. Accept the two charges, and then log in to your card’s online account and write down the exact amounts of the two charges made, and then enter those amounts into the appropriate boxes on the card verification window. Now, you have successfully added your card and you will see a window marked “Credit/Debit Card Added” with a button that says “Buy Digital Currency”.
6. Now, you can buy bitcoin with your debit/credit card. Press “Buy Digital Currency” and you will be prompted with a window as shown on the below screenshot. Enter the amount of bitcoin you wish to buy, or enter the equivalent amount in USD. On the below example, we bought $100 worth of bitcoin, which equals 0.01479509 BTC at the current bitcoin price ($6,759). Then, press the “Buy Bitcoin Instantly” button.
7. The amount of bitcoin you purchased will instantly appear in your bitcoin wallet. You can now move it to your Blockchain.info wallet by pressing the “Accounts” button on the top menu, then clicking the “Send” button under your “BTC Wallet”. You will be prompted with a window to enter the amount you want to send and the address you want to send the funds to. Double check that you have correctly entered your blockchain.info address and the amount you want to send before clicking the “Send Funds” button, confirming the transaction’s details and completing the sending process.
Within a few minutes, your bitcoin funds will show up on your Blockchain.info’s wallet along with the number of confirmations it received.
This was a simple guide to help you buy bitcoin, to start exploring the world of cryptocurrencies.
(Cointelligence’s disclaimer: Cryptocurrencies represent a very risky investment, so always trade cautiously and never invest more than what you can afford to lose)