User's Manual

37
Right Rotate Rotate to the right
>
NOT Logical negation
~
AND Logical product
&
OR Logical sum
|
XOR Exclusive logical sum
^
Add Module 256 sum
+
Move Shift
M
Assign Assignment
A
End End of processing
E
Table 23
Table of logical operators
The
operands
on which the operators can act are each of the 8 bytes of the Original Data and two temporary variables
named X and Y.
OPERAND DEFINITION
N
n bytes of the Original Data (1 n 8)
X Temporary variable X
Y Temporary variable Y
Table 24
Table of operands
9.9.3 Example
Here is an example of a user-programmable algorithm:
^ 1 2 X & X 6 7 ~ 4 4 E
This is the meaning:
1. Executes the exclusive sum (^ / XOR) of the first byte of the Secure Data field with the second and
assigns the result to temporary variable X.
2. Executes the logical product (& / AND) of variable X with the sixth byte of the Secure Data field and
assigns the result to the seventh byte.
3. Effects the negation (~ / NOT) of the fourth byte of the Secure Data field.
Let's see how the algorithm acts on the following values of the Original Data:
byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 byte 8
A3 45 C7 83 34 33 43 40
1. A3 XOR 45 = E6 X
2. X AND 33 = 22 byte 7
3. NOT 83 = 7C byte 4
At the end of the ENCRYPTING operation, the 8 bytes will consequently be transformed into the following Encrypted
Data:
byte 1 byte 2 byte 3 byte 4 byte 5 byte 6 byte 7 byte 8
A3 45 C7 7C 34 33 22 40
9.10 Programming mode
The PROGRAMMING is used for fully re-programming the dongle and, in particular, the Label and Password registers
(remember that the WRITING and READING functions are able to manipulate only the Secure Data field).