Ответ на пост «Как сын в игру играл»5
Как то раз любовница попросила меня объяснить ей как работает биткоин- в деталях. Начал объяснение- дошёл до хэш коллизий. Начал объяснять на примере ГТА СА
В этой игре резервируется сегмент памяти, в котором хранится последние 28 нажатий на кнопки клавиатуры. Игра последовательно применяет хэш функцию к 6-28 символам. Последовательно- сперва к 6, потом к 7, потом к 8, пока не дойдёт до 28 и тд
Итоговое значение хэша игра та сверяет со списком хэшей ассоциированных с активацией чита которые хранятся в памяти. Если есть совпадение- чит активируется.
Однако есть нюанс. Игра использует примитивное 32 битное хэширование. Это значит что количество хэшей которое может быть создано равно 2 в степени 32, что совсем не много.
Количество же комбинаций нажатия на кнопки клавиатуры игроком- значительно больше чем в 2 степени 32, в несколько порядков раз больше.
Это приводит к хэш коллизиям- когда нажатие разных кнопок приводит к созданию одинакового хэша.
Например чит hesoyam- ровно ничего не значит в английском языке. Ибо такого слова в английском нет. Оригинальная комбинация для вызова этого чита- фраза i need some help(надо в игре писать слитно). Однако в силу слабости алгоритма хэширования, именно hesoyam была найденна первее чем i need some help.
Более того- из за просчётов на стадии проектирования игры, ряд читов осуществимо вызвать вообще не имея умысел читерить, только перемещаясь по городу или катаясь на машине\мотоцикле и нажимая на кнопки W A S D - как минимум точно доказано, что чит на вызов боевого вертолёта срабатывает если вписать DASDAWAAWSSWWAW
Возвращаясь к биткоину- логический принцип применяется и в нём, только разница что он используется 256 битное хэширование, а значит что максимальное число комбинаций будет 2 в степени 256. Это даёт в несколько квадрилионов раз комбинаций больше, чем алгоритм в ГТА СА- и за время работы биткоина, случаев коллиций зафиксированно не было, однако чисто теоретически, их появление вполне вероятно= примерно вероятность такая же как падение метеорита который погубит всё живое на планете.
Любовница в конце спрашивает- а что такое читы? Я сижу и думаю- как мне реагировать на этот вопрос
В голову приходит картинка на фото ниже:
Говорю ей- у тебя в детстве компьютера не было? Та говорит- был( любовница на пол года моложе)
Я спрашиваю- почему тогда не играла в GTA SA? Та на этот вопрос не смогла ответить
