Определить чему равно хэш-значение для строки, если известно что salt статическое
Помогите решить задачу, хочется объяснение услышать Правильный ответ 254
От редактора
Код функции hashCRC на Python:
def hashCRC(arg: str,
salt: str = "",
N: int = 256) -> int:
res = 0
for c in arg:
res += ord(c)
for c in salt:
res += ord(c)
res %= N
return res
Ответы (2 шт):
Автор решения: Pak Uula
→ Ссылка
Эта "контрольная сумма" линейна по параметру salt, то есть
hashCRC("some", salt) - hashCRC("same", salt) == hashCRC("some") - hashCRC("same")
Без учёта соли:
hashCRC("password") == 115
hashCRC("security") == 120
Поэтому hashCRC("security", salt) == hashCRC("password", salt) + 5, то есть 254
Автор решения: HaterCheaters
→ Ссылка
Тут нужно найти salt (раз это константа).
Из таблицы символов они должны давать в сумме 134, в данном случае это CC (латинские).
Нашёл их так:
int_sult = 0
while (115+int_sult) % 256 != 249:
int_sult += 1
print(int_sult)
