Time: 2+ days ( depending on how deep you dive in this rabbit hole 🐰 )
Introduction
Economics are at the core of many smart contracts, and form the foundation of blockchain security.
Now, saying economics is a broad topic would be an understatement. So where do you actually get started?
I believe it’s important to get a good intuition for economics and behaviour. You should learn to see the world through the lens of an economist. Which sounds harder than it actually is. A book like The Undercover Economist by Tim Harford provides an easy read that does a solid job at introducing you to the viewpoint of an economist.
You’re ready to start diving into some more specific topics once you’ve acquired this intuition.
For smart contract security I believe there are two main topics to dive into:
- systems thinking
- game theory
Someone might argue that these two aren’t necessarily distinct disciplines. However, for now it helps to think about things as follows: Systems thinking helps us understand how a system is put together, and how one thing affects the other. Game theory in turn allows us to understand the implications of this understanding.
Info
These are by no means the only topics that you might want to dive into, instead you should treat them as a stepping stone.
Suggestions for topics to dive into:
- quantitative finance
- auction design
- voting systems
- tokenomics
- crypto economic security
You might wonder why I’m not suggesting you explore Investopedia to read about options, perpetuals, and other investment structures. That’s real economics!
That’s because you as a security engineer want to be able to understand system designs and find problems! Knowing about common system designs is useful for sure, but the skill you want to acquire is the ability to thoroughly understand and find the faults in new designs.
Reading and Listening
- Basic Economics
- The Undercover Economist by Tim Harford
- Systems Thinking
- Thinking in Systems by Donella Meadows
- [https://medium.com/disruptive-design/tools-for-systems-thinkers-the-6-fundamental-concepts-of-systems-thinking-379cdac3dc6a](Tools for Systems Thinkers: The 6 fundamental concepts of systems thinking)
- Game Theory
- https://innovationmanagement.se/2020/11/06/introduction-to-game-theory/
- https://www.youtube.com/watch?v=w28JDEdKCJo
- https://math.libretexts.org/Bookshelves/Applied_Mathematics/Book%3A_College_Mathematics_for_Everyday_Life_(Inigo_et_al)/07%3A_Voting_Systems/7.01%3A_Voting_Methods
- https://towardsdatascience.com/introduction-to-game-theory-part-1-1a812d898e84
- https://www.youtube.com/watch?v=S0qjK3TWZE8 ( must watch )
- Mechanism Design (tokenomics)
- Crypto Economic Security
Bonus:
- https://thesystemsthinker.com/systems-thinking-what-why-when-where-and-how/
- Explore paradigms’ blog for lots of interesting tokenomics posts.
- Explore Vitalik’s blog for lots of more interesting economics posts.
- Anything here: https://github.com/jpantunes/awesome-cryptoeconomics#attacks
Homework
- Pick a DeFi protocol and describe it’s (crypto) economic mechanisms and incentives
- Using a tool like excalidraw make a stock and flow diagram representing (a facet of) the system
- Identify security critical aspects of the system.
- Explore how changing this would affect the system overall.
- Example 1: Let’s assume we have an investment DAO which accepts bribes for votes. The DAO is clever introduces a minimum price for bribes.
- What would happen if they didn’t introduce this lower bound?
- Also, how should they determine this lower bound?
A good tip is to look at projects like aave that pay a lot of attention to risk, you’ll find them going through a very similar exercise.