- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
int enctypex_decoder_rand_validate(unsigned char *validate) {
int i,
rnd;
rnd = ~time(NULL);
for(i = 0; i < 8; i++) {
do {
rnd = ((rnd * 0x343FD) + 0x269EC3) & 0x7f;
} while((rnd < 0x21) || (rnd >= 0x7f));
validate[i] = rnd;
}
validate[i] = 0;
return(i);
}
sayidandrtfm 01.08.2012 06:50 # +1
added '+ 0x269EC3'
bormand 01.08.2012 08:57 # +5
> ~time(NULL)
time(NULL) недостаточно случаен для сидирования им этого говногенератора? ;)
P.S. Если не туплю, то данный генератор создает не более 128 различных идентификаторов (а, скорее всего, намного менее).
roman-kashitsyn 01.08.2012 10:44 # +2
bormand 01.08.2012 11:02 # +2
sayidandrtfm 01.08.2012 10:54 # +2
N & 0x7f = [ 0 ..127]
defecate-plusplus 01.08.2012 10:56 # +2
sayidandrtfm 01.08.2012 10:59 # +1
Или не всё срезали...
bormand 01.08.2012 11:10 # 0
wvxvw 01.08.2012 11:10 # 0
bormand 01.08.2012 11:13 # 0
P.S. Про 128 я конечно ступил... Код генерит не более 94 различных восьмисимвольных строк.