Talk About Network

Google





Science > Crypt Random-numbers > A Suggestion fo...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 1 of 1 Topic 392 of 428
Post > Topic >>

A Suggestion for the Bays-Durham Shuffle

by rossum <rossum48@[EMAIL PROTECTED] > Nov 16, 2007 at 02:49 PM

Knuth suggests the Bays-Durham shuffle (Algorithm 3.2.2 B in TAoCP) as
a way to increase the apparent randomness of a sequence by reordering
it.

From the cryptographic point of view the algorithm as given leaks
information about its internal state.  The output value is copied to
the auxiliary variable (Y in Knuth's notation), hence any attacker
will know the value of Y after seeing a single output.  This
information leak could be prevented by a small change to the
algorithm: rather than setting Y to the output of the previous
iteration, set Y to the input of the current iteration.  This
separates the value of Y from the output value and so reduces the
attacker's knowledge of the internal state of the system.

Using Knuth's notation, this changes the algorithm to:

  B1 [Extract j.] Set Y to the next member of the sequence <X_n>.  
                  Set j <- floor(k * Y / m).

  B2 [Exchange.] Output V[j]. 
                 Set V[j] <- Y.

Here k, m, V[j] and <X_n> are as defined in Knuth.  There is no need
to set Y on initialisation as it will now be set in step B1.

As a minor benefit this change also reduces the storage requirement
slightly as there is no need to retain the value of Y in the state.

rossum
 




 1 Posts in Topic:
A Suggestion for the Bays-Durham Shuffle
rossum <rossum48@[EMAI  2007-11-16 14:49:37 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
localhost-V2008-12-19 Thu Jan 8 1:05:01 PST 2009.