Eggs Over Easy
Eggs Over Easy
Platform: CUSTOM | Category: Crypto | Type: Challenge | Difficulty: Easy | OS: N/A | **Author: XESXOR Techniques: bytewise_ascii_decoding, unicode_nfkc_normalization, whitespace_to_bits
Summary
Walkthrough of the CUSTOM Crypto Eggs Over Easy. Task: a text file containing only spaces and tabs hides the flag through layered encoding. Solution: convert whitespace to bits, decode the bytes into hex code points, then apply Unicode NFKC normaliz
Description
If you know what goes well with eggs, this will be over easily...
We are given a text file with no visible content and need to recover the hidden flag.
Analysis
The file is made entirely of spaces and tabs, which suggests a binary encoding. Mapping space = 0 and tab = 1 produces a bitstring that can be read as 8-bit bytes.
Those bytes decode to the ASCII text:
text read-only • copy allowedff35 ff24 ff23 ff34 46 ff5b ff22 ff14 ff43 ff4f ff4e ff5d
Treating each hex word as a Unicode code point yields mostly fullwidth characters. Applying Unicode NFKC normalization converts them back into standard ASCII.
Solution
- Read the file as raw text.
- Replace spaces with
0and tabs with1. - Split the bitstring into bytes and convert each byte to a character.
- Split the resulting string on spaces and interpret each token as a hex Unicode code point.
- Normalize the Unicode string with NFKC to get the flag.
python read-only • copy allowed#!/usr/bin/env python3 from pathlib import Path import unicodedata data = Path("tasks/BlueHens CTF 2026/Eggs Over Easy/txt").read_text() bits = data.replace(" ", "0").replace("\t", "1") hex_words = "".join(chr(int(bits[i:i+8], 2)) for i in range(0, len(bits), 8)) text = "".join(chr(int(word, 16)) for word in hex_words.split()) flag = unicodedata.normalize("NFKC", text) print(flag)
The script prints:
text read-only • copy allowedUDCTF{REDACTED}
Key Takeaways / Lessons
- Mastering bytewise_ascii_decoding, unicode_nfkc_normalization, whitespace_to_bits was key to this challenge.
- Always check for common misconfigurations and verify assumptions.
Crafted by XESXOR Research • 2026-04-22 • CUSTOM • Eggs Over Easy • Difficulty: Easy