Next Article in Journal
A High-Precision Fall Detection Model Based on Dynamic Convolution in Complex Scenes
Next Article in Special Issue
CrptAC: Find the Attack Chain with Multiple Encrypted System Logs
Previous Article in Journal
Driver Abnormal Expression Detection Method Based on Improved Lightweight YOLOv5
Previous Article in Special Issue
An ECC-Based Authentication Protocol for Dynamic Charging System of Electric Vehicles
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Entropy Model of Rosin Autonomous Boolean Network Digital True Random Number Generator

School of Telecommunications Engineering, Xidian University, Xi’an 710071, China
*
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
Electronics 2024, 13(6), 1140; https://doi.org/10.3390/electronics13061140
Submission received: 25 January 2024 / Revised: 12 March 2024 / Accepted: 19 March 2024 / Published: 20 March 2024
(This article belongs to the Special Issue Recent Advances and Applications of Network Security and Cryptography)

Abstract

:
A True Random Number Generator (TRNG) is an important component in cryptographic algorithms and protocols. The Rosin Autonomous Boolean Network (ABN) digital TRNG has been widely studied due to its nice properties, such as low energy consumption, high speed, strong platform portability, and strong randomness. However, there is still a lack of suitable entropy models to deduce the requirement of design parameters to ensure true randomness. The current model to evaluate the entropy of oscillator-based TRNGs is not applicable for Rosin ABN TRNGs due to low-frequency noise. This work presents a new, suitable stochastic model to evaluate the entropy of Rosin ABN TRNGs. Theoretical analysis and simulation experiments verify the correctness and the effectiveness of the model, and, finally, the appropriate sampling parameters for Rosin ABN TRNGs are given for sufficient entropy per random bit to ensure true randomness.

1. Introduction

The unpredictability of true random numbers provides a fundamental security guarantee for cryptographic algorithms and security protocols, and a high-performance TRNG is also an important component to ensure network security [1]. Usually, there are two methods to evaluate the randomness of the output sequence of a TRNG: One is to detect whether it has obvious statistical deviation [2,3,4,5,6]. The other one is to establish a random entropy model, and from this model, it is feasible to derive the requirements for the design parameters of TRNGs, so as to guide the design of a TRNG in reverse.
The statistical tests cannot or have difficulties detecting the possible hidden weakness inside TRNGs. Therefore, most scholars focus on the study of the entropy model of TRNGs. The entropy model is a stochastic model used to evaluate the entropy of a specific TRNG, and an accurate entropy estimation for this specific random number generator structure in theory can be obtained by this stochastic model [7]. The entropy used in this article is Shannon entropy. To model oscillator-based TRNGs, Killmann and Schindler proposed a common stochastic model from the time domain [8]. However, only the lower bound of output entropy can be obtained through this analysis method. In 2014, Ma et al. [7] proposed a stochastic model to calculate the precise entropy for RO-based TRNGs, and put forward the quality factor Q to assist the structural design. In 2018, Zhu et al. discussed the calculation error between the standard variance in the counting results and approximate Q in the entropy model proposed by Ma et al., thus giving a more accurate estimate of jitter [9]. In 2019, Ma et al. proposed an entropy estimation method for TRNGs based on ADC sampling [10]. In 2021, Markku-Juhani O. Saarinen et al. put forward a new lower bound estimation formula for the entropy of ring vibration sources, which is more widely used than the previous formula [11]. However, there is no suitable common stochastic model to calculate the precise entropy for common TRNGs, such as metastable state TRNGs, ABN TRNGs, TRNGs with complex feedback behavior, and so on.
Among them, ABN TRNGs can play a huge role in embedded and other scale-limited environments because they can be integrated on cheap and highly integrable electronic chips. And their speed of generating random numbers is also very fast, which can consistently meet the real-time requirements of modern communication and become an important kind of TRNG. In 2013, Rosin et al. used an ABN to construct a new type of physical TRNG which has a wide spectrum, a high frequency, and can achieve high-speed output through parallel approaches. However, when the number of the nodes is low, the oscillation of the Boolean Network is weakened and even degenerates [12]. In 2018, on the basis of Rosin TRNGs, Yang Hui changed the time delay between logic links by adding inverters, so that the structure can still output stable and available random numbers at low nodes [13]. In 2020, Gong et al. highlighted the factors affecting chaotic Boolean Networks, which provided a certain theoretical basis for the subsequent study of chaotic Boolean Networks [14].
In this paper, based on the entropy model used for RO-based TRNGs [7], we establish a random entropy model for the TRNG of a Rosin Autonomous Boolean Network. The proposed entropy model is verified on Rosin’s TRNG with different numbers of nodes. The experimental results show that the proposed entropy model is correct and effective. Different parameters are provided for different entropy requirements.
The rest of this paper is organized as follows. In Section 2, we briefly introduce the TRNG based on Boolean Networks. Section 3 presents the proposed entropy model and analyzes the difference between TRNGs based on oscillators and those based on Autonomous Boolean Networks. In Section 4, the effectiveness and correctness of this entropy model is validated and the optimal sampling parameters for different requirements are given. In Section 5, we summarize this paper.

