Startseite Tame logarithmic signatures of abelian groups
Artikel Open Access

Tame logarithmic signatures of abelian groups

  • Dominik Reichl ORCID logo EMAIL logo
Veröffentlicht/Copyright: 12. Oktober 2017
Veröffentlichen auch Sie bei De Gruyter Brill

Abstract

The security of the asymmetric cryptosystem MST1 relies on the hardness of factoring group elements with respect to a logarithmic signature. In this paper we investigate the factorization problem with respect to logarithmic signatures of abelian groups represented in primary decomposition. We present an efficient factorization algorithm for logarithmic signatures, where descending into factor groups induced by period subgroups is possible. Especially, we show that a logarithmic signature is tame when all its blocks are of prime size.

MSC 2010: 94A60; 68R01

1 Introduction

Magliveras, Stinson and van Trung [2] have introduced an asymmetric cryptosystem called MST1 that is based on logarithmic signatures. A logarithmic signature is a sequence α=(A1,,As) of ordered subsets (blocks) Ai of a group G such that for every element gG, there exist uniquely determined aiAi (1is), with a1++as=g.

We assume that computing the sum of two group elements is possible efficiently. So, given elements aiAi (1is), the sum a1++as can be computed efficiently. However, given a gG, computing the corresponding elements aiAi (1is), with a1++as=g, might be a hard problem. Together with some additional information that allows efficient factorization, we have a candidate for a trap-door function, on which MST1’s security relies.

If factoring is easy for all group elements with respect to a logarithmic signature, it is called tame. If factoring is hard, it is called wild.

In a transversal logarithmic signature, each block consists of a full set of coset representatives for a subgroup given by the sum of certain other blocks. In [2], it has been shown that transversal logarithmic signatures for permutation groups are tame.

In [1], Blackburn, Cid and Mullan discussed the security of MST3 (especially when realized with Suzuki 2-groups). The center of a Suzuki 2-group is an elementary abelian 2-group (which plays an important role in the cryptanalysis of MST3), and they proved the following result: an amalgamated transversal logarithmic signature (a logarithmic signature constructed from a transversal logarithmic signature by permuting blocks and elements, translating and fusing blocks) of 2n is tame. The idea for proving this is to recursively descend into appropriate factor groups (which can be determined efficiently). This idea requires to be able to efficiently perform computations in certain factor groups, which is possible for 2n (for instance, it can be interpreted as a vector space over the field 2, where Gaussian elimination can be used).

Extending this idea, Svaba, van Trung and Wolf [6] presented factorization algorithms for transversal and fused transversal logarithmic signatures. In general, transversal logarithmic signatures are tame if and only if group membership testing is possible efficiently with respect to the groups in the subgroup chain of the transversal logarithmic signature (see also [5, Proposition 3.7]).

In [3], Nuss presented an efficient factorization algorithm for all logarithmic signatures of cyclic p-groups. Another efficient factorization algorithm is presented for all logarithmic signatures of 2n with block sizes less than or equal to 4. For the logarithmic signatures of pn, an efficient recursive factorization algorithm is presented for the case when a block with a specific structure exists on each recursion level.

In this paper we investigate the factorization problem with respect to logarithmic signatures of abelian groups represented in primary decomposition, i.e., G=p1k1p2k2pmkm, with pi and ki for 1im. By the fundamental theorem of finite abelian groups, every abelian group is isomorphic to such a direct sum of cyclic groups. This representation is interesting, because it is as compact as possible and group operations can be implemented efficiently.

We present an efficient factorization algorithm for logarithmic signatures, where descending into factor groups induced by period subgroups is possible. Especially, we show that a logarithmic signature is tame when all its blocks are of prime size.

2 Preliminaries

2.1 Groups

By n we denote the cyclic group of order n, with elements {0,1,,n-1} and the group operator “+” (which computes the sum modn).

By nk we denote the direct sum of k copies of n.

2.2 Logarithmic signatures

