Rust Search

Find the best content on Rust, curated by the community; a search engine for Rustaceans.
kerkour.com
Last month we saw how to encrypt large files that don't fit in memory using a streaming cipher. The article presupposes that you already have a secure key generation mechanism. Today, we are going to see how to securely encrypt data using a...
Rust Walkthroughs 2022-01-19 ~5 min read
kerkour.com
"But, it works on my machine" "If I install this NPM package, is it going to rm -rf / or infect me with a cryptominner?" "I spent the whole day trying to install $DATABASE on my laptop but it still doesn't work!" As we saw 2 months ago, sup...
Rust Walkthroughs 2022-01-12 ~4 min read
kerkour.com
December 22, 2021I’m happy to announce that you can now purchase Black Hat Rust with PayPal, Apple Pay and Google Pay thanks to Paddle which handles invoicing with VAT (if applicable) šŸŽ‰ Go here to buy Black Hat Rust with any of these paymen...
Project/Tooling Updates 2021-12-22 ~1 min read
kerkour.com
Choosing the right encryption algorithm When you want to encrypt data, you may face a problem: how to encrypt files or data streams that don't fit in memory? You could simply split them into small chunks and encrypt each fragment individual...
Rust Walkthroughs 2021-12-08 ~4 min read
kerkour.com
Black Hat Rust is out of beta :) v2021.40 It's now official, as of v2021.40, Black Hat Rust is considered out of beta and complete! Hundreds of typos have been corrected, layout issues have been fixed, and there is no more "coming soon" rem...
Rust Walkthroughs 2021-12-01 ~3 min read
kerkour.com
Shellcoding in Rust We previously saw how to craft an HelloWorld shellcode in Rust. This time, we are going to create a shellcode that... actually launches a shell, using the execve syscall. A C equivalent would be something like: #include...
Rust Walkthroughs 2021-12-01 ~6 min read
kerkour.com
Supply chains attacks are all the rage these days, whether to deliver RATs, cryptocurrencies miners, or credential stealers. In Rust, packages are called crates and are (most of the time) hosted on a central repository: https://crates.io fo...
Observations/Thoughts 2021-11-17 ~8 min read
kerkour.com
As we saw last week, when performing symmetric encryption you should use Authenticated Encryption with Additional Data (AEAD) which provides stronger guarantees than block ciphers. The main contenders for authenticated encryption in Rust (a...
Observations/Thoughts 2021-11-10 ~4 min read
kerkour.com
Just kidding, after a short pause of deep work and flu recovery, I'm extremely happy to announce that Black Hat Rust is reaching completion and that I just uploaded the version 2021.21 šŸ¾ 100% of the code is available on GitHub ~90% of the w...
Project/Tooling Updates 2021-10-27 ~2 min read
kerkour.com
And by that, I mean exactly 100 lines (excluding templates), with hot reload and an embedded web server 😃 Conceptually, a static site generator is straightforward. It takes some files as input, often markdown, render them, merge them with p...
Rust Walkthroughs 2021-09-29 ~3 min read
kerkour.com
Error: Toolchain / Library XX not found. Aborting compilation. How many times did you get this kind of message when trying to follow the build instructions of a project, or cross compile it? This problem can be solved with immutable toolcha...
Rust Walkthroughs 2021-09-29 ~1 min read
kerkour.com
I recently got my hands on an ESP32 microcontroller for hacking purpose and successfully ran Rust code on it šŸ¦€ Installing the tools First, you need to download and install the prebuilt binaries of the Rust and LLVM compiler forks by Espress...
Rust Walkthroughs 2021-09-22 ~2 min read
kerkour.com
ESP32 is a series of microcontrollers that has the particularity to have both integrated Bluetooth and Wi-Fi. It makes it the perfect microcontroller when you need low-power, networked, and smart hardware that doesn't require an OS. I had t...
Rust Walkthroughs 2021-09-22 ~1 min read
kerkour.com
A few months ago, we saw how to execute a shellcode from memory in Rust. What if we could write the actual shellcode in Rust? Writing shellcodes is usually done directly in assembly. It gives you absolute control over what you are crafting,...
Rust Walkthroughs 2021-09-15 ~3 min read
kerkour.com
We will use the new web framework developed by tokio's team: axum. Its performance and simplicity are unparalleled in the Rust world. Also, please note that porting this code to another web framework is easy. We will implement a simple chat...
Rust Walkthroughs 2021-09-15 ~2 min read
kerkour.com
Imagine: all the tanks of your army are made of cardboard. Now imagine that not only your tanks but also all your airforce is composed of paper planes and your navy of paper vessels. It would be a pretty bad situation, don't you think? Whil...
Observations/Thoughts 2021-09-08 ~2 min read
kerkour.com
37.2% of vulnerabilities in cryptographic libraries are memory safety issues, while only 27.2% are cryptographic issues, according to an empirical Study of Vulnerabilities in Cryptographic Libraries (Jenny Blessing, Michael A. Specter, Dani...
Observations/Thoughts 2021-09-08 ~2 min read
kerkour.com
(or in any other language such as Go, Node.js or python) Job queues are a central piece of any web application. It enables background jobs, buffering to handle surges in traffic, async messaging, batching and many other great things. Thus,...
Rust Walkthroughs 2021-09-08 ~6 min read
kerkour.com
37.2% of vulnerabilities in cryptographic libraries are memory safety issues, while only 27.2% are cryptographic issues, according to an empirical Study of Vulnerabilities in Cryptographic Libraries (Jenny Blessing, Michael A. Specter, Dani...
Observations/Thoughts 2021-08-25 ~2 min read
kerkour.com
I'm a big fan of monoliths, but when Rust projects become larger and larger, we have to use Cargo workspaces. First to benefit from incremental compilation to speed up compile times, second to improve code organization. Then a big problem a...
Observations/Thoughts 2021-08-18 ~1 min read
"When picking up a lentil (Result) a pigeon (?) must consider two options. If the lentil is a good one (Ok), the pigeon simply puts it into the pot (ev..."

Search tips

Type anything to search across articles, videos (including conference talks), podcasts, research, crates, and Rust API documentation. These operators give you finer control — click an example to try it.

Find pages containing all your words. Pages where the words appear together rank higher.
Quote part of your query to keep those words together as an exact phrase within a larger search.
Wrap the whole query in quotes for a verbatim search that matches text exactly, punctuation and all — perfect for Rust syntax. Needs at least 3 characters.
Put ! first to open the top result immediately. Quote the whole query for a literal leading bang, as in '!Send'. Bangs elsewhere, such as println!, stay literal. Browser and launcher shortcuts can invoke this directly. See search integrations.
Limit results to a single site. Works on its own () too. One site: per search.

Use the tabs and filters above the results to narrow by content type, publication year, and sort order.