zephyr/samples/drivers/crypto
Tomi Fontanilles c1342b3aa9 modules: mbedtls: remove the default enabling of features
In an effort to shave off code size, remove out-of-the-box
enabling of crypto features (except SHA-256).

Configurations are adjusted to enable what they need.

Bonuses:

- When enabled, AES now defaults to using a smaller version
(`CONFIG_MBEDTLS_AES_ROM_TABLES` isn't default enabled anymore,
and if enabled, `CONFIG_MBEDTLS_AES_FEWER_TABLES` defaults to y).

- Conditions around Mbed TLS Kconfig options have been improved
to reflect the reality of the dependencies.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2024-05-31 16:33:06 -05:00
..
boards
src
CMakeLists.txt
README.rst
prj.conf
prj_mtls_shim.conf modules: mbedtls: remove the default enabling of features 2024-05-31 16:33:06 -05:00
prj_tinycrypt_shim.conf
sample.yaml

README.rst

.. zephyr:code-sample:: crypto
   :name: Crypto
   :relevant-api: crypto

   Use the crypto APIs to perform various encryption/decryption operations.

Overview
********
An example to illustrate the usage of :ref:`crypto APIs <crypto_api>`.

Building and Running
********************

This project outputs to the console.  It can be built and executed
on QEMU as follows:

.. zephyr-app-commands::
   :zephyr-app: samples/drivers/crypto
   :host-os: unix
   :board: qemu_x86
   :goals: run
   :compact:

Sample Output
=============

.. code-block:: console

    [general] [INF] main: Encryption Sample

    [general] [INF] cbc_mode: CBC Mode

    [general] [INF] cbc_mode: cbc mode ENCRYPT - Match

    [general] [INF] cbc_mode: cbc mode DECRYPT - Match

    [general] [INF] ctr_mode: CTR Mode

    [general] [INF] ctr_mode: ctr mode ENCRYPT - Match

    [general] [INF] ctr_mode: ctr mode DECRYPT - Match

    [general] [INF] ccm_mode: CCM Mode

    [general] [INF] ccm_mode: CCM mode ENCRYPT - Match

    [general] [INF] ccm_mode: CCM mode DECRYPT - Match

Exit QEMU by pressing :kbd:`CTRL+A` :kbd:`x`.