Cryptography Reference
In-Depth Information
uniformly randomly distributed, the probability that the set of M random
keystream bytes obtained by running PRGA on P would match with the M
keystream bytes in hand (obtained by running PRGA on S 0 ) is N M . With
N = 256, a small value of M such as M = 8 yields a negligibly small value 2 64
(close to 0) of this probability. Thus, running PRGA on P for only 8 rounds,
with almost certainty one would be able to determine if that permutation
indeed was the original permutation S 0 .
Now, suppose P is a resolved permutation. So for any arbitrary element
in P, we know what is its successor. Starting from any element u as the first
element, if we write all the elements in sequence, then we get a permutation
Q = < u,suc 1 (u),suc 2 (u),...,suc N−1 (u) >
such that
P = rot n (Q)
for some n, 0 ≤ n ≤ N −1.
We run PRGA starting with the initial permutation once as Q, next as
rot 1 (Q), next as rot 2 (Q), and so on, until the first 8 keystream bytes match
with the observed keystream bytes in hand. With at most N such trials, the
entire permutation can be constructed.
The above Lemma immediately gives an algorithm ConstructPerm to con-
struct S 0 from a partially resolved permutation.
Input: A partially resolved permutation P in the form of an array
Next.
Output: The original permutation S 0 before the PRGA begins.
Set m = the number of unassigned (i.e., −1) entries in the array
1
Next;
for each possible assignment of those m entries do
2
Get the corresponding resolved permutation T;
3
for n = 0 to N −1 do
4
Run StuckPRGA starting with rot n (T) as the initial
5
permutation for 8 rounds and generate the first 8 keystream
bytes;
if the above 8 keystream bytes match with the first 8
6
keystream bytes obtained in the actual execution of
StuckPRGA then
Return S 0 = rot n (T);
7
end
end
end
Algorithm 8.4.4: ConstructPerm
The procedures PartResolvePerm, ResolveConflicts and ConstructPerm
can be combined to devise an e cient algorithm InvertStuckPRGA to retrieve
Search WWH ::




Custom Search