thanks for this thesis on the randomizing of rebol Alan!

another tidbit of information that wasn't obvious to realize!


-MAx

----- Original Message -----
From: "alan parman" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Saturday, March 20, 2004 10:08 PM
Subject: [REBOL] Notes on seeding 'random/seed (long)


>
> Here are some things I found out will working on 'random/secure and
'random/seed that may be of help to others.
>
> I wanted to completely utilize the time provided by 'now/precise as the seed
for 'random/seed.
> (for some cryptography related scripts)
>
> (the following messages are from the escribe archives and console output is
from view 1.2.5.3.1
>
> >From an earlier question on using 'random Joel Neely wrote:
>  Date: Thu, 22 Aug 2002 15:09:45
>
>  "The documentation should state what types of values are acceptable
>  as seeds.  I believe that you need to restrict yourself to date!,
>  time!, or integer! values for legitimate seeds."
>
> And Frank Sievertsen wrote:
>  [REBOL] Re: True Random
>  Date: Mon, 20 Aug 2001 00:09:35
>
>  Try this:
>    random/seed checksum form now/precise
>
>  CU,
>  Frank
>
> With Petr Krenzelok adding:
>  Date: Mon, 20 Aug 2001 00:32:38
>
>  you can even use checksum/secure ....
>
>  -pekr-
>
>
>
> But please observe the following...
>
> It appears that 'random/seed seeded with time ('now/precise) only seeds to the
second! ...
>
> randomize-series: func [series][
>   random/seed now/precise
>   random/secure series
> ]
>
> >> loop 10 [print [now/precise randomize-series "12345"]]
> 15-Jan-2004/12:20:06.968-5:00 14532
> 15-Jan-2004/12:20:06.968-5:00 14532
> 15-Jan-2004/12:20:06.968-5:00 14532
> 15-Jan-2004/12:20:06.984-5:00 14532
> 15-Jan-2004/12:20:06.984-5:00 14532
> 15-Jan-2004/12:20:07-5:00 13524
> 15-Jan-2004/12:20:07-5:00 13524
> 15-Jan-2004/12:20:07.015-5:00 13524
> 15-Jan-2004/12:20:07.015-5:00 13524
> 15-Jan-2004/12:20:07.015-5:00 13524
>
> ... as you see the randomized string only changes with the second.
>
>
> Changing the time to an integer won't work ...
>
> >> loop 10 [print  [now/precise to-integer now/time/precise]]
> 15-Jan-2004/12:13:32.953-5:00 44012
> 15-Jan-2004/12:13:32.968-5:00 44012
> 15-Jan-2004/12:13:32.968-5:00 44012
> 15-Jan-2004/12:13:32.968-5:00 44012
> 15-Jan-2004/12:13:32.984-5:00 44012
> 15-Jan-2004/12:13:32.984-5:00 44012
> 15-Jan-2004/12:13:33-5:00 44013
> 15-Jan-2004/12:13:33-5:00 44013
> 15-Jan-2004/12:13:33-5:00 44013
> 15-Jan-2004/12:13:33.015-5:00 44013
>
> ... as you can see that the integer changes only with the second.
>
> Also, note that I only changed the time (not the date) to integer, because ...
>
> >> to-integer now/precise
> ** Script Error: Invalid argument: 15-Jan-2004/12:30:15.734-5:00
> ** Where: to-integer
> ** Near: to integer! :value
>
> ... thus not using the date portion in the potential seed.
>
> You cannot use checksum/secure on the time because ...
>
> >> random/seed checksum/secure form now/precise
> == {îen|^E?^A"d¦-Âê/Ì^K^G¬Ñý}
>
> ... and ...
>
> >> seed: checksum/secure form now/precise
> == #{70C9F0D1D65FD88B6093DF38FD972ABCA56724B3}
> >> random/seed seed
> == "<`$-p*Éß¼gس_Ö¥ð8ý"Ñ"
> >> random/seed seed
> == "g<_ð"ßÉ`¼pýÑÖ¥*$8-³Ø"
> >> random/seed seed
> == "¥`¼Ñ_-p$Øð<ýÖÉ8*"³ßg"
>
> ... returns a value! Thus the "seed" given above is scrambled , but not passed
to random/seed as a seed.
>
> If "checksum/secure form now/precise" was providing a legitimate seed then the
follwing sequences would be identical ...
>
> >> seed: checksum/secure form now/precise
> == #{70C9F0D1D65FD88B6093DF38FD972ABCA56724B3}
> >> random/seed seed
> == ""*g`Ñ<¥¼ð³Ø$É8Ö_-pßý"
> >> loop 5 [print random/secure "12345"]
> 53142
> 31254
> 32514
> 25143
> 32145
> >> random/seed seed
> == "*ýg`ÖѳßpÉ-"$¥Ø_8¼ð<"
> >> loop 5 [print random/secure "12345"]
> 32415
> 13524
> 15432
> 45231
> 43251
>
> .. but they are not the same.
>
> So, to use _all_ of the information provided by 'now/precise (all of
15-Jan-2004/12:34:16.437-5:00) as a seed to 'random/seed you must
>
> random/seed to-integer checksum/secure form now/precise
>
> Now we see all the behavior we expect ...
>
> >> seed: to-integer checksum/secure form now/precise
> == 1264002547
> >> random/seed seed
> >> loop 5 [print random/secure "12345"]
> 45213
> 41325
> 45321
> 35124
> 14523
> >> random/seed seed
> >> loop 5 [print random/secure "12345"]
> 45213
> 41325
> 45321
> 35124
> 14523
>
> Notice that there is nothing returned when providing the seed and that the two
sequences are identical.
>
>
> Other Observations:
>
> 'random/seed will take a date ...
>
> >> seed: now/date
> == 16-Jan-2004
> >> random/seed seed
> >>
>
> .. because nothing is returned.
>
> A 'binary is not a legitimate seed ...
>
> >> seed: to-binary 100
> == #{313030}
> >> random/seed seed
> == "010"
>
> ... because a value is returned.
>
> A 'time is a legitimate seed ...
>
> >> seed: now/time
> == 22:11:03
> >> random/seed seed
> >>
>
> ... but remember that it is good only to the second!
>
> So, you need to do two tests to determine if a seed is legitimate:
>
> 1) Nothing returned from 'random/seed your-seed
> 2) Identical random sequences produced when reseeding from the same seed.
>
> To conclude: apparently only dates, times, and integers are legitimate seeds,
> and one way to use all of a 'now (including both date and sub-second
precision) is to
>
> random/seed to-integer checksum/secure form now/precise
>
>
> Here's a handy function to reseed to sub-second precision ...
>
> randomize: func [
>  {Reseed the random number generator using 'now/precise, or enter a date!
time! integer! argument.}
>  seed [any-type!]
> ][
>  random/seed either value? 'seed [seed][to-integer checksum/secure form
now/precise]
> ]
>
>
> As a bonus (as if this wasn't long enough already!) I have included my
gleanings from the archives about 'random in the following binary!.  Just
decompress.
>
>
> probe decompress useful-stuff-on-random: 64#{
> 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
> }
>
>
>
>
> --
> ___________________________________________________________
> Sign-up for Ads Free at Mail.com
> http://promo.mail.com/adsfreejump.htm
>
>
> --
> To unsubscribe from this list, just send an email to
> [EMAIL PROTECTED] with unsubscribe as the subject.
>

-- 
To unsubscribe from this list, just send an email to
[EMAIL PROTECTED] with unsubscribe as the subject.

Reply via email to