As summer break is coming up, you have started to misbehave in school, getting sent to detention quite often.

On June 20th, something interesting happened, and made detention a little more fun. You noticed that one of the tiles on the floor was loose, and that a small piece of paper was sticking out. When your teacher left for his daily refilling of his coffee, your curiosity got the best of you, and you hopped out of your seat and took the piece of paper. Later at home you inspected the piece of paper. On it were the words:

Yusiecnjhuqouqornl pljgcatpnokizvtuqoxtr'yus jfduqotpn'zvt migkgezvt vrpgcaokijfd kgetpnuqoawumignjh okitpn someay uqovrpokitpnokiuqotpn. - Somxtr. Pljkgetpnqmkokitpnyus

You have no idea what it means, and decide to investigate further.

Worrying, as tomorrow is the last day before school ends, you spend all night thinking and analyzing, but come up with nothing. You go to school the next day, make sure you get in detention, and then grab the last message before summer. This message says:

Yvsifcnkhurourorol pmjgdatqnolizwturoxur'yvs jgdurotqn'zwt mjgkhezwt vspgdaolijgd khetqnuroaxumjgnkh olitqn spmeby urovspolitqnoliurotqn. - Spmxur. Pmjkhetqnqnkolitqnyvs

You spend the first week of summer constantly studying the notes, but still can't figure it out. In August, fed up with not knowing, you ask your friend in summer school to sneak in and grab you the notes. The note he gives you on August 6th reads:

Ayskicpnhwuowuotrl rpjigavtnqoibztwuozxr'ays ljdwuovtn'bzt omgmkebzt xvpigaqoiljd mkevtnwuocauomgpnh qoivtn usmgey wuoxvpqoivtnqoiwuovtn. - Usmzxr. Rpjmkevtnsqkqoivtnays

Looking at the old and new notes with fresh eyes, you solve the puzzle.

What do each of the messages say?

After revisiting the messages you realize two things that you should've seen earlier that would've helped you. One is fairly obvious and one is more obscure. These things are:

Hint #1:

The messages are all of exact length and have the exact same punctuation, meaning they are all likely the same message, but coded in a different way.

Hint #2:

The messages rely on the date they were written to be solved.

Solution with explanation (In response to user45266 and all users who answered):

The reasoning behind this cipher was for me to test my Java programming skills. I wrote a program to encode and decipher text, and this was the cipher that I used. It works like this:

Step 1:

Take the input string of characters, and turn each letter into three of itself (e.g. "a" to "aaa", or "f" to "fff"), avoiding punctuation and numbers and all non-letters. This step is just to make the output longer than the input to create confusion (although not very well).

Step 2:

Take the date of the message (MM/DD/YYYY) and add the individual numbers together (e.g. June 21st, 1997 = 06/21/1997 = 0+6/2+1/1+9+9+7 = 6/3/26)

Step 3:

Rotate the first letter by the first number, the second by the second, and so on (e.g. aaa = gda, fff = lif)

  • 1
    $\begingroup$ Chech the solution by Nicholas B! Was that intentional? Are the two solutions both intended? Is one a consequence of the other?! $\endgroup$
    – user45266
    Commented Apr 3, 2019 at 17:10

4 Answers 4


I think I found the full pattern. Maybe MetaZen got it too, but his response doesn't seem to describe it fully to me.

I noticed that in the first text every third letter gives the ROT-6 of the message, while every third letter offset by one gives the ROT-2 of the message, finally every third letter offset by two gives the ROT-0 of the message.

Similarly the second text has ROT-6/3/0 and the third ROT-8/6/0.

All three then inherit appropriate sentence casing only on the first rotational shift.

Therefore I conclude that:

The message is "School janitor's don't get paid enough in my opinion. -mr. Jenkins."

And the encoding is: Rotate each letter by the month of the year, then the day of the month, then the unrotated string. Interleave the three. Thus on January 2nd the message should be:

ROT-1: tdippm kbojups't epo'u hfu qbje fopvhi jo nz pqjojpo. -ns. kfoljot.

