docs.polygon.technology
Open in
urlscan Pro
2606:4700:4400::ac40:9292
Public Scan
Submitted URL: http://docs.polygon.technology/
Effective URL: https://docs.polygon.technology/
Submission: On June 06 via api from US — Scanned from DE
Effective URL: https://docs.polygon.technology/
Submission: On June 06 via api from US — Scanned from DE
Form analysis
3 forms found in the DOM<form class="md-header__option" data-md-component="palette">
<input class="md-option" data-md-color-media="" data-md-color-scheme="default" data-md-color-primary="white" data-md-color-accent="purple" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_1">
<label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_2">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M12 9a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3m0 8a5 5 0 0 1-5-5 5 5 0 0 1 5-5 5 5 0 0 1 5 5 5 5 0 0 1-5 5m0-12.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5Z"></path>
</svg>
</label>
<input class="md-option" data-md-color-media="" data-md-color-scheme="slate" data-md-color-primary="black" data-md-color-accent="purple" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_2">
<label class="md-header__button md-icon" title="Switch to light mode" for="__palette_1" hidden="">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M12 9a3 3 0 0 1 3 3 3 3 0 0 1-3 3 3 3 0 0 1-3-3 3 3 0 0 1 3-3m0-4.5c5 0 9.27 3.11 11 7.5-1.73 4.39-6 7.5-11 7.5S2.73 16.39 1 12c1.73-4.39 6-7.5 11-7.5M3.18 12a9.821 9.821 0 0 0 17.64 0 9.821 9.821 0 0 0-17.64 0Z"></path>
</svg>
</label>
</form>
Name: search —
<form class="md-search__form" name="search">
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required="">
<label class="md-search__icon md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"></path>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"></path>
</svg>
</label>
<nav class="md-search__options" aria-label="Search">
<a href="https://docs.polygon.technology/?q=" class="md-search__icon md-icon" title="Share" aria-label="Share" data-clipboard="" data-clipboard-text="javascript:void(0)" data-md-component="search-share" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7 0-.24-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9a3 3 0 0 0-3 3 3 3 0 0 0 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.15c-.05.21-.08.43-.08.66 0 1.61 1.31 2.91 2.92 2.91 1.61 0 2.92-1.3 2.92-2.91A2.92 2.92 0 0 0 18 16.08Z"></path></svg>
</a>
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41Z"></path>
</svg>
</button>
</nav>
<div class="md-search__suggest" data-md-component="search-suggest"></div>
</form>
Name: consent —
<form class="md-consent__form md-grid md-typeset" name="consent">
<h4>Cookie consent</h4>
<p>We use cookies to recognize your repeated visits and preferences, as well as to measure the effectiveness of our documentation and whether users find what they're searching for. With your consent, you're helping us to make our documentation
better.</p>
<input class="md-toggle" type="checkbox" id="__settings">
<div class="md-consent__settings">
<ul class="task-list">
<li class="task-list-item">
<label class="task-list-control">
<input type="checkbox" name="analytics" checked="">
<span class="task-list-indicator"></span> Google Analytics </label>
</li>
<li class="task-list-item">
<label class="task-list-control">
<input type="checkbox" name="github" checked="">
<span class="task-list-indicator"></span> GitHub </label>
</li>
</ul>
</div>
<div class="md-consent__controls">
<button class="md-button md-button--primary">Accept</button>
<label class="md-button" for="__settings">Manage settings</label>
</div>
</form>
Text Content
Polygon Knowledge Layer Home Type to start searching Polygon Knowledge Layer * Home * CDK * zkEVM * PoS * Miden * Developer tools * Innovation & design Polygon Knowledge Layer Polygon Knowledge Layer * Home * CDK CDK * Overview * Version compatibility matrix * Build Build * Deploy and manage a CDK stack Deploy and manage a CDK stack * Deploy the CDK stack * Set up a permissionless node * Observability * Breakdown the deployment * How to How to * Migrate Migrate * Fork id 7 to 9 * General guide for partners * Mint, bridge, and use tokens * Integrate a DAC * Manage allowlists with policies * Quickly test a running stack * Connect to CDK testnets * Architecture Architecture * CDK rollup * CDK validium * Unified bridge - STB * Specification Specification * Validium vs rollup * Glossary Glossary * Additional resources Additional resources * Third-party guides * CDK repos * zkEVM zkEVM * Overview * Build Build * Quick start * Setup nodes Setup nodes * Setup local zkNode * Setup production zkNode * Deploy zkEVM Deploy zkEVM * Introduction * Environment overview * Prerequisites * Install dependencies * Create wallets * Configure node deployment * Configure prover * Start node * Start services * Sync state with snapshots * Historical data * Architecture high-level Architecture high-level * Overview * Smart contracts Smart contracts * Overview * Main contracts * Consensus contracts - sequencing * Bridging * Exit roots * API API * PolygonRollupManager.sol * PolygonZkEVMBridgeV2.sol * PolygonZkEVMGlobalExitRootV2.sol * Consensus Consensus * Data committee Data committee * CDKDataCommittee.sol * PolygonDataComittee.sol * Validium Validium * PolygonDataCommittee.sol * PolygonValidiumEtrog.sol * Migration Migration * PolygonRollupBaseEtrogNoGap.sol * PolygonValidiumStorageMigration.sol * ZkEVM ZkEVM * PolygonZkEVMEtrog.sol * PolygonZkEVMExistentEtrog.sol * PolygonZkEVMV2.sol * PolygonZkEVMV2Existent.sol * Lib Lib * DepositContractBase.sol * DepositContractLib.sol * DepositContractV2.sol * PolygonAccessControlUpgradeable.sol * PolygonRollupBaseEtrog.sol * PolygonTransparentProxy.sol * PolygonZkEVMGlobalExitRootBaseStorage.sol * Utils Utils * ClaimCompressor.sol * Addresses * Architecture low-level Architecture low-level * Upgrades Upgrades * Etrog upgrade * Effective gas price Effective gas price * Effective gas price strategy * User transaction flow User transaction flow * RPC transaction flow * Sequencer transaction flow * Implementing EGP strategy * Transaction prioritization * zkEVM protocol zkEVM protocol * State management * Transaction life cycle Transaction life cycle * Submit transactions * Transaction execution * Transaction batching * Batch sequencing * Batch aggregation * Sequencing batches * Incentive mechanism * Protocol upgradability * Admin role and governance * Upgrade process * Security council * Malfunction resistance Malfunction resistance * Force batches * Force verification * Emergency state * Unified bridge Unified bridge * History of the unified bridge * The rollup manager * Sequencing and verification flows * Updating rollups * Global exit trees * Cross-chain exchanges * zkNode * Data streamer Data streamer * Overall design * Data streamer protocols * Bookmarks * Protocol messages * Stream file * How rollbacks work * The proving system The proving system * Introduction * Executor * Polynomial identity language * Execution trace design * Selector columns * zkEVM and execution traces * Using lookup tables * Recapitulation * zkProver zkProver * Main state machine Main state machine * As a processor * STARK recursion STARK recursion * Proving tools and techniques * Composition, Recursion and Aggregation * Recursion sub-process * Proving architecture * CIRCOM in zkProver * Proving setup phase * Intermediate steps * Final recursion step * Proof generation phase * Storage state machine Storage state machine * Creating keys and paths * Storage SM mechanism * Executor and PIL * Arithmetic state machine * Binary state machine * Memory state machine * Memory-Align state machine * Hashing state machines Hashing state machines * Keccak framework * Padding-kk state machine * Padding-kk-bit state machine * Bits2Field state machine * Keccak-f state machine * Poseidon state machine * Specification Specification * Polynomial Identity Language Polynomial Identity Language * Simple example * Modular programs * Connection arguments * Cyclicity in PIL * Filling polynomials * Generating proofs * Permutation arguments * Inclusion arguments * Compiling using PILCOM * Configuration files * PLONK in PIL * Public values * zkASM zkASM * Basic Syntax * Examples * EVM vs. zkEVM * API API * JSON RPC endpoints * Check transaction status * Concepts Concepts * EVM basics * Sparse merkle trees Sparse merkle trees * Merkle trees * Constructing simple SMTs * SMT concepts * Operations on SMTs * mFibonnaci state machine mFibonnaci state machine * Design approach * An example * Commitment scheme * Verification scheme * PIL-STARK process * PIL-STARK demo * Generic state machine Generic state machine * Generic SM introduction * Execution trace * Ending programs * Program counter * Plookup * CIRCOM * Troubleshooting Troubleshooting * Disclosures * PoS PoS * Overview * Get started Get started * Building on Polygon * Becoming a validator * Builder how-tos Builder how-tos * Bridge layers Bridge layers * Ethereum-Polygon Ethereum-Polygon * Ethereum to MATIC * MATIC to Ethereum * Submit mapping request * L1-L2 communication L1-L2 communication * State transfer * Integrate Polygon DID * Node how-tos Node how-tos * Delegate tokens * Sync node using snapshots * Run a validator node Run a validator node * System requirements * Prerequisites * Using binaries * Using Ansible * Using packages * Operate validator nodes Operate validator nodes * Validator best practices * Stake tokens * Set commission rate * Change signer address * Top up Heimdall fee * Validator performance requirements * Run a full node Run a full node * System requirements * Using binaries * Using Docker * Using Ansible * Using packages * Using GCP * Run an access node * Run an Erigon archive node * Troubleshoot nodes Troubleshoot nodes * Technical FAQs * Known issues and errors * Reporting issues * Governance Governance * Governance fundamentals * Architecture Architecture * Bor Bor * State sync * Network configuration * Commands * Heimdall Heimdall * Heimdall and Bor * Authentication * Key management * Validation * Balance transfers * Staking * Checkpoints * Topup * Chain management * Governance * Reference Reference * Contracts Contracts * Genesis contracts * Delegation via validator shares * Staking manager * Rewards and staking incentives * Default ports for nodes * Common commands * Node errors * RPC endpoints * PoS mainnet multi-signatures * Mapped tokens * Concepts Concepts * Tokens Tokens * POL * MATIC * Transactions Transactions * EIP-1559 * EIP-4337 * Meta-transactions * Miden Miden * Miden base Miden base * Get started Get started * Prerequisite steps * Create account and use the faucet * Private peer-to-peer off-chain txs * Public peer-to-peer note transactions * Roadmap * Miden architecture Miden architecture * Overview * Accounts * Notes * Assets * Transactions Transactions * Transactions overview * Transaction execution * Transaction kernel * Transaction contexts * Transaction procedures * State * Execution * Network * Miden client Miden client * Overview Overview * Features * Get started Get started * Design * Install and run * Miden CLI Miden CLI * Configuration * Reference * Using the client library * Examples * Developer tools Developer tools * dApp development dApp development * dApp Launchpad dApp Launchpad * Introduction * Quickstart * Frontend * Smart contracts * Commands * Contributing * Common pitfalls * Smart contract development Smart contract development * PoS PoS * Hardhat * Remix * Replit * zkEVM zkEVM * Write a contract * Deploy a contract with Foundry * Deploy a contract with Hardhat * Verify a contract * Third-party tutorials * Popular tools Popular tools * OKX explorer OKX explorer * Verify contract with API * Verify contract with external plugins * Venly Venly * NFT API * Zapier integration * Chain indexer framework Chain indexer framework * Overview * Usage * Gas Gas * Polygon MATIC faucet * Polygon gas station * Data Data * Alchemy subgraphs * Covalent * Envio * Flair * Moralis * PARSIQ * SubQuery * Matic.js Matic.js * Installation * Get started * POS POS * POS client * API overview * Setup Setup * Ethers * Web3js * Set proof API * Advanced Advanced * ABI manager * Exit util * Plugin * ERC20 ERC20 * approveMax * approve * deposit * getAllowance * getBalance * isWithdrawExited * transfer * withdrawExitFaster * withdrawExit * withdrawStart * ERC721 ERC721 * approveAll * approve * depositMany * deposit * getAllTokens * getTokenIdAtIndexForUser * getTokensCount * isApprovedAll * isApproved * isWithdrawExitedMany * isWithdrawExited * transfer * withdrawExitFasterMany * withdrawExitFaster * withdrawExitMany * withdrawExit * withdrawStartMany * withdrawStartWithMetaData * withdrawStart * ERC1155 ERC1155 * approveAllForMintable * approveAll * depositMany * deposit * getBalance * isApprovedAll * isWithdrawExitedMany * isWithdrawExited * transfer * withdrawExitFasterMany * withdrawExitFaster * withdrawExitMany * withdrawExit * withdrawStartMany * withdrawStart * Common methods Common methods * Deposit ETH * isCheckPointed * isDeposited * zkEVM zkEVM * zkEVM client * ERC20 * Message passing * Common methods * Storage Storage * IPFS * Filecoin * Crust network * Oracles Oracles * Getting started * API3 * Bandchain * Band standard dataset * Chainlink * DIA * Pyth * Razor * Supra * Tellor * UMA optimistic oracle * Umbrella * Wallets Wallets * Getting started * Polygon Portal * MetaMask MetaMask * Create MetaMask wallet * Add Polygon network * Configure custom tokens * Import accounts * Venly Venly * Create Venly wallet * Venly wallet API * Venly widget * Fortmatic * Openfort * Particle network * Portis * Torus * WalletConnect * WalletKit * Web3Modal * Block explorers Block explorers * OKX explorer * Polygon * zkEVM * zkEVM testnet * Innovation & design Innovation & design * Welcome * Polygon type 1 prover Polygon type 1 prover * Introduction and definitions * How to How to * Run prover quickly * Deploy prover on devnet * Architecture Architecture * Overview * Type 1 design challenges * Tests and proving costs * Specification Specification * CPU component * CTL protocol * Range checks * Plonky 2 & 3 * Polygon protocols * Demystifying reorgs THE POLYGON KNOWLEDGE LAYER Welcome to the technical documentation and knowledge resources for Polygon protocols and scaling technologies. Learn how to build and deploy dApps, launch ZK rollups and validiums as Layer 2s on Ethereum, spin up nodes, and find out about the latest in zero-knowledge research. BUILD Build today using Polygon technology. Select the protocol that best fits your needs. Polygon PoS LIVE Deploy a dApp on the widely adopted Polygon Proof-of-Stake protocol, an EVM-compatible environment optimized for high throughput and low transaction fees. Polygon zkEVM LIVE Deploy a dApp or build infrastructure on zkEVM, an EVM-equivalent ZK rollup designed for security. Polygon CDK LIVE Build and test a zero-knowledge Layer 2 blockchain on Ethereum. Learn about validium and rollup modes, custom native gas tokens, and more. Polygon Miden COMING SOON Test the Miden VM and learn about Polygon Miden, the novel ZK rollup designed to extend the EVM’s feature-set, including for privacy. Polygon Edge DEPRECATING Polygon will shortly be removing support for Edge. The documentation is now managed in the Edge repo. LEARN Deep dives only. Further your understanding of Polygon scaling technology. Innovation & design Resources focused on both current and future Polygon technologies. It features detailed guides, foundational concepts, and previews of upcoming innovations. Type 1 prover The Polygon type 1 proving component used for creating proofs on your ZK-EVM chain. AggLayer Introducing the multi-chain, multi-transaction Polygon Agg Layer; what it is and how it works. Plonky 2 & 3 Keep up with our latest cryptographic developments with the Plonky 2 & 3 libraries. Polygon protocols The Polygon protocol that’s best for you. A guide and decision matrix designed to empower users to navigate the evolving world of decentralization. DEVELOPER RESOURCES For developers who know what they want to build and are ready to go. Developer tools RPC providers, faucets, data indexing, Web3 dApp development SDKs, block explorers, storage, and more. Write a zkEVM contract Step-by-step guidance for writing smart contracts with zkEVM. Solution Provider Network Searchable catalog of tooling and infrastructure for developers. QUICKSTART Are you ready to start building? Polygon CDK: Deploy a local test rollup Polygon zkEVM: Deploy a smart contract to the Goerli testnet Polygon PoS: Build a new web3 dApp Polygon PoS: Deploy an existing contract Polygon zkEVM: Set up a zkNode Polygon CDK: Create your own validium Polygon Miden: Explore the sandbox Back to top Next CDK Copyright © 2024 Polygon Labs COOKIE CONSENT We use cookies to recognize your repeated visits and preferences, as well as to measure the effectiveness of our documentation and whether users find what they're searching for. With your consent, you're helping us to make our documentation better. * Google Analytics * GitHub Accept Manage settings