2. TRNGs Based on Autonomous Boolean Networks

A Boolean Network is a network composed of Boolean operations, such as AND, OR, and NOT, as well as Boolean nodes with two states: on state 1 and off state 0. In Boolean Networks, due to factors such as thermal noise, shot noise, and so on, the phase of the circuit will produce a certain amount of jitter. When this kind of jitter undergoes nonlinear walk within an Autonomous Boolean Network, its amplitude is amplified by about two orders of magnitude, which will cause the weak entropy source with originally small jitter to evolve into a strong entropy source with severe jitter. TRNGs of Autonomous Boolean Networks with this characteristic have been widely studied by cryptography scholars due to their nice properties of elegant structure and high speed [15,16,17,18].
A TRNG of a Rosin Autonomous Boolean Network with n nodes [12] is shown in Figure 1. The nodes in this network have only one exclusive NXOR gate (denoted as ⊙), and the others are exclusive XOR gates (denoted as ⊕, around the circumference of the circle). Each node has three inputs, one output, and self-feedback. Adjacent nodes are inputs to each other and arrow represents wire. The true random number is obtained by sampling the XOR values (the red ⊕) of four network nodes through low-frequency clock signals. Whether this network generates chaotic oscillation depends on the initial conditions and the setting of delay, that is, ideally, there is no stagnation point.
Just as the author of [12] said, when we sample the proposed TRNG structure in Figure 1 with a frequency of 100 MHz, the collected data should pass the National Institute of Standards and Technology (NIST) SP800-22 [3]. However, when we verified this TRNG structure on Altera Cyclone IV EP4CE6F with a sampling frequency of 100 MHz, some groups of collected data were unable to pass the NIST test. This indicates that the Rosin’s Autonomous Boolean Network TRNG differs on different FPGA models, and its platform portability is challenged. To obtain the the parameters for this structure on different FPGAs, we established an entropy model for this structure.

3. Entropy Model of Rosin Autonomous Boolean Network TRNG

To establish a suitable model for this structure, we noted that the Rosin Boolean Network TRNG and the oscillation-based TRNG have great similarity. Both of them use low-frequency clock signals to sample high-frequency jitter signals to generate random numbers and the source of their randomness is phase jitter. To this end, we first attempted to use the TRNG entropy model based on an oscillation ring to analyze the Rosin’s Autonomous Boolean Network; based on the differences between the two, we obtained an entropy model that can be applicable to the TRNG based on Rosin’s Autonomous Boolean Network.

3.1. The Entropy Model of Ma Is Not Applicable to TRNGs of the Rosin Autonomous Boolean Network

In traditional “low-frequency sampling of high-frequency” TRNGs, the sampling parameters can usually be adjusted according the average and variance in the rising edge jump transition number of the output sequence, so that the low-frequency sampling signal can just sample at the jump transitions of the fast oscillating signal and obtain the best random output sequence. In view of this, this section counts the number of jump transition rising edges of the output sequence of the Rosin Autonomous Boolean Network TRNG shown in Figure 1, and calculates the mean and variance of the counted values. The specific experimental steps are as follows:
  • Implement the structure shown in Figure 1 using FPGA, with n = 16, and sample the TRNG output with a 100 MHz system clock signal. The sampling method is as follows: when the rising edge of the sampled signal jumps, the counter begins to record the number of rising edges of the TRNG output signal; when the falling edge of the sampled signal jumps, the counter outputs the number of rising edges counted and performs a reset operation to obtain a total of 2 16 count values;
  • The average value is 128.6207, and the variance is 73.9459 2 .
