GenDig - Shared Nonce

In Shared Nonce mode 32 bytes of data are input to this command. This mode is used when a nonce value must be shared between two devices. The Nonce command must be run prior to the first GenDig command to load a value into TempKey. Subsequent GenDig commands will use the value from the previous GenDig operation.

Table 1. Input Parameters GenDig Shared Nonce

Opcode
(1 Byte)

Mode
(1 Byte)

KeyID(1)
(2 Bytes)

Data
(32 Bytes)

Description
0x15 0x03 0x00 0[Slot] Input data  
  0x80 0[Slot] Input data  
Note:
  1. 1.KeyId specifies the DataZone slot to be used in the TempKey calculation. Only the lowest 32 bytes will be used.
Table 2. Output Response - GenDig Data
Name Size Description
Response 1 byte

0x00 - If successful.

Error code - If the command fails.

Notes: Flag Bits
  1. 1.TempKey.Valid flag will be set to 1 if successful, otherwise it is 0.
  2. 2.TempKey.GenDigData will be set to 1 indicating a DataZone slot was used in the calculation.
  3. 3.TempKey.KeyID will set to the slot specified in the command.
Table 3. TempKey Calculation - GenDig Shared Nonce
Size Parameters - KeyID MSB 0x00 Parameters - KeyID MSB 0x80
32 bytes Input Data TempKey.value
1 byte Opcode = 0x15 Opcode = 0x15
1 byte Mode = 0x03 Mode = 0x03
1 byte LSB of KeyID = 0x0[Slot] LSB of KeyID = 0x0[Slot]
1 byte 0x00 0x00
1 byte SN[8] = 0x01 SN[8] = 0x01
2 bytes SN[0:1] = 0x01 0x23 SN[0:1] = 0x01 0x23
25 bytes All Zeros All Zeros
32 bytes TempKey.Value Input Data