RSA STM32F756

From SEGGER Wiki
Revision as of 17:05, 8 July 2019 by Paul (talk | contribs) (Created page with " <nowiki> Copyright (c) 2014-2019 SEGGER Microcontroller GmbH www.segger.com Modular Exponentiation Benchmark compiled Jul 8 2019 16:02:07 Compiler: gcc 8.2.1 System: P...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Copyright (c) 2014-2019 SEGGER Microcontroller GmbH    www.segger.com
Modular Exponentiation Benchmark compiled Jul  8 2019 16:02:07

Compiler: gcc 8.2.1
System:   Processor speed          = 200.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               |   75.96  1.00x      700  1.00x |  392.53  1.00x     1340  1.00x |
| Basic, ladder             |  106.33  0.71x      840  1.20x |  592.60  0.66x     1608  1.20x |
| Basic, 2b, FW             |   70.55  1.08x     1260  1.80x |  370.01  1.06x     2412  1.80x |
| Basic, 3b, FW             |   66.11  1.15x     1820  2.60x |  355.96  1.10x     3484  2.60x |
| Basic, 4b, FW             |   63.64  1.19x     2940  4.20x |  343.63  1.14x     5628  4.20x |
| Basic, 5b, FW             |   63.08  1.20x     5180  7.40x |  337.29  1.16x     9916  7.40x |
| Basic, 6b, FW             |   64.79  1.17x     9660 13.80x |  335.20  1.17x    18492 13.80x |
+---------------------------+--------------------------------+--------------------------------+
| Basic, 2b, RM             |   69.09  1.10x     1260  1.80x |  365.13  1.08x     2412  1.80x |
| Basic, 3b, RM             |   65.32  1.16x     1540  2.20x |  349.79  1.12x     2948  2.20x |
| Basic, 4b, RM             |   62.74  1.21x     2100  3.00x |  338.68  1.16x     4020  3.00x |
| Basic, 5b, RM             |   61.58  1.23x     3220  4.60x |  333.02  1.18x     6164  4.60x |
| Basic, 6b, RM             |   61.60  1.23x     5460  7.80x |  328.53  1.19x    10452  7.80x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, fast             |   73.92  1.03x      980  1.40x |  367.49  1.07x     1876  1.40x |
| Barrett, ladder           |  101.56  0.75x     1120  1.60x |  544.15  0.72x     2144  1.60x |
| Barrett, 2b, FW           |   69.65  1.09x     1540  2.20x |  347.70  1.13x     2948  2.20x |
| Barrett, 3b, FW           |   64.77  1.17x     2100  3.00x |  332.59  1.18x     4020  3.00x |
| Barrett, 4b, FW           |   62.30  1.22x     3220  4.60x |  319.26  1.23x     6164  4.60x |
| Barrett, 5b, FW           |   61.74  1.23x     5460  7.80x |  312.83  1.25x    10452  7.80x |
| Barrett, 6b, FW           |   63.34  1.20x     9940 14.20x |  311.39  1.26x    19028 14.20x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, 2b, RM           |   67.66  1.12x     1540  2.20x |  341.26  1.15x     2948  2.20x |
| Barrett, 3b, RM           |   63.93  1.19x     1820  2.60x |  327.94  1.20x     3484  2.60x |
| Barrett, 4b, RM           |   61.41  1.24x     2380  3.40x |  314.94  1.25x     4556  3.40x |
| Barrett, 5b, RM           |   60.27  1.26x     3500  5.00x |  307.87  1.27x     6700  5.00x |
| Barrett, 6b, RM           |   60.31  1.26x     5740  8.20x |  303.50  1.29x    10988  8.20x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, fast          |   45.21  1.68x      700  1.00x |  271.54  1.45x     1340  1.00x |
| Montgomery, ladder        |   60.20  1.26x      840  1.20x |  359.35  1.09x     1608  1.20x |
| Montgomery, 2b, FW        |   45.66  1.66x     1260  1.80x |  271.36  1.45x     2412  1.80x |
| Montgomery, 3b, FW        |   41.05  1.85x     1820  2.60x |  242.53  1.62x     3484  2.60x |
| Montgomery, 4b, FW        |   39.08  1.94x     2940  4.20x |  229.27  1.71x     5628  4.20x |
| Montgomery, 5b, FW        |   38.64  1.97x     5180  7.40x |  223.38  1.76x     9916  7.40x |
| Montgomery, 6b, FW        |   39.63  1.92x     9660 13.80x |  223.30  1.76x    18492 13.80x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, 2b, RM        |   41.95  1.81x     1260  1.80x |  250.15  1.57x     2412  1.80x |
| Montgomery, 3b, RM        |   39.48  1.92x     1540  2.20x |  233.88  1.68x     2948  2.20x |
| Montgomery, 4b, RM        |   38.08  1.99x     2100  3.00x |  223.86  1.75x     4020  3.00x |
| Montgomery, 5b, RM        |   37.43  2.03x     3220  4.60x |  218.81  1.79x     6164  4.60x |
| Montgomery, 6b, RM        |   37.55  2.02x     5460  7.80x |  216.08  1.82x    10452  7.80x |
+---------------------------+--------------------------------+--------------------------------+
| Configured                |   45.25  1.68x      700  1.00x |  271.81  1.44x     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               |    2.14  1.00x      804  1.00x |    7.15  1.00x     1572  1.00x |
| Basic, ladder             |    4.51  0.47x     1072  1.33x |   15.23  0.47x     2096  1.33x |
| Basic, 2b, FW             |    2.53  0.85x     1876  2.33x |    8.30  0.86x     3668  2.33x |
| Basic, 3b, FW             |    2.98  0.72x     2948  3.67x |    9.88  0.72x     5764  3.67x |
| Basic, 4b, FW             |    4.30  0.50x     5092  6.33x |   14.31  0.50x     9956  6.33x |
| Basic, 5b, FW             |    6.57  0.33x     9380 11.67x |   21.90  0.33x    18340 11.67x |
| Basic, 6b, FW             |   10.96  0.20x    17956 22.33x |   36.40  0.20x    35108 22.33x |
+---------------------------+--------------------------------+--------------------------------+
| Basic, 2b, RM             |    2.42  0.89x     1876  2.33x |    8.07  0.89x     3668  2.33x |
| Basic, 3b, RM             |    2.71  0.79x     2412  3.00x |    9.09  0.79x     4716  3.00x |
| Basic, 4b, RM             |    3.32  0.64x     3484  4.33x |   11.13  0.64x     6812  4.33x |
| Basic, 5b, RM             |    4.52  0.47x     5628  7.00x |   15.16  0.47x    11004  7.00x |
| Basic, 6b, RM             |    6.91  0.31x     9916 12.33x |   23.16  0.31x    19388 12.33x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, fast             |    2.23  0.96x     1340  1.67x |    7.09  1.01x     2620  1.67x |
| Barrett, ladder           |    4.62  0.46x     1608  2.00x |   15.04  0.48x     3144  2.00x |
| Barrett, 2b, FW           |    2.69  0.80x     2412  3.00x |    8.32  0.86x     4716  3.00x |
| Barrett, 3b, FW           |    3.09  0.69x     3484  4.33x |    9.75  0.73x     6812  4.33x |
| Barrett, 4b, FW           |    4.37  0.49x     5628  7.00x |   13.94  0.51x    11004  7.00x |
| Barrett, 5b, FW           |    6.56  0.33x     9916 12.33x |   21.13  0.34x    19388 12.33x |
| Barrett, 6b, FW           |   10.83  0.20x    18492 23.00x |   34.91  0.20x    36156 23.00x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, 2b, RM           |    2.51  0.85x     2412  3.00x |    7.97  0.90x     4716  3.00x |
| Barrett, 3b, RM           |    2.80  0.77x     2948  3.67x |    8.94  0.80x     5764  3.67x |
| Barrett, 4b, RM           |    3.40  0.63x     4020  5.00x |   10.87  0.66x     7860  5.00x |
| Barrett, 5b, RM           |    4.57  0.47x     6164  7.67x |   14.70  0.49x    12052  7.67x |
| Barrett, 6b, RM           |    6.90  0.31x    10452 13.00x |   22.29  0.32x    20436 13.00x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, fast          |    1.90  1.13x      804  1.00x |    6.48  1.10x     1572  1.00x |
| Montgomery, ladder        |    3.45  0.62x     1072  1.33x |   11.83  0.60x     2096  1.33x |
| Montgomery, 2b, FW        |    2.84  0.75x     1876  2.33x |    9.79  0.73x     3668  2.33x |
| Montgomery, 3b, FW        |    2.94  0.73x     2948  3.67x |   10.10  0.71x     5764  3.67x |
| Montgomery, 4b, FW        |    3.74  0.57x     5092  6.33x |   12.84  0.56x     9956  6.33x |
| Montgomery, 5b, FW        |    5.09  0.42x     9380 11.67x |   17.42  0.41x    18340 11.67x |
| Montgomery, 6b, FW        |    7.70  0.28x    17956 22.33x |   26.29  0.27x    35108 22.33x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, 2b, RM        |    2.16  0.99x     1876  2.33x |    7.39  0.97x     3668  2.33x |
| Montgomery, 3b, RM        |    2.34  0.92x     2412  3.00x |    8.01  0.89x     4716  3.00x |
| Montgomery, 4b, RM        |    2.87  0.75x     3484  4.33x |    9.82  0.73x     6812  4.33x |
| Montgomery, 5b, RM        |    3.58  0.60x     5628  7.00x |   12.26  0.58x    11004  7.00x |
| Montgomery, 6b, RM        |    4.84  0.44x     9916 12.33x |   16.54  0.43x    19388 12.33x |
+---------------------------+--------------------------------+--------------------------------+
| Configured                |    1.90  1.13x      804  1.00x |    6.50  1.10x     1572  1.00x |
+---------------------------+--------------------------------+--------------------------------+

Benchmark complete