<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/120457/crypto-operations-to-generate-key-pair-when-tfm-profile-is-set-to-minimal</link><description>Hi, I am using NRF connect sdk 2.6.1 and I am wondering what is the best way to run crypto operations when using TFM profile type minimal and building for nrf9160_ns. TFM_PROFILE_TYPE_NOT_SET takes up too much space but it seems there is no way to generate</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 09 Jan 2026 09:39:47 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/120457/crypto-operations-to-generate-key-pair-when-tfm-profile-is-set-to-minimal" /><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/558365?ContentTypeID=1</link><pubDate>Fri, 09 Jan 2026 09:39:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a891c85c-c974-42e2-8641-fa2f8e880483</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/mackz"&gt;mackz&lt;/a&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Yhank you for the update.&lt;br /&gt;&lt;br /&gt;cc3xx driver is not as configurable as oberon driver but the CONFIG_TFM_PROFILE_TYPE_NOT_SET should allow tuning of some TF-M features.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/558185?ContentTypeID=1</link><pubDate>Wed, 07 Jan 2026 14:36:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aa4e46e5-45af-4ef7-b387-79db8bd38f79</guid><dc:creator>mackz</dc:creator><description>&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_TFM_PROFILE_TYPE_NOT_SET=y
CONFIG_TFM_CMAKE_BUILD_TYPE_MINSIZEREL=y
CONFIG_TFM_PARTITION_PLATFORM=y
CONFIG_TFM_PARTITION_CRYPTO=y
CONFIG_TFM_PARTITION_PROTECTED_STORAGE=n
CONFIG_TFM_PARTITION_INTERNAL_TRUSTED_STORAGE=y
CONFIG_TFM_PARTITION_INITIAL_ATTESTATION=n
CONFIG_TFM_SECURE_UART0=n

CONFIG_TFM_LOG_LEVEL_SILENCE=y
CONFIG_TFM_EXCEPTION_INFO_DUMP=n
CONFIG_TFM_ITS_STACK_SIZE=0x400
CONFIG_TFM_CRYPTO_PARTITION_STACK_SIZE=0x400
#CONFIG_TFM_ITS_STACK_SIZE=0x400
#CONFIG_TFM_CRYPTO_PARTITION_STACK_SIZE=0x400
CONFIG_TFM_CRYPTO_BUILTIN_KEYS=n
CONFIG_TFM_CRYPTO_CONC_OPER_NUM=4
CONFIG_TFM_CRYPTO_IOVEC_BUFFER_SIZE=2048
CONFIG_TFM_CRYPTO_ENGINE_BUF_SIZE=2048
CONFIG_ASSERT=n
CONFIG_ASSERT_VERBOSE=n



CONFIG_NRF_SECURITY=y

CONFIG_PSA_CRYPTO_DRIVER_CC3XX=y
CONFIG_PSA_CRYPTO_DRIVER_OBERON=n
# Entropy 
CONFIG_ENTROPY_GENERATOR=y
# Enable AES
CONFIG_PSA_WANT_KEY_TYPE_AES=y
CONFIG_PSA_WANT_AES_KEY_SIZE_128=y
# Enable ECB
CONFIG_PSA_WANT_ALG_ECB_NO_PADDING=y

