karapto
Posted on July 5, 2022
Description
We found this weird message being passed around on the servers, we think we have a working decryption scheme. Download the message here. Take each number mod 37 and map it to the following character set: 0-25 is the alphabet (uppercase), 26-35 are the decimal digits, and 36 is an underscore. Wrap your decrypted message in the picoCTF flag format (i.e. picoCTF{decrypted_message})
Solution
The description shows the encryption with the following rules.
A: 0
B: 1
C: 2
D: 3
E: 4
F: 5
G: 6
H: 7
I: 8
J: 9
K: 10
L: 11
M: 12
N: 13
O: 14
P: 15
Q: 16
R: 17
S: 18
T: 19
U: 20
V: 21
W: 22
X: 23
Y: 24
Z: 25
0: 26
1: 27
2: 28
3: 29
4: 30
5: 31
6: 32
7: 33
8: 34
9: 35
_: 36
Read message.txt
and calculate mod 37.
def decode(number):
r = number % 37
return r
def main():
f = open("message.txt", "r", encoding="UTF-8")
lst = f.read().split()
# print(lst[0])
dec_lst = []
for i in range(len(lst)):
dec_lst.append(decode(int(lst[i])))
print(dec_lst)
if __name__ == '__main__':
main()
All that remains is to decrypt the file according to the rules above.
[17, 26, 20, 13, 3, 36, 13, 36, 17, 26, 20, 13, 3, 36, 1, 32, 1, 28, 31, 31, 29, 27]
→ [R, 0, U, N, D, _, N, _, R, 0, U, N, D, _, B, 6, B, 2, 5, 5, 3, 1]
The flag is R0UND_N_R0UND_B6B25531
. Enclose it in picoCTF{} and submit it.
💖 💪 🙅 🚩
karapto
Posted on July 5, 2022
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.