Это ещё один пример обратной задачи.
Для задания выберите себе пару. Придумайте свою хэш-функцию в виде:
def my_hash(s):
a = ... # ваш код
return aЗатем поменяйтесь Python-кодом с партнёром по заданию, попытайтесь “взломать” его функцию, т.е. придумайте обратную функцию. Такая функция по хэшу a должна угадывать один ключ s или все его возможные варианты.
def hack_hash(a):
s = ... # ваш код
return sВ программировании, хэш-функции такие функции, которые переводят текст в некоторое число таким образом, что по числу текст практически невозможно восстановить (даже приблизительно!). Хэш функции используются в задачах шифрования.
В Python это реализовано с помощью функции hash(s). Заметьте, что для строк разной длины хэш имеет одинаковую длину.