The Updraft 2024 update is here✨ All courses are now updated to the latest tools and best practices 🚀

eth logo eth logo

Assembly and Formal Verification

Assembly and Formal Verification

Advanced

Learn exactly how the solidity compiler and opcodes work. Write contracts using Assembly and Yul, then learn how to write formal verification tests to guarantee your invariants hold.

Avatar 9Avatar 3Avatar 10Avatar 7Avatar 8

500+ users have taken this course.


Course Details

11hrs
152 lessons
3 projects
11+ languages

Last updated on July 16, 2024

1. Presentation
Duration: 5min Advanced EVM Opcodes & Formal Verification: Learn low-level programming languages like YUL and Huff to write efficient smart contracts. Focus on hands-on project work, gas optimization tools, fuzzing, and formal verification to reach the top 1% of blockchain knowledge.
2. Best Practices
Duration: 8min Patrick covers some best practices to prepare us for the advanced content to come.
3. Prerequisites
Duration: 2min Requirements include a solid foundation in Solidity and Foundry. Participants should have completed Cyfrin Updraft's Security & Auditing course. Familiarity with text editors, Git/Cloud Git providers, terminal commands is also needed. WSL installation is assumed for Windows users. Aimed at advancing participants from intermediate to advanced smart contract developers or security researchers
4. Smart Contract Gas Battle Royale
Duration: 15min As supplementary content, we investigate the gas differences seen between Solidity, Vyper, Yul and Huff!

Course Overview


What you'll learn

Assembly
Writing smart contracts using Huff and Yul
Ethereum Virtual Machine OPCodes
Formal verification testing
Smart contract invariant testing
Halmos, Certora, Kontrol

Course Prerequisites

  • Blockchain Basics
  • Solidity Fundamentals
  • Foundry Fundamentals
  • Advanced Foundry
  • Security and Auditing

Course Description

If you’re a smart contract developer, a smart contract auditor, or know Solidity and want to level up your skills, the Assembly and Formal Verification course is the right resource for you to start developer more secure and efficient smart contracts:

  • Assembly
  • Writing smart contracts using Huff and Yul
  • Ethereum Virtual Machine OPCodes
  • Formal verification testing
  • Smart contract invariant testing
  • Halmos, Certora, Kontrol

With thousands of engineers taught, 50+ lectures and more than 11 hours of videos, and written resources, this comprehensive course gives you the skills you’ll need to bring your smart contract development and security skills to the next level.

Learn exactly how the solidity compiler works, and how the opcodes work. Then, learn how to write formal verification tests to guarantee your invariants hold. Technologies: - Halmos - Certora - Huff - Yul - Assembly - Kontrol

If you are an experienced Solidity smart contract developer or security researcher, this course is the right step to take you from Intermediate to professional. Here's why:

  • Taught by some of the world's best real-world smart contract engineers and security researchers.
  • Continuously updated to keep it current with the latest tools, technologies and techniques adopted by the biggest protocols in web3.
  • The curriculum was meticulously developed over an extensive period, incorporating extensive real-world professionals testing, feedback, and reviews.
  • We have successfully taught 1,000s engineers, CTOs, CSOs, auditors and researchers how to write and secure best-in-class Solidity smart contracts and protocols.
  • We are committed to teaching the best industry tools, free from any bias.
  • The course is regularly updated with fresh content, including new projects and modules.

Every video tutorial comes with a written lesson, giving you full freedom over your favourite learning method and teach you everything you need to know to succeed as a smart contract engineer or security researcher.

Made to train you on real-world projects, the Assembly and Formal Verification course includes quizzes, tests, and assignments as well as hands-on exercises to level up your Solidity smart contract engineering and security skills!

Learn how to use Halmos, Certora, Kontrol, and writing smart contracts using Huff and Assembly, through real world examples.

By the end of this course, you will be able to develop, deploy and test your smart contracts using state-of-the-art tools and frameworks used by top Blockchain protocols world wide!

You will get lifetime access to over 50 lectures plus corresponding resources and GitHub repositories!

So what are you waiting for? Learn Assembly, Yul, Huff and Formal Verification and kickstart your career as a web3 developer!


Who is this course for?

  • Smart contract security researchers
  • Advanced Smart contract engineers
  • Chief Security Officiers
  • Security professionals

Potential Careers

Security researcher Smart Contract Auditor

Solidity Developer

Solidity Developer path

Blockchain Basics

Blockchain Basics

Beginner

