wolfssl/IDE/Android/README.md
David Garske a03ed32380 Support for Android KeyStore compatibility API's:
* Adds `EVP_PKCS82PKEY` and `d2i_PKCS8_PRIV_KEY_INFO`.
* Adds `EVP_PKEY2PKCS8` and `i2d_PKCS8_PRIV_KEY_INFO`.
* Adds `ECDSA_verify`.
* Fix to allow `SHA256()` and `MD5()` with FIPSv2.
* Decouple crypto callbacks and hash flags
* Fix for possible use of uninitialized when building TLS bench without TLS v1.3.
* Fix for building with `NO_CHECK_PRIVATE_KEY`. Test `./configure --disable-pkcs12 --enable-opensslextra CFLAGS="-DNO_CHECK_PRIVATE_KEY"`.
* Fix to support `RSA_public_decrypt` for PKCSv15 only with FIPS.
* Cleanup `RSA_public_encrypt`, `RSA_public_decrypt` and `RSA_private_decrypt`.
* Added instructions for building wolfSSL with Android kernel.
2021-10-19 17:04:18 -07:00

893 B

Android wolfSSL Support

Tested on Android v8.1 with WPA Supplicant and KeyStore to replace BoringSSL.

Files

  • Android.bp: Template build system file for wolfSSL.
  • user_settings.h: Template build settings for wolfSSL

Installation

  1. Place the wolfSSL library into ./external/wolfssl
  2. Copy Android.bp into ./external/wolfssl
  3. Copy user_settings.h into ./external/wolfssl
  4. Add PRODUCT_PACKAGES += libwolfssl to your device .mk.

Typical Android build instruction

source build/envsetup.sh
lunch [num]
mm -j8

Using wolfSSL in your Application

In your Android.mk build file for your application add the following:

# Crypto Provider - wolfSSL
LOCAL_CFLAGS += -DWOLFSSL_USER_SETTINGS -Iexternal/wolfssl -Iexternal/wolfssl/wolfssl
LOCAL_SHARED_LIBRARIES += libwolfssl

Support

For questions please email support@wolfssl.com