Blockchain, Cryptocurrency & Smart Contracts
+34 518 880131


Official SigloTech Blog

  • Welcome, Guest!

Posts tagged with “cryptocurrency”

Difference between ERC20, ERC721, ERC23 and ERC223 Tokens

What is a Token?

In the previous post I mentioned that the primary difference between Ethereum and any other cryptocurrency is that Ethereum is not just a currency, it's a global computing engine. Ethereum allows creation of distributed applications where smart contracts play a central role. Another important concept within the realms of distributed apps is a token. Tokens can be thought of as a currency within an application built on top of Ethereum. Normally when you hear about an ICO, it's the tokens that are sold during an ICO.

Differences between Tokens

You have probably heard about ERC20. It is a token specification for Ethereum. ERC20 is the most popular token type. However, it's not the only one. There is less known ERC721, ERC23 and ERC223 specifications. I will highlight some key differences between these specifications.

First thing that you should keep in mind is that there is a tight connection between a smart contract and the token. When we speak of different token specifications like ERC20 or ERC21, it means that the smart contract satisfies certain requirements, i.e. it follows the specification defined for each token type. It is also possible to create a token that partly implements the specification. A good example is The GNT Golem Network Token, which is only partially ERC20-compliant.

ERC20 Tokens

ERC20 is the most popular token specification. In order for a smart contract to satisfy ERC20 specification, it must define such functions as total supply, checking of account balance and transfer of token. A smart contract may provide much more functionality (and many do) however as long as it implements the basic functions required by ERC20 standard, it becomes ERC20 compatible.

ERC23 Tokens

ERC20 tokens sometimes have problems like lost Ethereum. ERC23 and ERC223 are supposed to address the issues found in ERC20 tokens. ERC23 and ERC223 are backwards compatible. It means that any wallet that supports ERC20 token can be used with ERC23 and ERC223 tokens.


If ERC23 and ERC223 try to improve ERC20 token, ERC721 token is a very different beast. ERC721 tokens non-fungible tokens. In economics, fungibility is the property of a good or a commodity whose individual units are essentially interchangeable. For example, bank notes (and thus money) are fungible. All $20 bank notes are equal and can be used for payment. Moreover, one $20 bank note is equal to two $10 bank notes. The same goes for precious metals. An ounce of gold is an ounce of gold.

How can a non-fungible token be useful? One usage is to create digital collectible items on the Blockchain. A notable use of ERC721 tokens is a Blockchain-based game CryptoKitties. In CryptoKitties players can buy, sell, trade, and breed digital cats. Without ERC721 tokens this game would not have been possible. ERC20 tokens are simply not suitable for this task. While ERC721 tokens are tradable, they are non-fungible. In other words, one ERC721 token cannot replace another.

ERC721 tokens are ERC20 compatible and thus define all functions defined by ERC20 token standard. Additionally, ERC721 tokens special ownership functions that make them so special. Other notable applications using the standard are CryptoCelebrities and EtherTulips. It is expected that more and more applications will be launched based on ERC721 tokens.

Tags: cryptocurrency cryptokitties erc20 erc23 erc721 ethereum smart-contracts tokens

Building Unstoppable Applications on Ethereum

For many people Ethereum is just another cryptocurrency like Bitcoin. In reality, Ethereum is much more than another cryptocurrency. It is often called a world computer and there is truth in this. In essence, Ethereum is a decentralized computing engine but with a very specific goal. Ethereum allows businesses and organizations to create decentralized, trustless applications. It should not come as a surprise that Ethereum is not a simple system and initially it may intimidate you. However, in this post we will demystify it.

Main source of confusion about Ethereum stems from the fact that Ethereum has it's own cryptocurrency and at the same time it allows creation of so called Ethereum tokens! These tokens is what makes Ethereum so special. The combination of Ethereum tokens with the Ethereum computing engine is what makes it possible to create a wide range of applications on top of Ethereum. Ethereum itself is application-agnostic. In other words, we can create any application on top of it requiring trustless environment.

We mentioned above that as a computing system Ethereum has a very special goal. For example, Ethereum is not suitable for computing-intensive operations like 3D rendering or video encoding/decoding. Why? Because every operation in Ethereum has associated costs and because Ethereum runs on many different computers distributed around the globe, as a fast computing engine it is extremely inefficient. Where this architecture shines, though, is robustness and reliability.

Like Bitcoin, Ethereum also uses blockchain. Blockchain has been getting so much hype that its probably the most popular word right now. However, blockchain is nothing but a kind of a database with some unique features. The most important feature is that blockchain is immutable. Immutable means that once something is written in blockchain, it's technically impossible to change that. Let's bring a quick example.

Imagine a database where real estate transactions are recorded. For example, when you buy a house from John Doe, that transaction is stored in the database. Then by looking up this information, you can prove that the house belongs to you. For this example let's assume that there is no other proof of ownership except this database. If a hacker or a malicious user changes the record in this database you cannot prove ownership and you lose your property. Now if the register of real estate had used a blockchain-based system, such a case would be impossible. Now it should be clear why organizations still keep paper documents. In case the database is compromised, the paper documents can prove the ownership. What if the paper storage catches a fire? To accommodate for this case, paper documents are copied and archived. As you can imagine this is associated with huge expenses. That's one of the reasons why governments are so inefficient. By adopting blockchain, organizations can dramatically decrease maintenance costs while achieving even better security.

Now you should be getting a feeling in what cases blockchain is a good fit. It does not fit every case but for certain cases blockchain is a life-saver.

