Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #95575

Re: Fair, truly random random number generator

Newsgroups comp.lang.c
Date 2016-11-02 05:06 -0700
References (1 earlier) <37481339-6cc2-4bef-b550-4c868b3159d2@googlegroups.com> <nv0sno$279$1@dont-email.me> <nvbcu4$fjm$1@dont-email.me> <01bf1ea3-23bf-4c46-8d1e-506ad6dbfa81@googlegroups.com> <nvcaac$hni$1@dont-email.me>
Message-ID <4e33e549-09ac-4747-93d2-e36352e3d80a@googlegroups.com> (permalink)
Subject Re: Fair, truly random random number generator
From "Rick C. Hodgin" <rick.c.hodgin@gmail.com>

Show all headers | View raw


On Wednesday, November 2, 2016 at 5:06:55 AM UTC-4, David Brown wrote:
> On 02/11/16 02:57, Rick C. Hodgin wrote:
> > On Tuesday, November 1, 2016 at 8:45:26 PM UTC-4, Chris M. Thomasson wrote:
> >> On 10/28/2016 6:07 PM, Chris M. Thomasson wrote:
> >>> On 10/28/2016 7:14 AM, Rick C. Hodgin wrote:
> >>>> On Friday, October 28, 2016 at 8:31:47 AM UTC-4, Mr. Man-wai Chang wrote:
> >>>>> Anyone got an existing and truly random random number generator function
> >>>>> for me to copy? :)
> >>>>
> >>>> There are no such creations.  It's impossible in a software algorithm to
> >>>> create a truly random sequence without having truly random input.
> >>>
> >>> For fun, take a look at:
> >>>
> >>> https://groups.google.com/d/topic/comp.lang.c++/7u_rLgQe86k/discussion
> >>> (read all please...)
> >>>
> >>> Is a mouse move a random event? How about a key press?
> >>>
> >>> I not saying this race infested thing I am messing around with is
> >>> random, I am saying its hard for it to hit a set period.
> >>>
> >>
> >> Did you take a look at my code Rick?
> > 
> > No.  But to answer your question, any input that's not from an algorithm-
> > generated source can be considered random input.
> > 
> 
> The number of cups of coffee I drink a day does not come from an
> algorithm, but it would be a very poor source of random input.
> 
> It is accurate to say that any sequence generated from a /deterministic/
> algorithm will not be random - but the converse is not correct.

From the point of view of the algorithm, the input coming in will be
random.  It has no way of predicting in advance what that number will
be.

The degree to which a particular random number source represents
sufficiently randomized data across the spectrum range ... that's a
completely different matter.

I remember the VIA C7 family of CPUs with their on-board random number
generators.  They would produce numbers heavily skewed toward 0 and 255
when they began to heat up 5C to 10C beyond the normal operating temps.
There was also a slight skew depending on how fast you sampled the value
through its "read random data" assembly instruction.

I had discussions with someone who worked at VIA at the time about this
and their position was (paraphrased), "it's still sufficiently random
because the sequence cannot be reproduced, and is truly random, it's
just skewed toward those particular values in those heat ranges."

> (Non-deterministic random algorithms are easy to devise - "roll a die,
> and write down the number it shows" is an algorithm for picking a number
> between 1 and 6.)
> 
> There are many pseudo-random number generator algorithms that give
> excellent non-determinism and very flat frequency distributions for long
> sequences.  Often they give much more useful sources of "randomness"
> than more "true" random sources such as the movement of mice (living
> mice or computer mice), because such external sources have complex
> distributions that are hard to compensate.
> 
> So when you want really good random sequences, you use the least
> significant bits of a "natural" source to seed and occasionally re-seed
> your PRNG.  That's what Linux does with /dev/random, and it is also what
> cpu manufacturers do when they have a "hardware random number generator".

"Hey.  That's great." :-)

