NewIntroducing the Contracts MCP: Build secure, OpenZeppelin-standard contracts with AI
OpenZeppelin OpenZeppelin
  • Developers
    Smart Contracts
    Contracts Libraries

    The standard for smart contracts development

    Contracts Wizard

    Generate smart contracts interactively

    Contracts MCP

    Build secure smart contracts with AI

    Upgrades Plugin

    Deploy upgradeable contracts

    Open Source Tools
    Relayers

    Send onchain transactions

    Monitor

    Observe smart contract activity

    UI Builder

    Spin up a UI for your contracts

    Safe Utils

    Verify Safe transactions before signing

    Access Control

    Manage contract roles & permissions

    Resources
    Documentation
    Research
    Ethernaut CTF
    Forum
    Explore the Open Source Stack ->
  • Services
    Security Audits
    Smart Contract Security Audit

    The standard for smart contract securitys

    Blockchain Infrastructure Audit

    Secure offchain infrastructure components

    ZKP Audit

    Secure zero-knowledge & privacy systems

    Related Content
    ZKsync V29 Release Audit
    ZKsync V29 Release Audit
    Read all audit reports →
  • Solutions
    Developer Ecosystem
    Ecosystem Stack

    Accelerate developer acquisition & growth

    Financial Institutions Stack

    Bring traditional finance onchain

  • Institutions
    Services
    Smart Contract Security Audit

    The standard for smart contract security

    Blockchain Infrastructure Audit

    Secure offchain infrastructure components

    ZKP Audit

    Secure zero-knowledge & privacy systems

    Resources
    Research
    Stats
    Explore Financial Institutions Solutions ->
  • Research & Resources
    Insights
    Research
    News & Content
    Stats
    Company
    About
    Careers
    Featured Research
    ZKsync V29 Release Audit
    ZKsync V29 Release Audit
Login Talk to an Expert Start Building
  • Talk to an Expert
  • Start Building
  • Developers
    • Smart Contracts
    • Contracts Libraries
    • Contracts Wizard
    • Upgrades Plugins
    • Contracts MCP
    • Open Source Tools
    • Relayers
    • Monitor
    • Contracts UI Builder
    • Safe Utils
    • Access Control
    • Resources
    • Documentation
    • Research
    • Ethernaut CTF
    • Forum
    • Explore the Open Source Stack
  • Services
    • Security Audits
    • Smart Contract Security Audit
    • Blockchain Infrastructure Audit
    • ZKP Practice
  • Solutions
    • Ecosystem Stack
    • Financial Institutions Stack
  • Institutions
    • Research
    • Stats
  • Research & Resources
    • Insights
    • Research
    • News & Content
    • Stats
    • Company
    • About
    • Careers

The standard for secure onchain applications at any scale

Build, secure, and operate across 30+ chains with OpenZeppelin Contracts and open source tools.
Lock down your code with our gold-standard smart contract and blockchain infrastructure audits.

Explore the Open Source Stack Talk to an Expert

Trusted by the world’s leading projects

Uniswap
ANZ
Coinbase
AAVE
Compound
Ethereum Foundation
Lens Protocol
Polkadot
Uniswap
ANZ-Logo-2009 1-1
Coinbase-1
aaveLogoWhite 1-1
Group-2
Ethereum Foundation-1
Lens Protocol
Polkadot
Uniswap
ANZ-Logo-2009 1-1
Coinbase-1
aaveLogoWhite 1-1
Group-2
Ethereum Foundation-1
Lens Protocol
Polkadot

Total value transferred
via OpenZeppelin Contracts

Dune
Explore Stats ->

$21,160,337,760,351T

Dune
Explore Stats ->
Build Secure Operate
Explore Contracts
Talk to an Expert
Get Started
OpenZeppelin Stack

Build

“OpenZeppelin's contract library continues to be one of the best things to have happened for security in this space.”

Daniel Von Fange

Security Lead, Origin

Explore Contracts

Contract Libraries

Speed up development process and minimize risk. The battle-tested industry standard for Solidity and other languages.

Use Cases

