{'fraction_non_alphanumeric': 0.013134851138353765, 'fraction_numerical': 0.0008756567425569177, 'mean_word_length': 5.645348837209302, '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}}
Parallel implementation of the matrix rank test for randomness assessment

The quality evaluation of random number sequences is a rather complex and resource-expensive process with a peculiar property: there is no finite amount of testing that can ensure perfect randomness. Yet applying multiple randomness tests, each evaluating the sequence from one specific and significant point of view, is vital for obtaining relevant results which can guide the tester in accepting or rejecting the considered random number sequence. Therefore, aiming to satisfy the increasing demand for large volumes of high quality random data, there is a stringent need for high performance and flexible statistical tests in order to provide a more comprehensive assessment. Our work enrolls in this direction and this paper introduces the improved, extended and parallelized Matrix Rank Test (the 5th test of the NIST Statistical Test Suite), describing several enhancement methods. Experimental results prove the significant performance improvement compared to the original version and show the comparative efficiencies of the proposed parallel implementations.