You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
samples: matter: Set custom keystore manager during the init.
We need to set a custom keystore manager in Matter server
while using KMU and assign the KMUKeyAllocator.
Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
Copy file name to clipboardexpand all lines: doc/nrf/protocols/matter/end_product/security.rst
+74
Original file line number
Diff line number
Diff line change
@@ -161,6 +161,80 @@ This is a reference configuration that can be modified in the production firmwar
161
161
To use the Oberon backend for specific cryptographic operations supported by both drivers, disable those operations in the CRACEN driver, as it takes priority when both are enabled.
162
162
See the :ref:`nrf_security_drivers` documentation for more information.
163
163
164
+
.. _matter_platforms_security_kmu:
165
+
166
+
nRF54L15 Key Management Unit (KMU)
167
+
==================================
168
+
169
+
nRF54l15 devices contains :ref:`ug_nrf54l_crypto_kmu_cracen_peripherals` that can be used to store cryptographic keys in Matter.
170
+
In this solution, the keys are stored within the available slots in the :ref:`ug_nrf54l_crypto_kmu_slots` range that are not reserved for current and future |NCS| use cases.
171
+
172
+
The default slots range used for Matter is from ``100`` to ``180``, not including the DAC private key.
173
+
To see configuration for DAC private key, see the :ref:`matter_platforms_security_dac_priv_key_kmu`.
174
+
You can change the slots range by setting the :kconfig:option:`CONFIG_CHIP_KMU_SLOT_RANGE_START` and :kconfig:option:`CONFIG_CHIP_KMU_SLOT_RANGE_END` Kconfig options.
175
+
For now, we use the Raw usage scheme defined in the :ref:`ug_nrf54l_crypto_kmu_key_usage_schemes` section.
176
+
177
+
To use this feature set the :kconfig:option:`CONFIG_CHIP_STORE_KEYS_IN_KMU` Kconfig option to ``y``, and switch to the ``KMUKeyAllocator`` by calling the ``chip::Crypto::SetPSAKeyAllocator`` method in your code during the Matter stack initialization.
178
+
179
+
For example:
180
+
181
+
.. code-block:: cpp
182
+
183
+
#include <platform/nrfconnect/KMUKeyAllocator.h>
184
+
185
+
static KMUKeyAllocator kmuAllocator;
186
+
Crypto::SetPSAKeyAllocator(&kmuAllocator);
187
+
188
+
See the :file:`samples/matter/common/src/app/matter_init.cpp` to see an usage example.
189
+
190
+
Due to limited slots available in the KMU, the maximum number of Matter fabric is limited.
191
+
The following table shows the current number of slots used by Matter:
192
+
193
+
.. list-table:: KMU slots used by Matter crypto materials
Copy file name to clipboardexpand all lines: doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst
+1
Original file line number
Diff line number
Diff line change
@@ -163,6 +163,7 @@ Matter
163
163
* A description for the new :ref:`ug_matter_gs_tools_matter_west_commands_append` within the :ref:`ug_matter_gs_tools_matter_west_commands` page.
164
164
* New arguments to the :ref:`ug_matter_gs_tools_matter_west_commands_zap_tool_gui` to provide a custom cache directory and add new clusters to Matter Data Model.
165
165
* :ref:`ug_matter_debug_snippet`.
166
+
* Storing Matter key materials in the :ref:`matter_platforms_security_kmu`.
166
167
167
168
* Disabled the :ref:`mpsl` before performing factory reset to speed up the process.
0 commit comments