This result is not consistent with the assumption μ σ 1 in Ma et al.’s stochastic entropy model. The reason is described as follows.
In the frequency domain, let b be the output signal of the oscillation ring. If b is a zero-mean stationary random process, the standard variance in signal b can be expressed as [19]
V a r ( b ) = α = 2 2 h α ( π τ ) 2 0 f h f α 2 sin 2 ( π τ f ) d f
where f h is the cut-off frequency of the oscillation ring; α indicates the type of noise; the α value is +2, indicating white noise phase modulation, +1, indicating flicker noise phase modulation, 0, indicating white noise frequency modulation, −1, indicating flicker noise (low-frequency noise) frequency modulation, and −2, indicating random walk (low-frequency noise) frequency modulation. According to reference [19], when f 0 , the integrand function can be approximated as π 2 τ 2 f α . At this point, if α = −1 or −2 is taken, the integrand function will not converge.
In the Autonomous Boolean Network TRNG, the signal generated will amplify the jitter to a hundred times its original amplitude, which means that the thermal noise and flicker noise in the noise source will be simultaneously amplified by a hundred times, at which point the flicker noise will be amplified ( α = −1). The impact of low-frequency noise cannot be ignored, as it accelerates the accumulation speed of jitter. The comparison between the cumulative changes (the red shadow) in signal jitter on ABN TRNGs and the cumulative changes in signal jitter based on traditional ring oscillators is shown in Figure 2.
The cumulative speed of jitter affects the oscillation speed of the output waveform, as shown in Figure 3, which is a comparison of the output waveforms of an ABN TRNG composed of 16 nodes and a single classical oscillation ring. The horizontal axis in the figure is 25 ns/M. It can be observed that for every jump in the output of the classical oscillation ring, the output of the Rosin Autonomous Boolean Network oscillation ring has already jumped dozens or even hundreds of times.
Therefore, the random entropy model proposed by Ma et al. cannot be used to evaluate the entropy of the Rosin Autonomous Boolean Network TRNG. It is necessary to improve the model and find more suitable parameters to describe the jitter in the Rosin Autonomous Boolean Network.

3.2. Allan Variance Is More Suitable for Describing the Jitter of Rosin Autonomous Boolean Network TRNGs

Allan variance is a variance used to analyze the phase and frequency instability of oscillation loops [20]. Let b be the output signal of the oscillator loop and b ¯ i be the mean value within the i-th interval of length τ . The Allan variance in the oscillator loop output signal b in a dataset consisting of M mean samples within intervals of length τ can be expressed as follows:
Avar ( b ) = σ b 2 ( τ ) = 1 2 ( M 1 ) i = 1 M 1 ( b ¯ i + 1 b ¯ i ) 2
In the frequency domain, the Allan variance can be expressed as
Avar ( b ) = σ b 2 ( τ ) = α = 2 2 2 h α ( π τ ) 2 0 f h sin 4 ( π τ f ) f α 2 d f
When f 0 , the integrated function can be approximated as π 4 τ 4 f α + 2 . At this point, even if the signal b is affected by low-frequency noise (i.e., with α taking values of −1 and −2), the integrated function still converges. Therefore, in the subsequent analysis, the Allan variance, which is more friendly to low-frequency noise, is used to characterize the magnitude of jitter in the Rosin Autonomous Boolean Network TRNG.

3.3. Entropy Model of the Rosin Autonomous Boolean Network TRNG

