“Sleeping (Marble) Beauty” by TheZeal0t blends light steganography with a classic substitution cipher. The puzzle hints at a ROT47-style shift within the printable ASCII range.
SLEEPING (MARBLE) BEAUTY
File
> Download (4 KB)
SHA1
fb0cc233849c7a83f7536389eec6346f881fbd2c
ROT47 shifts characters within ASCII 33–126. A modulus of 94 keeps output within printable range:
out = 33 + ((ord(c) - 33 + shift) % 94). Try shifts to reveal a clear text.
def rot47(char, shift):
if 33 <= ord(char) <= 126:
return chr(33 + ((ord(char) - 33 + shift) % 94))
return char
def decode_rot47(encoded_str, shift):
return ''.join(rot47(c, shift) for c in encoded_str)
encoded = "( . # ) = u * M 1 * M M M y 1 7 M 5 * 1 7 . & M * # 8 ' M . ' 6 M * ' 4 M s l e e p M b r o A M Z o ?"
for s in range(1, 63):
dec = decode_rot47(encoded, s)
print(f"Shift {s}: {dec.replace(' ', '')}")
flag{Uh-oh---You-should-have-let-her-SLEEP-BRO!-:O}