Start where you’re comfortable! Learn how blockchains work, smart contracts, and how to sign your first transaction. Whether you’re new or are a seasoned developer, there’s something here for you.

Solidity Developer path

Solidity Smart Contract Development

Solidity Smart Contract Development

Beginner

Start here if you’re new to writing smart contracts! Learn Solidity smart contract development from industry-leading experts and kickstart your career as a web3 developer.

Solidity Developer path

Foundry Fundamentals

Foundry Fundamentals

Intermediate

Learn advanced web3 development concepts like Chainlink Blockchain oracles, smart contracts testing, spinning up local networks, and industry-leading tools like Foundry Forge and Anvil.

Solidity Developer path

Advanced Foundry

Advanced Foundry

Intermediate

Learn smart contract development techniques to write, deploy, test, optimize, and interact with your smart contract using industry-standard tools taught by the top smart contracts engineers in web3

Solidity Developer path

Smart Contract Security

Smart Contract Security

Advanced

Start your career as a smart contract security researcher! Learn smart contract auditing and the best practices for writing secure and optimized protocols. Explore fuzzing, invariant testing, and formal verification to identify bugs and protect web3 protocols.

Current

Solidity Developer path

Assembly and Formal Verification

Assembly and Formal Verification

Advanced

Learn exactly how the solidity compiler and opcodes work. Write contracts using Assembly and Yul, then learn how to write formal verification tests to guarantee your invariants hold.

Solidity Developer path

Smart Contract DevOps

Smart Contract DevOps

Advanced

Following web3 DevOps guidelines and keeping an eye on smart contracts after they're live is key to making protocols and their users, safer. This course teaches you the best practices when dealing with web3 wallets and post-deployment security, teaching you how to keep smart contracts under control, even after they've been launched.


Meet your instructors

Patrick Collins

Patrick Collins

Founder at Cyfrin

Web3 engineer, educator, and Cyfrin co-founder. Patrick's smart contract development and security courses have helped hundreds of thousands of engineers kickstarting their careers into web3.

Guest lecturers:

Josselin Feist

Josselin Feist

Head of Blockchain at Trail of Bits


Testimonials

Students Reviews

Read what our students have to say about this course.

If there’s one resource that Web3 developers point to, it’s Cyfrin’s ultimate tutorials. They’re standout resources that have empowered countless developers to learn blockchains, learn Solidity, and dive deep into Web3 development.

Chainlink

Chainlink

Chainlink

We can build systems for Ethereum scaling but without education, it’s all for nothing. Updraft is the first step towards adoption for Web3 education. We can now mint security focused developers at scale!

Tony Olendo

Tony Olendo

Lead Devrel Engineer, Polygon

Cyfrin's course was a cornerstone of my journey into Web3, providing me with the fundamentals and hands-on experience that have been pivotal to my journey in the blockchain space.

Raza

Raza

Lead Developer Relations, Scroll

Cyfrin Updraft videos on smart contract development have been instrumental in my blockchain journey, standing out with their clarity and accessibility. Their readiness to support and engage with learners makes me excited for more of their interactive and insightful content in the Web3 space

Francesco Andreoli

Francesco Andreoli

MetaMask

I took Cyfrin course and I’ve been working as a solutions developer at OpenZeppelin for the last few months. It was by far the most comprehensive resource and the one that really teached me the fundamentals and made me want to switch from web2 to web3

Gustavo Gonzalez

Gustavo Gonzalez

Solutions Engineer, OpenZeppelin

The Cyfrin courses were a game-changer for me. They provided a well-structured and comprehensive introduction to web3 and blockchain development. The knowledge I gained allowed me to transition into a full-time role as a blockchain developer. I can't recommend these courses enough!

Albert Hu

Albert Hu

DeForm Founding Engineer

I took Cyfrin’s courses, and I took them seriously. At least one hour every day, documented the progress, didn’t skip any second. Haven’t found a better web3 course since. Now I’m full-time in web3, working as Senior Developer Advocate at Ceramic Network.

Radek

Radek

Senior Developer Advocate, Ceramic

Cyfrin have been an absolute game-changers in my journey into blockchain. Saying their courses were remarkable, would be an understatement. Thanks to their expert guidance, I gained a deep understanding of blockchain to its roots. I'm forever grateful for their role in helping me get started in web3.

Boidushya

Boidushya

WalletConnect

Cyfrin blockchain and Foundry/AI courses were incredible. I've gained valuable knowledge, grown, empowering myself and others. Thank you, Cyfrin!

Idris

Idris

Developer Relations Engineer, Axelar