Blog
Everything I can write.
-
A Post-Quantum Cryptography Primer: Shor, Grover, ML-KEM and the Hybrid Handshake
Which parts of today's cryptography a large quantum computer would break, what NIST standardised in FIPS 203, 204 and 205, how X25519MLKEM768 protects TLS 1.3 sessions, and how to try ML-KEM yourself with OpenSSL 3.5.
-
Twelve-Factor on a Single VM
Running a real application on one virtual machine with Docker Compose, environment-based config, log streams, automatic TLS and tested backups, without pretending it is a cluster.
-
flagchecker3: A Bytecode VM That Decrypts Itself Only If You Already Know the Flag
A write-up of the Android reversing challenge flagchecker3 from VSLCTF 2026, where the native checker runs a bytecode VM whose instruction stream is XOR-encrypted under a key that every comparison result feeds back into, so a wrong byte derails the decryption and turns the obfuscation into an oracle.
-
What Happens at Generation Time: KV Cache, RoPE and Sampling
The decode loop of a decoder-only transformer explained from the memory up, with KV-cache arithmetic for 7B-class models, a NumPy check of rotary embeddings, and temperature and top-p sampling.
-
MPI from Zero: Ranks, Messages and a 1-D Heat Equation with Halo Exchange
What an MPI program is, how point-to-point and collective communication differ, the deadlock everyone writes once, and a complete heat-equation solver with ghost cells and non-blocking overlap, compiled and checked against Open MPI on a single laptop.
-
Elliptic Curves from Scratch: Group Law, Double-and-Add and a Toy ECDH
Building elliptic-curve cryptography up from the chord-and-tangent rule to scalar multiplication and a working Diffie–Hellman exchange on a 103-point curve, then showing exactly why that curve is worthless.
-
King Halo: When a Zero-Knowledge Circuit Forgets to Constrain the Path Length
A write-up of the crypto challenge King Halo from WannaGame Championship 2025, where a Halo2 Merkle circuit verifies a path without constraining its length, so an empty path reduces the whole proof to leaf equals root and membership is never proved at all.
-
CO: A Cubic Surface, a Hyperplane Section, and a Flag Collected One Small Prime at a Time
A write-up of the crypto challenge CO from WannaGame Championship 2025, where the group lives on a cubic surface in projective 3-space, a hyperplane through the given points cuts it into an ordinary elliptic curve, and the same secret scalar reused across attacker-chosen primes falls to Pohlig-Hellman and the CRT.
-
Interesting Signing: One Byte Into the Modulus, Then an Orthogonal Lattice Factors It
A write-up of the crypto challenge Interesting Signing from WannaGame Championship 2025, where a one-byte overflow into the RSA modulus turns the CRT recombination into a linear equation over the integers, and ten of those equations let an orthogonal lattice recover the private CRT coefficients and factor a 3072-bit modulus.
-
Trust Across Virtual Hosts: Resuming a TLS 1.3 Session Past mTLS, Then a Signed Plugin to RCE
A write-up of the web challenge Trust from WannaGame Championship 2025, where a TLS session cache shared between two nginx virtual hosts lets a ticket from the public site skip client-certificate checks on the employee site, and a plugin upload that verifies a signature but extracts appended data and symlinks plants a JSP shell.
No posts match these filters.