site-accueil-insa/assets/enigmes/crypto.py
2021-07-28 22:03:33 +02:00

63 lines
1.9 KiB
Python

""" Created by Ronan Bonnet
On 23 July 2021, 02:51
Petite énigme pour les Phutures Programmeurs Aixpérimentés
Tip : réécrire le code en version + joli, c'est volontairement moche ;)
Bonus : Difficulté augmentée car j'ai oublié de sauvegarder la première fois que je l'ai fait :(
"""
unknown = "" # Le code que tu cherches se trouvait jadis ici..
key = "" # Je te laisse la trouver, si t'as un doute et que t'avances pas, envoie mp à @ronan.hpp sur Instagram
""" Chiffre un message en utilisant un algorithme fait par mes soins (si vous trouvez le nom de celui-ci je suis preneur)
On se Base sur la table ASCII dans le groupe des caractères Imprimables.
Renvoie le message chiffré
"""
def encode(msg):
res = ""
odd = []
fan = "ventilateur" # C'est Le mot en Anglais
for i in range(len(msg)):
odd += msg[i]
res += chr((sum(ord(ch) - 32 for ch in odd) + ord(key[i % len(key)]) - 32) % 92 + 32 )
return res
""" Déchiffre le message
...J'Ai déjà assez codé pour aujourd'hui, prend le relai !
Renvoie le message déchiffré
"""
def decode(msg):
res = ""
#
return res
"""
Immédiatement les résultats :
1.
Input : askip vous avez fait du Python au lycee
Output : .J>u(\qjZTZ=)RuzRRs*'zedb(e&sTa998/"%fAj
2.
Input : Trouve la clef et le message secret
Output : !<4w0Mh^:=*tOyB0r1UY_G30%X'5:{#>O>-
3.
Input : Je suis gentil, je vous laisse des exemples
Output : s%*k#DV\>*"tS'X]9=q*#oio]4a!yPk+/,#kmT7k$nS
4.
Input : Bon, ok, c'est pas facile...
Output : k'zt3ZdvmWdK4l5.]oGL7qaW>>0c
5.
Input : Mais la clef est simple!
Output : v$rWr::@zm\D6_{xfx=IC*ry
6.
Input :
Output : "9>m%QbQH2+mH,:6x7RR?"6<"U+GL!%QdSJ^VAzO]j5Cp/&^I86 LZ_25cc[9%x_C{DcQ8QSH(!'qH,#IjJ"&zq@zIgT
"""
code = str('"9>m%QbQH2+mH,:6x7RR?"6<"U+GL!%QdSJ^VAzO]j5Cp/&^I86 LZ_25cc[9%x_C{DcQ8QSH(!\'qH,#IjJ"&zq@zIgT')
print(decode(code))