Всё очень просто: перед началом каждой рулетки покупателю показывается номер рулетки и хэш рулетки, чтобы по ним он мог убедиться в её честности. После того, как рулетка будет разыграна, покупателю показывают строку для проверки, она выглядит так: <номер_рулетки>.<загаданное_число>.<16_цифр> (например, если у нас номер рулетки 24, а загаданное число - 56, то строка будет выглядеть примерно так: 24.56.1283759273950901).
Теперь к самому взлому - хэш, который нам показывают в начале игры, это ничто иное, как md5 хэш от строки для проверки. Т.к. мы изначально имеем номер рулетки, то для взлома нам достаточно перебрать все строки вида <номер_рулетки>.хх.хххххххххххххххх (где x - любая цифра), и среди них найти такую, md5 хэш которой совпадает с хэшем, который нам показывают перед игрой. Тогда число между точками посередине будет выигрышным номером в этой рулетке.
Как это сделать можешь догадаться сам, дальше всё ежу понятно.
Редактировался Lamarr (2019-08-13 18 ч.)