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.

RTOS/CC1350: How is the payload data or actual data is encrypted in communication between sensor and collector ?

Part Number: CC1350

Tool/software: TI-RTOS

Hello all,

My question is how the encryption of data is taken care while transmitting data over sub-1 from sensor to collector and vice-versa ?

What and all function are needed to look in order to understand encryption and decryption of actual payload data.

  • Hi,

    TI 15.4 stack follows the security defined in the IEEE 802.15.4 spec. There are multiple security levels and modes that can be used and each level has its own way of securing the packets.

    To understand all the security levels and modes you will have to read the IEEE 802.15.4 specification.

    By default in the collector - sensor examples we use "ApiMac_secLevel_encMic32" which uses AES encryption with message integrity code.

    Also all encryption/decryption is done at the MAC layer so as long as you set CONFIG_SECURE to true the MAC layer will encrypt your data.

    If you want to see how the stack security APIs are used for initialization and configuration I recommend looking at the file cllc.c and jdllc.c

    More specifically the functions:

    - Cllc_securityInit

    - Cllc_addSecDevice

    Also you should take a look at the code under "#ifdef FEATURE_MAC_SECURITY"

  • Hi Hector,

    Thanks for your quick response.
    I will surely look into the functions.
    One more question i have is that How to Authentic nodes, so that only my selected nodes can join my network, any other cannot join.

    - Pratik
  • The collector/Sensor examples do not provide a method for authenticating a device that has joined a network. The only protection against undesired devices joining the network is the permit join feature which will allow devices to join the network only when permit join is enabled. This being said, there is still a chance that an "unauthorized" device joins the network but as long as this device does not have the network key it wont be able to communicate with any device in the network.

    If you want to implement your own authentication I suggest you look into the Configuration request(Collector_sendConfigRequest) sent by the collector and the configuration response(sendConfigRsp) sent by the sensor as well as processConfigRequest .

    You can modify these functions to integrate your own authentication mechanism