Преобразуйте строку в байты, вычислите hashlib.md5(...).hexdigest() и добавьте строковый результат в список через append(). MD5 не подходит для хранения паролей и защиты от коллизий.
Сохранить MD5‑хеш в список
Преобразуйте строку в байты, вычислите hashlib.md5(...).hexdigest() и добавьте строковый результат в список через append(). MD5 не подходит для хранения паролей и защиты от коллизий.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Дан строковый ключ key = "foo". Нужно вычислить его MD5‑хеш и добавить полученный результат в массив.
import hashlib
key = "foo"
Ответ
Преобразуйте строку в байты, вычислите hashlib.md5(...).hexdigest() и добавьте строковый результат в список через append(). MD5 не подходит для хранения паролей и защиты от коллизий.
Пример для указанного ключа:
import hashlib
key = 'foo'
hashes = []
hashes.append(hashlib.md5(key.encode('utf-8')).hexdigest())
print(hashes)
Результат — ['acbd18db4cc2f85cedef654fccc4a4d8']. hexdigest возвращает 32 шестнадцатеричных символа, в отличие от digest, возвращающего 16 байт. Кодировка должна быть одинаковой у всех участников, вычисляющих хеш. Это пример некриптографического применения: для проверки безопасности или хранения паролей выбирают другие, соответствующие задаче механизмы.