ГПСЧ ID:22574 |
Чт, 15 мая 2008 09:48 [#] [») |
|
|
Знатоки, не подскажете, насколько сложно взломать ГПСЧ?
Например, зная последовательность из N чисел (состоящей хотя бы из 0 и 1) предсказать с определенной степенью вероятности, большей 50%, следующее число?
|
|
|
|
|
Смотря какой. Некоторые можно.
Но ты же всё равно не знаешь, какой алгоритм использует казино...
|
|
|
|
|
А где можно почерпнуть информацию об алгоритмах взлома ГПСЧ?
|
|
|
|
|
Ищи в книжках по криптографии. Еще Д.Кнут - Искусство программирования - там есть про линейный конгруэнтный генератор, который обычно встроен в языки программирования.
Но вряд ли в казино сидят такие дураки, чтобы использовать стандартный генератор.
В лото.ру на сайте написано, что они вообще не используют ГПСЧ, у них железка генерирует абсолютно случайные числа.
|
|
|
Re: ГПСЧ ID:22636 ответ на 22574 |
Чт, 29 мая 2008 07:14 («] [#] |
|
|
var
RandSd:LomgWord;
Function Rand(Range,A,C:LongWord):LongWord;
asm
{ ->EAX Range }
{ <-EAX Result }
PUSH EAX
MOV EAX,A
IMUL RandSd
MOV EDX,EAX
ADD EDX,C
MOV RandSd,EDX
POP EAX
MUL EDX
MOV EAX,EDX
end;
Пример ГПСЧ который используется в языках программирования.
C++ Pascal PHP(rand)
RandSd-начальный вектор инициализации, как првило текущее время в МС
А,С - коэффициэнты для разных языков программирования разные
<a rel="nofollow" href="http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%" target="_blank">http://ru.wikipedia.org/wiki/%D0%9B%...D%D0%B5%D0%B9% D0%BD%D1%8B%D0%B9_%D0%BA%D0%BE%D0%BD%D0%B3%D1%80%D 1%83%D1%8D %D0%BD%D1%82%D0%BD%D1%8B%D0%B9_%D0%BC%D0%B5%D1%82% D0%BE%D0%B 4</a>
Зная алгоритм ГПСЧ и зная время, можно сгенирировать точно такую же последовательность
|
|
|