Quand j'ai commencé CTF, quelque chose appelé le cryptage César est sorti, donc un traitement de décryptage était nécessaire. Vous pouvez le faire manuellement, mais c'est un programme! Cela peut aussi être une rééducation! Alors je l'ai écrit immédiatement. Ma machine n'avait qu'un environnement de développement Python, alors allez-y avec Python!
Pour le déchiffrer, vous devez savoir par quel type d'algorithme le code a été généré. Le code César est généré en décalant les caractères de 3 caractères. Comme c'est simple!
Tout d'abord, le cryptage. Décale le texte brut caractère par caractère avec la touche (nombre) spécifiée. Le cas étant différent, cette fois nous n'utiliserons que des alphabets. Il y a 25 lettres anglaises, alors faites attention à vous retourner. Cryptez la chaîne de caractères appropriée "wjrslairznb"!
def crypt(plainStr, shiftInt):
resultStr = ""
for char in plainStr:
if ord(char) + shiftInt > ord('z'):
resultStr = resultStr + chr(ord(char) + shiftInt - 26)
else:
resultStr = resultStr + chr(ord(char) + shiftInt)
print('crypt:' + resultStr)
Résultat d'exécution
Le déchiffrement était simplement calculé à l'envers ...
def decrypt(cryptoStr, shiftInt):
resultStr = ""
for char in cryptoStr:
if ord(char) - shiftInt < ord('a'):
resultStr = resultStr + chr(ord(char) - shiftInt + 26)
else:
resultStr = resultStr + chr(ord(char) - shiftInt)
print('decrypt:' + resultStr)
Résultat d'exécution Cela semble être plus facile et plus simple ...
Indisponible. Vulnérable! !! Puisqu'il s'agit d'un code créé dans la Rome antique, il doit avoir été valide dans le passé. Il y a une histoire en cryptographie.
En fait, cela fait un moment que je n'ai pas de programme, et même si j'ai un environnement Python, je n'y ai pas touché et c'était très amusant. Il existe des tonnes de programmes comme celui-ci si vous recherchez sur Google, mais j'aime les écrire moi-même d'abord, puis regarder le code de génie et faire correspondre les réponses plus tard.
Recommended Posts