Browse all Smart Contract Security articles.

Getting a smart contract audit: what you need to know A smart contract audit is a review by blockchain security experts to ensure that users will not lose funds due to a malfunction or security...
Last updated on Aug 7, 2024
OpenZeppelin Ownable: Use Ownable2Step Instead The modifier is probably one of the most common patterns in Solidity. In the following example, the function can only be called by the address...
Last updated on Oct 22, 2025
3 min read
Solidity Staticcall EIP 214 Staticcall is like a regular Ethereum call except that it reverts if a state change happens. It cannot be used to transfer Ether. Both the EVM opcode, the Yul assembly...
Last updated on Oct 29, 2025
5 min read
Understanding smart contract metadata When Solidity generates the bytecode for the smart contract to be deployed, it appends metadata about the compilation at the end of the bytecode. We will examine...
Last updated on Oct 29, 2025
Ten beginner project ideas after you learn Solidity Now that you've completed our solidity tutorial, what's next? You now have enough knowledge to build any of the following projects. Knowledge comes...
Last updated on Sep 29, 2025
What are Pedersen Commitments and How They Work Pedersen commitments allow us to encode arbitrarily large vectors with a single elliptic curve point, while optionally hiding any information about the...
Last updated on Oct 29, 2024
Breaking Down the Uniswap V2 Swap Function Uniswap V2’s swap function is cleverly designed, but many devs find its logic counterintuitive the first time they encounter it. This article explains how...
Last updated on Sep 26, 2024
Rust Structs and Attribute-like and Custom Derive Macros !Rust attribute and custom-derive macros Attribute-like and custom derive macros in Rust are used to take a block of Rust code and modify it...
Last updated on Aug 15, 2024
Visibility and "inheritance" in Rust and Solana !Rust function visibillity Today we will be learning how Solidity's function visibility and contract inheritance can be conceptualized in Solana. There...
Last updated on Aug 15, 2024
Solana programs are upgradeable and do not have constructors !Hero image showing Anchor deploy In this tutorial we will peek behind the scenes of anchor to see how a Solana program gets deployed....
Last updated on Aug 15, 2024
Finite Fields and Modular Arithmetic for ZK Proofs This article is the third in a series. We present finite fields in the context of circuits for zero-knowledge proofs. The previous chapters are P vs...
Last updated on Mar 10, 2026
16 min read
Invariant Testing in Foundry Introduction In this article, we will discuss invariants and how to perform an invariant test on Solidity smart contracts using Foundry test suites. Invariant testing is...
Last updated on Oct 22, 2025