| Literature DB >> 23899936 |
Antonio de la Piedra1, An Braeken, Abdellah Touhafi.
Abstract
Typically, commercial sensor nodes are equipped with MCUsclocked at a low-frequency (i.e., within the 4-12 MHz range). Consequently, executing cryptographic algorithms in those MCUs generally requires a huge amount of time. In this respect, the required energy consumption can be higher than using a separate accelerator based on a Field-programmable Gate Array (FPGA) that is switched on when needed. In this manuscript, we present the design of a cryptographic accelerator suitable for an FPGA-based sensor node and compliant with the IEEE802.15.4 standard. All the embedded resources of the target platform (Xilinx Artix-7) have been maximized in order to provide a cost-effective solution. Moreover, we have added key negotiation capabilities to the IEEE 802.15.4 security suite based on Elliptic Curve Cryptography (ECC). Our results suggest that tailored accelerators based on FPGA can behave better in terms of energy than contemporary software solutions for motes, such as the TinyECC and NanoECC libraries. In this regard, a point multiplication (PM) can be performed between 8.58- and 15.4-times faster, 3.40- to 23.59-times faster (Elliptic Curve Diffie-Hellman, ECDH) and between 5.45- and 34.26-times faster (Elliptic Curve Integrated Encryption Scheme, ECIES). Moreover, the energy consumption was also improved with a factor of 8.96 (PM).Entities:
Mesh:
Year: 2013 PMID: 23899936 PMCID: PMC3812576 DOI: 10.3390/s130809704
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Figure 1.Organization of the proposed AES-CCM architecture.
Figure 2.Proposed organization for the key schedule.
Performance of coordinate systems in prime fields. PA, point addition; PD, point doubling; M, multiplication; S, squaring.
| Standard projective | 12M + 2S | 7M + 5S |
| Jacobian | 12M+4S | 8M+3S |
| Chudnovsky-Jacobian | 11M + 3S | 5M + 6S |
Performance of coordinate systems in binary extension fields.
| Standard projective | 16M + 2S | 8M + 4S |
| Jacobian | 16M+3S | 11M+3S |
| López-Dahab | 13M+4S | 5M+4S |
Figure 3.p192 modular adder and subtractor [24].
Figure 4.One-hundred and ninety-two-bit multiplier design.
Figure 5.Organization of the proposed B-163 adder.
Figure 6.Organization of the secure hash algorithm (SHA)-256 implementation.
Figure 7.Organization of the P-192 accelerator.
Place and Route (PAR) results of the cryptographic algorithms implemented only using LUTs (XC7A100TL).
| P-192 modular adder/subtractor | 173.361 | 4 | 399 | 3 | - |
| P-192 multiplier | 188.460 | 25 | 986 | 1 | - |
| B-163 adder/subtractor | 410.231 | 1 | 219 | - | - |
| B-163 multiplier | 445.177 | 163 | 312 | 2 | - |
PAR results of the cryptographic algorithms implemented only using DSPs (XCTA100TL).
| P-192 modular adder/subtractor | 92.237 | 4 | 302 | 24.31 | 3 | 8 |
| P-192 multiplier | 188.460 | 25 | 433 | 56.08 | 1 | 24 |
| B-163 adder/subtractor | 224.298 | 1 | 132 | 39.72 | - | 4 |
| B-163 multiplier | 259.700 | 163 | 271 | 13.14 | 2 | 8 |
PAR results of the two proposed accelerators.
| Platform | Artix-7 (XC7A100TL) | Artix-7 (XC7A100TL) |
| 51.244 | 51.244 | |
| # of Slices | 1,418 | 603 |
| # of BRAMs (36 kb) | 4 | 2 |
| # of BRAMs (18 kb) | 20 | 21 |
| # of DSP48A1 slices | 63 | 38 |
PAR results of the SHA-256 implementation.
| Platform | Artix-7 (XC7A100TL) | Artix-7 (XC7A100TL) |
| 96.834 | 42.817 | |
| # of Slices | 688 | 551 |
| # of BRAMs (36 kb) | - | - |
| # of BRAMs (18 kb) | 9 | 9 |
| # of DSP48A1 slices | 0 | 32 |
Performance summary of the P-192 accelerator at 10 MHz. ECDH, Elliptic Curve Diffie-Hellman.
| AES | 5.55 | 8/45 | 2.49 × 10-4 |
| SHA-256 | 9.45 | 15/53 | 5 × 10-4 |
| Multiplication | 4.65 | 10/47 | 2.18 × 10-4 |
| Addition | 2.85 | 7/47 | 1.33 × 10-4 |
| Point addition | 72.25 | 8/46 | 0.003 |
| Point doubling | 86.75 | 10/48 | 0.004 |
| Point multiplication | 23,056 | 10/48 | 1.10 |
| ECDH | 45,112 | 10/48 | 2.21 |
| ECIES | 46,129 | 10/48 | 2.21 |
Performance summary of the B-163 accelerator at 10 MHz.
| AES | 5.55 | 5/43 | 2.38 × 10-4 |
| SHA-256 | 9.45 | 12/49 | 4.63 × 10-4 |
| Multiplication | 19.25 | 3/40 | 7.70 × 10-4 |
| Addition | 1.95 | 4/41 | 7.99 × 10-5 |
| Point addition | 252.95 | 2/40 | 0.01 |
| Point doubling | 319.55 | 2/40 | 0.01 |
| Point multiplication | 83,850.35 | 2/40 | 3.35 |
| ECDH | 167,700 | 2/40 | 6.70 |
| ECIES | 167,720 | 2/40 | 6.70 |
Comparison on execution time (ms) with other Elliptic Curve Cryptography (ECC) and AES-128 implementations in commercial sensor nodes (B-163).
| NanoECC (160-bit)-MICA2 [ | 1,270 | - | - | - | ||
| NanoECC (160-bit)-Tmote Sky [ | 720 | - | - | - | ||
| TinyECC (160-bit)-MICAz [ | - | 3,956.17 | 5,746.2 | - | ||
| TinyECC (160-bit)-Tmote Sky [ | - | 2,075.5 | 3,590.42 | - | ||
| TinyECC (160-bit)-Imote2 (13 MHz) [ | - | 571.28 | 915.31 | - | ||
| Healy | - | - | - | 0.32383 | ||
| Healy | - | - | - | 2.022 | ||
Comparison on energy consumption (mJ) with other ECC and AES-128 implementations in commercial sensor nodes (B-163).
| NanoECC (160-bit)-MICA2 [ | 30.02 | - | - | - |
| NanoECC (160-bit)-Tmote Sky [ | 7.95 | - | - | - |
| TinyECC (160-bit)-MICAz [ | - | 94.95 | 137.91 | - |
| TinyECC (160-bit)-Tmote Sky [ | - | 16.61 | 24.78 | - |
| TinyECC (160-bit)-Imote2 (13 MHz) [ | - | 16.83 | 26.95 | - |
| Healy et al.-CC2420 [ | - | - | - | 0.0084 |
| Healy et al.-MICAz [ | - | - | - | 0.0525 |