English
Language : 

4010-DAAKF-434 Datasheet, PDF (5/14 Pages) Silicon Laboratories – Si4010 KEY FOB DEMO KIT WITH AES CAPABILITY
3.4. Key Handling
Application
Level
Function
Level
Session
Level
AES_128
Node_Association
Assoc_K
AES_128
12byte padding(0) +
Node Addr
Assoc_SK
Si4010-Keyfob-AES-DEMO
RKE_MK
AES_128
Node_ButtonPress
Btn_K
AES_128
Btn_SK
12byte padding(0) +
Node Addr
AES_128
Functionzzzzzzzz
FuncX_K
MK: Master Key
SK: Session Key
Figure 3. SRW AES128 Applications Key Hierarchy
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.
Rev 1.1
5