Rust for Systems & Web3 Security
Rust for Systems & Web3 Security
Master Rust from scratch, focusing on memory safety, systems programming, and high-stakes Web3 security. This course takes you from 'Hello World' to rewriting Linux utilities and auditing complex Smart Contracts. Learn to navigate the Borrow Checker, manage low-level memory without a garbage collector, and build high-performance, secure decentralized applications. Designed for beginners who want to reach a professional level in systems and blockchain engineering.
Lessons
- Introduction to Rust & The Web3 Revolution
- Setting Up the Environment & Cargo
- Variables, Mutability & Constants
- Primitive Data Types
- Functions & Control Flow
- Ownership: The Heart of Rust
- References & Borrowing
- The Slice Type
- Structs: Custom Data Structures
- Enums & Pattern Matching
- Option & Result: Error Handling
- Common Collections: Vector, String, HashMap
- Diving into the Borrow Checker
- Introduction to Generic Types
- Traits: Defining Shared Behavior
- Lifetimes: Ensuring Reference Validity
- Automated Tests in Rust
- Systems: Command Line Arguments
- Project: Rewriting 'cat'
- File I/O & Error Propagation
- Project: Rewriting 'ls'
- Closures: Anonymous Functions
- Iterators & Performance
- Smart Pointers: Box<T>
- Deeper into Smart Pointers: Rc & RefCell
- Fearless Concurrency: Threads
- Message Passing: Channels
- Shared State: Mutex & Arc
- Unsafe Rust: When to Use It
- FFI: Interacting with C/C++
- Macros: Code that Writes Code
- Async Programming with Tokio
- Networking: TCP Servers
- Serialization with Serde
- Cryptography: Hashing in Rust
- Signatures: Ed25519 & Secp256k1
- Introduction to WebAssembly (Wasm)
- Smart Contract Anatomy
- Web3 Security: Integer Overflows
- Re-entrancy Attacks in Rust
- Auditing Logic Errors
- Cross-Platform Compilation
- Dependency Management & Auditing
- Optimizing Rust for Size
- Project: Secure Voting Contract
- Auditing the Voting Contract
- Static Analysis with Clippy
- Formal Verification Basics
- Preparing for a Professional Audit
- Course Finale: The Future of Rust