| Literature DB >> 30134589 |
Carmen Camara1, Pedro Peris-Lopez2, Honorio Martín3, Mu'awya Aldalaien4.
Abstract
Wireless Sensor Networks (WSNs) are a promising technology with applications in many areas such as environment monitoring, agriculture, the military field or health-care, to name but a few. Unfortunately, the wireless connectivity of the sensors opens doors to many security threats, and therefore, cryptographic solutions must be included on-board these devices and preferably in their design phase. In this vein, Random Number Generators (RNGs) play a critical role in security solutions such as authentication protocols or key-generation algorithms. In this article is proposed an avant-garde proposal based on the cardiac signal generator we carry with us (our heart), which can be recorded with medical or even low-cost sensors with wireless connectivity. In particular, for the extraction of random bits, a multi-level decomposition has been performed by wavelet analysis. The proposal has been tested with one of the largest and most publicly available datasets of electrocardiogram signals (202 subjects and 24 h of recording time). Regarding the assessment, the proposed True Random Number Generator (TRNG) has been tested with the most demanding batteries of statistical tests (ENT, DIEHARDERand NIST), and this has been completed with a bias, distinctiveness and performance analysis. From the analysis conducted, it can be concluded that the output stream of our proposed TRNG behaves as a random variable and is suitable for securing WSNs.Entities:
Keywords: Electrocardiogram (ECG) sensor; Random Number Generators (RNGs); Wireless Sensor Networks (WSNs); wavelet
Mesh:
Year: 2018 PMID: 30134589 PMCID: PMC6164852 DOI: 10.3390/s18092747
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Figure 1ECG signal.
ENT results (10-MB file with 4-LSB Inter-Pulse-Interval (IPI) values).
| Approximately | IPI-Based Approach | Optimal Values |
|---|---|---|
| Entropy | 7.957724 | 8 |
| Optimum | 0% | 0% |
| compression | ||
| Chi square | 493.49 | 256 |
| (0.01%) | ([5–95%]) | |
| Arithmetic mean value | 123.0993 | 127.5 |
| Monte Carlo | 3.158811 | 3.14159 |
| Serial correlation | 0.031878 | 0 |
| coefficient |
Figure 2Hardware for building an ECG-based RNG.
Figure 3Wavelet decomposition of a signal .
Population descriptive statistics.
| Statistic | Male | Female |
|---|---|---|
| Number | 101 | 101 |
| Height | 176.8 | 162.3 |
| Weight | 77.6 | 62.3 |
| Body Mass | 24.7 | 23.7 |
NIST results.
| Approximately | Level 1 | Level 2 | Level 3 | Level 4 |
|---|---|---|---|---|
| Frequency | 0.8165 (49/50) | 0.9558 (50/50) | 0.0200 (49/50) | 0.8514 (49/50) |
| Block Frequency | 0.4190 (49/50) | 0.4190 (47/50) | 0.8832 (49/50) | 0.1917 (49/50) |
| Cumulative Sums | 0.5207 (2/2) | 0.4356 (2/2) | 0.6101 (2/2) | 0.1563 (2/2) |
| (49/50) | (50/50) | (49/50) | (49/50) | |
| Runs | 0.6993 (48/50) | 0.6993 (50/50) | 0.4944 (50/50) | 0.4559 (50/50) |
| Longest Run | 0.2897 (50/50) | 0.6993 (50/50) | 0.9915 (50/50) | 0.8832 (50/50) |
| Rank | 0.08559 (50/50) | 0.5341 50/50 | 0.3505 (49/50) | 0.0352 (50/50) |
| FFT | 0.1223 (50/50) | 0.0757 (49/50) | 0.5749 (49/50) | 0.2897 (50/50) |
| Non-Overlapping | 0.4986 (148/148) | 0.4881 (148/148) | 0.5080 (148/148) | 0.5090 (148/148) |
| Template | (>49/50) | (>49/50) | (>49/50) | (>49/50) |
| Overlapping Template | 0.3838 (50/50) | 0.1719 (48/50) | 0.9558 (48/50) | 0.4190 (49/50) |
| Universal | 0.3505 (50/50) | 0.0156 (50/50) | 0.3838 (48/50) | 0.9915 (49/50) |
| Approximate Entropy | 0.0669 (48/50) | 0.9558 (49/50) | 0.6993 (50/50) | 0.1088 (50/50) |
| Random Excursions | 0.2865 (8/8) | 0.1094 (8/8) | 0.3629 (8/8) | 0.4111 (8/8) |
| (>36/38) | (>37/38) | (>33/34) | (>32/33) | |
| Random Excursions Variant | 0.2867 (18/18) | 0.3328 (18/18) | 0.4612 (18/18) | 0.3969 (18/18) |
| (>36/37) | (>37/38) | (>33/34) | (>32/33) | |
| Serial | 0.6511 (2/2) | 0.9537 (2/2) | 0.1753 (2/2) | 0.5116 (2/2) |
| (>49/50) | ( | (49/50) | (49/50) | |
| Linear Complexity | 0.0352 (50/50) | 0.2622 (50/50) | 0.5749 (49/50) | 0.9717 (50/50) |
Diehardresults.
| Approximately | Level 1 | Level 2 | Level 3 | Level 4 |
|---|---|---|---|---|
| Birthdays | 0.68301545 | 0.61270139 | 0.80007480 | 0.94460956 |
| OPERM5 | 0.01657098 | 0.76376607 | 0.77095792 |
|
| 32 × 32 Binary Rank | 0.73054931 | 0.93907677 | 0.93485678 | 0.40762130 |
| 6 × 8 Binary Rank | 0.03964233 | 0.63609809 | 0.01640541 | 0.78004161 |
| Bitstream | 0.44644237 | 0.38432822 | 0.76304154 | 0.46452841 |
| OQSO | 0.16901300 |
| 0.10390905 | 0.07871345 |
| 0.76574765 | 0.63218487 | 0.56716581 | 0.69843874 | |
| DNA | 0.01104271 | 0.66337412 | 0.04864965 | 0.16432922 |
| Count the 1’s (stream) | 0.64310466 | 0.75768749 | 0.14166650 | 0.64535121 |
| Count the 1’s Test (bytes) | 0.61217963 | 0.12233837 | 0.45342646 | 0.31039533 |
| Parking Lot | 0.01700299 | 0.72327165 | 0.45123033 | 0.61550204 |
| Minimum Distance | 0.05835137 | 0.39712445 | 0.57168207 | 0.60978869 |
| (2D Circle) | ||||
| 3D Sphere | 0.45525876 | 0.40382693 | 0.74404666 | 0.94736187 |
| (Minimum Distance) | ||||
| Squeeze Test | 0.51553404 |
| 0.26298106 | 0.87828628 |
| Runs | 0.01450632 | 0.17897685 | 0.64894698 | 0.85809732 |
| 0.77031157 | 0.78097772 | 0.51236956 | 0.27052895 | |
| Craps | 0.01027903 | 0.09666884 | 0.00901385 | 0.91551334 |
|
| 0.08596808 | 0.27730790 | 0.90795457 |
ENT results.
| Approximately | Level 1 | Level 2 | Level 3 | Level 4 |
|---|---|---|---|---|
| Entropy | 7.999998 | 7.999998 | 7.999998 | 7.999998 |
| Optimum | 0 % | 0 % | 0 % | 0 % |
| Compression | ||||
| Chi Square | 279.22 | 268.41 | 235.82 | 313.44 |
| (14.24 %) | (26.99 %) | (80.01 %) | (0.73 %) | |
| Arithmetic Mean Value | 127.4657 | 127.4731 | 127.4896 | 127.4931 |
| Monte Carlo | 3.141955902 | 3.142772504 | 3.141912708 | 3.141860883 |
| Serial Correlation | −0.000105 | 0.000022 | −0.000124 | 0.000058 |
| Coefficient |
Figure 4Bias analysis.
Figure 5Hamming distance distribution.
Performance analysis.
| Approach | Efficiency | Throughput (60 PPMs) | Throughput (100 PPMs) |
|---|---|---|---|
| IPI-based approaches [ | 4 bits/2 heart-beats | 2 bits /second | 3.3 bits/second |
| Pirbhulal et al. [ | 16 bits/2 heart-beats | 8 bits/second | 13.33 bits/second |
| Our approach | 23 bytes/heart-beat | 184 bits/second | 306 bits/second |
Figure 6Throughput analysis.
Wavelet family analysis.
| Test | ENT | DIEHARDER | NIST | |
|---|---|---|---|---|
| Family | ||||
| Daubechies ( | PASS (6/6) | PASS (15/15) | PASS (15/15) | |
| Haar | PASS (6/6) | (12 PASS–2 WEAK–1 FAILED)/15 | PASS (15/15) | |
| Coiflets ( | PASS (6/6) | (14 PASS–1 WEAK) /15 | PASS (15/15) | |
| Symlets ( | PASS (6/6) | (13 PASS–2 WEAK) /15 | PASS (15/15) | |
| Discrete Meyer | PASS (6/6) | PASS (15/15) | PASS (14/15) | |
| Biorthogonal ( | PASS (6/6) | (13 PASS–2 WEAK) /15 | PASS (12/15) | |
Figure 7p-values (DIEHARD and NIST suite tests).