Calculate the checksum of the flash in run time

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

cross mob
vev_4467696
Level 1
Level 1

I need to calculate the Checksum of hex file/ flash data each  time i switch on my device

I am using PSOC 4 (Part# CY8C4247AZI-M485 )

Background: This is to avoid  software tamper, the generated checksum at the time of production in psoc  will be stored  into NVM of one of security devices connected to other MCU(8051), if some body tries to change the hex file in my PSOC  that has different checksum, i need  validate in my checksum in the MCU(8051)

0 Likes
1 Solution
vev_4467696
Level 1
Level 1

Please use the Flash (Invariable Memory) Test of PSoC 4 – IEC 60730 Class B and IEC 61508 SIL Safety Software Library Application Note.

Depending upon the program the stored checksum will vary. So, the user needs to obtain the project specific checksum by running the project either in debug mode or reading the calculated checksum from the UART terminal. We have added 'Appendix A. Set Checksum in Flash (Invariable Memory) Test' in PSoC 4 – IEC 60730 Class B and IEC 61508 SIL Safety Software Library AN with the screen shots. Please refer to 'Figure 24. Reassign Checksum Constant with Actual Checksum' to see where the project specific checksum is provided back. 

PSoC 4 – IEC 60730 Class B and IEC 61508 SIL Safety Software Library is available at: https://www.cypress.com/documentation/application-notes/an89056-psoc-4-iec-60730-class-b-and-iec-615...

"This is the  replay what i got form tech support of cypress and this works fine as per my requirement"

View solution in original post

0 Likes
1 Reply
vev_4467696
Level 1
Level 1

Please use the Flash (Invariable Memory) Test of PSoC 4 – IEC 60730 Class B and IEC 61508 SIL Safety Software Library Application Note.

Depending upon the program the stored checksum will vary. So, the user needs to obtain the project specific checksum by running the project either in debug mode or reading the calculated checksum from the UART terminal. We have added 'Appendix A. Set Checksum in Flash (Invariable Memory) Test' in PSoC 4 – IEC 60730 Class B and IEC 61508 SIL Safety Software Library AN with the screen shots. Please refer to 'Figure 24. Reassign Checksum Constant with Actual Checksum' to see where the project specific checksum is provided back. 

PSoC 4 – IEC 60730 Class B and IEC 61508 SIL Safety Software Library is available at: https://www.cypress.com/documentation/application-notes/an89056-psoc-4-iec-60730-class-b-and-iec-615...

"This is the  replay what i got form tech support of cypress and this works fine as per my requirement"

0 Likes