Let G be a finite abelian group, let s, let A1,,As be ordered subsets of G (which we call blocks), and let α=(A1,,As) be a block sequence.

  1. We write |Ai| for the number of elements in the block Ai, |α| for the number of blocks in α (i.e., |α|=s), and Ai[j] for the jth element in Ai. All indices are one-based (i.e., A1[1] is the first element in the first block of α). For Ai, we also write α[i].

  2. α is called canonical if Ai[1]=0 for all 1is.

  3. α is called a logarithmic signature if for every gG, there is exactly one way to write g as a sum g=a1++as, with a1A1,,asAs.

  4. Λ(G) denotes the set of all logarithmic signatures for G.

  5. α is called a k-factorization if every element gG can be written in exactly k different ways with respect to α.

  6. The index vector (i1,,is) (with 1ij|Aj| for all 1js) is called a factorization of g if

    A1[i1]++As[is]=g.
  7. The length of α is (α):=i=1s|Ai|.

When a compact representation of group elements is used (which we assume), the space required to store a logarithmic signature is at most 𝒮(G,α):=log2|G|(α) bits.

For a block A, define E(A):={A[i]1i|A|}, the (unordered) set of all elements in A. For example, if A=(0,2,1,2,3,0), then E(A)={0,1,2,3}.

2.3 Tame and wild

Let (Gn,αn)n be a family of groups Gn (we usually assume that |Gn||Gn+1|), and let αnΛ(Gn) for all n; all αn are pairwise different and encoded using a list representation. We assume that there exists a deterministic polynomial-time algorithm that computes the element αn[1][i1]++αn[|αn|][i|αn|] for every given (i1,,i|αn|), for all n.

  1. The family (Gn,αn)n is called tame if there exists a deterministic polynomial-time algorithm that computes the factorization of gn for every gnGn.

  2. The family (Gn,αn)n is called wild if for every probabilistic polynomial-time algorithm A and every positive polynomial P[x], the following holds for all sufficiently large n:

    Pr[A(Gn,αn,gn) outputs a factorization of gngnΩGn]<1P(𝒮(Gn,αn)),

    where “gnΩGn” means to randomly choose an element gn from the uniform distribution on Gn.

Note that being wild is a special case of being not tame.

From now on we will usually omit the term “family of” and just call logarithmic signatures tame or wild. Instead of (Gn,αn)n, we just write (G,α), keeping in mind that actually whole families are meant.

Wild logarithmic signatures induce one-way functions. Given a wild α=(A1,,As)Λ(G) and an index vector (i1,,is) (with 1ij|Aj| for all 1js), the group element A1[i1]++As[is] can be computed efficiently, but given an element gG, computing the factorization of g with respect to α is hard.

The asymmetric cryptosystem MST1 is based on wild logarithmic signatures.

2.4 Periodicity

Let AG. A is called periodic if there exists gG{0} such that A+g=A. Such a g is called a period of A.

Lemma 2.1.

Let AG, S:={g1,g2,,gs} (the set of all periods of A) and S:={0}S. Then SG, and A is a union of cosets of S, i.e., there exists BG such that A=B+S and |A|=|B||S|.

Proof.

We have S, because 0S. Let g,hS. Then g+hS, because A+(g+h)=(A+g)+h=A+h=A (i.e., g+h is a period of A and thus in S). Also, -gS, because by adding -g on both sides of the equation A=A+g, we get A-g=A. So, SG.

The group G is the disjoint union of all cosets of S (the cosets form a partition of G). Pick an arbitrary aA. For every sS, we have a+sA (because s is a period of A), i.e., a+SA. So, given a coset t+S of S (with tG), t+S is either contained completely in A or it is disjoint to A; A is a (disjoint) union of cosets of S. In order to construct B, pick one representative from each coset of S contained in A. ∎

A sequence α=(A1,,As)Λ(G) is called periodic if at least one block Ai is periodic. If none of the blocks is periodic, then α is called aperiodic.

Let α=(A1,,As)Λ(G), with Ai periodic. Let Ai=B+S, with BG and SG (where S contains 0 and the periods of A, see Lemma 2.1). Adding any sS to an element in Aj, with ji, clearly results in another logarithmic signature for G, and this operation is called a selective shift.

3 Factoring in general

In this section we state some observations on factorization approaches using homomorphisms and normal subgroup blocks.

3.1 Homomorphisms and multiple factorizations

Theorem 3.1.

Let G,H be groups, let φ:GH be a surjective group homomorphism, let k:=|ker(φ)|, and let α=(A1,,As) be an l-factorization of G. Then φ(α) is a (kl)-factorization of H (i.e., every element of H can be expressed in exactly kl different ways with respect to the block sequence φ(α)).

