12.3.3 CryptoDeriveAndStoreKey
The command CryptoDeriveAndStoreKey( ) will derive (encrypt) into a specific Key identified by DstKeyID, the Nonce value
provided, using a source Key identified by SrcKeyID.
Table 12-4: CryptoDeriveAndStoreKey Command
Byte
0
Data from Host
0x05
Data to Host
Stat1
Table 12-5: CryptoDeriveAndStoreKey Response
Byte
Data from Host
Data to Host
•
DstKeyID and SrcKeyID are defined in
DstKeyID: destination key ID. Goes from 0 to 27.
SrcKeyID: source Key ID. Goes from 0 to 27.
•
Nonce1, Nonce2, ... ,Nonce16: array of Bytes.
•
CEStatus is defined in section
12.3.4 CryptoProcessJoinAccept
The command CryptoProcessJoinAccept( ) will do an ECB decryption (AES encrypt) on the Data and Header, and then verify
the MIC of the decrypted message.
The decrypted data is then provided back if the MIC verification is successful.
Table 12-6: CryptoProcessJoinAccept Command
Byte
0
1
Data
from
0x05
0x04
Host
Data
to
Stat1
Stat2
Host
LR1110
User Manual
Rev.1.0
UM.LR1110.W.APP
March 2020
1
2
Source
Dest
0x03
KeyID
KeyID
(7:0)
(7:0)
IrqStatus
IrqStatus
Stat2
(31:24)
(23:16)
0
1
0x00
0x00
Stat1
CEStatus
Table 12-1: Cryptographic Keys Usage and
CEStatus on page
107.
2
3
4
LoRa
Dec
Ver
Wan
KeyID
KeyID
(7:0)
(7:0)
Ver (7:0)
Irq
Irq
Irq
Status
Status
Status
(31:24)
(23:16)
(15:8)
www.semtech.com
3
4
5
Nonce1
Nonce2
IrqStatus
IrqStatus
(15:8)
(7:0)
5
...
...
Header1
Irq
...
Status
(7:0)
6
...
Nonce3
...
0x00
...
Derivation:
N+6
N+7
...
HeaderN
Data1
...
0x00
0x00
...
19
Nonce16
0x00
N+6+
M
DataM
0x00
108 of 130
Semtech