Cryptography Reference
In-Depth Information
Input: The keystream after a fault is injected.
Output: Classification of the state (Finney or non-Finney).
Process the next keystream byte z r ;
1
if z already appeared at least once (i.e., there has been at least one
2
collision with z r ) then
Denote the number of bytes since the last fault by n;
3
if n < 30 then
4
Return(non-Finney);
5
end
if 30 ≤ n < 40 and this is the second collision then
6
Return(non-Finney);
7
end
if 40 ≤ n < 50 and this is the third collision then
8
Return(non-Finney);
9
end
if n > 255 then
10
Vefiry that the 255th preceding byte z r−255 is different from
11
the current byte z r (unless one of z r and z r−255 is 1);
Also verify that no other pair (x,z r ) or (z r−255 ,y) appeared
12
separated by 255 rounds;
If such a pair appeared, return(non-Finney);
13
end
if n > 600 then
14
Return(Finney);
15
end
else
16
Go to Step 1;
17
end
end
else
18
Go to Step 1;
19
end
Algorithm 8.2.1: DetectFinney
Search WWH ::




Custom Search