Tokens Icon Tokens
Asset Tokenization Icon Asset Tokenization
DeFi Icon DeFi
Governance Icon Governance
Stablecoins Icon Stablecoins
Gaming Icon Gaming
NFTs Icon NFTs
Bridges Icon Bridges
Create your smart contract now
Solidity Logo Solidity Cairo Logo Cairo
Customize and Deploy ->
pragma solidity ^0.8.20;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract MyToken is ERC20 {
    constructor() ERC20("MyToken", "MTK") {
        _mint(msg.sender, 5 * 10 ** decimals());
    }
}
pragma solidity ^0.8.20;

import "@openzeppelin/contracts/governance/Governor.sol"; 
import "@openzeppelin/contracts/governance/extensions/GovernorCountingSimple.sol"; 
import "@openzeppelin/contracts/governance/extensions/GovernorVotes.sol"; 
import "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol"; 

contract MyGovernor is Governor, GovernorCountingSimple, GovernorVotes, GovernorVotesQuorumFraction {
    constructor(IVotes _token)
        Governor("MyGovernor")
        GovernorVotes(_token)
        GovernorVotesQuorumFraction(4)
    {}

    function votingDelay() public pure override returns (uint256) {
        return 7200; // 1 day 
    }

    function votingPeriod() public pure override returns (uint256) {
        return 50400; // 1 week 
    }

    // The following functions are overrides required by Solidity.

    function quorum(uint256 blockNumber)
        public
        view
        override(Governor, GovernorVotesQuorumFraction)
        returns (uint256)
    {
        return super.quorum(blockNumber);
    }
}
pragma solidity ^0.8.20;

contract MyContract {
}
AI Assistant
#[starknet::contract]
mod MyToken {
    
    use openzeppelin::introspection::src5::SRC5Component;
    use openzeppelin::token::erc20::ERC20Component;
    use openzeppelin::token::erc20::ERC20HooksEmptyImpl;

    component!(path: ERC20Component, storage: erc20, event: ERC20Event);
    component!(path: SRC5Component, storage: src5, event: SRC5Event);

    #[abi(embed_v0)]
    impl ERC20MixinImpl = ERC20Component::ERC20MixinImpl<ContractState>;

    impl ERC20InternalImpl = ERC20Component::InternalImpl<ContractState>;

    #[storage]
    struct Storage {
        #[substorage(v0)]
        erc20: ERC20Component::Storage,
        #[substorage(v0)]
        src5: SRC5Component::Storage,
    }

    #[event]
    #[derive(Drop, starknet::Event)]
    enum Event {
        #[flat]
        ERC20Event: ERC20Component::Event,
        #[flat]
        SRC5Event: SRC5Component::Event,
    }

    #[constructor]
    fn constructor(ref self: ContractState) {
        self.erc20.initializer("MyToken", "MTK", "");
        self.erc20.mint(recipient, 0000000000000000000);
    }
}
          
#[starknet::contract]
mod MyContract {
    #[storage]
    struct Storage {
    }
}
                  
AI Assistant
Customize and Deploy ->

“OpenZeppelin's contract library continues to be one of the best things to have happened for security in this space.”

Daniel Von Fange

Security Lead, Origin

Secure

“Collaborating with OpenZeppelin on our security audit was a positive experience. We appreciated their thoroughness and attention to detail.”

Yoav Weiss

Security, Ethereum Foundation

Talk to an Expert

Gold Standard Audits

Our Security Researchers set the industry standard in code review. Securing cutting-edge implementations in multiple types of audits including Smart Contract, ZKP, and Infrastructure.

Audit Report illustration
Audit Report illustration

1K+

Critical and High vulnerabilities uncovered

$50B

in Total Value Locked (TVL) secured

+1M

Lines of code
reviewed
We protect decentralized systems in different languages.

“Collaborating with OpenZeppelin on our security audit was a positive experience. We appreciated their thoroughness and attention to detail.”

Yoav Weiss

Security, Ethereum Foundation

Operate

“With OpenZeppelin’s open source tools, Stellar developers can build faster while hardening security for their onchain apps”

Jane Wang

Senior Product Manager, Stellar

Explore Tools

Relayers

Leverage a transaction API, secure key storage, and tx management, while implementing transaction policies and reliability mechanisms for smooth, secure, and efficient operations.

Monitor

