All pages for: programming
- Breaking SHA256: length extension attacks in practice (with Go)
- Generating a SHA256 HMAC in Go
- Fast hashing, it's not that simple
- How to zip and unzip files in Go
- How to Use Robots.txt to Allow or Disallow Everything
- When to vendor (or not) your dependencies in Rust
- Learning Rust: The derive attribute
- Multithreading in Rust
- How to send messages to a private Telegram channel from a bot
- Denial of Wallet Attacks: The new (D)DoS in a Serverless world
- Advanced shellcode in Rust
- Black Hat Rust updated for Rust 1.62 (and announcing the online course)
- Announcing the biggest update of 2022: Memberships
- Automated maintenance and dependencies security for Rust projects
- Building a web application with Rust and WebAssembly
- (Ab)using technology for fun & profit
- Introduction to Rust generics [2/2]: Trait Objects (Static vs Dynamic dispatch)
- When Serverless really shines (and when to avoid it)
- Introduction to Rust generics [1/2]: Traits
- Defending against malicious bots with a zip bomb
- Testing and building your Rust project with GitHub Actions
- Optimizing the size of your Rust binaries
- Evil Twin Attacks in practice (with Rust and a Raspberry Pi)
- Bitsquatting attacks and exploitation with Rust
- Building a crawler in Rust: Scraping Javascript Single Page Applications (SPA) with a headless browser
- The Tyranny of Updates
- Programming languages are platforms, not products
- Black Hat Rust discount: Happy 2022
- Building a crawler in Rust: Crawling a JSON API
- Patching the Linux kernel without reboot with Ubuntu livepatch
- How to enable automatic updates on Ubuntu
- Bugs that the Rust compiler catches for you
- Building a crawler in Rust: Scraping and Parsing HTML
- NPM install VS NPM ci
- What a better Rust would look like
- Building a crawler in Rust: Implementing the crawler
- Building a crawler in Rust: Synchronization (Atomic Types and Barriers)
- Hostname based router with axum in Rust
- I lost my focus
- Building a crawler in Rust: Design and Associated Types
- Is life too short to fight Rust's borrow checker?
- How to get started into Bug Bounty: The Guide
- Rust's fearless concurrency in practice
- When not to use Rust?
- Last week's newsletter incident postmortem
- Cross-compilation in Rust
- Rust is minimalist
- Functional Programming in Rust
- Mental models for learning Rust
- The foundations of end-to-end encryption: Key exchange (with code example in Rust)
- Which Rust web framework to choose in 2022 (with code examples)
- Background jobs in Rust
- The foundations of end-to-end encryption: Domain separation (with code example in Rust)
- The simplest guide to error handling in Rust
- The 9 indispensable features to learn for the new Rust programmer
- Async Rust: What is a runtime? Here is how tokio works under the hood
- Clean and Scalable Architecture for Web Applications in Rust
- Async Rust: Cooperative vs Preemptive scheduling
- How to securely encrypt a file with an insecure password in Rust (using Streaming Encryption + Argon2)
- Secure and immutable development environments with Dev Containers
- 4 ways to read a file in Rust
- How to encrypt a file in Rust (Using streaming AEAD encryption)
- The tools and services I used to write, edit and self-publish my book
- Black Hat Week (Black Hat Rust is out 🍾)
- Position Independent Shellcodes in Rust (PIC)
- Backdooring Rust crates for fun and profit
- Converting an Enum to a String in Rust
- Benchmarking symmetric encryption (AEAD) in Rust
- Default environment variables in Rust
- Signatures: The foundations of modern end-to-end encryption
- Black Hat Rust October Update (now in Beta 🍾)
- Building a static site generator in 100 lines of Rust
- Reproducible cross-compilation for Rust (with Docker)
- Rust on ESP32
- Freedom: the core value of hackers
- How to compile Rust and LLVM for ESP32 on a Raspberry Pi (aarch64)
- How to install Ubuntu Server on a Raspberry Pi 4
- How to implement HTTP Long Polling in Go
- Engineer vs Entrepreneur Mindset
- How to implement HTTP Long Polling in Rust
- How to Write and Compile a Shellcode in Rust
- Why Rust for offensive security
- How to build a job queue with Rust and PostgreSQL
- Smart pointers: The secret to writing clean Rust code
- How to import a crate from git in Rust
- Bullshit jobs
- Overview of the Rust cryptography ecosystem
- How to sort a vector in Rust
- How to deal with large Cargo workspaces in Rust
- How to convert String to Int and Int to String in Rust
- Overthinking
- A fast port scanner in 100 lines of Rust
- The foobar challenge: Google's secret hiring program
- 15k inserts/s with Rust and SQLite
- How to deploy Rust on Heroku (with Docker)
- HTTP Security Headers: The Best Practices
- My Rust development workflow (after 2+ years)
- Black Hat Rust: July Update
- How to implement worker pools in Rust
- Hello Simplon
- 42 Companies using Rust in production
- How to create small Docker images for Rust
- How to execute shellcodes from memory in Rust
- The biggest threat to Rust's sustainability
- How to send emails with Rust
- Polyglot programming frameworks
Want to learn Rust, Cryptography and Security? Get my book Black Hat Rust!