This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

ESB aes-ccm MIC verify

Hi

We are verifying the encrypt value and MIC value using a crypto tool.

The result is different depending on the setting of the packet S0 field.

If the S0 field is set as below, the MIC value is checked correctly.

NRF->RADIO->PCNF0 = (1 << RADIO_PCNF0_S0LEN_Pos) | ...

But if i set the S0 field to 0, the MIC value is wrong.

NRF->RADIO->PCNF0 = (0 << RADIO_PCNF0_S0LEN_Pos) | ...

Is it possible to use aes-ccm only when the S0 field is set to 1?

Parents
  • Hi 

    The CCM module is designed with Bluetooth encryption in mind, and Bluetooth uses a 2-byte packet header that requires the S0 field to be set to 1. I will have to double check this with the hardware team, but I believe the MIC check will only work when the radio is configured in a Bluetooth compliant mode, which would explain why S0 has to be 1 byte long. 

    I will get this confirmed and get back to you. 

    Best regards
    Torbjørn

Reply
  • Hi 

    The CCM module is designed with Bluetooth encryption in mind, and Bluetooth uses a 2-byte packet header that requires the S0 field to be set to 1. I will have to double check this with the hardware team, but I believe the MIC check will only work when the radio is configured in a Bluetooth compliant mode, which would explain why S0 has to be 1 byte long. 

    I will get this confirmed and get back to you. 

    Best regards
    Torbjørn

Children
Related