USER MANUAL
STM 550B / EMSIB - EASYFIT MULTISENSOR FOR IOT APPLICATIONS (2.4 GHZ BLE)
© 2020 EnOcean | www.enocean.com
F-710-017, V1.0
STM 550B / EMSIB User Manual | v1.3 | June 2020 | Page 46 / 115
6.1
Security implementation
STM 550B implements telegram authentication based on AES128 in CCM (Counter with
CBC-MAC) mode as described in IETF RFC3610. At the time of writing, the RFC3610 stand-
ard could be found here:
https://www.ietf.org/rfc/rfc3610.txt
The 13 Byte CCM Nonce (number used once
–
unique) initialization value is constructed as
concatenation of 6 byte Source Address, 4 byte Sequence Counter and 3 bytes of value
0x00 (for padding).
Note that both Source Address and Sequence Counter use little endian format (least signifi-
cant byte first).
Figure 32 below shows the structure of the AES128 Nonce.
Figure 32
–
AES128 Nonce structure
The AES128 Nonce and the 128 bit device-unique security key are then used to calculate a
32 bit signature of the authenticated telegram payload shown in Figure 33 below.
Figure 33
–
Authenticated payload
The calculated 32 bit signature is then appended to the data telegram payload as shown in
in chapter 5.5.
Appendix B provides an example how to authenticate a received data telegram.