1. An apparatus for randomizing input data comprising; said apparatus having a first input, and a second input, said first input coupled to receive a first data input of width n bits where n equals a positive integer, and said second input coupled to receive a second data input of width n bits where said n equals said positive integer; a cross connection block having a first input, a second input, a first output, and a second output, said first input operatively coupled to receive said first data input n bits and generate on said first cross connection block output data of width ra bits where ra equals a positive integer and ra is greater than n, and said second input operatively coupled to receive said second data input n bits and generate on said second cross connection block output data output of said width rb bits where rb equals a positive integer and where r denotes a first number of width bits equal to ra plus rb, and r is greater than n; a combinatorial block having a first group of inputs, a second group of inputs, a first group of outputs, and a second group of outputs, said first group of inputs operatively coupled to receive said first cross connection block data output ra bits and generate on said combinatorial block first output data output of width sa bits, said second group of inputs operatively coupled to receive said second cross connection block data output rb bits and generate on said combinatorial block second output data of width sb bits, and where s denotes a second number of width bits equal to sa plus sb, and s is less than r; an arithmetic block having inputs and outputs, said inputs operatively coupled to receive said combinatorial block data output sa bits and said combinatorial block data output sb bits and generate on said arithmetic block outputs a data output of width n bits.