Proof.

As φ is a surjective group homomorphism, we have G/ker(φ)H, by the isomorphism theorem. Thus, every hH has exactly k preimages under φ. Indeed, let h be any preimage of h under φ (i.e., φ(h)=h). Then the set of all preimages of h under φ is φ-1(h)={z+hzker(φ)}.

Let (i1,,is) be a factorization index vector of an element gG, i.e., g=A1[i1]++As[is]. Then φ(A1[i1])++φ(As[is]) is a factorization of φ(g) in φ(α), because we have φ(A1[i1])++φ(As[is])=φ(A1[i1]++As[is])=φ(g). As α is an l-factorization of G, all of the k elements in φ-1(h) have l different factorizations in α; these correspond to the kl different factorizations of h with respect to φ(α). So, φ(α) is a (kl)-factorization of H. ∎

Theorem 3.2.

Let G,H be groups, let φ:GH be a surjective group homomorphism, let k:=|ker(φ)|, and let α be an l-factorization of G. If k and l are polynomial in (α) and if we can efficiently factor elements in the (kl)-factorization φ(α) of H, then we can efficiently factor elements with respect to α.

Proof.

Suppose that we want to factor a gG. Apply φ to the elements in the blocks of α to obtain φ(α). Compute the kl different factorizations of the element φ(g) in φ(α). Selecting the same indices in α, these kl different factorizations generate the elements {z+gzker(φ)} (each element of this set is generated exactly l times). As 0ker(φ), l of these kl different factorizations generate g. ∎

Remark 3.3.

Applying Theorem 3.2 recursively does not directly result in an efficient factorization algorithm (even when the homomorphism kernels on each recursion level are of fixed size), because l grows exponentially.

3.2 Homomorphisms and normal subgroup blocks

Theorem 3.4.

Let G be a group and let α=(A1,,As)Λ(G) with at least one block Ai being a normal subgroup in G. Define α by removing the block Ai from α and replacing all elements g by g+Ai in the remaining blocks. Then αΛ(G/Ai). If factorizations in α can be computed efficiently, then factorizations in α can be computed efficiently, too.

Proof.

Write N:=Ai and let φ:GG/N, gg+N, be the canonical group homomorphism (projection) of G onto G/N. By Theorem 3.1, the block sequence φ(α) is an |N|-factorization of G/N (i.e., every element in G/N is expressible by exactly |N| different factorizations). α is the block sequence obtained from φ(α) by removing the ith block. Observe that E(φ(Ai))={0} (as all elements are in N). So α is a logarithmic signature for G/N.

In order to factor an element xG, first factor x+N in α (by hypothesis we can factorize in α efficiently). Select the corresponding elements in α (the elements at the same positions as in α except Ai). Now compute the sum (in G) of the elements selected in the blocks A1,,Ai-1 and call it yl. Analogously, compute the sum (in G) of the elements selected in the blocks Ai+1,,As and call it yr. There is exactly one element aAi such that yl+a+yr=x, which completes the factorization of x that we were looking for. ∎

Remark 3.5.

All results in Section 3 hold for non-abelian groups, too.

4 Factoring for Abelian groups

Let G be an abelian group (represented as G=p1k1p2k2pmkm, with pi and ki for 1im) and let αΛ(G). We now design an algorithm for computing factorizations of group elements with respect to α.

We assume that a mixed radix representation is used for encoding group elements, i.e., the code length (number of bits required to store a group element) is

bG=log2|G|=log2(p1k1p2k2pmkm)=i=1m(kilog2pi).

Note that this encoding is as compact as possible.

The input to a factorization algorithm consists of α and a gG to be factored, i.e., the input length is O(𝒮(G,α))=O(bG(α)) bits.

4.1 Computing in factor groups

Our factorization algorithm performs computations in the factor groups G/N (where N is a subgroup). In the following, we show how several specific computations related to G/N can be carried out efficiently.

Let G be an abelian group (represented as G=p1k1p2k2pmkm, with pi and ki for 1im) and let N:=A1+A2++Ar, with A1G,A1+A2G,A1+A2+A3G,,NG. Let also x,yG.

Algorithm 4.1.

The following algorithm tests whether x+N=y+N holds.

