{'fraction_non_alphanumeric': 0.014705882352941176, 'fraction_numerical': 0.006862745098039216, 'mean_word_length': 5.1878787878787875, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A universal whitening algorithm for commercial random number generators

Random number generators are imperfect due to manufacturing bias and technological imperfections. These imperfections are removed using post-processing algorithms that in general compress the data and do not work in every scenario. In this work, we present a universal whitening algorithm using n-qubit permutation matrices to remove the imperfections in commercial random number generators without compression. Specifically, we demonstrate the efficacy of our algorithm in several categories of random number generators and its comparison with cryptographic hash functions and block ciphers. We have achieved improvement in almost every randomness parameter evaluated using ENT randomness test suite. The modified random number files obtained after the application of our algorithm in the raw random data file pass the NIST SP 800-22 tests in both the cases: 1. The raw file does not pass all the tests. 2. The raw file also passes all the tests.