Is The Internet Computer (ICP) Ready To Turn The Tides?
Nov 9, 2022

| read

At CEX.IO, we’re committed to bringing you the latest updates on cryptocurrency projects who are redefining the digital asset space. Read along as we discuss the recent and upcoming developments regarding the Internet Computer and its native token, ICP.

What is the Internet Computer?

Officially launched in May 2021, the Internet Computer was one of the most hyped and hotly anticipated projects in the crypto world when it opened at the peak of the previous bull market. Although $ICP tokens were exchanged for $4 per token during the private sale in 2018, they found buyers for as high as $2,800 on the first day of its public trading on May 11, 2021.

However, having debuted at the most expensive and euphoric stage of the crypto market, ICP subsequently faced one of the most precipitous selloffs in crypto history. Throughout the 2021/22 bear market, the price of ICP dropped from $2,800 in May 2021 to a low of $4.6 on October 13, a whopping 99.8% drop over a 17-month period.

Despite the adverse price action, Dfinity Foundation, the organization behind ICP, continues to fund and develop the project. A number of key developments are underway that could bring substantial adoption to the Internet Computer ecosystem and thus increase its network value.

These developments include smart contract outcalls to web 2.0, integration with the Bitcoin network, and the ability to issue permissionless tokens for DAO governance.

In this blog post, we will review the ICP updates in detail so that you can decide for yourself whether the tides could finally be turning for ICP.

Smart contract outcalls to web 2.0

To execute transactions, smart contracts often need to obtain real-world data, which requires interacting with off-chain applications outside a blockchain. Although smart contracts can receive messages from the off-chain web, they are currently unable to transmit messages to internet servers.

For example, smart contracts cannot send emails, SMSes, or any type of HTTP request to a website. To date, this has been the largest obstacle in Web3 development. However, the Internet Computer aims to eliminate this roadblock with one of its latest developments: its “HTTPS outcall” feature.

To give HTTPS outcalls, ICP created a tuned form of smart contract called “canisters.” A canister smart contract has all the qualities of a traditional smart contract with added memory to store software and user data, which are used to interact with off-chain web 2.0 applications.

On the Internet Computer blockchain, canister smart contracts make HTTP outcalls to web URLs, to directly interact with Web 2.0 services or enterprise IT infrastructures. For example, an HTTPS outcall can be made to download the recent prices of a cryptocurrency from a centralized exchange like CEX.IO.

HTTPS outcalls are processed by a consensus, which eliminates the need for oracles and bridges. This has the potential to be a major technological consolidation should the Internet Computer enjoy wider-scale adoption.

The oracle problem

Historically speaking, blockchains and smart contracts have relied on “data oracles” like Chainlink to read and receive data from an external source.

Oracles copy off-chain data onto a blockchain where it can be accessed by smart contracts. Developers then write their own smart contracts that obtain data from the oracles. This approach has a few downsides:

  • The entity that populates an oracle smart contract is an external party that must be trusted, which usually results in oracles becoming centralized systems.
  • This in return complicates the programming model and increases operational costs.
  • Oracles are also subject to their own service fees.

In addition, oracles cannot connect a smart contract to an off-chain platform using, for example, a web-based application programming interface (API).

On the contrary, canister HTTPS outcalls on the Internet Computer can connect smart contracts with Web 2.0 over Internet Protocol version 6 (IPv6), as well as other blockchains without the need for oracles.

Similar to gas on the Ethereum network, canisters consume resources called cycles to perform on-chain functions such as executing smart contract codes. However, in contrast to Ethereum, ICP’s cycles are fixed in cost and obtained by converting ICP tokens.

In addition, ICP uses a “reverse gas model” which allows developers to prepay costs by loading canisters with computation cycles. Due to this, users can interact with decentralized applications (dApps) without having to pay in tokens.

When the ICP blockchain makes an HTTPS request, all nodes in the subnet blockchain concurrently request that URL. Each node then passes the result they obtain to the Internet Computer consensus layer to make sure that they all have the same result. If there is consensus, the response is made available to the calling canister.

If the results are sufficiently consistent across all nodes, then consensus is reached and the requested data is provided back to the original smart contract for execution.

To put it succinctly, canisters on the Internet Computer can make HTTPS outcalls to external data sources in a trustless manner, without the security and cost implications experienced with data oracles.

Use cases for smart contract outcalls

Some of the real-life use cases for smart contract outcalls include:

  • Querying weather data for insurance contracts,
  • Accessing sports scores for the betting industry,
  • Monitoring stock prices for automated trading strategies,
  • Sending push notifications and emails via traditional communications channels.

Smart contracts have barely been used in real life so far due to limitations in accessing off-chain data and therefore being unable to automatically execute transactions based on their outcomes.

However, canister smart contracts on the Internet Computer could turn the tide for smart contract use by facilitating millions of real-world applications and potentially opening the path to a whole new world of transacting.

Integration with the Bitcoin network

By now being cryptographically integrated with the Bitcoin network, The Internet Computer can operate smart contracts on the flagship cryptocurrency’s ledger with the use of canisters.

