Взлом Vigenere cipher — различия между версиями
Материал из InformationSecurity WIKI
Drakylar (обсуждение | вклад) (Новая страница: « =Где часто используется= =Скрипты= ==python== ==perl== ==ruby== ==bash== ==C/C++== =Утилиты= =Райтапы= =С…») |
Drakylar (обсуждение | вклад) м (→python) |
||
Строка 7: | Строка 7: | ||
==python== | ==python== | ||
+ | <code lang="python"> | ||
+ | def encryption(plaintext, keyword): | ||
+ | txt_len = len(plaintext) | ||
+ | keyword *= txt_len // len(keyword) + 1 | ||
+ | keyword = keyword[:txt_len] | ||
+ | encoded = "" | ||
+ | for c in range(txt_len): | ||
+ | newchar = ord(plaintext[c]) + ord(keyword[c]) - 194 | ||
+ | newchar %= 25 | ||
+ | encoded += chr(newchar + 97) # 97 = ord('a') | ||
+ | return encoded | ||
+ | </code> | ||
==perl== | ==perl== |
Версия 11:55, 1 июня 2016
Содержание
Где часто используется
Скрипты
python
def encryption(plaintext, keyword):
txt_len = len(plaintext) keyword *= txt_len // len(keyword) + 1 keyword = keyword[:txt_len] encoded = "" for c in range(txt_len): newchar = ord(plaintext[c]) + ord(keyword[c]) - 194 newchar %= 25 encoded += chr(newchar + 97) # 97 = ord('a') return encoded