CAPÍTULO 3. SOLUCIONES DE SEGURIDAD CON TRINUX
3.6 Encriptadores de paquetes
This subsection provides a small toolbox of results which solve various problems involving lists in worse than linear time. They are useful, as the previous subsection allows us to bound the lengths of elements in terms of the number of elements.
The following result is a restatement of Corollary 3.2 of [3].
Proposition 2.4.4. Let(a1, . . . ,am)be a list of m pairwise distinct finite order ele- ments of G. Suppose that x∈G satisfies
|x|G≥(2k+5)4δ+2(l+2δ)
where l=max{|a1|G,|ax1|G, . . . ,|am|G,|axm|G}and k is the number of generators of G. Then m is less than or equal to Q2.
The statement in [3] says that m≤(2k)8δ, but the proof there is sufficient to
prove the statement here. Proposition 2.4.4 implies that the centraliser of a long list of finite order elements is finite. Theorem III.Γ.3.2 of [2] then provides a bound on the number of elements in a finite subgroup:
Proposition 2.4.5. If G is aδ-hyperbolic group and H is a finite subgroup of G then there is an element g∈G with Hg contained entirely within a ball in the Cayley graph of G of radius 4δ+2.
We can now prove the following corollary:
Corollary 2.4.6. There is a constant R and an algorithm FINDCENTRALISEREXP
which takes as input a list A consisting of n>Q2 words, all of which represent
pairwise distinct finite order elements of G, returns the centraliser C of A and runs in time O(nµRµ)where µ is an upper bound on the length of words in A. All elements of C have length in O(µ)and the number of elements in C is in O(1).
Proof. Suppose that A= (a1, . . . ,an)is such a list. If x is in the centraliser of A then axi =aifor all 1≤i≤n, so in Proposition 2.4.4 we have that l=µ. Since n>Q2,
we have|x|G<R(µ+2δ), where R := (2k+5)4δ+2.
Since all elements in C are of bounded length, C is finite. Proposition 2.4.5 implies that C can be conjugated into a ball inΓof radius 4δ+2, and in particular the number of elements in C is bounded by a constant depending only on G.
Thus the algorithm FINDCENTRALISEREXP need now just check for each word
w of length at most R(µ+2δ)whether Aw=GA. There are at most Rµ+2δ∈O(Rµ)
such words, and checking each word takes time O(nµ), so the algorithm runs in
time O(nµRµ)as required.
Thus we have a method of computing the centraliser of a long list of short finite order words. We still need an algorithm which can be used on a short list of short finite order words. Lemma 4.2 and Proposition 4.3 of [11] show that the centraliser of any finite list in a conjugacy automatic group is a regular language. A run-time analysis of this algorithm is given below for completeness.
Proposition 2.4.7. If A= (a1, . . . ,am)is a list of words, there is a regular language Z of short-lex least words which is exactly the centraliser of A.
Further, there is a constant R and an algorithm FINDCENTRALISERRATIONAL
which takes as input a list A= (a1, . . . ,am)of X -words returns an X±1-FSA which accepts Z in time O(Rmµ), where µ is an upper bound on the length of words in A. Proof. Let WA be the short-lex word acceptor for G and let W be its language.
Pick X±1 DFAs Mx for x∈X±1 or x equal to the identity to accept each language L(x) ={(u,v): u,v∈W,ux=Gxv}in the conjugacy automatic structure for G with
respect to W . Let k be the maximum number of states in these DFAs. For w=x1···xn, let L(w)be the intersection of
L(x1)×. . .×L(xn)
and
{(u1,u2,u2,u3,u3,···,un,un,u1): u1, . . . ,un∈W}.
By Proposition 1.6.4, both are regular 2n-variable languages, and are accepted by a 2n-variable FSA with kn states (the second one is essentially the cartesian
product of a number of copies of{(w,w): w∈W}) so L(w)is accepted by an FSA
with at most k2n states.
Notice that(u1,u2,u2,u3,u3,···,un,un,un+1)∈L(w)for some set of words uiif
and only if uxi
i =ui+1for each 1≤i≤n, and so uw1 =un+1=u1. Thus the centraliser
of C(w)is just the projection of L(w)to its first factor and is accepted by a k2n-state FSA by Proposition 1.6.4.
The centraliser of A is the intersection of the centralisers C(ai)of its elements ai, which by Proposition 1.6.4 is accepted by a k2mµ-state FSA. Computation of this
FSA takes time O(k2mµ)so it sufficies to let R=k2.
The reader may notice that it would be possible to use this method instead of FINDCENTRALISEREXP and the running time would not be dissimilar. We choose not to in order to give better emphasis to the fact that the centraliser in that case is finite and avoid the complications of finding the language of the FSA so-returned.
We now have enough information to compute centralisers of lists of short ele- ments. To complete this section, we give a method of testing conjugacy between lists of short elements. The main theorem regarding lists of finite order elements in [3], Theorem 3.3, is restated below.
Proposition 2.4.8. Let A= (a1, . . . ,am)and B= (b1, . . . ,bm)be sets of torsion ele- ments in G. If A and B are conjugate then there exists a word x with
|x|G≤(2k+5)4δ+2(µ+2δ) +Q2Q
2
where µ is the maximum length of an element in either list and k is the number of generators of G.
Again, the statement in [3] uses(2k)8δin place of Q2, but the proof is sufficient
to prove the statement here. Thus by simply checking each element under the length above, we have an algorithm TESTCONJUGACYEXP which takes as input two lists of m words whose elements have length less than µ and returns a word w with
Aw=GB if one exists in time exponential in µ.