Canister smart contracts are now able to create Bitcoin addresses, send, and receive Bitcoin, which eliminates the need for “wrapped Bitcoin” when transferring BTC between different blockchains.

Used on blockchain bridges as a quasi-bitcoin token, Wrapped Bitcoin has not proved the safest solution due to the frequency of bridge hack attacks. Chainalysis, a blockchain data intelligence platform, reported that $2 billion worth of crypto has been stolen on cross-chain bridges to date.

Two key technologies make it possible for the Internet Computer to directly send and receive Bitcoin without wrapping coins or using risky bridges:

  1. Inter-node communication between the Internet Computer network and the Bitcoin network.
  2. Threshold Elliptic Curve Digital Signature Algorithm (ECDSA) to create new Bitcoin addresses and sign Bitcoin transactions​​.

Inter-node communication with the Bitcoin network

While the Bitcoin network does not support smart contracts, ICP can transmit a transaction between Bitcoin’s network nodes and its own to execute smart contracts.

Smart contract integration could add tremendous value for Bitcoin users as it would enable the Internet Computer to execute smart contracts directly on the Bitcoin blockchain.

With this integration, ICP’s canisters can now hold Bitcoin on the Bitcoin blockchain with the following features:

  • Canisters can have Bitcoin addresses (and therefore receive and hold BTC directly on the Bitcoin blockchain).
  • Canisters can access the unspent transaction output (UTXO) set of Bitcoin addresses.
  • Canisters can securely sign Bitcoin transactions.
  • Canisters can submit Bitcoin transactions to the Bitcoin network.

Bitcoin applications that can be created with the Internet Computer typically include decentralized finance (DeFi) applications, which, to date, could only be implemented with wrapped Bitcoin.

Additionally, Bitcoin can now be used to pay for any transaction on the ICP blockchain, which could in turn open up endless application scenarios for the flagship cryptocurrency.

Threshold ECDSA

“Threshold cryptography” protects information by encrypting it and distributing it among a cluster of fault-tolerant computers. This cryptography method allows the Internet Computer to securely generate secret keys among its nodes and have them cooperate to create new Bitcoin addresses and sign Bitcoin transactions.

With the threshold ECDSA cryptography, canisters can securely receive, hold, and send bitcoins, as if they were smart contracts hosted on the Bitcoin network itself.

In addition to potentially incorporating Bitcoin into different DeFi and Web3 services on the Internet Computer, this also eliminates the need for bridging services that historically present security vulnerabilities to on-chain value.

Some examples of how this technology could revolutionize the space include decentralized exchanges providing BTC trading pairs on the ICP blockchain, or a Web3 crowdfunding service allowing Bitcoin to be sent via chat messages.

Permissionless tokens for DAO governance

On the Internet Computer network, decentralized autonomous organizations (DAOs) will soon be able to issue their own governance tokens to operate dApps and services.

The new Service Nervous System (SNS) feature on ICP will make it possible to issue permissionless tokens and facilitate completely decentralized governance systems.

DAO operators on the Internet Computer can implement an SNS to facilitate token-based governance. This could in return attract more users to the DAO and drive network effects that extend its organic reach.

To implement an SNS, developers need to submit a proposal to ICP’s mainnet stating that they would like to assign an SNS to their dApp to decentralize its governance. ICP token holders will then vote on the proposal. If the vote passes, the network will immediately assign an SNS to the dApp.

Adopting an SNS and converting control to decentralized and tokenized governance allows anyone to acquire the dApp’s particular “SNS governance token,” in exchange for cycles.

In exchange of cycles, governance tokens can also be allocated to a DAO’s developers and to its treasury.

Another important benefit of SNS is that users can ensure that the dApp’s developers cannot simply stop a service, remove a feature, or update the code in an undesirable way. It establishes that no single entity or centralized party will control the dApp and determine its future.

Closing thoughts

Although the Internet Computer was arguably launched at an unfortunate period – the peak of the 2021 bull cycle – adopting a long-term perspective for this project could be the right approach to realizing its potential. Since the project’s funding and development never ceased throughout the subsequent bear market, ICP is showing no signs of slowing down.

On the heels of these three critical developments – smart contract outcalls to web 2.0, integration with the Bitcoin network, and the ability to issue permissionless governance tokens – a bottoming process could be in the works for ICP. In turn, this could suggest that a significant growth cycle may be possible.

Learn more about the Internet Computer and its native token here, and decide for yourself if this project is right for your crypto journey.

Disclaimer: Information provided by CEX.IO is not intended to be, nor should it be construed as financial, tax, or legal advice. The risk of loss in trading or holding digital assets can be substantial. You should carefully consider whether interacting with, holding, or trading digital assets is suitable for you in light of the risk involved and your financial condition. You should take into consideration your level of experience and seek independent advice if necessary regarding your specific circumstances. CEX.IO is not engaged in the offer, sale, or trading of securities. Please refer to the Terms of Use for more details.