2017-12-07 11:02:19 +01:00
|
|
|
/* Configuration */
|
|
|
|
#define IPHONE /* Needed for Xcode */
|
|
|
|
#define HAVE_HASHDRBG
|
|
|
|
#define HAVE_AESGCM
|
|
|
|
#define WOLFSSL_SHA512
|
|
|
|
#define WOLFSSL_SHA384
|
|
|
|
|
|
|
|
#ifdef HAVE_FIPS
|
|
|
|
#define NO_MD4
|
|
|
|
#define NO_DSA
|
|
|
|
#define NO_PWDBASED
|
|
|
|
#else
|
|
|
|
/* disable "main" entry */
|
2018-08-23 15:41:35 -06:00
|
|
|
#undef NO_MAIN_DRIVER
|
2017-12-07 11:02:19 +01:00
|
|
|
#define NO_MAIN_DRIVER
|
|
|
|
|
2018-12-03 10:38:56 -08:00
|
|
|
/* 128-bit type */
|
|
|
|
#define HAVE___UINT128_T
|
|
|
|
|
2017-12-07 11:02:19 +01:00
|
|
|
/* fast math */
|
|
|
|
#define USE_FAST_MATH
|
|
|
|
#define HAVE_ECC
|
|
|
|
|
|
|
|
/* ECC speedups */
|
|
|
|
#define ECC_SHAMIR
|
|
|
|
#define TFM_ECC256
|
|
|
|
|
|
|
|
/* timing resistance */
|
2018-08-23 15:41:35 -06:00
|
|
|
#if 1
|
2017-12-07 11:02:19 +01:00
|
|
|
#define WC_RSA_BLINDING
|
|
|
|
#define TFM_TIMING_RESISTANT
|
|
|
|
#define ECC_TIMING_RESISTANT
|
|
|
|
#else
|
|
|
|
#define WC_NO_HARDEN
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* single precision math */
|
|
|
|
#if 1
|
|
|
|
#define WOLFSSL_HAVE_SP_RSA
|
|
|
|
#define WOLFSSL_HAVE_SP_DH
|
|
|
|
#define WOLFSSL_HAVE_SP_ECC
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* ARMv8 - iPhone 8/8Plus and iPhone X */
|
|
|
|
#ifdef __ARM_FEATURE_CRYPTO
|
|
|
|
#define WOLFSSL_ARMASM
|
Updates to xcode projects to add new files.
Ran updated iPhone X benchmarks:
```
RNG 330 MB took 1.010 seconds, 326.879 MB/s
AES-128-CBC-enc 920 MB took 1.005 seconds, 915.507 MB/s
AES-128-CBC-dec 6095 MB took 1.000 seconds, 6092.130 MB/s
AES-192-CBC-enc 820 MB took 1.000 seconds, 819.644 MB/s
AES-192-CBC-dec 4860 MB took 1.001 seconds, 4855.794 MB/s
AES-256-CBC-enc 710 MB took 1.005 seconds, 706.419 MB/s
AES-256-CBC-dec 3935 MB took 1.001 seconds, 3930.830 MB/s
AES-128-GCM-enc 1245 MB took 1.003 seconds, 1241.589 MB/s
AES-128-GCM-dec 575 MB took 1.001 seconds, 574.547 MB/s
AES-192-GCM-enc 1235 MB took 1.001 seconds, 1234.343 MB/s
AES-192-GCM-dec 570 MB took 1.003 seconds, 568.521 MB/s
AES-256-GCM-enc 1230 MB took 1.003 seconds, 1226.034 MB/s
AES-256-GCM-dec 570 MB took 1.001 seconds, 569.199 MB/s
3DES 10 MB took 1.386 seconds, 7.213 MB/s
MD5 95 MB took 1.037 seconds, 91.629 MB/s
SHA 80 MB took 1.013 seconds, 78.943 MB/s
SHA-256 1625 MB took 1.000 seconds, 1624.565 MB/s
SHA3-224 60 MB took 1.010 seconds, 59.399 MB/s
SHA3-256 60 MB took 1.073 seconds, 55.921 MB/s
SHA3-384 45 MB took 1.042 seconds, 43.195 MB/s
SHA3-512 35 MB took 1.164 seconds, 30.063 MB/s
HMAC-MD5 95 MB took 1.044 seconds, 91.014 MB/s
HMAC-SHA 80 MB took 1.007 seconds, 79.480 MB/s
HMAC-SHA256 1705 MB took 1.001 seconds, 1703.126 MB/s
RSA 2048 public 32800 ops took 1.003 sec, avg 0.031 ms, 32716.405 ops/sec
RSA 2048 private 1200 ops took 1.041 sec, avg 0.868 ms, /33 ops/sec
DH 2048 key gen 2354 ops took 1.000 sec, avg 0.425 ms, 2353.254 ops/sec
DH 2048 agree 2500 ops took 1.013 sec, avg 0.405 ms, 2467.525 ops/sec
ECC 256 key gen 46503 ops took 1.000 sec, avg 0.022 ms, 46502.069 ops/sec
ECDHE 256 agree 14100 ops took 1.005 sec, avg 0.071 ms, 14034.697 ops/sec
ECDSA 256 sign 29600 ops took 1.003 sec, avg 0.034 ms, 29500.554 ops/sec
ECDSA 256 verify 11000 ops took 1.007 sec, avg 0.092 ms, 10921.516 ops/sec
```
2020-06-12 10:39:26 -07:00
|
|
|
#define WOLFSSL_SP_ARM64_ASM
|
2017-12-07 11:02:19 +01:00
|
|
|
#endif
|
|
|
|
|
|
|
|
/* newer algorithms */
|
|
|
|
#define WOLFSSL_SHA3
|
|
|
|
|
|
|
|
#define HAVE_POLY1305
|
|
|
|
#define HAVE_CHACHA
|
|
|
|
|
|
|
|
#define HAVE_CURVE25519
|
2020-07-23 18:08:37 +10:00
|
|
|
#ifndef WOLFSSL_ARMASM
|
|
|
|
#define HAVE_ED25519
|
|
|
|
#endif
|
2017-12-07 11:02:19 +01:00
|
|
|
|
|
|
|
/* TLS extensions */
|
|
|
|
#define HAVE_ONE_TIME_AUTH
|
|
|
|
#define HAVE_TLS_EXTENSIONS
|
|
|
|
#define HAVE_SUPPORTED_CURVES
|
|
|
|
#define HAVE_EXTENDED_MASTER
|
|
|
|
|
|
|
|
/* off by default */
|
|
|
|
#define NO_RC4
|
|
|
|
#define NO_MD4
|
|
|
|
#define NO_DSA
|
|
|
|
#define NO_PSK
|
|
|
|
#define NO_PWDBASED
|
|
|
|
|
|
|
|
/* test certificate buffers */
|
|
|
|
#define USE_CERT_BUFFERS_2048
|
|
|
|
#define USE_CERT_BUFFERS_256
|
Updates to xcode projects to add new files.
Ran updated iPhone X benchmarks:
```
RNG 330 MB took 1.010 seconds, 326.879 MB/s
AES-128-CBC-enc 920 MB took 1.005 seconds, 915.507 MB/s
AES-128-CBC-dec 6095 MB took 1.000 seconds, 6092.130 MB/s
AES-192-CBC-enc 820 MB took 1.000 seconds, 819.644 MB/s
AES-192-CBC-dec 4860 MB took 1.001 seconds, 4855.794 MB/s
AES-256-CBC-enc 710 MB took 1.005 seconds, 706.419 MB/s
AES-256-CBC-dec 3935 MB took 1.001 seconds, 3930.830 MB/s
AES-128-GCM-enc 1245 MB took 1.003 seconds, 1241.589 MB/s
AES-128-GCM-dec 575 MB took 1.001 seconds, 574.547 MB/s
AES-192-GCM-enc 1235 MB took 1.001 seconds, 1234.343 MB/s
AES-192-GCM-dec 570 MB took 1.003 seconds, 568.521 MB/s
AES-256-GCM-enc 1230 MB took 1.003 seconds, 1226.034 MB/s
AES-256-GCM-dec 570 MB took 1.001 seconds, 569.199 MB/s
3DES 10 MB took 1.386 seconds, 7.213 MB/s
MD5 95 MB took 1.037 seconds, 91.629 MB/s
SHA 80 MB took 1.013 seconds, 78.943 MB/s
SHA-256 1625 MB took 1.000 seconds, 1624.565 MB/s
SHA3-224 60 MB took 1.010 seconds, 59.399 MB/s
SHA3-256 60 MB took 1.073 seconds, 55.921 MB/s
SHA3-384 45 MB took 1.042 seconds, 43.195 MB/s
SHA3-512 35 MB took 1.164 seconds, 30.063 MB/s
HMAC-MD5 95 MB took 1.044 seconds, 91.014 MB/s
HMAC-SHA 80 MB took 1.007 seconds, 79.480 MB/s
HMAC-SHA256 1705 MB took 1.001 seconds, 1703.126 MB/s
RSA 2048 public 32800 ops took 1.003 sec, avg 0.031 ms, 32716.405 ops/sec
RSA 2048 private 1200 ops took 1.041 sec, avg 0.868 ms, /33 ops/sec
DH 2048 key gen 2354 ops took 1.000 sec, avg 0.425 ms, 2353.254 ops/sec
DH 2048 agree 2500 ops took 1.013 sec, avg 0.405 ms, 2467.525 ops/sec
ECC 256 key gen 46503 ops took 1.000 sec, avg 0.022 ms, 46502.069 ops/sec
ECDHE 256 agree 14100 ops took 1.005 sec, avg 0.071 ms, 14034.697 ops/sec
ECDSA 256 sign 29600 ops took 1.003 sec, avg 0.034 ms, 29500.554 ops/sec
ECDSA 256 verify 11000 ops took 1.007 sec, avg 0.092 ms, 10921.516 ops/sec
```
2020-06-12 10:39:26 -07:00
|
|
|
#define NO_WRITE_TEMP_FILES
|
2017-12-07 11:02:19 +01:00
|
|
|
|
2018-08-23 15:41:35 -06:00
|
|
|
#define WOLFSSL_DTLS
|
|
|
|
|
2017-12-07 11:02:19 +01:00
|
|
|
//#define DEBUG_WOLFSSL
|
|
|
|
|
|
|
|
#endif
|