Featured Discussions
Dear All,
What will be the optimal gate cathode resistance value for a new thyristor using a multimeter.
What will be the impact of values greater than >=30 ohms across GK terminals to its firing boards.
We have faced issues with Gate Cathode Resistance value of Thyristors if more than 30 ohms.
#thyristorcheck
Show LessThe ECDSA (Elliptic Curve Digital signature algorithm) is a cryptographic algorithm that used to authenticate the data if it is coming from known source and the data is not tampered while transferring. This algorithm relies on hardness of solving discrete logarithm problem to make sure adversaries cannot generate an authentic signature nor tamper the message without noticing.
Scope
This code example demonstrates the usage of various ECDSA (Elliptic Curve Digital signature) operations using CRYPTO block of PSoC 6TM MCU devices.
It provides a prompt to the user via UART and waits for user input. Based on the input and the data provided by the user, appropriate tasks (create key pair, Sign the data, verify the signature, export the public key) are performed.
Design and implementation
The code example uses The PDL library to perform the following operations in ECC.
- Set ECC curve and hash mode - Ask the user to select the ECC curve and hash mode and set the parameters accordingly.
- ECC key gen - Creates ECC Public/private key pairs.
- Sign data – Reads the data from the user. Computes the hash and signs the hash with the created private key.
- Verify data - Reads the data and signature from the user. Computes the hash of the data, verifies the hash using the stored public key.
- Export p - Sends the public key (x, y coordinates) in big endian format over UART.
- Print ECC parameters - Sends the ECC curve name and hash mode in UART.
File: source/ecc.h:
- Definition of structure ecc_params to store the ecc parameters.
- Declarations of functions to perform ECC operations.
- Declarations of functions to convert ECC signature from raw to DER format and vice versa.
File: source/ecc.c:
- Definitions of functions to perform ECC operations.
- Definitions of functions to convert ECC signature from raw to DER format (signature_raw_to_der) and DER to raw format (signature_der_to_raw).
Verify signature outside of PSoCTM 6 MCU
- You can also verify the signature of message outside of PSoC 6TM MCU (E.g. From PC).
- For this you need to first get the signature, public key from PSoC 6TM MCU.
- scripts/verify_signature.py can be used to verify the signature as follows.
- Save the public key:
- Get the public key from PSoC 6TM MCU using Export public key command and copy it.
- Execute the following python command:
python.exe scripts/verify_signature.py save-pubkey -k pub_key.pem
- The above script will ask for public key, paste the public key received from PSoC 6 MCU. The public key will be saved as pub_key.pem
- Verify the signature:
- Get the signature from PSoC 6TM MCU using Sign data command.
- Execute the following python command to verify the message:
python.exe scripts/verify_signature.py verify-signature -k pub_key.pem
- The script will ask for message, signature and hash mode as inputs.
- Result of the signature verification is returned.
Show Less
Hello,
I open this issue to fix the problem previously explained here:
https://community.infineon.com/t5/XMC/XMC-usic-end-of-transmission/m-p/670732#M14418
as per requested, I attach the project I am using.
Best regards,
Lander
Show Less
Hi support,
I would like to set-up a UART connection on my NAC1080 using the GPIO0 and GPIO2 in order to communicate with my PC the messages that the NAC1080 will be sending.
I've been reviewing the uart_drv.h library you have available and what I can't see is how the data transmission works.
There's a function called "transmit_bytes()" that send the Tx buffer data, but where's the Tx buffer?
How could I edit the data on that buffer to be able to send the desired message?
Regards,
-K
Show Less
The current TC397_TFT v1.0 development board uses the TC397 A step of the chip, but I see ADS are TC397 B step routines, I will ADS in a few examples compiled and burned to the development version, can not run normally, respectively, through the TASKING and winIDE DEBUG found that the chip startup process will enter the Context Maneger Error Trap, the following figure belongs to, please ask! Please ask:
1. For Context Maneger Error Trap should be solved in what way?
1. Current ADS 1.9.20 supports TC397 A step chip, if not support and TC397A step corresponding to the example tutorial?
2. What is the difference between TC397 A step and TC397 B step?
TASKING DEBUG
winIDE
smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/AURIX/TC397-TFT-v1-0%E5%BC%80%E5%8F%91%E6%9D%BF%E7%BC%96%E8%AF%91%E7%83%A7%E5%BD%95%E4%BB%BB%E6%84%8FADS%E7%A8%8B%E5%BA%8F%E4%BC%9A%E8%BF%9BContext-Maneger-Error-Trap/td-p/743094
Show LessHello, everybody:
I encountered the following problem, read the value in the register, check the register is "0x80000e23", but after reading, the first bit is not read, only read "0xe23", the type of the variable used to receive the value of the register is ( volatile uint32 )
smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/TRAVEO-T2G/%E8%AF%BB%E5%8F%96%E5%AF%84%E5%AD%98%E6%9C%BA%E7%9A%84%E5%80%BC-%E7%AC%AC%E4%B8%80%E4%B8%AAbit%E8%AF%BB%E5%8F%96%E4%B8%8D%E5%88%B0/td-p/743090
Show Less
I tried to configure it using the above code, but it reports an error at device.set_acquisition_sequence(sequence).
Using the sample program found in the official distance_fft.py, using the
Perform the configuration. Is there any way to use config to configure it, or convert config to metrics and then configure it?
smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/%E9%9B%B7%E8%BE%BE%E4%BC%A0%E6%84%9F%E5%99%A8/BGT60TR13C-%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E5%8F%82%E6%95%B0%E9%85%8D%E7%BD%AE%E4%BC%A0%E6%84%9F%E5%99%A8%E8%8E%B7%E5%8F%96%E6%95%B0%E6%8D%AE/td-p/743081
Show Less大家好!
官方程序里的延时函数Delay_us(uint32 delay_time_us),在实际测试时,有个奇怪的现象。
测试程序看门狗设置1008ms,测试程序延时方式如下:
- Delay_us(500000); (void)WDT1_Service(); //延时500ms,喂狗
- Delay_us(600000); (void)WDT1_Service(); //延时600ms,喂狗
- Delay_us(1000000); (void)WDT1_Service(); //延时1000ms,喂狗
其中,1,3能正常工作,第2项延时600ms喂狗,程序没有喂狗成功,程序不工作。
Show LessThis Q&A just discussed P/D Flash, AURIX™ MCU: Error Correction Code (ECC) support - KBA238244
My question: is there special ECC for RAM and CAN relevant memory, e.g. Message RAM
Show Less