zwesty
Write-ups / Day 17 / Warmups
Day 17 · Sat, Oct 17 · Warmups

Bacon Bits

Prey slaughtered

Baconian-style binary groups, hex, layered decoding

STTMClaude Homebase Both

Flags are shortened to their first 8 and last 4 characters because they're unique per team.

Challenge ID
warmups-day-17 (+ /time_trial, /mastery)
Solved
2026-10-17, all three modes, by 09:05:14 ET
Player
Zwesty (solo), with Claude Code (Opus 5.5): our automated morning solver (a scheduled script on our Kali VM), then a Claude helper agent for this lane

The challenge

Sixteen guests. Five little a's and b's apiece.

Decode the blob; its last line names the answer slug (word-word-word-NN).

Reading the prompt: what it said we'd need

Clue What it pointed to What we did
"Five little a's and b's apiece" Bacon's cipher shape: groups of five a/b letters Read each group as 5 bits (a = 0, b = 1)
"Sixteen guests" Only 16 values in use: hex digits, not letters Every group was 0–15, so each is one hex digit; the hex spells the text

What was in the files

Single Solve: one line of 216 five-letter a/b groups. The classic 24/26-letter Bacon alphabet gives nonsense; the groups' values never pass 15. Mastery: 83 blobs of 17 lines, line N in Day N's layer, this one on the last line.

The modes

  • Morning solver: clean stop on the Single Solve ("no instruction line found"); nothing sent.
  • Claude helper agent: added one reading (bacon(): 5-bit a/b groups → hex digits) to the Day 17 pre-built solver. Day 16's wrapper already turns a hex-digit reading into text at the same cost, so it worked in both the whole-blob search and the Mastery's line-by-line walk. Tests 9/9; a regression rehearsal passed (0 changed; synthetic 60/60).
Single Solve   CORRECT 09:04:08  flag 63799db8…3b9d   solve 73 ms
Time Trial     CORRECT 09:05:06  flag 7d21f04f…bb37   ranked, solve 61 ms, submit +2.18 s
Mastery        CORRECT 09:05:14  flag 3f4e6114…32e6   ranked, 83 sets, solve 525 ms, submit +2.05 s

Time to solve

All three modes were solved by 09:05:14 ET. The Single Solve went through at 09:04:08 once the new reading was added, and the ranked Time Trial (+2.18 s) and Mastery (+2.05 s) each went through on the first submit.

Takeaways

  • Two days running, the new layer wrote hex digits in a new symbol set (Morse on Day 16, a/b groups today). The sentence around the answer is fixed, so a pre-build can learn any 16-symbol mapping from it.
  • The Day 16 "new reading, then hex" wrapper paid for itself on its first reuse.