• Home
  • About
  • Blog
  • Open Source
Home About Blog Open Source
  • Cryptopals: Break a repeating-key XOR message

    Nov 11, 2024

  • Write your own shellcode

    Oct 19, 2024

  • Skip List (in Rust) explained!

    May 18, 2024

  • Format string vulnerability

    Jan 29, 2024

  • How does Key Transparency work?

    Jan 6, 2024

  • Heap-based buffer overflows

    Nov 19, 2023

  • Optimize emacs start up time

    Nov 18, 2023

  • Store shellcode in environment variable

    Oct 29, 2023

  • Stack-based buffer overflows

    Oct 20, 2023

  • How to use WASM code from ClojureScript through JavaScript interop

    Jun 10, 2023

  • How to patch a git dependency in rust with same location but different branch

    May 29, 2023

  • Why the Clojure REPL is so cool

    May 28, 2023

  • H4ck1ng G00gl3 ep005 challenge 02

    Dec 2, 2022

  • H4ck1ng G00gl3 ep005 challenge 03

    Dec 2, 2022

  • H4ck1ng G00gl3 ep005 challenge 01

    Nov 28, 2022

  • H4ck1ng G00gl3 ep004 challenge 03

    Nov 21, 2022

  • H4ck1ng G00gl3 ep004 challenge 01

    Nov 20, 2022

  • H4ck1ng G00gl3 ep004 challenge 02

    Nov 20, 2022

  • H4ck1ng G00gl3 ep003 challenge 02

    Nov 13, 2022

  • H4ck1ng G00gl3 ep003 challenge 03

    Nov 13, 2022

  • H4ck1ng G00gl3 ep003 challenge 01

    Nov 9, 2022

  • H4ck1ng G00gl3 ep002 challenge 03

    Nov 5, 2022

  • H4ck1ng G00gl3 ep002 challenge 02

    Nov 4, 2022

  • H4ck1ng G00gl3 ep002 challenge 01

    Nov 3, 2022

  • H4ck1ng G00gl3 ep001 challenge 03

    Oct 28, 2022

  • H4ck1ng G00gl3 ep001 challenge 02

    Oct 20, 2022

  • H4ck1ng G00gl3 ep000 challenge 01

    Oct 18, 2022

  • H4ck1ng G00gl3 ep000 challenge 02

    Oct 18, 2022

  • H4ck1ng G00gl3 ep001 challenge 01

    Oct 18, 2022

  • Deploy blog written with org-mode on GitHub Pages

    Jul 3, 2022