We expect the blocks A1,,Ar to be given as a block sequence α:=(A1,,Ar), and x and y given as elements of G. The set N (containing |A1||A2||Ar| elements) is not part of the input; it is only used for notation.

The algorithm consists of two procedures. The first procedure computes a list of m group elements. Using , the second procedure tests whether x+N=y+N holds.

Computing is independent of x and y, i.e., when multiple elements are being tested, computing once is sufficient.

is computed by the following procedure:

  1. Let α=(A1,,Ar)α.

  2. Let ((0,,0),,(0,,0))Gm.

  3. For c1 to m:

    1. For i1 to r:

      1. Let S{(g1,,gm)Aig1==gc-1=0 and gc0}.

      2. If S=, continue.

      3. Let s=(s1,,sm)S be an element with sc minimal (among the elements in S).

      4. Set [c]s.

      5. For all elements h=(h1,,hm) in the blocks Ai+1,,Ar:

        1. Replace h by h-hcscs.

Testing whether x+N=y+N holds is now possible using the following reduction procedure:

  1. Let t=(t1,,tm)x-y.

  2. For c1 to m:

    1. If tc=0, continue.

    2. Let s=(s1,,sm)[c].

    3. If s=(0,,0), return “x+Ny+N”.

    4. Set tt-tcscs.

    5. If tc0, return “x+Ny+N”.

  3. return “x+N=y+N”.

Proof.

First of all, we have

x+N=y+Nx-y+N=Nx-yN.

Let d:=x-y. In this proof, let us call (g1,,gm)G a c-element if g1==gc-1=0 and gc0, and define (0,,0) to be an (m+1)-element.

We now prove in detail why the two procedures work.

For all 1ir, the block sequences (A1,,Ai) and (A1,,Ai) generate exactly the same elements at any time while the computation procedure is running (including the end).

In order to see why this is true, observe that the innermost replacement operation does not change the set of generated elements, because s is an element of the subgroup A1++Ai (and thus -hcscs also is an element of this subgroup), and A1++AiA1++Aq when h is an element in the block Aq (note that qi+1).

In other words, replacing h by h-hcscs is a selective shift using -hcscs from the subgroup A1++Ai onto h in Aq (with qi+1), and selective shifts never change the set of generated elements.

The computation procedure replaces h by h-hcscs. After this step, we clearly have hc<sc (from the original hc, the -hcscs operation subtracts as many sc from hc as possible, thus for the new hc, we get 0hc<sc).

has the following properties (after its computation procedure has finished):

  1. =N.

  2. For all 1cm, the cth element of is a c-element.

Let γc:Gpckc, (g1,,gm)gc, be the projection of the cth component. Furthermore, let

S(c,i):={aAia is a c-element}{(0,,0)},

with A1,,Ar being the blocks when entering the ith iteration within the cth outer iteration of the computation procedure. The following statements hold for all 1cm, 1ir:

  1. γc(S(c,1))γc(S(c,1)+S(c,2))γc(S(c,1)++S(c,r))pckc.

  2. γc(a)>γc(b) for all a(S(c,1)++S(c,i-1)){(0,,0)}, bS(c,i)++S(c,r).

We prove these properties by induction over c. Let the claims be true for the first c-1 components, and let A1,,Ar be the blocks when entering the cth outer iteration.

Let i be the first index that the procedure finds, for which S (i.e., S(c,j)={(0,,0)} for all 1j<i and |S(c,i)|2). Let s=(s1,,sm)S be an element with sc minimal, and os:=ord(γc(s)pckc). As A1++AiG, all multiples of s (in G) must be contained in A1++Ai.

Let a1A1 be a c1-element, , ai-1Ai-1 be a ci-1 element, and let c~:=min{c1,,ci-1}. If c~<c, then from the claims being true for all components less than c, we obtain that a1++ai-1 is a c~-element. Together with the fact that A1,,Ai-1 do not contain any c-elements (Ai is the first block containing c-elements), the subgroup A1++Ai-1 does not contain any c-elements. Keeping in mind that the components less than c of the elements in Ai have already been reduced as much as possible, we can conclude that for every 0j<os, there must exist aS with γc(a)=jγc(s). This establishes γc(S(c,1))γc(S(c,1)+S(c,2))γc(S(c,i))pckc.

