This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Buttonles DFU security

Hi.

I am working on adding DFU to our application. I want to use buttonless dfu service for entering bootloader. I think the only thing one need to do is write a correct widely known value to correct characteristic and then device enter bootloader mode right ? I am wondering if is there anything implemented by default protecting my device from other devices connecting to my device and triggering bootloader enter?

Regards

Parents
  • Hi Michal, 

    I assume that the question is about the BLE DFU update, not the Mesh DFU. 

    Currently in our buttonless example there is no security or password needed to put the device to DFU mode. However, you can enable pairing and that can block other devices from connecting to your device after you bond to a device. 

    If you plan to implement password, I can suggest implementing a challenge response mechanism. If you want to avoid using same master key on all of the devices (so that if one device is hacked, all the devices will break) you would need to have a serial number on each of the device and use this serial number to identify/generate the key of the device. 

Reply
  • Hi Michal, 

    I assume that the question is about the BLE DFU update, not the Mesh DFU. 

    Currently in our buttonless example there is no security or password needed to put the device to DFU mode. However, you can enable pairing and that can block other devices from connecting to your device after you bond to a device. 

    If you plan to implement password, I can suggest implementing a challenge response mechanism. If you want to avoid using same master key on all of the devices (so that if one device is hacked, all the devices will break) you would need to have a serial number on each of the device and use this serial number to identify/generate the key of the device. 

Children
Related