avr-crypto-lib/bmw/f0-opt-table.txt

78 lines
1.7 KiB
Plaintext

q[ 0] = (+ h[ 5] - h[ 7] + h[10] + h[13] + h[14]);
q[ 1] = (+ h[ 6] - h[ 8] + h[11] + h[14] - h[15]);
q[ 2] = (+ h[ 7] + h[ 9] - h[12] + h[15] + h[ 0]);
q[ 3] = (+ h[ 8] - h[10] + h[13] + h[ 0] - h[ 1]);
q[ 4] = (+ h[ 9] - h[11] - h[14] + h[ 1] + h[ 2]);
q[ 5] = (+ h[10] - h[12] + h[15] - h[ 2] + h[ 3]);
q[ 6] = (- h[11] + h[13] - h[ 0] - h[ 3] + h[ 4]);
q[ 7] = (- h[12] - h[14] + h[ 1] - h[ 4] - h[ 5]);
q[ 8] = (+ h[13] - h[15] + h[ 2] - h[ 5] - h[ 6]);
q[ 9] = (+ h[14] + h[ 0] - h[ 3] + h[ 6] - h[ 7]);
q[10] = (+ h[15] - h[ 1] - h[ 4] - h[ 7] + h[ 8]);
q[11] = (- h[ 0] - h[ 2] - h[ 5] + h[ 8] + h[ 9]);
q[12] = (+ h[ 1] + h[ 3] - h[ 6] - h[ 9] + h[10]);
q[13] = (+ h[ 2] + h[ 4] + h[ 7] + h[10] + h[11]);
q[14] = (+ h[ 3] - h[ 5] + h[ 8] - h[11] - h[12]);
q[15] = (- h[ 4] - h[ 6] - h[ 9] + h[12] + h[13]);
##########################################################
1 := -
0 := +
+---------- 0x0311
| +-------- 0xDDB3
| | +------ 0x2A79
| | | +---- 0x07AA
| | | | +-- 0x51C2
| | | | |
---------------
0: 0 1 0 0 0 + - + + +
1: 0 1 0 0 1 + - + + -
2: 0 0 1 0 0 + + - + +
3: 0 1 0 0 1 + - + + -
---------------
4: 0 1 1 0 0 + - - + +
5: 0 1 0 1 0 + - + - +
6: 1 0 1 1 0 - + - - +
7: 1 1 0 1 1 - - + - -
---------------
8: 0 1 0 1 1 + - + - -
9: 0 0 1 0 1 + + - + -
10: 0 1 1 1 0 + - - - +
11: 1 1 1 0 0 - - - + +
---------------
12: 0 0 1 1 0 + + - - +
13: 0 0 0 0 0 + + + + +
14: 0 1 0 1 1 + - + - -
15: 1 1 1 0 0 - - - + +
---------------
| | | | |
| | | | +-- 0x438A
| | | +---- 0x55E0
| | +------ 0x9E54
| +-------- 0xCDBB
+---------- 0x88C0
####################################################