# Disable everything else
CONFIG_PSA_WANT_ALG_CBC_MAC=n
CONFIG_PSA_WANT_KEY_TYPE_ECC_KEY_PAIR=n
CONFIG_PSA_WANT_KEY_TYPE_HMAC=n
CONFIG_PSA_WANT_KEY_TYPE_DERIVE=n
CONFIG_PSA_WANT_ALG_CBC_NO_PADDING=n
CONFIG_PSA_WANT_ALG_CTR=n
CONFIG_PSA_WANT_ALG_GCM=n
CONFIG_PSA_WANT_ALG_CCM=n
CONFIG_PSA_WANT_ALG_CFB=n
CONFIG_PSA_WANT_ALG_OFB=n
CONFIG_PSA_WANT_ALG_CMAC=n
CONFIG_PSA_WANT_ALG_HMAC=n
CONFIG_PSA_WANT_ALG_SHA_1=n
CONFIG_PSA_WANT_ALG_SHA_256=n
CONFIG_PSA_WANT_ALG_SHA_384=n
CONFIG_PSA_WANT_ALG_SHA_512=n
CONFIG_PSA_WANT_ALG_RSA_PKCS1V15_SIGN_RAW=n
CONFIG_PSA_WANT_ALG_RSA_PSS=n
CONFIG_PSA_WANT_ALG_RSA_OAEP=n
CONFIG_PSA_WANT_ALG_ECDSA=n
CONFIG_PSA_WANT_ALG_DETERMINISTIC_ECDSA=n
CONFIG_PSA_WANT_ALG_STREAM_CIPHER=n
CONFIG_PSA_WANT_KEY_TYPE_RAW_DATA=n
CONFIG_PSA_WANT_ALG_TLS12_PSK_TO_MS=n
CONFIG_PSA_WANT_KEY_TYPE_CHACHA20=n
CONFIG_PSA_WANT_ALG_CHACHA20_POLY1305=n
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;with these configs i am able to get it down to:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;Memory region         Used Size  Region Size  %age Used
           FLASH:       64356 B      97792 B     65.81%
             RAM:       19436 B        48 KB     39.54%&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;It would be nice to be able to loose 356 bytes of flash memory so that I can shrink the static configuration but i have not find a way to get it lower.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/558103?ContentTypeID=1</link><pubDate>Wed, 07 Jan 2026 08:29:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fd8e7fc7-9ce5-40ab-9a31-5851528bcb11</guid><dc:creator>mackz</dc:creator><description>&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_TFM_PROFILE_TYPE_NOT_SET=y
CONFIG_TFM_PARTITION_PLATFORM=n
CONFIG_TFM_PARTITION_CRYPTO=n
CONFIG_TFM_PARTITION_PROTECTED_STORAGE=n
CONFIG_TFM_PARTITION_INTERNAL_TRUSTED_STORAGE=n&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;with this configuration i get:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;fatal error: tfm_ioctl_api.h: No such file or directory
   10 | #include &amp;quot;tfm_ioctl_api.h&amp;quot;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;if i then set:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_TFM_PARTITION_PLATFORM=y&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;i get:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;/ncs/toolchains/2be090971e/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld: platform/libplatform_s.a(flash_otp_nv_counters_backend.o): in function `erase_flash_region&amp;#39;:
/ncs/v2.6.1/modules/tee/tf-m/trusted-firmware-m/platform/ext/common/template/flash_otp_nv_counters_backend.c:251: undefined reference to `Driver_FLASH0&amp;#39;
/ncs/toolchains/2be090971e/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld: platform/libplatform_s.a(flash_otp_nv_counters_backend.o): in function `copy_flash_region&amp;#39;:
/ncs/v2.6.1/modules/tee/tf-m/trusted-firmware-m/platform/ext/common/template/flash_otp_nv_counters_backend.c:277: undefined reference to `Driver_FLASH0&amp;#39;
/ncs/toolchains/2be090971e/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld: platform/libplatform_s.a(flash_otp_nv_counters_backend.o): in function `read_otp_nv_counters_flash&amp;#39;:
/ncs/v2.6.1/modules/tee/tf-m/trusted-firmware-m/platform/ext/common/template/flash_otp_nv_counters_backend.c:139: undefined reference to `Driver_FLASH0&amp;#39;
/ncs/toolchains/2be090971e/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld: platform/libplatform_s.a(flash_otp_nv_counters_backend.o): in function `copy_data_into_block&amp;#39;:
/ncs/v2.6.1/modules/tee/tf-m/trusted-firmware-m/platform/ext/common/template/flash_otp_nv_counters_backend.c:330: undefined reference to `Driver_FLASH0&amp;#39;
/ncs/toolchains/2be090971e/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld: platform/libplatform_s.a(flash_otp_nv_counters_backend.o): in function `init_otp_nv_counters_flash&amp;#39;:
/ncs/v2.6.1/modules/tee/tf-m/trusted-firmware-m/platform/ext/common/template/flash_otp_nv_counters_backend.c:213: undefined reference to `Driver_FLASH0&amp;#39;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;if i also set:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_TFM_PARTITION_INTERNAL_TRUSTED_STORAGE=y&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;i get:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;/ncs/toolchains/2be090971e/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd: zephyr/drivers/entropy/libdrivers__entropy.a(entropy_psa_crypto.c.obj): in function `entropy_psa_crypto_rng_get_entropy&amp;#39;:
ncs/v2.6.1/zephyr/drivers/entropy/entropy_psa_crypto.c:35: undefined reference to `psa_generate_random&amp;#39;
/ncs/toolchains/2be090971e/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/../../../../arm-zephyr-eabi/bin/ld.bfd: zephyr/drivers/entropy/libdrivers__entropy.a(entropy_psa_crypto.c.obj): in function `entropy_psa_crypto_rng_init&amp;#39;:
/ncs/v2.6.1/zephyr/drivers/entropy/entropy_psa_crypto.c:19: undefined reference to `psa_crypto_init&amp;#39;
collect2: error: ld returned 1 exit status&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;if i also set:&amp;nbsp;&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_TFM_PARTITION_CRYPTO=y&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;it builds and now i get:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;[194/198] Linking C executable bin/tfm_s.axf
Memory region         Used Size  Region Size  %age Used
           FLASH:       64916 B       256 KB     24.76%
             RAM:       45928 B        88 KB     50.97%
             
[336/338] Linking C executable zephyr/zephyr.elf
Memory region         Used Size  Region Size  %age Used
           FLASH:      127852 B       704 KB     17.74%
             RAM:       39376 B     154264 B     25.53%
        IDT_LIST:          0 GB        32 KB      0.00%&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Is this the smallest i can get that still lets me use psa crypto operations and trusted storage?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/558100?ContentTypeID=1</link><pubDate>Wed, 07 Jan 2026 07:50:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d9c536d9-021f-4c42-8367-eec115aaf35b</guid><dc:creator>Achim Kraus</dc:creator><description>&lt;p&gt;The missing information is a fine grained table, which shows, how much ram/flash is required for each functions/profiles. Without such a table it&amp;#39;s then left to the user, to find that out. Unfortunately, as this thread shows, this comes with a larger working time and unsatisfying results. Maybe it requires even more time, to get better results, but as this thread also shows, plain software solutions aren&amp;#39;t that bad.&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/558098?ContentTypeID=1</link><pubDate>Wed, 07 Jan 2026 07:37:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6b820617-e4a8-44fa-bb4c-ec588d01d490</guid><dc:creator>mackz</dc:creator><description>&lt;p&gt;But if i use TFM_PROFILE_TYPE_MINIMAL and then set:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_TFM_PARTITION_PROTECTED_STORAGE=y
CONFIG_TFM_PARTITION_CRYPTO=y&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;i get:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;warning: TFM_PARTITION_PROTECTED_STORAGE (defined at /home/marcus/ncs/v2.6.1/nrf/modules/trusted-
firmware-m/Kconfig.tfm.defconfig:69, modules/trusted-firmware-m/Kconfig.tfm.partitions:8,
modules/trusted-firmware-m/Kconfig.tfm.partitions:8) was assigned the value &amp;#39;y&amp;#39; but got the value
&amp;#39;n&amp;#39;. See http://docs.zephyrproject.org/latest/kconfig.html#CONFIG_TFM_PARTITION_PROTECTED_STORAGE
and/or look up TFM_PARTITION_PROTECTED_STORAGE in the menuconfig/guiconfig interface. The
Application Development Primer, Setting Configuration Values, and Kconfig - Tips and Best Practices
sections of the manual might be helpful too.&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;and this:&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;psa_status_t status = psa_crypto_init();
psa_set_key_usage_flags(&amp;amp;key_attributes, PSA_KEY_USAGE_ENCRYPT);
psa_set_key_algorithm(&amp;amp;key_attributes, PSA_ALG_ECB_NO_PADDING);  
psa_set_key_type(&amp;amp;key_attributes, PSA_KEY_TYPE_AES);
psa_set_key_bits(&amp;amp;key_attributes, 16 * 8); 
status = psa_import_key(&amp;amp;key_attributes, p_key, 16, &amp;amp;key_id);
    if (status != PSA_SUCCESS) {
        LOG_ERR(&amp;quot;Failed to import key: %d&amp;quot;, status);
        return;
    }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;still returns -134&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;so what is it that is possible to configure?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/558094?ContentTypeID=1</link><pubDate>Wed, 07 Jan 2026 07:10:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:030e91b8-412f-4bf4-aa8d-11cbd9ab1671</guid><dc:creator>mackz</dc:creator><description>&lt;p&gt;Hi sorry for the late response but i also went with the software AES (for now), i could not find any other way to get it to work without wasting ram memory.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/558002?ContentTypeID=1</link><pubDate>Tue, 06 Jan 2026 10:18:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:385326e3-efb8-46bc-b4bc-d59309dd3f58</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/security/tfm/tfm_building.html#configurable_build"&gt;Configurable build&lt;/a&gt;&amp;nbsp;is full TF-M implementation, but it should be possible to enable/disable specific TF-M features and services.&amp;nbsp;&lt;br /&gt;&amp;quot;&lt;span&gt;To configure the features of the TF-M secure image, you must choose which TF-M partitions and which secure services to include in the build.&lt;/span&gt;&amp;quot;&lt;br /&gt;There are Kconfig options which can be used for enabling/disabling specific services. You could try to disable those services which are not needed in your build.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/557949?ContentTypeID=1</link><pubDate>Mon, 05 Jan 2026 15:32:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cdd9cc97-14c7-4e5b-bad0-2c5b0c90c2ff</guid><dc:creator>pauleffect</dc:creator><description>&lt;p&gt;The documentation unfortunately doesn&amp;#39;t clarify the core issue.&lt;/p&gt;
&lt;p&gt;I haven&amp;#39;t been able to use hardware-accelerated random number generation or hardware AES encryption because of RAM constraints. Neither of these operations should require dozens of kilobytes of RAM.&lt;/p&gt;
&lt;p&gt;As it stands, the choices are:&lt;/p&gt;
&lt;ul&gt;
&lt;li class="whitespace-normal break-words pl-2"&gt;&lt;strong&gt;TFM_PROFILE_TYPE_NOT_SET&lt;/strong&gt;: Lose ~88 KB of RAM, get full TF-M functionality&lt;/li&gt;
&lt;li class="whitespace-normal break-words pl-2"&gt;&lt;strong&gt;TFM_PROFILE_TYPE_MINIMAL&lt;/strong&gt;: Lose ~32 KB of RAM, get effectively nothing usable (no crypto operations work)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;There&amp;#39;s no middle ground - no way to get basic hardware crypto (AES, RNG) without sacrificing a third of the nRF9160&amp;#39;s 256 KB RAM.&lt;/p&gt;
&lt;p&gt;I ended up implementing software AES as a workaround. Not even Oberon - a custom AES implementation, because the nRF Security backend also appears to require the full TF-M RAM allocation to function.&lt;/p&gt;
&lt;p&gt;The project works now, but I have serious doubts about getting it through compliance/certification without hardware-backed crypto.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/557940?ContentTypeID=1</link><pubDate>Mon, 05 Jan 2026 14:45:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6bf726fb-24b8-4bae-9cb5-a8a305fca5b1</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/pauleffect"&gt;pauleffect&lt;/a&gt;&amp;nbsp;,&lt;br /&gt;&lt;br /&gt;Documentation specifies supported&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/security/tfm/tfm_supported_services.html#supported_tf-m_profiles"&gt;TF-M profiles&lt;/a&gt;. NCS documentation lists&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/security/tfm/tfm_supported_services.html#supported_tf-m_services"&gt;supported TF-M services&lt;/a&gt;&amp;nbsp;and provides information how to&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/security/tfm/tfm_supported_services.html#configurable_tf-m_build"&gt;configure TF-M build&lt;/a&gt;. More information can be found in&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/security/tfm/tfm_building.html#configurable_build"&gt;configurable build&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/557489?ContentTypeID=1</link><pubDate>Sun, 21 Dec 2025 09:41:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:027c619d-1591-4c63-be91-e64a5048795f</guid><dc:creator>pauleffect</dc:creator><description>&lt;p&gt;did you manage to find a solution?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/557488?ContentTypeID=1</link><pubDate>Sun, 21 Dec 2025 09:41:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:22f5eab2-0f0b-4769-b2cf-23a17fbe4405</guid><dc:creator>pauleffect</dc:creator><description>&lt;p&gt;The guy said &amp;quot;&lt;span&gt;i feel like there is no way to get something inbetween not being able to use TFM for anything and it taking up all of the memory for the application.&amp;quot;&lt;br /&gt;&lt;br /&gt;Which implies you either go the full route, and that &lt;strong&gt;takes up 88 kilobytes&lt;/strong&gt; of ram out of a measly 256.&amp;nbsp;For minimal&amp;nbsp;functionality - such as, you know, generating 16 bytes.&lt;br /&gt;&lt;br /&gt;Is there ANY way of using hardware encryption WITHOUT sacrificing one third of the available ram?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/530980?ContentTypeID=1</link><pubDate>Tue, 08 Apr 2025 08:59:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e3f7761c-766d-4fde-913a-9202cd39f918</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;Have you tried to use&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/security/tfm/tfm_building.html#configurable_build"&gt;configurable build&lt;/a&gt;&amp;nbsp;with Kconfig options shown below?&amp;nbsp;&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;CONFIG_BUILD_WITH_TFM=y
CONFIG_TFM_PROFILE_TYPE_NOT_SET=y
CONFIG_TFM_PROFILE_TYPE_MINIMAL=n
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/530739?ContentTypeID=1</link><pubDate>Mon, 07 Apr 2025 05:46:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:40e839f6-6dab-4fe3-843d-e108b8a226f5</guid><dc:creator>mackz</dc:creator><description>&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;#PSA PROTECTED STORAGE
CONFIG_BUILD_WITH_TFM=y
CONFIG_TFM_CMAKE_BUILD_TYPE_MINSIZEREL=y
CONFIG_TFM_PROFILE_TYPE_NOT_SET=n
CONFIG_TFM_PROFILE_TYPE_MINIMAL=y
CONFIG_TFM_SECURE_UART0=y
CONFIG_SYS_CLOCK_TICKS_PER_SEC=1000

#CRYPTO 
CONFIG_NRF_SECURITY=y
CONFIG_MBEDTLS_PSA_CRYPTO_C=y
CONFIG_MBEDTLS_ENABLE_HEAP=y
CONFIG_MBEDTLS_HEAP_SIZE=16384
CONFIG_PSA_CRYPTO_DRIVER_CC3XX=y
CONFIG_PSA_CRYPTO_DRIVER_OBERON=n
CONFIG_PSA_WANT_AES_KEY_SIZE_128=y
CONFIG_PSA_WANT_KEY_TYPE_AES=y
CONFIG_PSA_WANT_ALG_ECB_NO_PADDING=y
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This is what i have related to tfm and crypto&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/530640?ContentTypeID=1</link><pubDate>Fri, 04 Apr 2025 13:40:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:87e73ee3-4cf6-4f8f-835f-91b9b9368aba</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;Can you show your project configuration?&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/530614?ContentTypeID=1</link><pubDate>Fri, 04 Apr 2025 12:17:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3643996e-4b05-4d1a-840e-70530d434b18</guid><dc:creator>mackz</dc:creator><description>&lt;p&gt;Yes i meant minimal and full. I am using minimal but i feel like there is no way to get something inbetween not being able to use TFM for anything and it taking up all of the memory for the application. So my questions stands:&lt;br /&gt;Is there any other recommended way to do it or samples that i could look at? &lt;br /&gt;Or is there any sample that describes a way to get a minimal working example with the profile set to NOT_SET? &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Crypto operations to generate key pair when TFM profile is set to minimal.</title><link>https://devzone.nordicsemi.com/thread/530613?ContentTypeID=1</link><pubDate>Fri, 04 Apr 2025 12:14:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:65f82a1b-4e27-46ed-8b10-cb928d1179ed</guid><dc:creator>dejans</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;Small and full TF-M profiles are not directly supported in NCS. Only minimal and configurable (full) profiles are mentioned in the documentation, first as supported in NCS and second as experimental. You can look at&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/security/tfm/index.html"&gt;TF-M support in NCS&lt;/a&gt;&amp;nbsp;and &lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/security/tfm/tfm_supported_services.html#minimal_tf-m_configuration"&gt;minimal TF-M configuration&lt;/a&gt;. There are also&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/samples/tfm.html#tfm-samples"&gt;TF-M samples&lt;/a&gt;,&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/samples/crypto.html#crypto-samples"&gt;cryptography samples&lt;/a&gt;&amp;nbsp;and&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/zephyr/samples/tfm_integration/tfm_integration.html#tfm_integration"&gt;TF-M integration samples from Zephyr&lt;/a&gt;. Additionally, you can look at supported&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/security/tfm/tfm_supported_services.html#supported-tf-m-profiles"&gt;TF-M profiles&lt;/a&gt;&amp;nbsp;and&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/security/tfm/tfm_supported_services.html#supported_tf-m_services"&gt;TF-M services&lt;/a&gt;.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Best regards,&lt;br /&gt;Dejan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>