3.4. Key Handling
Application
Level
Function
AES_128
Level
Assoc_K
Session
AES_128
Level
Assoc_SK
AES keys used in the demos are generated according to the hierarchy shown in Figure 3. Only the Application
level keys are stored on the receiver board. The function level keys are calculated at power-up. The Session level
keys are calculated at their first use.
In the key fobs Function level, keys are not generated but only stored to save power. The Session level keys are
calculated at each power up.
The Assoc_SK is used for association packets, and the Btn_SK is used for encrypting the messages generated by
a button press.
3.5. Key Fob Firmware Description
The complete project of the program used in the demo key fob can be found in the Si4010 documentation kit in the
"rke_demo" folder.
The key fob wakes up for button push or battery insert. If the battery was inserted, the vSys_FirstPowerUp() API
function is called, which shuts down the chip after 600 ms. This is for safe startup in case of battery contact
bouncing. Upon button push wakeup, the system variables and hardware control registers are initialized first, and
the session keys used in the AES encoding are generated from the function keys and the device address. Then,
button debouncing is made.
If a valid button push is detected, first a packet is assembled and transmitted six times for the LED receiver demo
board used in the Si4010 Simplified Key Fob Demo Kit (see details in "AN516: Si4010 Simplified Key Fob Demo
Quick Start Guide"). Then, a packet is assembled according to the description in the previous chapters. It is
transmitted in FSK modulation for the Si4313 receiver board (part of this kit), and then also in OOK modulation.
The next step is to increment the sync counter stored in the MTP memory.
If there is no valid button push detected for 3.2 s, the program shuts down the chip.
Node_Association
12byte padding(0) +
Node Addr
Figure 3. SRW AES128 Applications Key Hierarchy
Si4010-Keyfob-AES-DEMO
RKE_MK
AES_128
Node_ButtonPress
Btn_K
12byte padding(0) +
AES_128
Node Addr
Btn_SK
Rev 1.1
AES_128
Functionzzzzzzzz
FuncX_K
MK:
Master Key
SK:
Session Key
5
Need help?
Do you have a question about the Si4010 and is the answer not in the manual?
Questions and answers