Efficient O(1)-space pseudorandom permutation; high speed shuffling for large data
High-performance pseudo-random permutations using Feistel networks with O(1) memory and O(1) time per element