Skip to main content

What is the ICP blockchain?

Smart contracts are the new and vastly superior way to build software. Being embedded in blockchain protocols, smart contracts are secure, tamper-proof, resilient, and unstoppable.

ICP's vision is that most of the world's software will be replaced by smart contracts. To realize that vision, ICP is designed to make smart contracts as powerful as traditional software.

What ICP offers today

Computation power of the ICP blockchain

Smart contracts on the Internet Computer (ICP) can have hundreds of gigabytes of memory and compute at the full speed of a modern CPU, which is many orders of magnitude more than Ethereum smart contracts. For instance, the AI canister on ICP can run a full model because it is large and powerful enough to host it.

Run AI models fully on-chain Learn more about ICP performance.

Low cost & resource efficiency

ICP is designed to be resource-efficient, making it both low-cost and environmentally friendly. For example, storing a gigabyte of memory on ICP only costs a smart contract $5 per year.

ICP Sustainability Solutions Learn more about ICP costs

State-of-the-art User Experience

Users only need a browser to interact with ICP smart contracts. Users do not need wallets or tokens or any custom software, taking away all hurdles of using a smart contract.

Try out some dapps Deploying your first full-stack dapp

The Key to connect Web2 and Web3

ICP can interface with other smart contract blockchains and traditional Web 2 internet resources via HTTP requests and signing capabilities. For example, Chain-key Bitcoin (ckBTC), a token backed 1:1 by BTC held entirely on the ICP blockchain, is possible because ICP smart contracts can sign transactions. Additionally, the Exchange rate canister sends and receives HTTP requests to fetch data from major cryptocurrency exchanges.

Chain Fusion Technology Learn about ICP HTTP outcalls Learn more about ICP contracts threshold signing

Dev-friendly Smart Contract Coding

Developers can write contracts using popular languages like Rust, TypeScript, or Python and easily incorporate libraries from their respective ecosystem, much like they would in traditional web development. Additionally, they have the option to use Motoko, a language specifically designed for the ICP environment.

Start building
Dev Overview to ICP

Key Design Choices Behind ICP's Capabilities

DAO control

Protocols often evolve slowly due to the need for consensus. ICP stands out by enabling frequent, decentralized updates through its NNS DAO, resulting in hundreds of upgrades since launch. This allows for continuous addition of new functionalities to smart contracts.

Scale out via subnets

ICP comprises multiple subnets, each supporting different smart contracts that can communicate seamlessly. It can dynamically add new subnets to scale with demand, enhancing efficiency and performance.

Powerful node hardware

A replicated system is only as fast as the weakest nodes, so ICP runs on powerful machines in data centers, ensuring all nodes meet a high minimum standard. This design means participation isn't possible with low-power devices like a Raspberry Pi, but it enables high performance.

Asynchronous

ICP's smart contracts operate asynchronously, unlike Ethereum’s synchronous model which causes delays as transactions process sequentially. This approach allows multiple contracts to process simultaneously, trading a more complex programming environment for enhanced efficiency and familiarity for Web2 developers.

Decentralization

ICP enhances security and efficiency through a deterministic decentralization approach that balances maximum decentralization with minimized replication. This method considers factors such as the diversity of node providers and their locations. As a result, ICP's replication factor is lower than that of Bitcoin, optimizing for efficiency.

WebAssembly

ICP uses WebAssembly, an open standard for binary formats, for its smart contracts. This enables developers to use various programming languages with ease, enhancing developer friendliness due to straightforward mappings to WebAssembly.

Reverse gas

The reverse gas model allows developers to prepay gas fees by loading their smart contracts with 'cycles,' enabling users to interact without needing tokens or a wallet. This simplifies entry into Web3, offering a user experience similar to traditional web applications and facilitating easier adoption. This model enables a state-of-the-art user experience.

Smart contracts serve web assets

Users can interact with smart contracts through a standard browser without needing plugins or custom software, enabling a state-of-the-art user experience.

Chain key cryptography

A family of protocols leveraging threshold cryptography enables ICP to sign messages that can be efficiently verified, facilitating interoperability and a state-of-the-art user experience.

Get familiar with the Internet Computer