Is Cy_Crypto_Core_xx supported in PSoC Creator ?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
djzman078
Level 1
Level 1
5 sign-ins 5 replies posted First reply posted

Hello,

I'm relatively new to PSoC and PSoC creator.

I'm trying to access the Cryptography hardware acceleration.  I've done so successfully using the Client-Server PDL provided.  However, when trying to use "Direct Crypto Core Access" (e.g. Cy_Crypto_CoreTrng()), I can't seem to find the requisite .h or .c or .a files.  When I try to include cy_crypto_core.h as the documentation indicates, it's not found.  My build fails with "undefined reference to Cy_Crypto_CoreTrng().

I tried unsuccessfully to find the straight-forward answer to the simple question: are the Cy_Crypto_Core_xx() functions supported in PSoC Creator ?  Below is my environment.

Any help would be greatly appreciated.

Environment:
PSoC Creator 4.4 (4.4.0.80)
Culture: English (United States)
OS Version: Microsoft Windows NT 10.0.19044.0
CLR Version: 4.0.30319.42000

Installed CyInstaller Products:
Peripheral Driver Library 3.1.3
Peripheral Driver Library 3.1.5
PSoC Programmer 3.29.1
PSoC Creator 4.4

0 Likes
1 Solution
Pushyanth_K
Moderator
Moderator
Moderator
100 sign-ins 10 solutions authored 50 replies posted

HI @djzman078 ,

 

The Direct Crypto Access is currently not supported in PSoC creator, only Client server model is supported. 

As cy-mbedtls-acceleration library uses the Direct Crypto Access, currently there are no examples demonstrating mbedTLS hardware acceleration using  Client Server model.

 

Thanks and Regards,

Pushyanth

View solution in original post

0 Likes
5 Replies
Gautami_12
Moderator
Moderator
Moderator
50 likes received 100 solutions authored 250 replies posted

Hi @djzman078 ,

I believe that this issue is already being discussed in this thread - <link>.
Let me know if this solves your issue.

Warm Regards,
Gautami J

0 Likes

Thanks for your prompt reply.

However, that is a very circular discussion that involves compiling source code (it's never stated where it comes from) of the cy_crypto_core functions under another ide and somehow importing it into psoc creator, etc., etc., etc.

I'm hoping to, firstly, just get the simple answer to the direct question: Does Infineon supply a PDL for PSoC creator that supports the cy_crypto_core functions that are described in their documentation ?

If so, where can I get it ?

 

0 Likes
Gautami_12
Moderator
Moderator
Moderator
50 likes received 100 solutions authored 250 replies posted

Hi @djzman078 ,

Can you please let us know which device you are using at your end so that I can verify is it supported with crypto feature.

Warm Regards,
Gautami J

0 Likes

Gautami, thanks again for your reply.

Firstly, the direct answer to your question:  CY8C6247BZI-D54.

Since my original post, I have learned more and can express my question more clearly (I hope).

Our application has been developed historically under PSOC Creator.  We have not yet migrated to MTB because we are using a PSOC Creator feature that is not available in MTB and we have not yet taken the time to do the port.

I have integrated mbedtls into our application successfully to provide TLS encryption on our sockets based datastream (mqtt/mosquitto).  Using the software-only capability of mbedtls is fully working.

I now want to take advantage of the hardware cryptography acceleration provided by the above mentioned device.  I saw in the PSoC Peripheral Driver Library reference material a well-matched set of Cy_Crypto_Core_XX() function calls that appear to be for this express purpose.  However, these library calls do not seem to be available in PSoC Creator (with the maximum version of the PDL available).  Also, the internet chatter (including the link that you referenced) seems to indicate that this is the case.  Hence my initial simple question: Does Infineon supply a PDL for PSoC creator that supports the cy_crypto_core functions that are described in their documentation ?

Since my initial post, I have been trying to use the Client-Server library that is provided for software access to the PSoC Cryptography Acceleration.  I have been successful with TRNG. However, the single call for SHA operations has proven more difficult.  I have not yet succeeded in getting it to provide what mbedts and TLS in general are looking for to succeed with the TLS handshake (again, using only software/firmware the handshake and encryption process is completely functional).  So, I would like to use the seemingly more straight-forward Cy_Crypto_Core_XX() functions, if available.

If you will allow, I would like to ask a second question: Has anyone succeeded in using the PSoC Creator based Client-Server Cryptography library in implementing Cryptography hardware acceleration using mbedtls ? 

Thank you all for this forum and for your continued engagement with this post.

 

0 Likes
Pushyanth_K
Moderator
Moderator
Moderator
100 sign-ins 10 solutions authored 50 replies posted

HI @djzman078 ,

 

The Direct Crypto Access is currently not supported in PSoC creator, only Client server model is supported. 

As cy-mbedtls-acceleration library uses the Direct Crypto Access, currently there are no examples demonstrating mbedTLS hardware acceleration using  Client Server model.

 

Thanks and Regards,

Pushyanth

0 Likes