L’absence
Here we are given the following text:
1
2
3
4
5
6
7
8
bonsoir, désolé pour le déranGement. je n'ai pas pu Y aller hier pour l'épreuve de barres asyMétriques. désolé si je N'ai pas été à lA hauteur de voS attenTes, je feraIs mieux aux épreuves publiQUes de dEmain.
bises.
franciS vigenere.
ps :
Kl qsfwm, r'qc hm s'ynfefmmh wej rc peahxik xi eg lmgigg i uni voqevmmem fuv vkq srnk jcy psmryurnl yiyli hkppee ehv fuck ! Syuf ahkmi orw rmztuw kmsbijifq, w'aa xvvcr ha jq eelkwkpij. Rc hbiub : 404KJZ{RwBmxrzHtaBywVxybramqAlj}
As we can see, there are a lot of uppercase letters and the person that sent the letter is franciS vigenere
. This helps us guess that the PS
section is encrypted using the Vigenere cipher.
The basic idea of the Vigenere cipher is that we are going to do a shift of letter that is based on the key. But we don’t have any key here??? Don’t we ?
I split the clear text into a file called “message” and ran the following code to get the key (concatenation of all the uppercase letters):
1
2
3
4
5
6
7
8
f = open("message")
key = ""
for letter in f.read():
if letter.isupper():
key += letter
print("[+] KEY : ", key)
f.close()
We get:
Now we can use online tool to decode the message:
So as we can see, the flag is 404CTF{NeVolezPasLesDrapeauxSvp}
.