Copyright (c) 2014-2019 SEGGER Microcontroller GmbH www.segger.com
Modular Exponentiation Benchmark compiled Aug 6 2019 11:55:01
Compiler: gcc 8.2.1
System: Processor speed = 400.000 MHz
Config: CRYPTO_VERSION = 23400 [2.34]
Config: CRYPTO_MPI_BITS_PER_LIMB = 32
Modular Arithmetic Performance
==============================
CRT private key, exponent length = modulus length, all times in ms
+---------------------------+--------------------------------+--------------------------------+
| Modulus | 1024 bits | 2048 bits |
| Algorithm | Time x Memory x | Time x Memory x |
+---------------------------+--------------------------------+--------------------------------+
| Basic, fast | 33.67 1.00x 700 1.00x | 192.86 1.00x 1340 1.00x |
| Basic, ladder | 46.80 0.72x 840 1.20x | 276.63 0.70x 1608 1.20x |
| Basic, 2b, FW | 31.12 1.08x 1260 1.80x | 178.05 1.08x 2412 1.80x |
| Basic, 3b, FW | 29.19 1.15x 1820 2.60x | 168.18 1.15x 3484 2.60x |
| Basic, 4b, FW | 28.13 1.20x 2940 4.20x | 161.44 1.19x 5628 4.20x |
| Basic, 5b, FW | 27.90 1.21x 5180 7.40x | 158.39 1.22x 9916 7.40x |
| Basic, 6b, FW | 28.70 1.17x 9660 13.80x | 157.88 1.22x 18492 13.80x |
+---------------------------+--------------------------------+--------------------------------+
| Basic, 2b, RM | 30.67 1.10x 1260 1.80x | 176.57 1.09x 2412 1.80x |
| Basic, 3b, RM | 28.92 1.16x 1540 2.20x | 166.91 1.16x 2948 2.20x |
| Basic, 4b, RM | 27.74 1.21x 2100 3.00x | 159.75 1.21x 4020 3.00x |
| Basic, 5b, RM | 27.17 1.24x 3220 4.60x | 155.92 1.24x 6164 4.60x |
| Basic, 6b, RM | 27.21 1.24x 5460 7.80x | 153.51 1.26x 10452 7.80x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, fast | 35.84 0.94x 980 1.40x | 190.20 1.01x 1876 1.40x |
| Barrett, ladder | 49.46 0.68x 1120 1.60x | 270.73 0.71x 2144 1.60x |
| Barrett, 2b, FW | 33.69 1.00x 1540 2.20x | 177.02 1.09x 2948 2.20x |
| Barrett, 3b, FW | 31.34 1.07x 2100 3.00x | 166.26 1.16x 4020 3.00x |
| Barrett, 4b, FW | 30.11 1.12x 3220 4.60x | 158.87 1.21x 6164 4.60x |
| Barrett, 5b, FW | 29.84 1.13x 5460 7.80x | 155.70 1.24x 10452 7.80x |
| Barrett, 6b, FW | 30.68 1.10x 9940 14.20x | 155.28 1.24x 19028 14.20x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, 2b, RM | 32.63 1.03x 1540 2.20x | 174.04 1.11x 2948 2.20x |
| Barrett, 3b, RM | 30.81 1.09x 1820 2.60x | 164.20 1.17x 3484 2.60x |
| Barrett, 4b, RM | 29.60 1.14x 2380 3.40x | 156.97 1.23x 4556 3.40x |
| Barrett, 5b, RM | 29.03 1.16x 3500 5.00x | 153.21 1.26x 6700 5.00x |
| Barrett, 6b, RM | 29.04 1.16x 5740 8.20x | 150.83 1.28x 10988 8.20x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, fast | 22.37 1.51x 700 1.00x | 136.67 1.41x 1340 1.00x |
| Montgomery, ladder | 30.00 1.12x 840 1.20x | 181.11 1.06x 1608 1.20x |
| Montgomery, 2b, FW | 22.66 1.49x 1260 1.80x | 136.41 1.41x 2412 1.80x |
| Montgomery, 3b, FW | 20.35 1.65x 1820 2.60x | 121.80 1.58x 3484 2.60x |
| Montgomery, 4b, FW | 19.36 1.74x 2940 4.20x | 114.97 1.68x 5628 4.20x |
| Montgomery, 5b, FW | 19.08 1.76x 5180 7.40x | 112.10 1.72x 9916 7.40x |
| Montgomery, 6b, FW | 19.59 1.72x 9660 13.80x | 112.10 1.72x 18492 13.80x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, 2b, RM | 20.67 1.63x 1260 1.80x | 125.51 1.54x 2412 1.80x |
| Montgomery, 3b, RM | 19.57 1.72x 1540 2.20x | 117.70 1.64x 2948 2.20x |
| Montgomery, 4b, RM | 18.87 1.78x 2100 3.00x | 112.71 1.71x 4020 3.00x |
| Montgomery, 5b, RM | 18.64 1.81x 3220 4.60x | 110.45 1.75x 6164 4.60x |
| Montgomery, 6b, RM | 18.58 1.81x 5460 7.80x | 108.81 1.77x 10452 7.80x |
+---------------------------+--------------------------------+--------------------------------+
| Configured | 22.46 1.50x 700 1.00x | 137.06 1.41x 1340 1.00x |
+---------------------------+--------------------------------+--------------------------------+
Public key, exponent length = 17 bits, all times in ms
+---------------------------+--------------------------------+--------------------------------+
| Modulus | 1024 bits | 2048 bits |
| Algorithm | Time x Memory x | Time x Memory x |
+---------------------------+--------------------------------+--------------------------------+
| Basic, fast | 0.99 1.00x 804 1.00x | 3.43 1.00x 1572 1.00x |
| Basic, ladder | 2.09 0.47x 1072 1.33x | 7.34 0.47x 2096 1.33x |
| Basic, 2b, FW | 1.16 0.85x 1876 2.33x | 3.99 0.86x 3668 2.33x |
| Basic, 3b, FW | 1.38 0.72x 2948 3.67x | 4.76 0.72x 5764 3.67x |
| Basic, 4b, FW | 1.99 0.50x 5092 6.33x | 6.93 0.50x 9956 6.33x |
| Basic, 5b, FW | 3.05 0.32x 9380 11.67x | 10.66 0.32x 18340 11.67x |
| Basic, 6b, FW | 5.13 0.19x 17956 22.33x | 17.87 0.19x 35108 22.33x |
+---------------------------+--------------------------------+--------------------------------+
| Basic, 2b, RM | 1.12 0.88x 1876 2.33x | 3.88 0.88x 3668 2.33x |
| Basic, 3b, RM | 1.26 0.78x 2412 3.00x | 4.38 0.78x 4716 3.00x |
| Basic, 4b, RM | 1.54 0.64x 3484 4.33x | 5.37 0.64x 6812 4.33x |
| Basic, 5b, RM | 2.10 0.47x 5628 7.00x | 7.35 0.47x 11004 7.00x |
| Basic, 6b, RM | 3.22 0.31x 9916 12.33x | 11.29 0.30x 19388 12.33x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, fast | 1.09 0.90x 1340 1.67x | 3.53 0.97x 2620 1.67x |
| Barrett, ladder | 2.29 0.43x 1608 2.00x | 7.52 0.46x 3144 2.00x |
| Barrett, 2b, FW | 1.32 0.75x 2412 3.00x | 4.13 0.83x 4716 3.00x |
| Barrett, 3b, FW | 1.52 0.65x 3484 4.33x | 4.87 0.71x 6812 4.33x |
| Barrett, 4b, FW | 2.16 0.46x 5628 7.00x | 6.97 0.49x 11004 7.00x |
| Barrett, 5b, FW | 3.26 0.30x 9916 12.33x | 10.62 0.32x 19388 12.33x |
| Barrett, 6b, FW | 5.40 0.18x 18492 23.00x | 17.67 0.19x 36156 23.00x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, 2b, RM | 1.23 0.80x 2412 3.00x | 3.97 0.87x 4716 3.00x |
| Barrett, 3b, RM | 1.38 0.72x 2948 3.67x | 4.45 0.77x 5764 3.67x |
| Barrett, 4b, RM | 1.67 0.59x 4020 5.00x | 5.42 0.63x 7860 5.00x |
| Barrett, 5b, RM | 2.25 0.44x 6164 7.67x | 7.35 0.47x 12052 7.67x |
| Barrett, 6b, RM | 3.41 0.29x 10452 13.00x | 11.20 0.31x 20436 13.00x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, fast | 0.94 1.05x 804 1.00x | 3.24 1.06x 1572 1.00x |
| Montgomery, ladder | 1.72 0.57x 1072 1.33x | 5.93 0.58x 2096 1.33x |
| Montgomery, 2b, FW | 1.43 0.69x 1876 2.33x | 4.91 0.70x 3668 2.33x |
| Montgomery, 3b, FW | 1.47 0.67x 2948 3.67x | 5.07 0.68x 5764 3.67x |
| Montgomery, 4b, FW | 1.88 0.52x 5092 6.33x | 6.45 0.53x 9956 6.33x |
| Montgomery, 5b, FW | 2.55 0.39x 9380 11.67x | 8.75 0.39x 18340 11.67x |
| Montgomery, 6b, FW | 3.87 0.25x 17956 22.33x | 13.22 0.26x 35108 22.33x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, 2b, RM | 1.08 0.91x 1876 2.33x | 3.69 0.93x 3668 2.33x |
| Montgomery, 3b, RM | 1.17 0.84x 2412 3.00x | 4.00 0.86x 4716 3.00x |
| Montgomery, 4b, RM | 1.44 0.69x 3484 4.33x | 4.92 0.70x 6812 4.33x |
| Montgomery, 5b, RM | 1.80 0.55x 5628 7.00x | 6.14 0.56x 11004 7.00x |
| Montgomery, 6b, RM | 2.42 0.41x 9916 12.33x | 8.30 0.41x 19388 12.33x |
+---------------------------+--------------------------------+--------------------------------+
| Configured | 0.94 1.05x 804 1.00x | 3.23 1.06x 1572 1.00x |
+---------------------------+--------------------------------+--------------------------------+
Benchmark complete
STOP.