<?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE article PUBLIC "-//NLM/DTD JATS (Z39.96) Journal Publishing DTD v1.2 20120330//EN" "http://jats.nlm.nih.gov/publishing/1.2/JATS-journalpublishing1.dtd">
    <!--<?xml-stylesheet type="text/xsl" href="article.xsl">-->
<article xmlns:ns0="http://www.w3.org/1999/xlink" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="research-article" dtd-version="1.2" xml:lang="en">
	<front>
		<journal-meta>
			<journal-id journal-id-type="issn">2303-9868</journal-id>
			<journal-id journal-id-type="eissn">2227-6017</journal-id>
			<journal-title-group>
				<journal-title>International Research Journal</journal-title>
			</journal-title-group>
			<issn pub-type="epub">2303-9868</issn>
			<publisher>
				<publisher-name>Cifra LLC</publisher-name>
			</publisher>
		</journal-meta>
		<article-meta>
			<article-id pub-id-type="doi">10.60797/IRJ.2026.172.88</article-id>
			<article-categories>
				<subj-group>
					<subject>Brief communication</subject>
				</subj-group>
			</article-categories>
			<title-group>
				<article-title>Development of a Software Module for the Comprehensive Quality Assessment of Pseudorandom Sequences</article-title>
			</title-group>
			<contrib-group>
				<contrib contrib-type="author" corresp="yes">
					<contrib-id contrib-id-type="orcid">https://orcid.org/0000-0001-9359-911X</contrib-id>
					<contrib-id contrib-id-type="rinc">https://elibrary.ru/author_profile.asp?id=830879</contrib-id>
					<contrib-id contrib-id-type="rid">https://publons.com/researcher/GLN-3042-2022</contrib-id>
					<name>
						<surname>Gibadullin</surname>
						<given-names>Ruslan Farshatovich</given-names>
					</name>
					<email>landwatersun@mail.ru</email>
					<xref ref-type="aff" rid="aff-1">1</xref>
				</contrib>
				<contrib contrib-type="author">
					<name>
						<surname>Shigabutdinov</surname>
						<given-names>Marat Ildarovich</given-names>
					</name>
					<email>mar.shiga@mail.ru</email>
					<xref ref-type="aff" rid="aff-1">1</xref>
				</contrib>
			</contrib-group>
			<aff id="aff-1">
				<label>1</label>
				<institution>Kazan National Research Technical University named after A.N. Tupolev – KAI</institution>
			</aff>
			<pub-date publication-format="electronic" date-type="pub" iso-8601-date="2026-10-16">
				<day>16</day>
				<month>10</month>
				<year>2026</year>
			</pub-date>
			<pub-date pub-type="collection">
				<year>2026</year>
			</pub-date>
			<volume>7</volume>
			<issue>172</issue>
			<fpage>1</fpage>
			<lpage>7</lpage>
			<history>
				<date date-type="received" iso-8601-date="2026-07-08">
					<day>08</day>
					<month>07</month>
					<year>2026</year>
				</date>
				<date date-type="accepted" iso-8601-date="2026-09-04">
					<day>04</day>
					<month>09</month>
					<year>2026</year>
				</date>
			</history>
			<permissions>
				<copyright-statement>Copyright: &amp;#x00A9; 2022 The Author(s)</copyright-statement>
				<copyright-year>2022</copyright-year>
				<license license-type="open-access" xlink:href="http://creativecommons.org/licenses/by/4.0/">
					<license-p>
						This is an open-access article distributed under the terms of the Creative Commons Attribution 4.0 International License (CC-BY 4.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited. See 
						<uri xlink:href="http://creativecommons.org/licenses/by/4.0/">http://creativecommons.org/licenses/by/4.0/</uri>
					</license-p>
					.
				</license>
			</permissions>
			<self-uri xlink:href="https://research-journal.org/archive/10-172-2026-october/10.60797/IRJ.2026.172.88"/>
			<abstract>
				<p>The article presents the development of a software module for the comprehensive quality assessment of pseudorandom number generators (PRNGs) using an extended set of statistical tests and parallel data processing mechanisms. The relevance of the work stems from the growing requirements for the reliability of cryptographic systems amid digital transformation and the increasing computing power of potential attackers. The module implements 31 statistical tests, including 15 NIST STS tests, 12 Diehard tests, as well as 4 specialized checks, and supports three generators of different classes: Mersenne Twister, CryptMT and the cryptographically secure system RandomNumberGenerator. A key feature of the solution is the parallel execution of the test suites based on the Task Parallel Library and the ThreadLocal generator mechanism, which provides a 3–5-fold speedup of data processing on 8-core systems compared with the sequential mode while guaranteeing reproducible results for deterministic generators. The modular three-layer architecture on the C#/.NET 7 platform allows the list of supported generators and tests to be extended without modifying the system core. In the experiments, the Mersenne Twister generator demonstrated a generation speed of 148 million numbers per second while passing 98% of the tests, and the module’s RAM consumption did not exceed 650 MB when processing samples of up to 10 GB. The practical significance of the solution is confirmed by its applicability to the verification of cryptographic systems, to scientific research, and to education.</p>
			</abstract>
			<kwd-group>
				<kwd>pseudorandom number generators</kwd>
				<kwd> statistical testing</kwd>
				<kwd> NIST STS</kwd>
				<kwd> Diehard</kwd>
				<kwd> parallel computing</kwd>
				<kwd> Task Parallel Library</kwd>
				<kwd> cryptographic strength</kwd>
				<kwd> Mersenne Twister</kwd>
				<kwd> p-value</kwd>
				<kwd> multithreading</kwd>
			</kwd-group>
		</article-meta>
	</front>
	<body>
		<sec>
			<title>HTML-content</title>
			<p>1. Introduction</p>
			<p>Amid digital transformation and the ubiquitous use of cryptographic systems, the requirements for the quality of pseudorandom number generators (PRNGs) are rising critically. Reliable PRNGs are the cornerstone of securing financial transactions, protecting personal data, and ensuring the correct operation of cryptographic protocols [1]. Random numbers are in demand across the entire spectrum of modern computing systems — from resource-constrained Internet of Things devices to heavily loaded server platforms — and an incorrect choice or implementation of a generator directly expands the system’s attack surface [2]. The continuous growth of attackers’ computing power and the anticipated advent of quantum computers [3] call for the development of new, more advanced methods for the comprehensive quality assessment of pseudorandom sequences.</p>
			<p>For the statistical verification of PRNGs, the NIST STS [4], Diehard [5], and TestU01 [6] test batteries have become the de facto standard. However, a comparative analysis of the existing batteries shows that each of them has limitations: insufficient performance when processing large data volumes, the absence of built-in parallel processing, and weak integration into modern software development processes [7]. Moreover, empirical studies demonstrate that even widely used generators may fail rigorous statistical verification [8]. This creates the need for a specialized software module capable of providing a comprehensive and highly efficient assessment of PRNG quality in accordance with modern standards.</p>
			<p>The aim of this work is to develop a software module for the comprehensive quality assessment of pseudorandom sequences that provides high testing accuracy, support for modern generation algorithms, and clear visualization of the results. To achieve this aim, the following tasks were accomplished:</p>
			<p>1. an analysis of existing pseudorandom sequence generation algorithms and methods for their statistical testing was carried out;</p>
			<p>2. a modular system architecture with support for parallel computing was designed;</p>
			<p>3. a comprehensive set of 31 statistical tests was implemented, including tests from the NIST STS and Diehard suites, as well as specialized checks;</p>
			<p>4. a user interface with advanced result visualization capabilities was created;</p>
			<p>5. a comparative performance analysis of the implemented PRNGs was conducted, and the module’s efficiency in the sequential and parallel modes was evaluated.</p>
			<p>The object of the study is pseudorandom sequence generation algorithms and methods for evaluating their statistical properties. The subject of the study is software for the comprehensive quality testing of PRNGs. The scientific novelty of the work lies in the approach to the parallel execution of statistical tests based on a hybrid model of the Task Parallel Library and ThreadLocal generators, which provides a 3–5-fold speedup of data processing while preserving the reproducibility of deterministic generators’ results, as well as in the modular architecture, which allows the set of supported tests and generators to be extended without modifying the module core. The practical significance lies in the possibility of applying the module in the creation and verification of cryptographic systems, in scientific research on new generation algorithms, and in education.</p>
			<p>2. Research methods and principles</p>
			<p>Pseudorandom sequences are numerical sequences generated by a deterministic algorithm whose statistical properties are as close as possible to those of truly random sequences. A key feature of such sequences is reproducibility: given the same initial value (seed), the generator always produces the same sequence. For a comprehensive quality assessment of a sequence, the uniformity of the distribution, the independence of the elements, the length of the repetition period, computational efficiency, and cryptographic strength are analyzed.</p>
			<p>Three classes of generators are implemented in the developed module: the linear Mersenne Twister (MT19937) [9], the cryptographically secure CryptMT [10], and the system RandomNumberGenerator generator from the System.Security.Cryptography namespace of the .NET platform [11]. All generators implement a common IRandomGenerator programmatic interface with the NextUInt(), NextDouble(), and Initialize(seed) methods (the latter is applicable only to deterministic algorithms), which guarantees standardized testing and full interchangeability of the algorithms. Unlike the deterministic MT19937 and CryptMT, the RandomNumberGenerator generator is a wrapper over the operating system’s cryptographic provider, does not support seeding, and serves in the module as the benchmark of unpredictability for comparative testing [11]. The main characteristics of the generators are presented in Table 1.</p>
			<table-wrap id="T1">
				<label>Table 1</label>
				<caption>
					<p>Comparison of the implemented pseudorandom sequence generators</p>
				</caption>
				<table>
					<tr>
						<td>Generator</td>
						<td>Key feature</td>
						<td>Repetition period</td>
					</tr>
					<tr>
						<td>Mersenne Twister (MT19937)</td>
						<td>624-element state array and the twisting operation (twist); excellent statistical properties and a high generation speed</td>
						<td> − 1</td>
					</tr>
					<tr>
						<td>CryptMT</td>
						<td>A cryptographically secure modification of MT: post-processing of the output values with a 32-bit multiplicative accumulator eliminates linear artifacts</td>
						<td> − 1 (inherits the MT19937 recurrence)</td>
					</tr>
					<tr>
						<td>RandomNumberGenerator (System.Security.Cryptography)</td>
						<td>A wrapper over the OS cryptographic provider; produces cryptographically secure non-deterministic values</td>
						<td>Not defined (non-deterministic source)</td>
					</tr>
				</table>
			</table-wrap>
			<p>To verify the statistical properties, a suite of 31 tests is implemented in the module: 15 NIST STS (Special Publication 800-22) tests, 12 Diehard tests, and 4 specialized checks (including a bit-independence test and a monotonicity test), which are relevant for evaluating short sequences and detecting hidden correlations. All tests conform to a common IRandomnessTest interface. The main evaluation metric is the p-value, which, for a test to pass, must be no lower than the threshold significance level α = 0.01 according to the NIST SP 800-22 standard [4]. The optimization methods listed in Table 2 were applied in implementing the tests.</p>
			<table-wrap id="T2">
				<label>Table 2</label>
				<caption>
					<p>Optimization and accuracy assurance methods for the statistical tests</p>
				</caption>
				<table>
					<tr>
						<td>Optimization method</td>
						<td>Purpose</td>
						<td>Technical implementation</td>
					</tr>
					<tr>
						<td>64-bit floating-point arithmetic</td>
						<td>Accuracy of p-value calculations</td>
						<td> (verified against reference values from Boost.Math)</td>
					</tr>
					<tr>
						<td>SIMD vectorization</td>
						<td>Acceleration of bit operations when processing large arrays</td>
						<td>Vectorization of low-level bit transformations (up to a 4-fold speedup)</td>
					</tr>
					<tr>
						<td>ArrayPool and Span&lt;T&gt;</td>
						<td>Control of RAM consumption</td>
						<td>Renting and reusing buffers; working with memory slices without copying</td>
					</tr>
					<tr>
						<td>Memoization and lazy evaluation</td>
						<td>Reduction of repeated computations</td>
						<td>Caching the results of expensive statistical functions; deferred computation of intermediate results</td>
					</tr>
					<tr>
						<td>Edge-case handling</td>
						<td>Reliability on non-standard data</td>
						<td>Special handling of short and degenerate sequences</td>
					</tr>
				</table>
			</table-wrap>
			<p>The architecture of the software module is multilayered and strictly follows the principles of modularity, loose coupling, and separation of responsibilities (Separation of Concerns). The system core is structured into three logical layers: the generator layer (Data Layer), which serves as a unified data source; the testing layer (Business Logic Layer), which contains the computational logic of the statistical analysis; and the presentation layer (Presentation Layer), which is responsible for user interaction and results visualization. The core also contains a static MathUtils class with helper methods for computing statistical functions (Erfc(), GammaIncomplete()), which prevents code duplication.</p>
			<p>Parallel computing support was implemented to address the problem of insufficient performance when processing the large data volumes (tens of billions of bits) required for comprehensive statistical analysis. The architecture uses a hybrid approach: the low-level threading model (System.Threading.Thread) ensures strict isolation of the generator state, while the high-level task-based model (Task Parallel Library, TPL) provides efficient distribution of the computational load across CPU cores. Parallelism is introduced at three structural levels: at the level of test suites (simultaneous execution of NIST STS and Diehard in independent threads), at the level of individual tests (parallelization of heavyweight checks such as the Linear Complexity Test and the Random Excursions Test), and within complex operations (matrix computations, Fourier transforms).</p>
			<p>To ensure thread safety and reproducibility of the results, a mechanism of ThreadLocal generators is used: instead of a single shared PRNG object, an independent copy of the generator is created for each thread, initialized with a unique seed that incorporates the thread identifier; for the non-deterministic RandomNumberGenerator, which does not support seed initialization, an independent instance is created in each thread via the Create() factory method. The processing of large data arrays follows a MapReduce-like scheme [12]: at the Map stage, each worker thread independently processes its assigned block of data, performing a partial statistical analysis, while at the Reduce stage, the intermediate results are aggregated into the final statistical output using the thread-safe ConcurrentBag collection (Fig. 1).</p>
			<fig id="F1">
				<label>Figure 1</label>
				<caption>
					<p>Parallel data processing following a MapReduce-like scheme</p>
				</caption>
				<alt-text>Parallel data processing following a MapReduce-like scheme</alt-text>
				<graphic ns0:href="/media/images/2026-10-15/613d5e91-2d91-4a61-80e0-46bcabac66ac.png"/>
			</fig>
			<p>The methodology for the experimental testing of the module is based on a comparative analysis of the three implemented PRNGs against two key metrics: statistical quality (the share of successfully passed test–sequence pairs, %) and performance (number generation speed per second). The statistical quality of each generator was evaluated on 100 independent sequences of one million bits each, which, for the suite of 31 tests, yields 3100 test–sequence pairs per generator; each performance measurement was repeated in 30 independent runs. All quantitative indicators are reported as mean values, and the spread of the results is characterized by 95% confidence intervals: for the mean generation speed and the parallel speedup these were computed using Student’s t-distribution, and for the shares of passed pairs — by the Wilson method. To confirm the correctness of the statistical test implementations, the reference sequence set of the NIST Statistical Test Suite [4] was used. The experiments assessing the efficiency of the parallel mode were conducted on 8-core systems; on each run, the seed, the sample parameters, and the operating mode were recorded, which ensures full reproducibility of the experiments.</p>
			<p>3. Main results</p>
			<p>The developed module was subjected to a detailed comparative analysis against the most authoritative existing solutions: NIST STS [4], Dieharder [13] (an extension of the Diehard suite [5]), and TestU01 [6]. NIST STS is the de facto industry standard and a baseline requirement for the certification of cryptographically secure generators; however, it is strictly oriented toward sequential execution, and its output is a plain-text report. Dieharder contains 31 tests (a full run with parameter variation computes more than 110 test statistics) and can directly test hardware entropy sources, but it is also a command-line utility. TestU01 is known for an unprecedented volume of checks (106 tests in the BigCrush configuration, yielding about 160 test statistics) and is considered the gold standard for academic research; however, it has no built-in support for parallel computing and no graphical interface. The comparison results are given in Table 3.</p>
			<table-wrap id="T3">
				<label>Table 3</label>
				<caption>
					<p>Comparative analysis of the developed module and its key analogs</p>
				</caption>
				<table>
					<tr>
						<td>Characteristic</td>
						<td>Developed module (C#/.NET 7)</td>
						<td>NIST STS (C/C++)</td>
						<td>Dieharder (C/C++)</td>
						<td>TestU01 (C/C++)</td>
					</tr>
					<tr>
						<td>Number of tests</td>
						<td>31 (NIST, Diehard, 4 specialized)</td>
						<td>15 (NIST only)</td>
						<td>31 (more than 110 statistics)</td>
						<td>106 (about 160 statistics)</td>
					</tr>
					<tr>
						<td>Parallelism support</td>
						<td>Yes (Task Parallel Library)</td>
						<td>No (sequential)</td>
						<td>Partial</td>
						<td>No (sequential)</td>
					</tr>
					<tr>
						<td>Results visualization</td>
						<td>Interactive UI (charts, tables)</td>
						<td>Text report</td>
						<td>Text report</td>
						<td>Text report</td>
					</tr>
					<tr>
						<td>Automatic reproducibility</td>
						<td>Yes (seed logging and saving)</td>
						<td>Manual saving</td>
						<td>Manual saving</td>
						<td>Manual saving</td>
					</tr>
					<tr>
						<td>Key advantage</td>
						<td>Comprehensiveness, speed, clear UI</td>
						<td>Compliance with the NIST standard</td>
						<td>Extensive test set, physical entropy</td>
						<td>In-depth linear complexity analysis</td>
					</tr>
				</table>
			</table-wrap>
			<p>Comparative testing of the implemented generators confirmed the expected characteristics of each algorithm, allowing the module user to make an informed choice of tool for a specific task. The summary results are presented in Table 4. The estimates obtained are stable: the half-width of the 95% confidence interval does not exceed 1.4 percentage points for the share of passed test–sequence pairs and 4% of the mean value for the generation speed.</p>
			<table-wrap id="T4">
				<label>Table 4</label>
				<caption>
					<p>Summary of the generator test results</p>
				</caption>
				<table>
					<tr>
						<td>Generator</td>
						<td>Statistical quality (share of passed test–sequence pairs), %</td>
						<td>Performance, million numbers/s</td>
						<td>Primary purpose</td>
					</tr>
					<tr>
						<td>Mersenne Twister</td>
						<td>98</td>
						<td>148</td>
						<td>High-speed simulations and scientific computations</td>
					</tr>
					<tr>
						<td>CryptMT</td>
						<td>82</td>
						<td>89</td>
						<td>Cryptographic strength, balance of speed and quality</td>
					</tr>
					<tr>
						<td>RandomNumberGenerator</td>
						<td>99</td>
						<td>42</td>
						<td>Cryptographic applications, moderate speed</td>
					</tr>
				</table>
			</table-wrap>
			<p>Testing of the parallel mode on 8-core systems demonstrated the high efficiency of the chosen approach: parallel execution of the test suites consistently shows a 3–5-fold speedup compared with sequential execution: in all 30 repeated runs, the speedup factor remained within the indicated range, and the half-width of the 95% confidence interval for its mean value did not exceed 0.2. Achieving ideal linear speedup is impossible due to the constraints imposed by Amdahl’s law [14]: parallelization efficiency is reduced by mandatory sequential stages — the initial data loading, the preparation of input parameters, and the final aggregation of the results.</p>
			<p>The module’s resource consumption was optimized through the use of the ArrayPool and Span&lt;T&gt; structures: RAM consumption does not exceed 650 MB even when running the most resource-intensive tests, such as Overlapping Template Matching, when processing samples of up to 10 GB. The accuracy of the computations was verified by comparison with reference values from the Boost.Math library: the relative error of the high-precision approximations of the mathematical functions (the incomplete gamma function and the complementary error function Erfc) does not exceed 10−6. In addition, an automated verification system was introduced that compares the obtained statistical metrics against known reference values.</p>
			<p>System reliability is ensured at the architectural and software levels: the reproducibility of the deterministic generators’ results is guaranteed by identical output sequences for the same seed; the aggregation of intermediate results in parallel computations is performed via the thread-safe ConcurrentBag collection; and memory-control and buffer-overflow protection mechanisms are built into the resource-intensive tests. For the system RandomNumberGenerator generator, which implements the IDisposable interface, the module’s wrapper calls the Dispose method, which releases the cryptographic context of the operating system provider. The user interface, implemented with Windows Forms, provides selection of the generator and testing parameters, switching between the sequential and parallel modes, a results table with the columns “Test”, “P-value”, “Status”, and “Time (s)”, interactive plots of the distribution of p-values, as well as export of the results to JSON and CSV.</p>
			<p>4. Discussion</p>
			<p>The obtained results show that combining generally recognized test suites with a parallel execution model eliminates the main practical drawback of the classical batteries — the low speed of processing large samples under sequential execution, noted, among other places, in survey works on statistical test batteries [7]. The visual analysis of the distribution of p-values implemented in the module enables a researcher to quickly detect statistical anomalies, whereas the analogs require additional processing of text reports. Automatic logging of the seeds and sample parameters eliminates the manual recording of experimental conditions, which is especially important for certification and scientific work, where reproducibility is a mandatory requirement.</p>
			<p>The generator test results are consistent with assessments known in the literature: Mersenne Twister demonstrates excellent statistical properties and the highest speed but is not cryptographically secure, whereas cryptographic generators naturally lag behind in performance [8], [15]. Note that the share of passed checks obtained for CryptMT is lower than expected for a cryptographically secure generator; this result requires further analysis and, according to a preliminary assessment, is related to the implementation parameters of individual tests rather than to the properties of the algorithm itself. This confirms the appropriateness of supporting several classes of generators in the module: the choice of algorithm should be determined by the task — simulations and scientific computations permit the use of MT19937, while cryptographic applications require CryptMT or RandomNumberGenerator.</p>
			<p>The limitations of the current version of the module should also be noted. In the depth of its linear complexity analysis, it is inferior to the TestU01 library, which is widely used in modern randomness research, including for the evaluation of ciphers [16]. The module lacks a mode for directly testing hardware (physical) entropy sources, which is implemented in Dieharder [13]. In addition, recent studies show that the tests of the NIST SP 800-22 suite are not fully statistically independent [17], so the interpretation of the aggregated percentage of passed tests requires caution. The security limitations include the lack of temporary-file encryption and a simplified error-handling model in the UI layer; for industrial use, it is recommended to protect the handling of the seed in RAM, to add checksums for the executable code, and to support hardware acceleration of cryptographic operations (HSM).</p>
			<p>The prospects for the project’s development are determined by current trends in cryptography: the plans include integration with the TestU01 library to deepen the linear complexity analysis, extended functionality for testing physical entropy sources [18], and the addition of support for elliptic-curve-based generators [19] and post-quantum cryptographic algorithms [3], [20].</p>
			<p>5. Conclusion</p>
			<p>The developed software module for assessing the quality of pseudorandom sequences is a complete, comprehensive solution that combines modern statistical analysis methods with an efficient software implementation on the .NET 7 platform. The goal set at the outset of the work has been achieved: generators of three classes (Mersenne Twister, CryptMT, RandomNumberGenerator) have been implemented and optimized; a suite of 31 statistical tests based on NIST STS and Diehard, supplemented with the authors’ specialized checks, has been created and integrated; and a user interface with advanced visualization capabilities has been developed.</p>
			<p>Experimental verification confirmed the effectiveness of the adopted solutions: the leader in generation speed is Mersenne Twister (148 million numbers per second with 98% of the checks passed); the best statistical quality was, as expected, demonstrated by the system RandomNumberGenerator (99%); the hybrid parallel model based on the Task Parallel Library and ThreadLocal reduces the analysis time by a factor of 3–5 relative to the sequential mode; and RAM usage when processing samples of up to 10 GB remains within 650 MB. The modular architecture ensures flexibility and ease of extension, while support for a deterministic mode guarantees the reproducibility of research.</p>
			<p>The practical significance of the module is defined by three main areas of application: the verification of generators in scientific research and computer modeling, the certification of cryptographic modules in accordance with international standards, and use in education. The priority directions for further development are integration with TestU01, support for testing physical entropy sources, and the addition of post-quantum cryptographic algorithms, which will allow the module to remain relevant amid rapidly changing cryptographic security requirements.</p>
		</sec>
		<sec sec-type="supplementary-material">
			<title>Additional File</title>
			<p>The additional file for this article can be found as follows:</p>
			<supplementary-material xmlns:xlink="http://www.w3.org/1999/xlink" id="S1" xlink:href="https://doi.org/10.5334/cpsy.78.s1">
				<!--[<inline-supplementary-material xlink:title="local_file" xlink:href="https://research-journal.org/media/articles/26586.docx">26586.docx</inline-supplementary-material>]-->
				<!--[<inline-supplementary-material xlink:title="local_file" xlink:href="https://research-journal.org/media/articles/26586.pdf">26586.pdf</inline-supplementary-material>]-->
				<label>Online Supplementary Material</label>
				<caption>
					<p>
						Further description of analytic pipeline and patient demographic information. DOI:
						<italic>
							<uri>https://doi.org/10.60797/IRJ.2026.172.88</uri>
						</italic>
					</p>
				</caption>
			</supplementary-material>
		</sec>
	</body>
	<back>
		<ack>
			<title>Acknowledgements</title>
			<p/>
		</ack>
		<sec>
			<title>Competing Interests</title>
			<p/>
		</sec>
		<ref-list>
			<ref id="B1">
				<label>1</label>
				<mixed-citation publication-type="confproc">Barker E. Recommendation for random number generation using deterministic random bit generators (NIST Special Publication 800-90A, Rev. 1) / E. Barker, J. Kelsey. — National Institute of Standards and Technology, 2015. — DOI: 10.6028/NIST.SP.800-90Ar1.</mixed-citation>
			</ref>
			<ref id="B2">
				<label>2</label>
				<mixed-citation publication-type="confproc">Kietzmann P. A guideline on pseudorandom number generation (PRNG) in the IoT / P. Kietzmann, T.C. Schmidt, M. Wählisch // ACM Computing Surveys. — 2021. — Vol. 54. — № 6. — DOI: 10.1145/3453159.</mixed-citation>
			</ref>
			<ref id="B3">
				<label>3</label>
				<mixed-citation publication-type="confproc">Bernstein D.J. Post-quantum cryptography / D.J. Bernstein, T. Lange // Nature. — 2017. — Vol. 549. — № 7671. — P. 188–194. — DOI: 10.1038/nature23461.</mixed-citation>
			</ref>
			<ref id="B4">
				<label>4</label>
				<mixed-citation publication-type="confproc">Rukhin A. A statistical test suite for random and pseudorandom number generators for cryptographic applications (NIST Special Publication 800-22, Rev. 1a) / A. Rukhin, J. Soto, J. Nechvatal [et al.]. — National Institute of Standards and Technology, 2010. — DOI: 10.6028/NIST.SP.800-22r1a.</mixed-citation>
			</ref>
			<ref id="B5">
				<label>5</label>
				<mixed-citation publication-type="confproc">Marsaglia G. The Marsaglia random number CDROM including the Diehard battery of tests of randomness / G. Marsaglia. — Florida State University, 1995. — URL: https://web.archive.org/web/2016/http://stat.fsu.edu/pub/diehard/ (accessed: 15.10.2026).</mixed-citation>
			</ref>
			<ref id="B6">
				<label>6</label>
				<mixed-citation publication-type="confproc">L'Ecuyer P. TestU01: A C library for empirical testing of random number generators / P. L'Ecuyer, R. Simard // ACM Transactions on Mathematical Software. — 2007. — Vol. 33. — № 4. — DOI: 10.1145/1268776.1268777.</mixed-citation>
			</ref>
			<ref id="B7">
				<label>7</label>
				<mixed-citation publication-type="confproc">Almaraz Luengo E. Recommendations on statistical randomness test batteries for cryptographic purposes / E. Almaraz Luengo, L.J. García Villalba // ACM Computing Surveys. — 2021. — Vol. 54. — № 4. — DOI: 10.1145/3447773.</mixed-citation>
			</ref>
			<ref id="B8">
				<label>8</label>
				<mixed-citation publication-type="confproc">Bhattacharjee K. A search for good pseudo-random number generators: Survey and empirical studies / K. Bhattacharjee, S. Das // Computer Science Review. — 2022. — Vol. 45. — DOI: 10.1016/j.cosrev.2022.100471.</mixed-citation>
			</ref>
			<ref id="B9">
				<label>9</label>
				<mixed-citation publication-type="confproc">Matsumoto M. Mersenne twister: A 623-dimensionally equidistributed uniform pseudo-random number generator / M. Matsumoto, T. Nishimura // ACM Transactions on Modeling and Computer Simulation. — 1998. — Vol. 8. — № 1. — P. 3–30. — DOI: 10.1145/272991.272995.</mixed-citation>
			</ref>
			<ref id="B10">
				<label>10</label>
				<mixed-citation publication-type="confproc">Matsumoto M. Cryptographic Mersenne Twister and Fubuki stream/block cipher (Report No. 2005/165) / M. Matsumoto, T. Nishimura, M. Hagita, M. Saito. — Cryptology ePrint Archive, 2005. — URL: https://eprint.iacr.org/2005/165 (accessed: 15.08.2026).</mixed-citation>
			</ref>
			<ref id="B11">
				<label>11</label>
				<mixed-citation publication-type="confproc">RandomNumberGenerator class (System.Security.Cryptography). — Microsoft Learn, 2025. — URL: https://learn.microsoft.com/en-us/dotnet/api/system.security.cryptography.randomnumbergenerator (accessed: 15.08.2026).</mixed-citation>
			</ref>
			<ref id="B12">
				<label>12</label>
				<mixed-citation publication-type="confproc">Dean J. MapReduce: Simplified data processing on large clusters / J. Dean, S. Ghemawat // Communications of the ACM. — 2008. — Vol. 51. — № 1. — P. 107–113. — DOI: 10.1145/1327452.1327492.</mixed-citation>
			</ref>
			<ref id="B13">
				<label>13</label>
				<mixed-citation publication-type="confproc">Brown R.G. Dieharder: A random number test suite (Version 3.31.1) / R.G. Brown. — Duke University, 2021. — URL: https://webhome.phy.duke.edu/~rgb/General/dieharder.php (accessed: 15.10.2026).</mixed-citation>
			</ref>
			<ref id="B14">
				<label>14</label>
				<mixed-citation publication-type="confproc">Amdahl G.M. Validity of the single processor approach to achieving large scale computing capabilities / G.M. Amdahl // Proceedings of the April 18–20, 1967, Spring Joint Computer Conference (AFIPS '67). — ACM, 1967. — P. 483–485. — DOI: 10.1145/1465482.1465560.</mixed-citation>
			</ref>
			<ref id="B15">
				<label>15</label>
				<mixed-citation publication-type="confproc">Almaraz Luengo E. A brief and understandable guide to pseudo-random number generators and specific models for security / E. Almaraz Luengo // Statistics Surveys. — 2022. — Vol. 16. — P. 137–181. — DOI: 10.1214/22-SS136.</mixed-citation>
			</ref>
			<ref id="B16">
				<label>16</label>
				<mixed-citation publication-type="confproc">Sleem L. TestU01 and Practrand: Tools for a randomness evaluation for famous multimedia ciphers / L. Sleem, R. Couturier // Multimedia Tools and Applications. — 2020. — Vol. 79. — № 33–34. — P. 24075–24088. — DOI: 10.1007/s11042-020-09108-w.</mixed-citation>
			</ref>
			<ref id="B17">
				<label>17</label>
				<mixed-citation publication-type="confproc">Almaraz Luengo E. Further analysis of the statistical independence of the NIST SP 800-22 randomness tests / E. Almaraz Luengo, B. Alaña Olivares, L.J. García Villalba [et al.] // Applied Mathematics and Computation. — 2023. — Vol. 459. — DOI: 10.1016/j.amc.2023.128222.</mixed-citation>
			</ref>
			<ref id="B18">
				<label>18</label>
				<mixed-citation publication-type="confproc">Herrero-Collantes M. Quantum random number generators / M. Herrero-Collantes, J.C. Garcia-Escartin // Reviews of Modern Physics. — 2017. — Vol. 89. — № 1. — DOI: 10.1103/RevModPhys.89.015004.</mixed-citation>
			</ref>
			<ref id="B19">
				<label>19</label>
				<mixed-citation publication-type="confproc">Brown D.R.L. A security analysis of the NIST SP 800-90 elliptic curve random number generator / D.R.L. Brown, K. Gjøsteen; edited by A. Menezes // Advances in Cryptology – CRYPTO 2007 (Lecture Notes in Computer Science, Vol. 4622). — Springer, 2007. — P. 466–481. — DOI: 10.1007/978-3-540-74143-5_26.</mixed-citation>
			</ref>
			<ref id="B20">
				<label>20</label>
				<mixed-citation publication-type="confproc">National Institute of Standards and Technology. Module-lattice-based key-encapsulation mechanism standard (FIPS 203). — U.S. Department of Commerce, 2024. — DOI: 10.6028/NIST.FIPS.203.</mixed-citation>
			</ref>
		</ref-list>
	</back>
	<fundings>
		<funding lang="RUS">Данная работа/публикация была финансирована грантом Академии наук Республики Татарстан, выделенным высшим учебным заведениям, научным и другим организациям в целях содействия реализации планов по развитию кадрового потенциала, направленных на стимулирование научно-преподавательского состава к защите докторских диссертаций и ведению научно-исследовательской деятельности. (Договор № 15/2025-PD-KAI от 22 декабря 2025 г.).</funding>
		<funding lang="ENG">This work/publication was funded by a grant from the Academy of Sciences of the Republic of Tatarstan provided to higher education institutions, scientific and other organizations to support human resource development plans in terms of encouraging their research and academic staff to defend doctoral dissertations and conduct research activities. (Agreement № 15/2025-PD-KAI dated December 22, 2025).</funding>
	</fundings>
</article>