Applications
![121612.png](file-guid:c48d935b-a1e0-49b6-8410-e459af0059cf "121612.png")
The EVM's instruction set is Turing-complete. Popular uses of Ethereum have included the creation of fungible (ERC-20) and non-fungible (ERC-721) tokens with a variety of properties, crowdfunding (e.g. initial coin offerings), decentralized finance, decentralized exchanges, decentralized autonomous organizations (DAOs), games, prediction markets, and gambling.
## **Contract source code**
Ethereum's smart contracts are written in high-level programming languages and then compiled down to EVM bytecode and deployed to the Ethereum blockchain. They can be written in Solidity (a language library with similarities to C and JavaScript), Serpent (similar to Python, but deprecated), Yul (an intermediate language that can compile to various different backends - EVM 1.0, EVM 1.5, and eWASM are planned), LLL (a low-level Lisp-like language), and Mutan (Go-based, but deprecated). Source code and compiler information are usually published along with the launch of the contract so that users can see the code and verify that it compiles to the bytecode that is on-chain.
One issue related to using smart contracts on a public blockchain is that bugs, including security holes, are visible to all but cannot be fixed quickly. One example of this is the 2016 attack on The DAO, which could not be quickly stopped or reversed.
## **ERC-20 tokens**
The ERC-20 (Ethereum Request-for-Comments #20) Token Standard allows for fungible tokens on the Ethereum blockchain. The standard, proposed by Fabian Vogelsteller in November 2015, implements an API for tokens within smart contracts. The standard provides functions that include the transfer of tokens from one account to another, getting the current token balance of an account, and getting the total supply of the token available on the network. Smart contracts that correctly implement ERC-20 processes are called ERC-20 Token Contracts, and they keep track of created tokens on Ethereum. Numerous cryptocurrencies have launched as ERC-20 tokens and have been distributed through initial coin offerings.
## **Non-fungible tokens (NFTs)**
Non-fungible token Ethereum also allows for the creation of unique and indivisible tokens, called non-fungible tokens (NFTs). Since tokens of this type are unique, they have been used to represent such things as collectibles, digital art, sports memorabilia, virtual real estate, and items within games. ERC-721 is the first official NFT standard for Ethereum and was followed up by ERC-1155 which introduced semi-fungibility, both are widely used, though some fully fungible tokens using ERC-20 have been used for NFTs such as CryptoPunks.
The first NFT project, Etheria, a 3D map of tradable and customizable hexagonal tiles, was deployed to the network in October 2015 and demonstrated live at DEVCON1 in November of that year. In 2021, Christie's sold a digital image with an NFT by Beeple for US$69.3 million, making him the third-most-valuable living artist in terms of auction prices at the time, although observers have noted that both the buyer and seller had a vested interest in driving demand for the artist's work.
## **Decentralized finance**
Decentralized finance (DeFi) offers financial instruments in a decentralized architecture, outside of companies' and governments' control, such as money market funds which let users earn interest. DeFi applications are typically accessed through a Web3-enabled browser extension or application, such as MetaMask, which allows users to directly interact with the Ethereum blockchain through a website. Many of these DApps can connect and work together to create complex financial services.
Examples of DeFi platforms include MakerDAO. Uniswap, a decentralized exchange for tokens on Ethereum grew from US$20 million in liquidity to US$2.9 billion in 2020. As of October 2020, over US$11 billion was invested in various DeFi protocols. Additionally, through a process called "wrapping", certain DeFi protocols allow synthetic versions of various assets (such as bitcoin, gold, and oil) to be tradeable on Ethereum and also compatible with all of Ethereum's major wallets and applications.
## **Enterprise software**
Ethereum-based software and networks, independent from the public Ethereum chain, have been tested by enterprise software companies. Interested parties have included Microsoft, IBM, JPMorgan Chase, Deloitte, R3, and Innovate UK (cross-border payments prototype). Barclays, UBS, Credit Suisse, Amazon, Visa, and other companies have also experimented with Ethereum.
## **Permissioned ledgers**
Ethereum-based permissioned blockchain variants are used and being investigated for various projects:
In 2017, JPMorgan Chase proposed developing JPM Coin on a permissioned-variant of Ethereum blockchain dubbed "Quorum". It is "designed to toe the line between private and public in the realm of shuffling derivatives and payments. The idea is to satisfy regulators who need seamless access to financial goings-on while protecting the privacy of parties that don't wish to reveal their identities nor the details of their transactions to the general public."
## **Performance**
As of January 2016, the Ethereum protocol could process about 25 transactions per second; this did not change after the move to proof-of-stake. In comparison, the Visa payment platform processes 45,000 payments per second. This has led some to question the scalability of Ethereum.
A proposal to partition global state and computation into shard chains was presented at Ethereum's Devcon 3 in November 2017. If implemented, each node in the network would only have to store and validate a subset of the network.
Ethereum's blockchain uses a Merkle-Patricia Tree to store account state in each block. The trie allows for storage savings, set membership proofs (called "Merkle proofs"), and light client synchronization. The network has faced congestion problems, such as in 2017 in relation to CryptoKitties.
## **Regulation**
See also: 2020s commodities boom In the United States, the proposed Digital Commodities Consumer Protection Act would treat Ethereum and other cryptocurrencies as commodities, which could then be regulated by the Commodity Futures Trading Commission (CFTC).