Best regards,
Rick C. Hodgin

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Fair, truly random random number generator "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-10-28 20:31 +0800
  Re: Fair, truly random random number generator "Osmium" <r124c4u102@comcast.net> - 2016-10-28 07:48 -0500
    Re: Fair, truly random random number generator "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-10-28 21:07 +0800
      Re: Fair, truly random random number generator Richard Heathfield <rjh@cpax.org.uk> - 2016-10-28 14:21 +0100
        Re: Fair, truly random random number generator Gareth Owen <gwowen@gmail.com> - 2016-10-28 16:22 +0100
          Re: Fair, truly random random number generator Richard Heathfield <rjh@cpax.org.uk> - 2016-10-28 16:30 +0100
            Re: Fair, truly random random number generator Gareth Owen <gwowen@gmail.com> - 2016-10-28 16:32 +0100
        Re: Fair, truly random random number generator "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-10-29 23:11 +0800
          Re: Fair, truly random random number generator Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 11:17 +0000
            Re: Fair, truly random random number generator "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-10-31 20:14 +0800
              Re: Fair, truly random random number generator Melzzzzz <Melzzzzz@zzzzz.com> - 2016-10-31 12:32 +0000
                Re: Fair, truly random random number generator Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 12:48 +0000
                Re: Fair, truly random random number generator "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-11-01 15:30 +0800
              Re: Fair, truly random random number generator Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 12:47 +0000
      Re: Fair, truly random random number generator "Osmium" <r124c4u102@comcast.net> - 2016-10-28 09:32 -0500
  Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-10-28 07:14 -0700
    Re: Fair, truly random random number generator "Chris M. Thomasson" <invalid@invalid.invalid> - 2016-10-28 18:07 -0700
      Re: Fair, truly random random number generator "Chris M. Thomasson" <invalid@invalid.invalid> - 2016-11-01 17:45 -0700
        Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-01 18:57 -0700
          Re: Fair, truly random random number generator David Brown <david.brown@hesbynett.no> - 2016-11-02 10:06 +0100
            Re: Fair, truly random random number generator "Osmium" <r124c4u102@comcast.net> - 2016-11-02 04:46 -0600
            Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-02 05:06 -0700
              Re: Fair, truly random random number generator David Brown <david.brown@hesbynett.no> - 2016-11-02 13:43 +0100
                Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-02 06:02 -0700
                Re: Fair, truly random random number generator David Brown <david.brown@hesbynett.no> - 2016-11-02 16:08 +0100
                Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-02 08:21 -0700
              Re: Fair, truly random random number generator Mark Storkamp <mstorkamp@yahoo.com> - 2016-11-02 08:20 -0500
          Re: Fair, truly random random number generator "Chris M. Thomasson" <invalid@invalid.invalid> - 2016-11-03 17:56 -0700
            Re: Fair, truly random random number generator Keith Thompson <kst-u@mib.org> - 2016-11-03 18:16 -0700
              Re: Fair, truly random random number generator "Chris M. Thomasson" <invalid@invalid.invalid> - 2016-11-03 18:48 -0700
              Re: Fair, truly random random number generator supercat@casperkitty.com - 2016-11-04 09:17 -0700
              Re: Fair, truly random random number generator raltbos@xs4all.nl (Richard Bos) - 2016-11-04 17:59 +0000
                Re: Fair, truly random random number generator Keith Thompson <kst-u@mib.org> - 2016-11-04 11:55 -0700
                Re: Fair, truly random random number generator "Chris M. Thomasson" <invalid@invalid.invalid> - 2016-11-04 12:43 -0700
                Re: Fair, truly random random number generator "Chris M. Thomasson" <invalid@invalid.invalid> - 2016-11-04 12:40 -0700
            Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-04 12:49 -0700
              Re: Fair, truly random random number generator "Chris M. Thomasson" <invalid@invalid.invalid> - 2016-11-04 13:23 -0700
                Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-04 13:32 -0700
                Re: Fair, truly random random number generator ImperiusDamian <damianblack.wolf@gmail.com> - 2016-11-05 18:48 -0400
                Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-05 16:03 -0700
                Re: Fair, truly random random number generator "Chris M. Thomasson" <invalid@invalid.invalid> - 2016-11-05 16:50 -0700
                Re: Fair, truly random random number generator ImperiusDamian <damianblack.wolf@gmail.com> - 2016-11-05 19:52 -0400
                Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-05 17:06 -0700
    Re: Fair, truly random random number generator "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-10-29 23:13 +0800
      Re: Fair, truly random random number generator Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2016-10-29 12:12 -0400
        Re: Fair, truly random random number generator "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-10-30 00:22 +0800
        Re: Fair, truly random random number generator Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2016-10-29 12:26 -0400
        Re: Fair, truly random random number generator supercat@casperkitty.com - 2016-10-29 09:44 -0700
          Re: Fair, truly random random number generator Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-01 08:13 -0700
            Re: Fair, truly random random number generator supercat@casperkitty.com - 2016-11-01 08:31 -0700
              Re: Fair, truly random random number generator Tim Rentsch <txr@alumni.caltech.edu> - 2016-11-02 12:58 -0700
      Re: Fair, truly random random number generator "James R. Kuyper" <jameskuyper@verizon.net> - 2016-10-29 12:37 -0400
      Re: Fair, truly random random number generator Keith Thompson <kst-u@mib.org> - 2016-10-29 11:57 -0700
      Re: Fair, truly random random number generator David Brown <david.brown@hesbynett.no> - 2016-10-30 17:13 +0100
        Re: Fair, truly random random number generator "Osmium" <r124c4u102@comcast.net> - 2016-10-30 11:07 -0600
          Re: Fair, truly random random number generator supercat@casperkitty.com - 2016-10-30 12:20 -0700
      Re: Fair, truly random random number generator Richard Heathfield <rjh@cpax.org.uk> - 2016-10-31 11:18 +0000
      Re: Fair, truly random random number generator Ed Prochak <edprochak@gmail.com> - 2016-11-03 10:39 -0700
        Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-03 11:13 -0700
          [OT] gigawatts = gigaseconds correlation? "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-11-04 02:36 +0800
            Re: [OT] gigawatts = gigaseconds correlation? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-03 12:07 -0700
              Re: [OT] gigawatts = gigaseconds correlation? "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-11-04 12:02 +0800
          Re: Fair, truly random random number generator gazelle@shell.xmission.com (Kenny McCormack) - 2016-11-03 19:56 +0000
          Re: Fair, truly random random number generator "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-11-03 16:21 -0700
  Re: Fair, truly random random number generator luser droog <luser.droog@gmail.com> - 2016-10-29 14:49 -0700
    Re: Fair, truly random random number generator jameskuyper@verizon.net - 2016-10-29 15:29 -0700
  Re: Fair, truly random random number generator Quadibloc <jsavard@ecn.ab.ca> - 2016-10-29 19:09 -0700
  Thank you all for the replies! "Mr. Man-wai Chang" <toylet.toylet@gmail.com> - 2016-10-31 18:42 +0800

csiph-web