Hello community!
I am trying to use the unified bootloader with S32K116 and LIN.
I am checking the OpenBus tool at the ISO-LIN-UDS-TOOL section with the “S32K116_LIN_uds.json” config file. I noticed that when sending the UDS [0x27,0x02] for SendKey, a default key equal to [ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F" ] is sent. Seems like it does not matter what the received seed from the previous step (RequestSeed) is , the key will always be the same.
I analyzed the code for Security Access and noticed that a random value is sent as a seed when a “Request seed” (0x27,0x01) is received. Later, when SendKey [0x27,0x01] service is called it executes a decrypt function to the received data in order to compared it to the previously sent seed and see if they match. So it do seems like a different value is expected every time “SendKey” is received.
My doubts are:
- Why always sending the same key is valid for this demo? The encryption step is not taking into account on the demo?
- If I would like to implement the complete process (Request seed-> receive seed-> apply algorithm to seed -> return resultant key with SendKey service) when or where should I put my encrypt code to apply the algorithm to the received seed? Is the OpenBus GUI editable to integrate this encryption step?
Thank you in advance.
HayZam.