Cicada 3301 / Liber Primus
The 2014 “unsolved” Cicada 3301 puzzle. I’ve lurked in the solvers discord for years and watch as new, excited solvers posit theories that the old heads immediately shoot down without a second thought. The sentiment seems to be “yeah, we already tried something like that, or if we haven’t, it’s cause we didn’t think it was important.” Very dogmatic. Seemingly ego-driven.
The problem (I think) is that these people aren’t musicians. They’re so stuck on “the last puzzle didn’t do that” that they’ll immediately dismiss any new ideas that don’t fit into their “this is how it was previously solved” mentality.
Liber Primus has a musical element that I don’t see discussed (and I’ve looked). The use of Dyads is a way to encode a string of numbers with a musical piece. I’ve been toying with this idea for a couple years now, but just wasn’t able to dedicate the time and focus to digging into it.
We’ll take the Instar Emergence as an example. Since this piece is played on guitar, I grabbed tab for it to see if anything immediately jumped out at me. I quickly noticed that most everything was played as single notes (lots of open strings) except a few dyads and a couple of chords.
Looking at the dyads, I considered 2 ways of “encoding”. The first was just taking the difference between the two fretted strings. I superimposed the difference between the dyads in the image below as a quick example. It seemed like the most simple and straightforward way at first..
But when it came to chords, I wasn’t sure exactly how to treat them. Since they’re not “traditional” dyads, do I just ignore them? Do I break them up into every dyad pair and then take the “difference” of those? Ultimately, I was looking to create a binary string of 1s and 0s at first, but when I got differences of 7 or 5 or 3 (all primes), I wasn’t sure how to treat those.
7 is basically “just a bunch of 1s” (1+1+1+1+1+1+1), so should I just add “1111111” to the binary string?
Or, because I’m trying to create a binary string, do I use the binary representation of 7, which would be 00110111?
Or is that totally off and I need to use the actual interval between the 2 notes?
I began to consider the “target audience” and my lean moved more toward counting the steps between the notes. After all, this would have needed to be created by someone who was a talented musician/composer (a far better one than myself), so I would assume they’d count in a “musical” way.
The two notes being played in this highlighted (yellow) dyad are F and A. The interval between these notes is a sixth. Is this the way I should extract values?
Now I’m left with: “does sixth mean I use the number 6, the binary representation of 6? Or, because this is Cicada 3301, do I use the 6th prime?“
Basically it’ll boil down to me coming up with a few different approaches and then “brute forcing” my way through each one to see if it’s viable.
A couple years back, I wrote a script to feed in passwords to MP3Stego. Certain passwords produced some crazy output from Instar Emergence. When running this by the Cicada solvers “community”, they immediately dismissed it and didn’t need to know anything else.
“MP3Stego has never been used before in the previous puzzles.”
When I tried to point out that the image to solve the runes of Liber Primus (2014 puzzle) was found in the 2013 puzzle. If everyone would have been so dogmatic and said “2013 is solved–Liber Primus is its own puzzle,” then zero progress would have been made. I was hoping they could ditch the dogma and see that new approaches needed to be taken as they had all been stuck for years without any real “new” breakthroughs.
So, that brings me back to the dyads. If you followed along or did any solving on the old puzzles, you’d recall there was indeed musical puzzles. The MIDI puzzles were good primers to this dyad encoding I believe. The MIDI puzzles produced a string that then could be fed into a substitution cipher solver to finally end up with a secret message!
I think that Liber Primus will depend on the 2 MP3 files. At first, I thought I was trying to create a binary string from the differences between the tabbed notes. However, the more I dug in, the more I started to lean toward creating a numerical string of prime numbers based on the intervals between the dyads.
I believe that dyads were used to encode a string, but I still need to brush up on my music theory to help determine the proper path to take for solving.
So, until then…