This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TM4C129EKCPDT: Security & code-signing with TM4C

Part Number: TM4C129EKCPDT

Hi, 

I am looking for TI chip (TM4C129E) to be used in my project. The reason for going with this chip is the security requirements that I need to support in this product.

I would be configuring this chip as a simple TCP/IP SERVER which always connects to a client.  

I am looking for answers for following questions in this forum

- How the certificate management works? where its stored etc.

 - Even I need to support Over-the-Air firmware upgrade of the device. I should be able to verify the cryptographically signed image before I upgrade the firmware. Can I use TI chip for this purpose? 

- what are the ways this device provides tamper proof of the memory and read protection?

Thanks and Regards,

Praveen Hegde 

  • Hi Praveen,
    The TM4C129E only contains the AES/DES/SHA hardware accelerators for you to encrypt/decrypt and generate hash for your data. It does not have the hardware capable of dealing with the public/private key generation and X.509v3 type of certification verification/management. You will need to do all these things in software. You can store the certificates/keys in the EEprom. Normally you would have to store these keys in a "secure" memory. The TM4C provides some level of EEprom protection ranging from no protection, and combination of read and write protection depending if password is present. Please refer to the datasheet under the EEprom section for details if they satisfy your security need. I will suggest you evaluate other TI devices that are designed for embedded security applications. Please start with this link. www.ti.com/.../security.html
  • Hi,

    As already mentioned by Charles, TM4C series doesn't support hardware based solution for your requirements.
    However, FYI, we have achieved this in the past using software based solutions such as public key Cryptography.

    Thanks
  • Hi Charles, thank you for inputs.

    One more approach is that I can use the security chip outside the TM4C and achieve the required security right?  However is there any feature in TM4C which helps in implementing a secure boot?

  • Hi Praveen,

    Not a security expert as TM4C is not really a device for security space. My question is how would you secure the communication between the TM4C and your external security chip? How do you prevent from someone sniffing on the communication (SPI, UART, etc) ? What secure information do you plan to store in the TM4C?
  • Hi Charles, we are a not going store any confidential data as such(accept for the private key and certificate stuff required for secure communication) . However we want to make a TM4C as server which responds to a client. So we want to ensure this communication is secure using a TLS. Server shall validate the client, other way too. And also we want the secure booting for the server, also this should accept the firmware update from the trusted source (binary digitally signed).

    These are our requirements, we got recommendation to go for TM4C from one of the field engineer from TI India. So was looking for feasibility to use TM4C in our project.

    Thanks,
    Praveen
  • May we note that (somehow) the flow of logic is "difficult to understand" w/in poster's request.

    First is stated (i.e. concluded... the reason for:)

    Praveen Hegde said:
    The reason for going with this chip is the security requirements that I need to support in this product.

    And then - is followed by:

    Praveen Hegde said:
    I am looking for answers for following questions in this forum

    Is it not clear that without, "hard, acceptable answers" - you have, "No reason" for "going w/ this chip?"

    There DO exist MCUs with "substantially higher security provisions."      Should not your "MCU Search" have begun there?       Your "reasoning" is circular - thus unlikely to yield the results you (and others) seek...

  • What's your attack profile?

    Do you have to keep the attacker from overwriting the existing program if they have physical access? T

    Robert
  • Robert, the answer is NO.
    However, when we perform, over-the-air update we want to ensure that non-verified binary images are not accepted, binary images of trusted sources are accepted.
  • In that case a security chip such as a TPM chip would likely work but it's probably overkill.

    You are just looking to sign your image. Your bootloader just needs to compute a verified hash or CRC. Your only reason for using a security chip is if you were protecting against a remote attacker injecting code to read random memory and find your keys that way.

    If you need to verify before programming then you may need external memory so you have enough room to store the download and verify it's complete and safe before programming it.

    You could also include checks that the binary was meant for this product (and not a different one) and that the hardware requirements matched.

    Robert