Based on the above analysis, an entropy model is established for the Rosin Autonomous Boolean Network TRNG.
As shown in Figure 4 and Figure 5, using the clock signal S 2 as the control signal for the counter, the counter counts the number of rising edges of the Rosin TRNG output signal S 1 when S 2 is at a high level. When S 2 is at a low level, the counter values are stored in a register, and the counter is reset. τ is chosen as the interval, where each τ counter value in the register forms a group. The mean μ is calculated for each group, and this mean is considered the half-period length of the high-frequency signal S 1 .
The slow clock signal S 3 is used as a low-frequency signal to sample the transition signal S 1 .
Assuming the half-periods of the transition signal s 1 , obtained by counting, are denoted as X k , where k = 1, 2,…, and due to the presence of jitter, it can be assumed that X k follows a normal distribution with mean μ and Allan variance σ a 2 , i.e., X k N ( μ , σ a 2 ) . Let the signal S 3 have a period T 3 , and let R i be the number of rising edges of S 1 within half a period of S 3 . The sampled data for the i-th bit, denoted as b i , are given by b i = ( b i 1 + R i ) mod 2 . The basic assumptions in our work are the same as those made in Ma’s stochastic model, which was used to calculate the precise entropy for RO-based TRNGs [7]. Here, b i is still the i-th sampled bit. Since the operation of adding R i with b i 1 can be treated as a type of post-processing, this operation causes no impact on the information entropy. So, the equation b i = ( b i 1 + R i ) mod 2 can be further simplified to b i = R i mod 2 . Let L k = X 1 + X 2 + + X k ; thus,
P r ( R i k ) = P r ( L k T 3 2 )
where k is the minimum value that L k T 3 2 . According to the Central Limit Theorem, the distribution function of L k is given by L k N ( k μ , k σ a 2 ) . Therefore, we can further derive
P r ( R i k ) = 1 2 k π σ a T 3 2 + e ( t k μ ) 2 2 k σ a 2 d t
Let u = t k μ , x = u / 2 k σ . Then,
P r ( R i k ) = 2 k σ a 2 k π σ a T 3 2 k μ 2 k σ a + e x 2 d x = 1 2 ( 1 e r f ( T 3 2 k μ 2 k σ a ) )
The probability of having k rising edges of signal within the duration of T 3 / 2 can be expressed as follows:
P r ( R i = k ) = P r ( R i k ) P r ( R i k 1 ) = 1 2 ( e r f ( T 3 2 ( k 1 ) μ 2 ( k 1 ) σ a ) e r f ( T 3 2 k μ 2 k σ a ) )
Let p 1 be the probability of the i-th sampled bit b i , equal to 1, and p 0 be the probability of the i-th sampled bit b i , equal to 0. Then, we have
p 1 = P r ( b i = 1 ) = P r ( R i mod 2 = 1 ) = k = 0 k = + P r ( R i = 2 k + 1 )
p 0 = 1 p 1
Let X n be the n-bit output and x j be the j-th bit. Since the counter is reset at every period of S 3 , then, using the property of the Markov process, we obtain the probability p X n = P r ( b 1 = x 1 , b 2 = x 2 , , b n = x n ) as follows:
p X n = P r ( B n = X n ) = j = 0 n 1 p 0 1 x j p 1 x j = j = 0 n 1 ( 1 p 1 ) 1 x j p 1 x j
When the random process B n is in the ideal condition, i.e., a stationary random process, the entropy rate for each bit of TRNG output is equal to
H = lim n H n n
H n = X n { 0 , 1 , , 2 n 1 } p X n · log 2 p X n
Due to the fact that the output signal S 1 of the Rosin Autonomous Boolean Network TRNG is a strong random source, its correlation approaches zero in a short period of time. Therefore, the correlation between each random number X k is zero, indicating mutual independence. As a result, the entropy rate for each bit of the TRNG output is equal to
H = p b log 2 p b ( 1 p b ) log 2 ( 1 p b )

4. Model Verification

In this section, we validate the effectiveness and correctness of the entropy model.

4.1. Validation of the Effectiveness of the Entropy Model

