Задача выполнить итерацию усеченного хэша md5

#loops #hash #truncated

Вопрос:

мне нужна помощь в решении этой задачи программирования.

«С помощью этой строки: NzQwZjgxMTU2YzI3NjM1NA==

MD5 хэширует его и удаляет последние 16 символов хэша. Повторите этот процесс 50 раз и отправьте окончательный усеченный хэш ниже».

Какой язык я могу использовать? Кто — нибудь может объяснить мне, что нужно делать со сценарием?

Комментарии:

1. md5 это алгоритм хэширования, поэтому в принципе можно использовать любой язык. Затем вам нужно обрезать его, удалив 16 последних символов и повторно хэшируя снова 50 раз

2. да, чувак, я знаю это, по этой причине я прошу код сделать это

3. hash = ''; for (i = 1; i <= 50; i ) {hash = substring(md5(input), -16)}

4. «Какой язык я могу использовать?» — любой доступный. Что вы пробовали до сих пор? Где ты застрял?

Ответ №1:

 import hashlib

originalhash = 'MGE0ZjFmODRhMTQ0ZTJjYQ=='
print(originalhash)
previous = hashlib.md5(original.encode('ascii')).hexdigest()
print(previous)

for i in range(50):
        text = previous[0:-16]
        print(text)
        nexthash = hashlib.md5(previous.encode('ascii')).hexdigest()
        print(nexthash)
        previous = nexthash