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.
Architecture
Section titled “Architecture”- Network Overview: Subnets, nodes, consensus, and boundary nodes.
- Application Architecture: How ICP applications are structured: canisters, frontends, and inter-canister communication.
- Canisters: Programs that run WebAssembly, hold state, serve HTTP, and pay for their own compute.
Core capabilities
Section titled “Core capabilities”- 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.
- HTTPS Outcalls: How canisters make HTTP requests to external services with consensus on responses.
- Verifiable Randomness: Cryptographically secure random numbers using threshold VRF.
- Timers: Periodic and one-shot scheduled tasks via the global timer mechanism.
Cryptography and cross-chain
Section titled “Cryptography and cross-chain”- Chain-Key Cryptography: Threshold signatures that enable cross-chain integration, fast finality, and chain evolution.
- Chain Fusion: How ICP connects to Bitcoin, Ethereum, Solana, and other blockchains natively.
- VetKeys: Verifiable encrypted threshold key derivation for onchain encryption and secret management.
Trust and governance
Section titled “Trust and governance”- Security Model: Canister isolation, trust boundaries, and the threat model for app developers.
- Governance: The NNS, SNS for app governance, neurons, and proposals.