The full chain γc(S(c,1))γc(S(c,1)+S(c,2))γc(S(c,1)++S(c,r))pckc can be established by iteratively moving into factor groups (imaginarily, only for the proof). First move into the factor group G/s. By this, the c-elements in Ai become z-elements with z>c. Due to the previous reductions, a factor group element in the blocks Ai+1,,Ar now is a c-element if and only if it is a c-element in G. The argumentation above can now be applied in G/s (the first block that contains c-elements will have an index greater than i). Continuing this iteratively until the end of the block sequence, the full chain is established.

The inner loop of the computation procedure ensures that the c-component of every element in Ai+1,,Ar is smaller than γc(s), and this holds iteratively for all blocks containing c-elements. Indeed, by the above subgroup chain for pckc, we have γc(a)>γc(b) for all a(S(c,1)++S(c,i-1)){(0,,0)} and bS(c,i)++S(c,r).

The reduction procedure tries to reduce d to (0,,0). If this is possible, dN (i.e., x+N=y+N), otherwise dN (i.e., x+Ny+N).

A reduction is a selective shift of a multiple of an element in onto the current t (which is the element that we want to reduce; it was initially set to d). Each element in originates from a block Ai and thus is an element of the subgroup N (and all multiples are also elements of N).

These reductions are performed iteratively for each component. In the first iteration, the procedure tries to reduce the first component of t. In the second iteration, the second component is reduced, and so on. This process has the property that once the first c components have been reduced, the reduction of the components c+1,c+2, does not have any effect on the first c components, because in the cth iteration only a c-element is used for reduction.

Recall that each element in originates from a block Ai. In the reduction procedure it can happen that t is reduced multiple times by elements originating from a common block. For example, in the jth iteration, the jth component of t could be reduced using a j-element u in a block Ai, and later the kth component (k>j) of t could be reduced using a k-element v in the same block Ai. This is not a problem, because (t-u)-v=t-(u+v), and u+vA1++Ai, as A1++Ai is a subgroup of G. Note that we never need to actually compute the factorization of u+v in A1++Ai. It is just important to understand that two such reductions are always equivalent to subtracting one element from A1++Ai.

By applying this argument iteratively to all performed reductions, we see that these reductions are equivalent to subtracting one element wN from d. Then, in the end, t=(0,,0) if and only if there exists wN such that d-w=(0,,0) or, equivalently, dN. ∎

Proposition 4.2.

Let G be an abelian group (represented as G=Zp1k1Zp2k2Zpmkm, with piP and kiN for 1im) and let N:=A1+A2++Ar, with A1G, A1+A2G, A1+A2+A3G, , NG. Let also α:=(A1,,Ar). Then Algorithm 4.1 performs O(mr(α)) group operations (and obviously we have O(mr(α))O(log2|G|(α)2)).

Proof.

We determine the run-times of the two procedures. computation. Initializing α involves copying (α) group elements. Initializing requires copying the identity element m times. The outer loop runs exactly m times, and the loop within it runs exactly r times. It is not necessary to actually build the set S. Trying to locate a c-element s=(s1,,sm) with sc minimal is sufficient. So we need to inspect |Ai| group elements; observe that |S||Ai|=|Ai|. We consider copying s to [c] to take 1 group operation. The next loop iterates over all elements in the blocks right of Ai.

In total, we need

O((α)+m+c=1mi=1r(|Ai|+1+j=i+1r|Aj|))=O((α)+m+c=1mi=1r(|Ai|+1+j=i+1r|Aj|))
O((α)+m+c=1mi=1r(|Ai|+1+(α)))
=O((α)+m+m((α)+r+r(α)))
=O(mr(α))

group operations. Reduction. We need

O(1+c=1m(1+1+1))=O(m)

group operations.

Thus, for the computation and the reduction together, we need

O(mr(α))+O(m)=O(mr(α))

group operations. ∎

Lemma 4.3.

Let G be an abelian group (represented as G=Zp1k1Zp2k2Zpmkm, with piP and kiN for 1im) and let N:=A1+A2++Ar, with A1G, A1+A2G, A1+A2+A3G, , NG. Let also α:=(A1,,Ar) and SG/N, with (0,,0)S (each element of S shall be given by a representative in G). Then finding the periods of S (representatives in G for elements in G/N) is possible using O(|S|3mr(α)) group operations.

