----- Original Message ----- 
From: "Castanaro, Bob" <[EMAIL PROTECTED]>
To: "RBASE-L Mailing List" <[email protected]>
Sent: Friday, April 04, 2008 7:06 PM
Subject: [RBASE-L] - Re: Random has order ?


I think RBTI needs to step in on this sooner or later and advise.  I'm sure 
they are probably looking at this now.  Maybe I am wrong, but I thought the 
random function generator had some sort of trigger based on the system time it 
was started.  I know that many, many years ago, I and some others had trouble 
with repeating random series, but I thought there was a fix in one of earlier 
versions.

I am about to rewrite a random drug screening program based on this function 
and I need to count on it to be truly random, each time it is run.

 That is the reason for GUIDs.  When it Absolutely has to be random.  Would 
that Help?

Bob C

-----Original Message-----
From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of MikeB
Sent: Friday, April 04, 2008 6:58 PM
To: RBASE-L Mailing List
Subject: [RBASE-L] - Re: Random has order ?

A Further test of 200 passwords produced 1 duplicate. YMMV


----- Original Message -----
From: "MikeB" <[EMAIL PROTECTED]>
To: "RBASE-L Mailing List" <[email protected]>
Sent: Friday, April 04, 2008 6:51 PM
Subject: [RBASE-L] - Re: Random has order ?


> Frank,
>  Try this using the new DLCALL functions in RBASE
>
>
> {These two must be declared only ONCE in an RBASE SESSION}
>  STDCALL function 'GetTickCount' () : integer
>  STDCALL void 'Sleep' (integer)
> {
>  "We get the last two numbers from the TickCount, test if they are between
>   Ascii 65 and 90, if success, then add to String vPASS.  If String is
>   vPassLength, then write to file.  It takes a couple of minutes to
>   generate 80 passwords. In my test, there were no Dupes.  I used RBASE
>   RANDOM function to make the Sleep API vary so the GetTickCount would be
>   more random as well.
> }
>
>
> IF (chkvar('vsleep')) = 0 THEN
>  SET VAR vsleep INTEGER = 100
> ENDIF
>
> Set var vMaxWordsToGen integer = 80
> Set var vPassLength integer = 8
> SET VAR vret INTEGER = 0
> SET VAR i INTEGER = 0
> SET VAR vpass TEXT = NULL
> SET VAR vgettick INTEGER = NULL
> SET VAR vtext TEXT = ''
> SET VAR vascii INTEGER = 0
> OUTPUT holdrand.csv
>
>
> WHILE i < .vMaxWordsToGen THEN
>  SET VAR vsleep = (RANDOM(50))
>  SET VAR vret = (dlcall('Kernel32','Sleep', vsleep))
>  SET VAR vgettick = (dlcall('Kernel32','GetTickCount'))
>  SET VAR vtext = (CTXT(.vgettick))
>  SET VAR vascii = (INT((SGET(.vtext ,2, (SLEN(.vtext)) - 1))))
>  IF vascii BETWEEN 65 AND 90 THEN
>    SET VAR vpass = (.vpass + (CHAR(.vascii)))
>  ENDIF
>  IF (SLEN(.vpass)) = .vPassLength THEN
>    WRITE .vpass
>    SET VAR vpass = ''
>    SET VAR i = (.i + 1)
>  ENDIF
> ENDWHILE
> OUTPUT SCREEN
> RETURN
>
> ----- Original Message -----
> From: "Frank Taylor" <[EMAIL PROTECTED]>
> To: "RBASE-L Mailing List" <[email protected]>
> Sent: Friday, April 04, 2008 3:59 PM
> Subject: [RBASE-L] - Random has order ?
>
>
> I created a password generator the other day using the Random command as such
>
>      SET VAR gen1 = (RANDOM(33))
>      IF gen1 BETWEEN 1 AND 24 THEN
>            SET VAR gen2 = (RANDOM(2))
>      ENDIF
>
> The code loops 8 times and uses the values of gen1 and gen2 with a case
> statement to make an 8 character password. The first random generated gives
> me either a letter or number and the second random generator gives me upper
> or lower case if it is to be a letter (I do not use L,O or Zero in case you
> are wondering)
>
> I used the code to generate 7 passwords yesterday, then today I used the code
> to generate 8 more passwords.. When I went back to look at them, the first 7
> passwords I created today, were the exact same and in the same order as the
> Seven I created yesterday.  I went out of RBase and came back in and sure
> enough it started over..  So can I assume that Random is not really random
> but has order ?  Anyone have a suggestion as a work around, maybe using a
> system variable in the mix ?
>
> Using RB7.6  ver 7.6.3.30321
>
>
> n  Frank
>
> Frank Taylor - Information Systems Administrator
> F.J. O'Hara & Sons, Inc - Araho Transfer Inc.
> Boston, MA - Rockland, ME - Miami, FL
> Direct Dial - 617-790-3093
> email: [EMAIL PROTECTED]
>
>
>


Reply via email to