In this subsection, we validate the effectiveness of the entropy model. The specific validated steps are as follows:
  • Implement the structure shown in Figure 1 using an FPGA, with n = 16. Let the output of this Rosin Autonomous Boolean Network TRNG be denoted as signal S 1 . Count signal S 1 using a clock signal S 2 with a frequency of 100 MHz, resulting in a total of 2 16 count values.
  • Calculate the mean of the count values, μ = 128.6207 .
  • Set τ = 4 and M = 8 in the formula for calculating the Allan variance. Utilizing 2 16 count values, use Matlab R2019b to compute the Allan variance:
    Avar ( b ) = σ b 2 ( τ ) = 1 2 ( M 1 ) i = 1 M 1 ( b ¯ i + 1 b ¯ i ) 2
    The calculated Allan variance is 5.0978 2 .
  • Given a lower bound on entropy, we can compute the corresponding value of the quality factor Q, according to the relationship between the output entropy and quality factor [21]:
    H l o w e r = 1 4 π 2 ln 2 e 4 π 2 Q
    and
    Q = ρ 2 υ , ρ = σ b f h i g h , υ = f h i g h f l o w
    where σ b is the Allan variance. So,
    Q = σ b 2 f h i g h 3 f l o w
    For example, if H l o w e r is set to 0.9999, then Q = 0.2197 . Assuming that the low-frequency sampling clock signal S 3 is without jitter, let f 3 be the frequency of the low-frequency sampling signal and f 4 and σ 4 be the frequency and jitter of the transition signal s 1 , respectively. The highest sampling frequency for the slow signal can be obtained by f 3 = σ 4 2 f 4 3 Q . The highest calculated sampling frequency under these conditions is 18.2 MHz when Q = 0.2197 .
  • To evaluate the Rosin Autonomous Boolean Network TRNG (n = 16) as shown in Figure 1, collect 2 16 data points for four cases, that is, the sample frequencies are 18.2 MHz, 15 MHz, 20 MHz, and 60 MHz, which correspond to the highest sampling frequency, a lower sampling frequency, a higher sampling frequency, and a significantly higher frequency. The corresponding entropy values are shown in Figure 6.
It is observed that the entropy value reaches the design standard 0.9999 at a sampling frequency of 18.2 MHz. Below this frequency, the entropy value gradually increases, while above this frequency, the entropy value gradually decreases, aligning with the actual scenario.
On the other hand, utilizing the 2 16 count values obtained, the statistical variance is calculated to be 73.9459 2 . Plugging this value into Equation (14), the theoretical calculation yields a maximum sampling frequency of 720 MHz for an entropy of 0.9999.
We collected data in three cases, that is, with a sample frequency of 100 MHz, the frequency obtained by Ma’s model, and that by our improvement model. It was found that after our improvement, the PROPORTION in the NIST test was increased and subjected to an 800-22 NIST test, while, under the first two sample frequencies, there are cases that cannot pass the 800-22 NIST test, that is, the proportion is lower than 0.987 (as show in Table 1, marked with *). This indicates that the standard variance tends to overestimate the jitter in the Rosin Autonomous Boolean Network.
As we can see from Table 1, there were 8 and 15 stars, respectively, for the first two cases, while for our case, all the tests were passed successfully.

4.2. Validation of the Correctness of the Entropy Model

This section aims to validate the correctness of the entropy model in Section 3.3. Based on the actual sampling data, we know that the Allan variance is 5.0978 2 . Using the relationship between the count values and Allan variance in the entropy model, we can obtain a theoretical value. If we can proof that the theoretical value of the Allan variance is still equal to 5.0978 2 , then we have proved the correctness of the entropy model. The specific validation process is as follows:
  • Obtain 2 16 count values.
  • Calculate the mean μ using the count values.
  • Similar to Section 4.1, calculate the sampling frequency f 3 using the count values.
  • Calculate the minimum value of k that satisfies L k T 3 2 .
  • Divide each k count value into a group, count the number of groups that satisfy L k T 3 2 , and use the relationship P r ( R i k ) = P r ( L k T 3 2 ) to approximate the probability value.
  • Substitute the statistical results of the above data into Formula (15) to calculate the Allan variance; the result is shown in Table 2.
    σ a = T 3 2 k μ 2 k e r f 1 ( 1 2 P r ( R i k ) )
Regarding the results shown in Table 2, the presence of two zeros in the Allan variance is due to the conditions T 3 / 2 = k μ and e r f 1 ( 1 2 P r ( R i k ) ) = . In these cases, the variance is indeed 0, and therefore, these two zero values need not be considered. From the table, it can be observed that the Allan variance obtained from the calculation model is close to the experimentally measured Allan variance of 5.0978 2 . This indicates that our entropy model can be used to establish and analyze a random model for the Rosin Autonomous Boolean Network TRNG.

4.3. Comparison of Results and Recommended Parameters

