Hacker Newsnew | past | comments | ask | show | jobs | submit | _r5fw's commentslogin

I agree. Customization provides more opportunities for employees to rig the RNGs.

My ideal RNG would be an off-the-shelf computer with a stock image and a < 20 line Python script to display numbers. This could be developed in less than a day and the entire process could be supervised by a third party. There are still trust issues which need to be dealt with (e.g. how are we downloading the image?). These issues could be dealt with with assistance/supervision from a third party or two.

The problem is that lottery RNG vendors are selling a product. Lotteries like to see machines in custom boxes with custom user interfaces. The RNGs have hardcoded game parameters. Some are automated to produce numbers on a schedule without human interaction. Others require an operator to log in and select a game to produce numbers for.

These RNGs contain thousands of lines of code. Some take the form of multiple programs and services. In some cases they even contain multiple machines.

As an example I just ran sloccount on a source directory for one of these RNGs. Here's the (redacted) output:

  62135   XXX         cpp=62135
  20447   XXX     cs=20447
  17642   XXX   cpp=17642
  9308    XXX         cpp=5969,ansic=3339
  4987    XXX     cpp=4987
  2414    XXX    cs=2414
  1926    XXX       cpp=1926
  1744    XXX    cpp=1744
  390     XXX  cpp=390
  150     XXX    cpp=150
  67      XXX      cpp=67
  35      XXX      cpp=35
  32      XXX    cpp=32
  ...
Yeah. This RNG consists of over 120 thousand lines of code.

The systems which this program runs on are set up by a single developer. This setup process is not supervised so even if the developer isn't able to slip something into the source code or the binaries he could in theory place something (e.g. a rootkit or something which simply replaces the RNG program on start) on the system itself.


I take it you are in the industry. Interesting :)


You still need a program to perform the mixing. The intended source of entropy isn't really the issue. The integrity of the program which produces and displays these numbers is.


Consider applying for YC's Winter 2027 batch! Applications are open till November 2.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: