
DS1963S
23 of 37
Device Flag Summary
Table 3
Command, Function or Condition
Return to Probe Condition
Read Memory Command
Match Scratchpad Command
Write Scratchpad Command
Read Scratchpad Command
Erase Scratchpad Command
Copy Scratchpad Command
Read Authenticated Page Command
Validate Data Page Function
Sign Data Page Function
Compute Challenge Function
Authenticate Host Function
Compute first Secret Function
Compute next Secret Function
HIDE
SET
-----
-----
-----
-----
CLEARED
-----
-----
SET
-----
-----
SET
SET
SET
CHLG
-----
CLEARED
CLEARED
CLEARED
-----
CLEARED
CLEARED
CLEARED
CLEARED
CLEARED
SET
CLEARED
CLEARED
CLEARED
AUTH
-----
CLEARED
CLEARED
CLEARED
-----
CLEARED
CLEARED
CLEARED
CLEARED
CLEARED
CLEARED
Note 2)
CLEARED
CLEARED
MATCH
-----
-----
Note 1)
-----
-----
-----
-----
-----
-----
-----
CLEARED
CLEARED
CLEARED
CLEARED
1)
The flag is SET if the data matches and the AUTH flag was set before command execution;
otherwise the flag is CLEARED. Setting the MATCH flag requires the successful execution of
Compute Challenge, Authenticate Host and Match Scratchpad in an uninterrupted sequence.
2)
Is SET only if CHLG flag was set before command execution; otherwise is cleared.
SHA-1 COMPUTATION ALGORITHM
This description of the SHA computation is adapted from the Secure Hash Standard SHA-1 document
referenced on page 2 of this data sheet. The algorithm takes as its input data 16, 32-bit words Mt (0 t
15), as shown in Table 2, SHA-1 Input Message Formats. The SHA computation involves a sequence of
eighty 32-bit words called Wt (0 t 79), a sequence of eighty 32-bit words called Kt (0 t 79), a
Boolean function ft (B, C, D) (0 t 79) with B, C and D being 32-bit words, and three more 32-bit
words called A, E and TMP. The operations required for the SHA computation are arithmetic addition
without carry (“+”), logical inversion or 1’s complement (“\”), EXCLUSIVE OR (“ ”), logical AND
(“ ”), logical OR (“ ”), assignment (“:=”), and circular shifting within a 32-bit word. The expression
“Sn(X)” represents a circular shift of X by n positions to the left, with X being a 32-bit word.
The function ft is defined as follows:
ft(B,C,D) = (B C) ((B\) D)
B C D
(B C) (B D) (C D)
B C D
(0 t 19)
(20 t 39)
(40 t 59)
(60 t 79)
The sequence Wt (0 t 79) is defined as follows:
Wt := Mt
S1(Wt-3 Wt-8 Wt-14 Wt-16)
(0 t 15)
(16 t 79)