In order to achieve the optimal parameters for Rosin’s Boolean Network TRNG on different FPGA models, it is necessary to analyze the impact of the frequency of the slow clock control signal S 3 on the output.
Firstly, let r = ( T 3 / 2 ) mod μ . If r = 0, the period value T 3 of the control signal S 3 is exactly a multiple of the period value of the transition signal S 1 . In this case, the edges of the two signals coincide at any moment, meaning that the sampling point is precisely located at the 0–1 transition edge of the S 1 periodic signal.
If r = ( s / 2 ) mod μ = 0.5 μ , the period value of the control signal S 3 is half a period value more than a multiple of the S 1 periodic value. In this scenario, the sampling point is precisely located between two adjacent 0–1 transition edges of the S 1 periodic signal, resulting in the maximum deviation in the sampled random number effect.
Based on the above analysis, let r = ( s / 2 ) mod μ = 0 ; by substituting parameters μ = 128.6207 , we could obtain T 3 = 4 μ = 514.4528 . This result indicates that, ideally, when sampling the transition signal S 1 with a slow signal S 3 of 515 half periods, the output entropy of the TRNG can be maximized. When using different FPGAs to port this structure, the corresponding half-cycle length T 3 and Allan variance σ a 2 can be calculated based on different count values, and then the entropy model can be used to obtain the highest sampling frequency required to achieve entropy on different structures, in order to achieve the fastest output speed.
Then, we utilize the proposed entropy estimation method to configure the structural parameters of Rosin’s Boolean Network under the weakened and even degenerate case, that is, where the number of the nodes are as low as nodes 5, 6, 7, and 8, and calculate the entropy values. Using the model to determine sampling parameters at low nodes will result in greater entropy and better improvement.
The mean, Allan variance, and the required half-period length for an entropy greater than 0.9999 for the structure proposed by Rosin under nodes 5, 6, 7, and 8, obtained through the experimental steps described in Section 4.1, are shown in the Table 3.
Because Rosin ABN TRNGs may experience insufficient entropy or even degradation at low nodes, we investigated the applicability of our model at low nodes. Under the same structure, the entropy values obtained by directly sampling and those obtained after using the recommended parameters are shown in Table 4. Through the comparison of the entropy values, it can be observed that the entropy values of the Rosin structure significantly increased under low-node conditions after using the recommended parameters. This also validates the feasibility and correctness of our entropy model.

5. Conclusions

This paper established a theoretical entropy model to evaluate the entropy and presented entropy calculation method for Rosin ABN TRNGs. The model replaces standard variance with Allan variance, which is more suitable for estimating jitter in the Rosin ABN. The correctness and effectiveness of this model was validated in Altera Cyclone IV EP4CE6F and Altera Cyclone IV EP4CE10F FPGA, and recommended sampling parameters were provided to enhance the quality of the generated true random numbers. Future work will focus on entropy modeling and analysis for broader Boolean chaos TRNGs.

Author Contributions