The algorithm for computing the periods takes α and S as input. The set N (containing |A1||A2||Ar| elements) is not part of the input; it is only used for notation.

Proof.

A gG/N{(0,,0)} is a period of S if S+g=S. As (0,,0)S, the only candidates for g are the elements in S.

So, for each candidate gS{(0,,0)}, we build the set S+g and test whether S+g=S, which can be done using at most |S|2 element equality tests using Algorithm 4.1 (for each element in S+g check whether it is also in S).

In total, we need

|S|(|S|+|S|2O(mr(α)))=O(|S|3mr(α))

group operations. ∎

4.2 Factorization algorithm

We now present our algorithm for computing factorizations with respect to logarithmic signatures of abelian groups.

Let G be an abelian group (represented as G=p1k1p2k2pmkm, with pi and ki for 1im), let β=(B1,B2,,Bn)Λ(G) be canonical, and let hG.

Algorithm 4.4.

The following recursive algorithm tries to find the factorization of h with respect to β, when calling FactorizeAb(β,h,((0,,0))). It succeeds (efficiently) if and only if it finds a periodic block on each recursion level. In Section 5 we describe a class of logarithmic signatures where this is the case.

Function FactorizeAb(LogSig α, GroupElement g, BlockSequence N) : List<UInt>

  1. If |α|=1, then find g+N in α[1] (in G/N) and return its index (one item in a list).

  2. If α does not contain any block that is periodic in G/N, then fail with error. Otherwise, let j be the index of the periodic block, and let α[j]=B+S, with BG, SG and |α[j]|=|B||S| (see Lemma 2.1).

  3. If |S|=|α[j]| (i.e., SG/N), then:

    1. Let αα without the jth block. Let NN with block α[j] appended.

    2. Let v FactorizeAb(α, g, N).

    3. Insert 0 at index j in v.

    4. Let tα[1][v[1]]++α[j-1][v[j-1]]+α[j+1][v[j+1]]++α[|α|][v[|α|]].

    5. For i1 to |α[j]|:

      1. If t+α[j][i]+N=g+N, then set v[j]i and return v.

  4. Let α be the logarithmic signature obtained by replacing the block α[j] by the two blocks B and S.

  5. return FactorizeAb(α, g, N).

Proof.

The algorithm realizes the idea of Theorem 3.4.

The set N is fulfilling the requirements for Algorithm 4.1 and Lemma 4.3. Indeed, initially, we have N={(0,,0)} (which is a subgroup of G) and on every recursion level a block α[j] is appended, where α[j] is a subgroup in G/N. That is, every new N is also a subgroup of G and while descending in the recursion, we get sequences of subgroups as required by Algorithm 4.1 and Lemma 4.3. ∎

Proposition 4.5.

Let G be an abelian group (represented as G=Zp1k1Zp2k2Zpmkm, with piP and kiN for 1im) and let β=(B1,B2,,Bn)Λ(G) canonical. Let also q:=max{|Bi|1in}. Then Algorithm 4.4 requires O(log2|G|q3mn2(β)) group operations.

Proof.

We count the required group operations.

Searching for g+N in a block (if α consists of one block only) requires at most q equality tests using Algorithm 4.1, i.e., qO(mn(β)) group operations.

For finding a periodic block (and computing the periods), we use Lemma 4.3 for each block, and thus need at most |α|O(q3mn(β)) group operations.

Computing t and completing the factorization requires at most

(n-2)+|α[j]|(1+O(mn(β)))O(qmn(β))

group operations.

We have computed S already (during the search of a periodic block). The block B can be constructed as follows. Let Aα[j] and B. Pick an arbitrary a in A, put a into B and remove the set a+S from A, and repeat this until A=. This procedure requires at most

|α[j]||S|(|S|+|S||α[j]|O(mn(β)))O(q2mn(β))

group operations.

Splitting a periodic block can happen at most i=1mki-1<log2|G| times. Each time a periodic block is splitted, another recursion level is entered (for a logarithmic signature having at most n+1 blocks), where at most n+1 periodicity tests are performed (requiring at most (n+1)O(q3mn(β)) group operations) until finding the subgroup block from the splitting.

In total, we need

