Connaissez-vous l'Université Youtube d'Atsuhiko Nakata? Récemment, j'ai eu envie de regarder des vidéos intelligentes, Je le vois souvent, mais parmi les nombreuses vidéos, sur le "cryptage" Il y avait quelque chose qui était enseigné.
Si vous ne l'avez pas encore vu, je le recommande vivement. J'ai aimé le regarder même si je n'avais aucune connaissance de la cryptographie. Vous pouvez le voir à partir du lien ci-dessous. https://www.youtube.com/watch?v=7dSVR_zuJJs&t=694s
Donc, dans cette vidéo, il y avait un mot qui m'a vraiment impressionné. alors! Il y avait ** "César Code"! C'était le mot ** w
Pour autant que j'entende l'histoire, l'ordre de l'alphabet est décalé de quelques minutes pour faire une phrase. J'ai découvert que c'était la règle de cryptage.
Par exemple Lorsque le mot pomme est appliqué au code César, il devient "fuuqj".
Quand j'écoutais cette histoire, mon cerveau pensait intuitivement que ce serait difficile à déchiffrer. J'émettais une alerte, mais pour le moment, je suis aussi ingénieur.
Je me demandais comment le faire si je l'écrivais avec ce programme de cryptage réel, alors je l'ai fait. C'était plus facile que prévu. .. ..
Après avoir fait cela, j'ai remarqué que l'alphabet est Il y en a 27 au total. En d'autres termes, seuls 26 modèles peuvent être utilisés pour le chiffrement. Il y a 52 façons, y compris la gauche et la droite. J'ai réalisé que cette méthode de cryptage est de niveau assez bas. .. .. ..
Il semble y avoir une méthode plus compliquée de cryptage César, La méthode de cryptage qui décale simplement l'ordre alphabétique de N J'ai trouvé mieux d'arrêter.
Je ne l'ai jamais utilisé, À l'avenir, je l'utiliserai pour mes proches. w
import string
#######################################
#Complexe cryptographique César
def decrypt_caesar(encrypt_text, gap=1):
decrypt_text = ''
for c in encrypt_text:
number = string.ascii_lowercase.index(c)
decrypt_text += string.ascii_lowercase[number - gap]
return decrypt_text
encrypt_text = 'fuuqj'
for i in range(len(string.ascii_lowercase)):
text = decrypt_caesar(encrypt_text, i)
print(text)
#######################################
#Code César
def encrypt_caesar(decrypt_text, gap=1):
encrypt_text = ''
for c in decrypt_text:
number = string.ascii_lowercase.index(c)
search_text = string.ascii_lowercase*2
encrypt_text += search_text[number + gap]
return encrypt_text
#Code César
print(encrypt_caesar('apple', 5))
Recommended Posts