Conceptualization, Y.Z. and L.D.; Data curation, X.L.; Investigation, L.D.; Software, Y.Z. and X.L.; Supervision, L.D.; Validation, Y.Z. and L.D.; Writing—original draft, Y.Z. and L.D. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Crocetti, L.; Matteo, S.D.; Nannipieri, P.; Fanucci, L.; Saponara, S. Design and Test of an Integrated Random Number Generator with All-Digital Entropy Source. Entropy 2022, 24, 139. [Google Scholar] [CrossRef] [PubMed]
  2. Killmann, W. A Proposal for: Functionality Classes and Evaluation Methodology for True (Physical) Random Number Generators; Bundesmat fur Sicherheir in der Information technik (BSI): Bon, Germany, 2001. [Google Scholar]
  3. Rukhin, A.; Soto, J.; Nechvatal, J.; Smid, M.; Barker, E.; Leigh, S.; Levenson, M.; Vangel, M.; Banks, D.; Heckert, A. Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications. Revision 1A; National Institute of Standards and Technology: Gaithersburg, MD, USA, 2010. [Google Scholar]
  4. Barker, E.B.; Feldman, L.; Witte, G. ITL Bulletin: Recommendation for Random Number Generation Using Deterministic Random Bit Generators (August 2015); National Institute of Standards and Technology: Gaithersburg, MD, USA, 2015. [Google Scholar]
  5. GM/T 0005-2012; Randomness Testing Specifications. National Standardization Administration of China: Beijing, China, 2012.
  6. Saponara, S. Review of Methodologies and Metrics for Assessing the Quality of Random Number Generators. Electronics 2023, 12, 723. [Google Scholar]
  7. Ma, Y.; Lin, J.; Chen, T.; Xu, C.; Liu, Z.; Jing, J. Entropy Evaluation for Oscillator-Based True Random Number Generators. In Proceedings of the Cryptographic Hardware and Embedded Systems, Busan, Republic of Korea, 23–26 September 2014. [Google Scholar]
  8. Killmann, W.; Schindler, W. A Design for a Physical RNG with Robust Entropy Estimators. In Proceedings of the Cryptographic Hardware and Embedded Systems—CHES 2008, 10th International Workshop, Washington, DC, USA, 10–13 August 2008. [Google Scholar]
  9. Zhu, S.; Chen, H.; Fan, L.; Chen, M.; Xi, W.; Feng, D. Jitter estimation with high accuracy for oscillator-based TRNGs. In Proceedings of the Smart Card Research and Advanced Applications: 17th International Conference, CARDIS 2018, Montpellier, France, 12–14 November 2018; Revised Selected Papers 17. Springer: Berlin/Heidelberg, Germany, 2019; pp. 125–139. [Google Scholar]
  10. Ma, Y.; Chen, T.; Lin, J.; Yang, J.; Jing, J. Entropy estimation for ADC sampling-based true random number generators. IEEE Trans. Inf. Forensics Secur. 2019, 14, 2887–2900. [Google Scholar] [CrossRef]
  11. Saarinen, M.J.O. On entropy and bit patterns of ring oscillator jitter. In Proceedings of the 2021 Asian Hardware Oriented Security and Trust Symposium (AsianHOST), Shanghai, China, 16–18 December 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 1–6. [Google Scholar]
  12. Rosin, D.P.; Rosin, D.P. Ultra-fast physical generation of random numbers using hybrid boolean networks. In Dynamics of Complex Autonomous Boolean Networks; Springer: Berlin/Heidelberg, Germany, 2015; pp. 57–79. [Google Scholar]
  13. Hui, Y. Design and Analysis of Digital True Random Number Generator. Master’s Thesis, Xidian University, Xi’an, China, 2018. [Google Scholar]
  14. Gong, L.; Zhang, J.; Sang, L.; Liu, H.; Wang, Y. The unpredictability analysis of Boolean chaos. IEEE Trans. Circuits Syst. II Express Briefs 2019, 67, 1854–1858. [Google Scholar] [CrossRef]
  15. Braccini, M.; Roli, A.; Barbieri, E.; Kauffman, S.A. On the criticality of adaptive Boolean network robots. Entropy 2022, 24, 1368. [Google Scholar] [CrossRef] [PubMed]
  16. Charlot, N.; Canaday, D.; Pomerance, A.; Gauthier, D.J. Hybrid boolean networks as physically unclonable functions. IEEE Access 2021, 9, 44855–44867. [Google Scholar] [CrossRef]
  17. Gao, S.; Wu, R.; Wang, X.; Liu, J.; Li, Q.; Wang, C.; Tang, X. Asynchronous updating Boolean network encryption algorithm. IEEE Trans. Circuits Syst. Video Technol. 2023, 33, 4388–4400. [Google Scholar] [CrossRef]
  18. Yan, P.F.; Zhang, H.; Zhang, C.; Chang, R.Y.; Sun, Y.J. Synchronization of Boolean networks with chaos-driving and its application in image cryptosystem. IET Image Process. 2023, 17, 4176–4189. [Google Scholar] [CrossRef]
  19. Allini, E.N.; Skórski, M.; Petura, O.; Bernard, F.; Laban, M.; Fischer, V. Evaluation and monitoring of free running oscillators serving as source of randomness. IACR Trans. Cryptogr. Hardw. Embed. Syst. 2018, 2018, 214–242. [Google Scholar] [CrossRef]
  20. Allan, D.W. A Modified “Allan Variance” with Increased Oscillator Characterization Ability. In Proceedings of the Annual Frequency Control Symposium, Philadelphia, PA, USA, 27–29 May 1981. [Google Scholar]
  21. GM/T 0078-2020; Design Guide for Password Random Number Generation Module. National Standardization Administration of China: Beijing, China, 2020.
