Browse all Smart Contract Security articles.
6 min read
Tx.origin, msg.sender, and onlyOwner in Solana: identifying the caller !tx.origin msg.sender onlyOwner in Solana In Solidity, the is a global variable that represents the address that called or...
17 min read
Try Catch and all the ways Solidity can revert This article describes all the kinds of errors that can happen when a smart contract is called, and how the Solidity Try / Catch block responds (or...
12 min read
The Beacon Proxy Pattern Explained !Beacon Proxy Pattern Banner by RareSkills A Beacon Proxy is a smart contract upgrade pattern where multiple proxies use the same implementation contract, and all...
12 min read
Storage Slots in Solidity: Storage Allocation and Low-level assembly storage operations This article examines the storage architecture of the Ethereum Smart Contracts. It explains how variables are...
10 min read
Over 150 interview questions for Ethereum Developers All of these questions can be answered in three sentences or less. Easy What is the difference between private, internal, public, and external...
12 min read
The initializable smart contract design pattern Initializers are how upgradeable contracts achieve the behavior of a constructor. When deploying contracts, it's common to call a constructor to...
11 min read
ERC-7201 Storage Namespaces Explained ERC-7201 (formerly EIP-7201) is a standard for grouping storage variables together by a common identifier called a namespace, and also to document the group of...
9 min read
The Transparent Upgradeable Proxy Pattern Explained in Detail The Transparent Upgradeable Proxy is a design pattern for upgrading a proxy while eliminating the possibility of a function selector...
21 min read
Understanding ABI encoding for function calls ABI encoding is the data format used for making function calls to smart contracts. It is also how smart contracts encode data when making calls to other...
18 min read
Delegatecall: The Detailed and Animated Guide This article explains how delegatecall works in detail. The Ethereum Virtual Machine (EVM) offers four opcodes for making calls between contracts: * and...
46 min read
Smart Contract Security !smart contract security This article serves as a mini course on smart contract security and provides an extensive list of the issues and vulnerabilities that tend to recur in...
53 min read
The RareSkills Book of Solidity Gas Optimization: 80+ Tips !solidity gas optimization TABLE OF CONTENTS The RareSkills Book of Gas Optimization Gas optimization tricks do not always work Beware of...