ROT-2: uejqqn lcpkvqt'u fqp'v igv rckf gpqwij kp oa qrkpkqp. -ot. lgpmkpu.

NO-ROT: school janitor's don't get paid enough in my opinion. -mr. jenkins.

Full: Tusdecijhpqopqomnl kljbcaopnjkiuvtpqostr'tus efdpqoopn'uvt higfgeuvt qrpbcajkiefd fgeopnpqovwuhigijh jkiopn nomzay pqoqrpjkiopnjkipqoopn. -Nomstr. Kljfgeopnlmkjkiopntus.

  • $\begingroup$ The spoilers didn't work properly with newline formatting. Fixing now. $\endgroup$
    – LambdaBeta
    Commented Apr 3, 2019 at 21:09
  • $\begingroup$ This is the best answer. I didn't even see that the actual message was visible in a rot-0 sequence. $\endgroup$
    – MetaZen
    Commented Apr 3, 2019 at 21:48
  • $\begingroup$ In all honesty it’s not a very good cipher! I wrote a program to encode text a year and a bit ago when I first got into programming with Java, so the cipher itself isn’t very good. I just posted it on here to see how people would solve it. I’m going to add the “proper” solution (reverse engineering how my program encodes the text) on my question. $\endgroup$
    – user58307
    Commented Apr 4, 2019 at 4:56

I read

School janitor's don't get paid enough in my opinion. -mr. Jenkins.


I actually don't understand hint #2. It doesn't seem to be relevant. I just read every third letter of the text.

  • 5
    $\begingroup$ OH MY GOD! How does that work?! There are two ways to do it?! +1! $\endgroup$
    – user45266
    Commented Apr 3, 2019 at 17:09
  • 2
    $\begingroup$ Well, hover me, which is applied to hover me is not a very strong cipher ;) Sorry for bad formatting, "spoilers" only work this way in comments. You should see it in the bottom left/right corner of your screen $\endgroup$
    – DBX12
    Commented Apr 4, 2019 at 6:55
  • $\begingroup$ Well, you can do hover me by saying [hover me](/. "put spoiler text here"). $\endgroup$ Commented Apr 4, 2019 at 17:06

The message says:

school janitor's don't get paid enough in my opinion. - mr. jenkins

To decode:

comparing first two lines, found the pattern to remove the first and last letter from each word, and then skip one, remove two from each word. Then do a +24 rotation cipher on what is left

  • $\begingroup$ You got it! It's a bit of a messy cipher I made a year and a bit ago when I first got into programming, and there's more than one way to figure it out, but still fun to see people solve! $\endgroup$
    – user58307
    Commented Apr 3, 2019 at 13:52
  • 5
    $\begingroup$ People who use apostrophes to form plurals have trouble advancing to white-collar jobs.      :-)     ⁠ $\endgroup$ Commented Apr 3, 2019 at 21:19
  • $\begingroup$ @PeregrineRook apologies! I wrote the puzzle at 2:00 in the morning and didn’t pay attention to grammar I guess :( I never forget the syntax in my programming though and that’s all that matters to me :) $\endgroup$
    – user58307
    Commented Apr 4, 2019 at 4:54

I think the puzzle says:

School janitor's don't get paid enough in my opinion. -mr. Jenkins.


If you notice that the third alphabet is same in the three codes. That is ,it is something fundamental, doesn't change with dates and so contains the code. The other alphabets also if you see, hold a definite relation. For the first two codes, each alphabet, in second code follows 010, 0 means same , 1 means one alphabet ahead. So this actually follows from relation from the dates(as mentioned in the question). Similarly,the third code is follows 230 from the second code. is, third alphabet is same. So it is the third alphabets extracted which reveals the code!

  • $\begingroup$ Hahah! $(+1)$: when I read your answer, I thought it said (ROT13) Fpubby wnavgbe'f qba'g trg YNVQ rabhtu va zl bcvavba. -ze. Wraxvaf. $\endgroup$
    – Mr Pie
    Commented Apr 3, 2019 at 11:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.