Figure 1. TRNG of Rosin Autonomous Boolean Network.
Figure 1. TRNG of Rosin Autonomous Boolean Network.
Electronics 13 01140 g001
Figure 2. Jitter accumulation comparison chart: (a) traditional TRNG jitter accumulation. (b) Rosin Autonomous Boolean Network jitter accumulation.
Figure 2. Jitter accumulation comparison chart: (a) traditional TRNG jitter accumulation. (b) Rosin Autonomous Boolean Network jitter accumulation.
Electronics 13 01140 g002
Figure 3. Comparison of output waveforms between a single Rosin Autonomous Boolean Network TRNG (sig 1) and a single oscillation loop TRNG (sig 2).
Figure 3. Comparison of output waveforms between a single Rosin Autonomous Boolean Network TRNG (sig 1) and a single oscillation loop TRNG (sig 2).
Electronics 13 01140 g003
Figure 4. Sampling diagram of the output waveform of the Rosin Autonomous Boolean Network TRNG.
Figure 4. Sampling diagram of the output waveform of the Rosin Autonomous Boolean Network TRNG.
Electronics 13 01140 g004
Figure 5. Equivalent model.
Figure 5. Equivalent model.
Electronics 13 01140 g005
Figure 6. Entropy values at different sampling frequencies.
Figure 6. Entropy values at different sampling frequencies.
Electronics 13 01140 g006
Table 1. NIST test.
Table 1. NIST test.
Proportion with a Sample Frequency of 100 MHzProportion with the Sample Frequency Obtained from Ma’s ModelProportion with the Sample Frequency Obtained from Our Improved Model
Frequency0.971 *0.830 *0.993
Block Frequency0.9900.970 *0.991
Cumulative Sums0.938 *0.851 *0.995
Runs0.9890.972 *0.991
LongestRun0.982 *0.970 *0.993
Rank0.985 *0.978 *0.996
FFT0.9910.971 *0.996
NonOverlappingTemplate0.983 *0.934 *0.988
OverlappingTemplate0.927 *0.788 *0.987
ApproximateEntropy0.970 *0.930 *0.990
RandomExcursions0.9890.954 *0.989
RandomExcursionsVar0.972 *0.955 *0.988
Serial0.9870.880 *0.990
LinearComplexity0.982 *0.960 *0.994
Table 2. Allan Variance σ a 2 corresponding to different count values in theoretical model.
Table 2. Allan Variance σ a 2 corresponding to different count values in theoretical model.
Counting ValueNumber of OccurrencesProportion σ a 2
49610.00001 5.5366 2
497270.0004 5.1859 2
4987500.0114 5.0907 2
49976440.1166 5.0660 2
50024,1910.36910
50124,2750.3704 5.1576 2
50278190.1193 5.1398 2
5037980.00122 5.2086 2
504310.00050
Table 3. Mean, Allan variance, and recommended half-cycle length under low-node Rosin structure.
Table 3. Mean, Allan variance, and recommended half-cycle length under low-node Rosin structure.
5 Nodes6 Nodes7 Nodes8 Nodes
Mean129.1118129.0564130.1705128.5994
Allan variance 5.117 2 5.137 2 5.114 2 5.103 2
Recommended half-cycle length12,136.50927488.48446508.5253343.5844
Sample frequency1.055 MHz1.71 MHz1.967 MHz3.829 MHz
Table 4. Comparison of entropy values before and after using the recommended parameters between the structure of this article and the Rosin structure.
Table 4. Comparison of entropy values before and after using the recommended parameters between the structure of this article and the Rosin structure.
5 Nodes6 Nodes7 Nodes8 Nodes
Directly output entropy value0.9335030.9418330.9439390.974506
Entropy value under recommended parameters0.999960.999940.999910.99997
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Zong, Y.; Dong, L.; Lu, X. Entropy Model of Rosin Autonomous Boolean Network Digital True Random Number Generator. Electronics 2024, 13, 1140. https://doi.org/10.3390/electronics13061140

AMA Style

Zong Y, Dong L, Lu X. Entropy Model of Rosin Autonomous Boolean Network Digital True Random Number Generator. Electronics. 2024; 13(6):1140. https://doi.org/10.3390/electronics13061140

Chicago/Turabian Style

Zong, Yi, Lihua Dong, and Xiaoxin Lu. 2024. "Entropy Model of Rosin Autonomous Boolean Network Digital True Random Number Generator" Electronics 13, no. 6: 1140. https://doi.org/10.3390/electronics13061140

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop