Demystifying AEAD: Authenticated Encryption with Associated Data

2025-04-28
Demystifying AEAD: Authenticated Encryption with Associated Data

This article provides a clear explanation of Authenticated Encryption with Associated Data (AEAD) and its usage. AEAD, the current industry standard in encryption, combines encryption and authentication, handling associated data to prevent data tampering. By comparing traditional separate encryption and authentication methods with AEAD's concise API, the article highlights AEAD's security advantages and recommends developers use AEAD to ensure data security.

Read more
Development

JIT Compiler Challenge: From Toy Calculator to Machine Code in Rust

2025-02-27
JIT Compiler Challenge: From Toy Calculator to Machine Code in Rust

This article presents a challenge: modify a simple Rust toy calculator to use a JIT compiler, generating and running machine code directly. Starting with a 20-line interpreter calculator, the article guides readers through the principles of JIT compilation and provides a high-level code framework. The article explains concepts like JIT and interpreters, and offers additional learning resources, such as how to generate and run machine code, and compiler resources for inspecting machine code. This is a challenging project suitable for developers with some Rust programming experience.

Read more
Development machine code