I primi algoritmi di generazione di numeri casuali per computer come LCG non erano pensati per la crittografia, inoltre si usava spesso un seed relativo al tempo, quando poi si è iniziato a usarli nelle slot e lotterie ci sono stati vari attacchi storici (ricordo un episodio simile trattato in "L'arte dell'intrusione" di Kevin D. Mitnick Condor). Da allora però si è passati a sorgenti di numeri random più sicure e algoritmi CSPRNG, di solito forniti direttamente dal sistema operativo:
Diciamo che puoi riuscire a fregare solo un sistema che fa così (e nemmeno il 100% delle volte):
Ma questo codice dovresti vederlo solo a scuola o dove non conta essere imprevedibili: se è il solitario o prato fiorito ci sta, se ci sono di mezzo soldi anche no
/dev/urandom
per sistemi UNIX-likeBCryptGenRandom
per Windows
Diciamo che puoi riuscire a fregare solo un sistema che fa così (e nemmeno il 100% delle volte):
C:
srand(time(NULL));
// ...
int n = rand();
Ma questo codice dovresti vederlo solo a scuola o dove non conta essere imprevedibili: se è il solitario o prato fiorito ci sta, se ci sono di mezzo soldi anche no