One thing that should be noted is that blockchain is inherently public. In other words, every detail in blockchain is publicly visible. While there are blockchains that maintain encryption, the original blockchain suggested in the whitepaper by Satoshi Nakamoto does not address encrypted storage. This should not be confused with public blockchain. A blockchain that is used by Bitcoin for example is public. But even if you setup a private blockchain, data in it will be public within the users of the blockchain.

Main difference between Bitcoin and Ethereum is that Bitcoin's blockchain supports very simple computing. In essence, Bitcoin's blockchain is capable of supporting Bitcoin transfers only. It cannot register any other actions. On the contrary, in Ethereum we can create any type of smart contract. Let's see what a smart contract is.

Under the hood smart contract is a computer program. It contains certain commands that the Ethereum computing engine called Ethereum Virtual Machine (EVM for short) can carry out. Theoretically, EVM can do any computing because it is so called Turing-complete. But as we mentioned above this is only theoretically. Practically, EVM is not suitable for heavy computations because of associated costs and inefficiencies.

Conceptually, a smart contract models an agreement between two or more parties. While these parties can be individually anonymous, the contract itself is public. In other words, both parties can verify that the contract does what it claims to do. This is exactly the magic source that makes smart contracts so powerful. The parties involved do not need an intermediary or a third trustworthy party to conduct business. The parties simply trust that the EVM will execute the smart contract exactly as the smart contract logic is programmed. However, prior to committing to a smart contract, you must be sure that the smart contract does exactly what it claims to be doing. One way to ensure this, is to have a reputably third party audit the smart contract. Smart contracts need a certain trigger to get activated. A triggering event can an expiration date or certain price threshold for example.

As mentioned above, every computing operation in Ethereum costs money. The cost of operation is determined in a unit called "gas". Gas itself is bought by Ether, Ethereum's cryptocurrency. It's very important that you have clear understanding of these concepts, so let's recap them quickly.

Ethereum - is the whole system, a collection of computers running Ethereum software all around the globe.

Ether - is the cryptocurrency of the Ethereum system.

Gas - is bought with Ether and is used to pay for computing operations.

Smart Contract - is a program containing computing commands and having some trigger. Without smart contracts Ethereum is nothing more than another Bitcoin.

Finally, let's summarize some of the most popular use cases for Ethereum.

  • Crowdfund to pre-sell a product - your company can do this via a so called ICO.
  • An auction of a limited number of items - logic is enforced by the smart contracts.
  • A crowdsale to sell virtual shares in a blockchain organization.
  • A tradeable token with a fixed supply.
  • A central bank that can issue money.
  • A virtual organization where members vote on issues.
  • A transparent association based on shareholder voting.

Interested in adopting Ethereum for your organization? Get in touch with us to discuss this in detail.

Tags: blockchain cryptocurrency ethereum evm ico smart-contracts

Difference Between Proof of Work and Proof of Stake

You have probably heard about Proof of Work and Proof of Stake. In this post we will demystify these terms and explain how they compare.

Proof of Work

First, within the realms of Bitcoin and cryptocurrencies, both Proof of Work and Proof of Stake are used as a part of consensus algorithms.

Algorithm is simply a set or steps that computers execute. For example, when a person cooks, the recipe is a sort of an algorithm. The same is with computers. Computers execute commands and algorithms define what those commands are and in what order they need to be executed.

What about consensus? As you are well aware, Bitcoin and other cryptocurrencies do not have a centralized server or central authority. Rather, Bitcoin network is made up by numerous computers running the Bitcoin software. To put simply, consensus is the way how these computers running on the Bitcoin network agree on transactions.

The idea of Proof of Work is very simple. Imagine that there is a certain service and a user of this service. In order for the user to use the service, she must present something that requires certain work. However, this work has one peculiarity - it's very easy to verify if the work was really performed or not. This is how Proof of Work algorithms work and that's what exactly what Bitcoin miners do. Within the context of Bitcoin, the Proof of Work means that you have done certain amount of calculations (and thus consumed some energy). Anyone involved in the Bitcoin network can easily verify that you have indeed performed the work.

The Proof of Work is a wonderful invention but is has one serious drawback - it consumes a lot of energy and thus it has certain impact on our environment.

Proof of Stake

An alternative solution is Proof of Stake. Proof of Stake is a bit more difficult to grasp because it's a bit more abstract.

One thing to note is that Proof of Work is not limited to Bitcoin and cryptocurrencies. It has some other use cases, for example to fight spam (though it must be noted that this use case has not taken off). On the other hand, Proof of Stake is something used within the cryptocurrencies and blockchain realms.

In those systems that use Proof of Stake, the owner of a new block in the blockchain is chosen based on some random combination of wealth and age. However, this is a very simplistic view. For example, if only wealth were used, then this would cause undesirable centralization as those with the biggest balance would be chosen as block owners almost all the time. It must be noted that Proof of Stake algorithm has many problems and these problems have not been fully solved. The Proof of Stake has a big advantage of not consuming energy but the weaknesses are also considerable. So unless these problems are solved, the Proof of Work approach is more robust and viable.

Tags: bitcoin blockchain cryptocurrency pos pow proof-of-stake proof-of-work
About SigloTech

SigloTech is a software development and consulting company with a primary focus on Blockchain, Cryptocurrency and Smart Contracts.

Contact Details

Your privacy is our top priority!

©2018 SigloTech. All rights reserved.