Use pre-built templates for risk and behavior insights, while detecting, alerting, and automatically resolving threats and anomalies.

+40M

Transactions processed via Relayers

+45M

Monitors Alerts Triggered
+30 mainnet and testnet networks supported.

“Defender is the perfect companion for operating with a protocol transparently and securely.”

Ariel Barmat

Lead Engineer, Edge & Node

Community Public Goods

Your success is our passion

Our mission is to create and protect the Open Economy.
Our industry-standard development and tooling resources are public, good – and free.

Ethernaut CTF

The #1 educational resource for smart contract security. +140K plays across 5 networks and 10 languages.

Try Ethernaut →
The Ethernaut
Ethereum logo
Authoring and co-authoring numerous EIPs and ERCs

Notable contributions include
Account Abstraction (ERC-1271), Metatransactions (ERC-2771) and Upgradeability (ERC-7201, ERC-1967).

Explore Docs →
Contracts Library and Plugins

The standard for secure smart contract development in Solidity and Cairo. Recognized for its value to the Ethereum ecosystem by leading rankings in RetroPGF 2 and 3. Upgrade plugins for Foundry and Hardhat.

Explore Contracts →
Security Standards and Community Initiatives

Contributing to the widespread adoption of vulnerability detection and threat response best practices. Members of EthTrust and SEAL911 organizations.

Contribute on GitHub →
Five zero-day vulnerabilities uncovered

$15 billion funds at risk saved, helping affected protocols prevent losses.

Supporting top protocols to Build, Secure & Operate onchain

  • Arbitrum Logo Arbitrum Logo
  • Compound Logo Compound Logo
  • Matterlabs Logo Matterlabs Logo
  • Polkadot Logo Polkadot Logo
  • Starkware Logo Starkware Logo
  • Sandbox Logo Sandbox Logo
Build
Secure
Operate
Matterlabs

Securing all releases and reducing response time

Build
TransparentProxy ProxyAdmin Ownable2Step Math ERC20Permit
Secure

Smart Contract Security Audits

ZKP Security Audits

Security Advisory

Operate

Monitor

Arbitrum

Ensuring seamless upgrades and accelerating its developer ecosystem

Build
ERC20 Ownable Proxy Address StorageSlot Pausable TransparentProxy Initializable

Contracts library implementation for Stylus

Secure

Smart Contract Security Audits

DAO Security Proposal reviews

Operate

Relayers and Monitor support for Arbitrum One, Arbitrum Nova & Arbitrum Sepolia

Compound

Securing all DAO governance proposals and incidents

Build
Math ECDSA ERC20 ERC4626 SafeERC20
Secure

Smart Contract Security Audits

Security Advisory

DAO Security Proposal Reviews

Operate

Relayers and Monitor

Polkadot

Accelerating their ecosystem with the OpenZeppelin Stack

Build

Parachain runtimes library

Secure

Smart Contract Security Audits

Security Advisory

Operate

Monitor

Starkware

Accelerating their ecosystem with the OpenZeppelin Stack

Build

Contracts library implementation for Cairo

Secure

Smart Contract Security Audits

Sandbox

Building and expanding its virtual world securely

Build
Initializable Ownable SafeERC20 Address AccessControlEnumerable ECDSA BeaconProxy
Secure

Smart Contract Security Audits

Security Advisory

Operate

Relayers and Monitor

View more View more

What's next?

Build, Secure, and Operate onchain applications at any scale

Explore the Open Source Stack ->

Talk with our experts about building, securing, or operating your project

Contact us ->
Openzeppelin
Openzeppelin
© Zeppelin Group Ltd Service Level Agreement Terms of Service Privacy Policy Trademark Guidelines AGPL License
Products
  • Contracts Library
  • Contracts Wizard
  • Upgrade Plugins
  • Contracts MCP
  • Safe Utils
  • Access Control
  • Relayers
  • Monitor
Services
  • Smart Contract Security Audit
  • Blockchain Infrastructure Audit
  • ZKP Practice
Solutions
  • Ecosystem Stack
  • Financial Institutions Stack
Resources
  • Documentation
  • Blog
  • Forum
  • Ethernaut CTF
Company
  • About us
  • Careers
  • Brand Kit
  • Trust