qO(mn(β))case 1 block+i=2n(iO(q3mn(β))finding periods+O(qmn(β))completing factorization)
(i=1mki-1)(O(q2mn(β))split to B+S+(n+1)O(q3mn(β))finding periods on new recursion level+O(qmn(β))completing factorization)
=O(q3mn3(β))+log2|G|O(q3mn2(β))
=O(log2|G|q3mn2(β))

group operations. ∎

Remark 4.6.

Algorithm 4.4 requires that the input logarithmic signature is canonical. This is not a real restriction because a factorization problem with respect to a logarithmic signature is equivalent to (and can be efficiently converted to/from) a factorization problem with respect to a canonical logarithmic signature, see [5, Proposition 7.1].

5 Tame logarithmic signatures

The following theorem is due to Rédei [4].

Theorem 5.1.

Let G be an abelian group and let (A1,,As)Λ(G) canonical, with |Ai|P for all 1is. Then at least one of the blocks A1,,As is a subgroup of G.

Proof.

See [4]. ∎

Using Theorem 5.1, we can prove that all logarithmic signatures of an important class are tame.

Theorem 5.2.

Let G be an abelian group (represented as G=Zp1k1Zp2k2Zpmkm, with piP and kiN for 1im) and let α=(A1,,As)Λ(G), with |Ai|P for all 1is. Then α is tame.

Proof.

We can assume that α is canonical (by Remark 4.6). By Theorem 5.1, at least one block Ai is a subgroup of G and thus periodic (with periods Ai{(0,,0)}). By removing the block Ai and moving into the factor group G/Ai, we obtain a logarithmic signature for G/Ai (which is abelian) whose blocks are of prime size again. This can be iterated until only one block remains. This implies that Algorithm 4.4 works for α (efficiently), thus α is tame. ∎

6 Conclusions

We have shown that every logarithmic signature α=(A1,,As)Λ(G) (G in primary decomposition representation), with |Ai| for all 1is, is tame.

It can be shown (see [5]) that Algorithm 4.4 also works (efficiently) for amalgamated logarithmic signatures and various logarithmic signatures with specific block sizes. Furthermore, with minor enhancements it works for some aperiodic constructions, too.


Communicated by Rainer Steinwandt


Acknowledgements

The author wishes to express his thanks to his Ph.D. advisor Prof. Dr. Peter Hauck. The results of this paper are part of the author’s Ph.D. dissertation [5].

References

[1] S. R. Blackburn, C. Cid and C. Mullan, Cryptanalysis of the MST3 public key cryptosystem, J. Math. Cryptol. 3 (2009), no. 4, 321–338. 10.1515/JMC.2009.020Suche in Google Scholar

[2] S. S. Magliveras, D. R. Stinson and T. van Trung, New approaches to designing public key cryptosystems using one-way functions and trapdoors in finite groups, J. Cryptol. 15 (2002), no. 4, 285–297. 10.1007/s00145-001-0018-3Suche in Google Scholar

[3] A. Nuss, On group based public key cryptography, Ph.D. thesis, University of Tübingen, 2011, http://hdl.handle.net/10900/49707. Suche in Google Scholar

[4] L. Rédei, Die neue Theorie der endlichen abelschen Gruppen und Verallgemeinerung des Hauptsatzes von Hajós, Acta Math. Acad. Sci. Hung. 16 (1965), no. 3–4, 329–373. 10.1007/BF01904843Suche in Google Scholar

[5] D. Reichl, Group factorizations and cryptology, Ph.D. thesis, University of Tübingen, 2015, http://hdl.handle.net/10900/65399Suche in Google Scholar

[6] P. Svaba, T. van Trung and P. Wolf, Logarithmic signatures for abelian groups and their factorization, Tatra Mt. Math. Publ. 57 (2013), no. 1, 21–33. 10.2478/tmmp-2013-0033Suche in Google Scholar

Received: 2016-11-21
Accepted: 2017-9-10
Published Online: 2017-10-12
Published in Print: 2017-12-1

© 2017 Walter de Gruyter GmbH, Berlin/Boston

This article is distributed under the terms of the Creative Commons Attribution Non-Commercial License, which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.

Heruntergeladen am 6.10.2025 von https://www.degruyterbrill.com/document/doi/10.1515/jmc-2016-0065/html
Button zum nach oben scrollen