Concepts
Understand the ideas behind the Internet Computer before you build on it. These explanations cover architecture, capabilities, and design decisions that shape how you write ICP applications.
Network
Section titled “Network”- Overview: Subnets, nodes, consensus, and boundary nodes.
- Node infrastructure: How ICP nodes are structured: IC-OS, virtual machine isolation, and Trusted Execution Environments.
- Edge infrastructure: How requests reach ICP canisters: API boundary nodes, HTTP gateways, and asset certification.
- Evolution & scaling: How ICP scales horizontally through subnet creation and upgrades its protocol without forks.
Protocol Stack
Section titled “Protocol Stack”- Overview: The four-layer architecture and how the layers interact.
- Peer-to-peer: How replicas discover each other and exchange artifacts.
- Consensus: How subnets agree on the order of messages.
- Message routing: How messages are delivered to canisters after consensus.
- Execution: How the Wasm runtime processes messages and manages canister state.
- State synchronization: How replicas catch up after falling behind.
- Performance: Throughput benchmarks and performance characteristics.
Canisters & capabilities
Section titled “Canisters & capabilities”- Canisters: Programs that run WebAssembly, hold state, serve HTTP, and pay for their own compute.
- Principals: The identity model: who can call a canister, and how caller identity works.
- Application architecture: How ICP applications are structured: canisters, frontends, and inter-canister communication.
- Cycles: How canisters pay for their own compute, storage, and bandwidth, and why users pay nothing.
- Orthogonal persistence: How canister memory survives across executions and upgrades without databases.
- Timers: Periodic and one-shot scheduled tasks via the global timer mechanism.
- Verifiable randomness: Cryptographically secure random numbers using threshold VRF.
- HTTPS outcalls: How canisters make HTTP requests to external services with consensus on responses.
Cryptography
Section titled “Cryptography”- Chain-key cryptography: Threshold signatures that enable cross-chain integration, fast finality, and chain evolution.
- Certified data: How canisters certify query responses using the subnet’s threshold BLS key.
- VetKeys: Verifiable encrypted threshold key derivation for onchain encryption and secret management.
Chain Fusion
Section titled “Chain Fusion”- Chain Fusion: How ICP connects to Bitcoin, Ethereum, Solana, and other blockchains natively.
- Bitcoin integration: Native Bitcoin support via the Bitcoin canister and chain-key ECDSA.
- Ethereum integration: EVM chain integration via HTTPS outcalls, chain-key ECDSA, and the EVM RPC canister.
- Solana integration: Solana integration via the SOL RPC canister and chain-key Schnorr signatures.
- Dogecoin integration: Dogecoin support using the same architecture as Bitcoin integration.
- Chain-key tokens: Trustless 1:1 representations of external chain assets on ICP (ckBTC, ckETH, and more).
- Exchange rate canister: On-chain oracle for cryptocurrency and fiat exchange rates.
Trust & governance
Section titled “Trust & governance”- Governance: The NNS, SNS for app governance, neurons, and proposals.
- SNS framework: How the Service Nervous System works: architecture, launch process, neurons, and governance.
- Network economics: ICP native asset uses, voting rewards, supply dynamics, and SNS asset configuration.
- Ledgers: How ICRC and ICP ledgers work, address formats, and scaling architecture.
- Security model: Canister isolation, trust boundaries, and the threat model for app developers.