{'fraction_non_alphanumeric': 0.03712009160742402, 'fraction_numerical': 0.007061405601412281, 'mean_word_length': 4.353639846743295, 'pattern_counts': {'":': 0, '<': 1, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 17, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
The Status of Polycyclic Group-Based Cryptography: A Survey and Open Problems

Polycyclic groups are natural generalizations of cyclic groups but with more complicated algorithmic properties. They are finitely presented and the word, conjugacy, and isomorphism decision problems are all solvable in these groups. Moreover, the non-virtually nilpotent ones exhibit an exponential growth rate. These properties make them suitable for use in group-based cryptography, which was proposed in 2004 by Eick and Kahrobaei. Since then, many cryptosystems have been created that employ polycyclic groups. These include key exchanges such as non-commutative ElGamal, authentication schemes based on the twisted conjugacy problem, and secret sharing via the word problem. In response, heuristic and deterministic methods of cryptanalysis have been developed, including the length-based and linear decomposition attacks. Despite these efforts, there are classes of infinite polycyclic groups that remain suitable for cryptography. The analysis of algorithms for search and decision problems in polycyclic groups has also been developed. In addition to results for the aforementioned problems we present those concerning polycyclic representations, group morphisms, and orbit decidability. Though much progress has been made, many algorithmic and complexity problems remain unsolved, we conclude with a number of them. Of particular interest is to show that cryptosystems using infinite polycyclic groups are resistant to cryptanalysis on a quantum computer.

The analysis of algorithms for search and decision problems in polycyclic groups has also been developed. In addition to results for the aforementioned problems we present those concerning polycyclic representations, group morphisms, and orbit decidability. Though much progress has been made, many algorithmic and complexity problems remain unsolved; we conclude with a number of them. Of particular interest is to show that cryptosystems using infinite polycyclic groups are resistant to cryptanalysis on a quantum computer.

Introduction
In cryptography, many of the most common key exchange protocols, including RSA and Diffie-Hellman, rely upon hardness assumptions related to integer factorization and discrete logarithms for their security. While there are no known efficient algorithms for performing the above operations on conventional computers, Peter Shor devised a quantum algorithm [39] that solves both of these problems in polynomial time. This has motivated the search for alternative methods for constructing cryptosystems. One such methodology is non-commutative cryptography, which unlike the aforementioned conventional systems does not operate over the integers. Instead, non-commutative cryptographic systems are built upon groups and other algebraic structures whose underlying operations are non-commutative.
. In 1999, Anshel, Anshel, and Goldfeld [1] and Ko, Lee, et al. [25] introduced key exchange protocols whose security is based in part on the conjugacy search problem: for a group G, given that u, v ∈ G are conjugate, find an x in G such that u x = v. Though braid groups were the suggested platform for both protocols, other classes of groups can be employed. In general, groups suitable for use in non-commutative cryptography must be well-known and possess the following properties: a solvable word problem, a computationally difficult group-theoretic problem, a "fast" word growth rate, and the namesake non-commutativity [33].
. In 2004, Eick and Kahrobaei [10] investigated the algorithmic properties of polycyclic groups. In particular, they explored how the time complexity of the word and conjugacy problems varied with respect to a group's Hirsch length. Their experiments showed that the while the time complexity of the conjugacy problem grew exponentially with increased Hirsch length, the word problem remained efficiently solvable. These results suggested the suitability of polycyclic groups for use in cryptography, and stimulated research into cryptosystems based on these groups and their underlying algorithmic problems.
. In this paper, we survey the development of group-based cryptography over polycyclic and metabelian groups. In section 2 we discuss the algorithmic properties of polycyclic groups. Polycyclic groups and their intrinsic presentations are defined, as well as several other representations. A number of group-theoretic decision problems are introduced, including the word, conjugacy, and isomorphism decision problems. Note that in every polycyclic group, the three aforementioned problems are solvable. Moreover, the word problem can be solved efficiently in most cases by using a collection algorithm.
. In section 3 we describe a number of cryptosystems that have been built around these groups. These include additional key exchanges along with schemes for secret sharing, authentication, and digital signatures. This variety of cryptosystems evinces the flexibility and utility of polycyclic groups in non-commutative cryptography.
. As new cryptosystems are created, so too are their dual in the form of cryptanalyses and attacks. In section 4 we discuss the length-based attack, a heuristic technique that was the first to break the AAG protocol over braid groups. Other attacks exploit the linear representation that all polycyclic groups admit. Some, such as the field-based attack, are specific to a subclass of polycyclic groups. A more general approach is the linear decomposition attack, but its feasibility is dependent upon the size of a group's representation.
. We conclude the paper with the current status of polycyclic groups cryptography. We also include a list of open problems, which we hope will guide researchers who wish to work in this exciting field.

Algorithmic Problems in Polycyclic Groups
The nature of polycyclic groups enables them to be represented in several ways. These approaches give rise to complementary algorithms for solving search and decisions problems, with varying degrees of computational complexity. Due to this flexibility, we begin our study of the algorithmic problems in polycyclic groups by examining these representations.

Polycyclic Sequences and Hirsch Length.
A group G is said to be polycyclic if it has a subnormal series G = G 1 ⊲ · · · ⊲ G n+1 = {1} such that the quotient groups G i /G i+1 are cyclic. This series is called a polycyclic series. The Hirsch length of a polycyclic group G is the number of infinite groups in its polycyclic series. Though a polycyclic group can have more than one polycyclic series, as a consequence of the Schreier Refinement Theorem, its Hirsch length is independent of the choice of series.

Polycyclic Presentations.
Every polycyclic group can be described by a polycyclic presentation: are words in the generators g i+1 , . . . , g n and I is the set of indices i ∈ {1, . . . , n} such that This special type of finite presentation reveals the polycyclic structure of the underlying group, see [20,Chapter 10] for details. Unlike general finite presentations, a polycyclic presentation enables the word problem to be solved using an algorithm called collection. The collection algorithm is generally effective in practical applications, but its precise computational complexity remains unknown. For finite groups, collection from the left was shown to be polynomial by Leedham-Green and Soicher [27]. For infinite groups, the complexity of the collection algorithm and a modified version were analyzed by Gebhardt [16]. The resultant worst-case bound is in terms of the absolute values of all exponents occurring during the collection process, rather than the exponents of the input word. Thus a global complexity analysis of the collection algorithm remains elusive.

Polycyclic Presentations with a Malcev Basis.
It has been shown by Assmann and Linton [2] that the efficacy of the collection algorithm can be improved significantly by exploiting the Malcev structure of the underlying group. This approach determines a large nilpotent normal subgroup of the given group and then exploits the Malcev correspondence for the normal subgroup. There is no known complexity analysis for this methodology. [8] proved that every polycyclic group has a normal subgroup of finite index such that multiplication in this subgroup can be achieved by evaluating certain multiplication polynomials. This extends the well-known result by Hall [19] for torsion-free nilpotent polycyclic groups. If such multiplication polynomials are available the performance of collection in the considered group improves significantly. Additionally, it provides a basis for the complexity analysis of multiplication in polycyclic groups; it must be noted however that the index of the normal subgroup can be arbitrarily large.

Polycyclic Presentations with Multiplication Polynomials. Du Sautoy
2.1.5. Matrix Groups. It is well-known that every polycyclic group can be embedded into GL(n, Z) for some n ∈ N. For groups that are additionally torsion-free and nilpotent, a matrix representation can be computed. The algorithm of Lo and Ostheimer [28] can be applied to a polycyclic presentation, while for multiplication polynomials the technique by Nickel [35] can be utilized. Multiplication of group elements in their matrix form is polynomial in the dimension n of the representation.

Growth Rate.
. Let G be a finitely generated group. The growth rate of a group is specified by its growth function γ : N −→ R defined as γ(n) = #{w ∈ G : l(w) ≤ n}, where l(w) is the length of w as a word in the generators of G. As words are used as keys in group-based cryptography, there is a natural relationship between the growth rate of a group and the key space, the set of all possible keys. A fast growth rate engenders a large key space, making an exhaustive search of this space intractable.
A large class of polycyclic groups are known to have an exponential growth rate (namely those which are not virtually nilpotent, see Wolf [46] and Milnor [30]). Consequently, these polycyclic groups are potentially good candidates for use as platform groups.

Decision Problems.
. In 1911, Max Dehn introduced [7] three decision problems on finitely presented groups -the word problem, the conjugacy problem, and the isomorphism problem. In the definitions below, let G be a finitely presented group: • Word Decision Problem -For any g ∈ G, determine if g = 1 G , the identity element of G.
For polycyclic groups all three of the above problems are decidable. The conjugacy decision problem for polycyclic groups is decidable by the results of Remeslennikov [36] and Formanek [13]. That the word problem is decidable can be observed from its formulation as a special case of the conjugacy decision problem (where g = u, v = 1 G ), or by observing that every word has a unique normal form induced by a polycyclic presentation. The isomorphism decision problem for polycyclic groups is solvable by a result of Segal [38].
An additional decision problem called the subgroup membership decision problem (alternatively the generalized word decision problem) asks for any g ∈ G and subgroup H ≤ G, determine if g ∈ H. Malcev in [29] showed that this problem is indeed solvable for polycyclic groups.

The Conjugacy Search Problem and its Variations.
. Once the solvability of a group-theoretic decision problem is affirmed, the subsequent task is to produce elements (or morphisms, etc.) that are solutions to particular instances of it. The seminal protocols of non-commutative cryptography, Ko-Lee and AAG, are based in part on the conjugacy search problem (CSP). Their example spurred the development of many other protocols whose security is based on some variant of the CSP. In this section we explore these variations and the methods designed to solve them.

Conjugacy Search Problem.
Let G be a group and a 1 , . . . , a n , b 1 , . . . , b n elements of it, with a i ∼ b i . The problem of finding a c ∈ G such that for all i, a c i = b i is called the (single) conjugacy search problem for i = 1 and the multiple conjugacy search problem for 1 < i ≤ n. In polycyclic groups, the multiple conjugacy search problem for n elements reduces to n independent solutions of single conjugacy search [10]. We will therefore speak only of the conjugacy search problem without signifying arity.
For any finitely presented group (polycyclic groups included) the conjugacy search problem can be solved exhaustively by recursively enumerating the conjugates of the element in question [40]. There are other approaches to solving the conjugacy search problem, many of which can solve it efficiently. However, the applicability of these methods and their relative efficiency is contingent upon addition restrictions on the group's properties, as well as the manner is which the polycyclic group is specified. [11] is applicable. This algorithm uses a variety of ideas: it exploits finite orbit and stabilizer computations, calculations in number fields, and linear methods for polycyclic groups. The algorithm has been implemented and seems to be efficient for groups of small Hirsch length. An analysis of the algorithm's complexity is hindered by there being no bound on the length of the finite orbits that may occur in the computation.

CSP Using Polycyclic Presentations. For infinite polycyclic groups the algorithm proposed by Eick and Ostheimer
The restriction of the applicability of the above algorithm to groups of small Hirsch length is supported by the experimental evidence provided by Eick and Kahrobaei in [10]. They compared the performance of the Eick-Ostheimer algorithm for the CSP against the collection algorithm for polycyclic groups of the form G = O K ⋊ U K , where O K and U K are respectively the maximal order and group of units of an algebraic number field K. In the table below, the column H(G) is the Hirsch length of the group G, with the collection and conjugation entries representing the average running time over 100 trials using random words (respectively, random conjugate pairs) from G: These results suggest that while collection remains efficient as the Hirsch length increases, the Eick-Ostheimer algorithm becomes impractical. Presently there are no known algorithms for infinite polycyclic groups of high Hirsch length. Such groups remain suitable for use as platform groups.

CSP Using Multiplication Polynomials.
Suppose that G instead is given by a polycyclic presentation with multiplication polynomials. Let g 1 , . . . , g k be the polycyclic generating set of the presentation and consider a generic element g = g x1 1 · · · g x k k of G. g is a solution to the multiple conjugacy search problem if and only if a i g = gb i for 1 ≤ i ≤ k. If a i = g li1 1 · · · g l ik k and b i = g mi1 1 · · · g m ik k , with f 1 , . . . , f k denoting the multiplication polynomials for G, then . . , f k are given as explicit polynomials over an extension field of Q and l i , m i are integer vectors, then the CSP is equivalent to determining an integer solution for a set of k polynomials in k indeterminates. Thus the CSP can also be considered from the perspective of algebraic geometry.

Power Conjugacy Search Problem.
The key exchange presented in Section 3.3.2 makes use of the power conjugacy search problem, where if it is known for some a, b ∈ G and n ∈ N that a n = b g for some g ∈ G, the task is to find one such n and g. Note that for n = 1 this reduces to the standard CSP, whereas if g = 1 G this reduces to the power search problem.
Just as the conjugacy search problem is solvable by enumeration, so is the power conjugacy search variant, but no efficient algorithm is known.

Twisted Conjugacy Search Problem.
Twisted conjugacy arises in Nielsen theory, where the number of twisted conjugacy classes is related to number of fixed points of a mapping. The twisted conjugacy search problems is to find, given a group G and an endomorphism φ, an element a ∈ G such that t = a −1 wφ(a), provided that at least one such a exists.
The standard CSP can be seen as a special case of the twisted version where φ(x) = x, the identity automorphism. The protocol by Shpilrain and Ushakov in Section 3.6 uses the double twisted conjugacy variant, in which the above definitions is modified to include an additional endomorphism α and the task is to then find an element a ∈ G such that t = α(a −1 )wφ(a).
The twisted conjugacy decision problem was proven to be decidable by Roman'kov [37]. Both the single and doubly twisted conjugacy search problems are solvable by the same method of enumeration as in the case of the standard conjugacy search problem. However, no efficient algorithm is known.

2.5.
Properties of Automorphism Groups. The automorphism group Aut(G) and its subgroups have been extensively studied for polycyclic groups G. Like polycyclic groups themselves, Aut(G) is finitely presented [3], and the outer automorphism group Out(G) is isomorphic to a linear group [45].
A decision problem related to Aut(G) is the orbit decision problem. Given elements g, h ∈ G and a subset A ⊆ Aut(G), determine if there exists α ∈ A such that g = α(h). Note that if A = Inn(G) this problem reduces to the standard conjugacy decision problem. When G is polycyclic all cyclic subgroups A ≤ Aut(G) are orbit decidable [5].
For groups G in the larger class of polycyclic-by-finite (or virtually polycyclic) groups, the conjugacy decision problem is decidable in Aut(G) [38]. Additionally, Aut(G) is either virtually polycyclic or it contains a non-abelian free subgroup [9].
2.6. Quantum Algorithms. . As mentioned in the introduction, the introduction non-commutative cryptography was spurred by the publication of Shor's algorithm. The algorithm enables a sufficiently sized quantum computer to perform integer factorization and compute discrete logs in polynomial time, as opposed to in exponential time on a conventional computer.
From a group-theoretic perspective, Shor's algorithm can be seen as solving the hidden subgroup problem in finite cyclic groups. A subgroup H ≤ G is considered hidden by a function f from G to a set X if it constant over all cosets of H. A 2003 paper by [4] by Batty, et al. explores this and other applications of quantum algorithms to group theory, including an algorithm by Watrous that determines the order of a finite solvable group. Bonanome showed [6] that a modified version of Grover's algorithm can solve the automorphism and conjugacy decision problems in finite groups, as well as determine fixed points. The algorithm by Ivanyos, et al [22] solves the hidden subgroup problem for finite nilpotent groups of class 2. There are also partial results to solving the power conjugacy problem [12].
Despite these developments in the use quantum algorithms for finite groups, there are no known quantum algorithms that are applicable to infinite groups.

Cryptosystems
For the systems described below, the chosen platform group G should be suitable for cryptography as delineated in the introduction. Let G be finitely presented and non-abelian. Group operations (products, inverses) and solving the word problem must be efficient. Additional criteria for each protocol or scheme are stated in their respective descriptions. Note that the precise definitions of each algorithmic search or decision problem can be found in Section 2.
3.1. The Anshel-Anshel-Goldfeld Key-Exchange Protocol. In their 1999 paper [1], Anshel, Anshel, and Goldfeld introduced the commutator key exchange protocol, which is also referred to as AAG key exchange or Arithmetica. The groupbased version of the key exchange described below is in the style of [31]. Prior to the key exchange, the protocol parameters N 1 , N 2 , L 1 , L 2 , L ∈ N, with 1 ≤ L 1 ≤ L 2 , are chosen and made public: ( B . As noted in [41], the security of AAG is based on both the simultaneous conjugacy search problem and the subgroup membership search problem.

3.2.
Ko-Lee Key Exchange Protocol. Originally specified by Ko, Lee, et al. [25] using braid groups, their non-commutative analogue of Diffie-Hellman key exchange can be generalized to work over other platform groups. Let G be a finitely presented group, with A, B ≤ G such that all elements of A and B commute.
An element g ∈ G is chosen, and g, G, A, B are made public. A shared secret can then be constructed as follows: • Alice chooses a random element a ∈ A and sends g a to Bob.
• Bob chooses a random element b ∈ B and sends g b to Alice.
• The shared key is then g ab , as Alice computes (g b ) a , which is equal to Bob's computation of (g a ) b as a and b commute.
The security of Ko-Lee rests upon solving the conjugacy search problem within the subgroups A, B.

3.3.
Non-Commutative ElGamal Key-Exchange. In the 2006 paper by Kahrobaei and Khan [23], the authors proposed two adaptations of the ElGamal asymmetric key encryption algorithm for use in non-commutative groups. Let S, T be finitely generated subgroups such that all elements of S and T commute. In any exchange, the triple G, S, T is made public.

Non-Commutative Key Exchange Using Conjugacy Search.
• Bob chooses s ∈ S as his private key, a random element b ∈ G, and publishes as his public key the tuple b, c , with c = b s . • To create a shared secret x ∈ G, Alice chooses x and a t ∈ T . Using Bob's public key, she publishes h, E , with h = b t and E = x c t . • To recover x, Bob first computes h s , which, as elements of S and T commute, yields Bob can then calculate x = E (c t ) −1 .
The security of this scheme relies upon the conjugacy search problem in G.

Non-Commutative Key Exchange Using Power Conjugacy Search.
By imposing the additional requirement that the conjugacy search problem is efficiently solvable in G, we can now describe a variation of the previous protocol: • Bob chooses s ∈ S and n ∈ Z as his private key, as well as a random element b ∈ G, and publishes as his public key v, w , with v = g n and w = g −1 sg. Note that w n = (s −1 gs) n = s −1 g n s = s −1 vs. • Alice chooses a shared secret x ∈ G, along with m ∈ Z and t ∈ T , and publishes h, E , with h = t −1 w m t and E = x −1 t −1 v m tx. • To recover x, Bob first computes E ′ = sh n s −1 = st −1 sg mn st, which, as elements of S and T commute, yields Knowing that E = x −1 E ′ x, Bob can then solve the conjugacy search problem to obtain the shared secret x.
The security of this scheme rests upon the power conjugacy search problem in G.

3.4.
Non-Commutative Digital Signature. The following digital signature scheme was proposed in a paper by Kahrobaei and Koupparis [24]. The platform group G must be infinite. The scheme uses two functions: f : G → {0, 1} * , which encodes elements of the group as binary strings; and H : {0, 1} * → G, a collision-resistant hash function. Using these functions (which are made public along with G), a message can be signed and verified as follows: • Key Generation: The signer first chooses an element g ∈ G, whose centralizer, the set of elements that commute with g, contains 1 G and powers of g exclusively. The private key consists of s ∈ G and n ∈ N, where n is chosen to be highly composite. The public key x = g ns is then published. • Signing Algorithm: To sign a message m, the signer chooses a random element t ∈ G and a random factorization n i n j of n, and computes the following (with || denoting concatenation): The signature σ = y, α, n j and the message m are then send to the message recipient. • Verification: To verify, the recipient computes h ′ = H(m||f (y)), and accepts the message as authentic if and only if the following equality holds: The security of the signature scheme is based on the collision resistance of the hash function, the conjugacy search problem in G, and the Diffie-Hellman assumption. Moreover, Alice must maintain a public list of previously used factors of n, and regenerate s and n after a few uses.

A Key Exchange Using the Subgroup Membership Search Problem.
In [43], Shpilrain and Zapata proposed a public key exchange protocol over relatively free groups. Given a free group G n of rank n and R G n , the quotient group G n = G n /R is relatively free if for any endomorphism ψ of G n , ψ(R) ≤ R.
The protocol utilizes two types of automorphisms: • Let {x 1 , . . . , x n } be the generators of G n . The Neilsen automorphisms are defined as: • For relatively free groups like G n , the Nielsen automorphisms form a subgroup of Aut(G n ) under composition. Elements in this subgroup are called tame automorphisms. In constructing a private key, the protocol uses both tame and non-tame automorphisms. In the key exchange below, let F n and F n+m denote the relatively free groups of rank n and n + m, with respective generating sets {x 1 , . . . , x n } and {x 1 , . . . , x n , x n+1 , . . . , x n+m }. Moreover, let F i j = i F j denote the direct product of i instances of the relatively free group of rank j. Finally, let z(x 1 , . . . , x n+m ) denote a word z written in the alphabet {x 1 , . . . , x n+m }. The exchange then proceeds as follows: (1) Alice chooses an automorphism φ ∈ Aut(F n+m ), where φ = τ 1 • · · · • τ k , a composition of Nielsen automorphisms and non-tame automorphisms which are readily invertible. Alice uses φ −1 = τ −1 k • · · · • τ −1 1 as her private key. For each generator x i of F n+m , Alice computes the word φ(x i ) = y i (x 1 , . . . , x n+m ). She then computesŷ i , which is the restriction of each y i to a word in the generators of F n . The tuple ŷ 1 , . . . ,ŷ n+m is then published as the public key.
(3) Alice applies φ −1 (restricted to F n n ) component-wise toφ(w) to recover w ′ , a unique normal form of w. This w ′ is the shared key.
The security of the protocol is two-fold. Decrypting a particular messageφ(w) is equivalent to solving the subgroup membership search problem in the subgroup generated by the public key. To recover the private key, an attacker must recover the automorphism φ and its inverse from the public image of the generatorsŷ i , restricted to the subgroup F n . Shpilrain and Zapata claim there is no known method of accomplishing this outside of an exhaustive search of Aut(F n+m ).
The authors suggest free metabelian groups of rank r (with r = 10, n = 8, m = 2) as platform groups for their protocol. Aside from meeting the standard criteria for platform groups, these groups have the requisite supply of non-tame automorphisms and the subgroup membership search problem is known to be super-polynomial in these groups.
3.6. An Authentication Scheme Based on the Twisted Conjugacy Problem. In [42], Shpilrain and Ushakov introduced a non-commutative authentication scheme based on the Fiat-Shamir scheme. The platform group G can in fact be a semigroup, provided that an antihomomorphism * : G → G, i.e., (ab) * = b * a * , exists. The endomorphism group of G should also be sufficiently large to preclude an exhaustive search. In the simulation of the protocol below, Alice is authenticating herself to Bob: (1) Alice chooses s ∈ G as her private key. She then chooses w, t ∈ G and endomorphisms φ, ψ such that t = ψ(s * )wφ(s). The public key φ, ψ, w, t is then published. If Note that the commitment/verification steps must be performed k times to yield a probability of successful forgery less than 1 2 k . The security of the scheme is based on the apparent hardness of the double twisted conjugacy search problem.

3.7.
Authentication Schemes Based on Semigroup Actions. Drawing inspiration from the zero-knowledge proof by Feige, Fiat, and Shamir; Grigoriev and Shpilrain [17] introduced two generic protocol schema based upon (semi)group actions and provided several concrete examples. 3.7.1. An Authentication Scheme Based on the Endomorphism Problem. One such instance of their second protocol is based upon the endomorphism problem. While this scheme can be used with a semigroup or some other algebraic structure, the structure S must meet several criteria: • An algorithm exists to determine if function over S is an endomorphism. If S is specified by a presentation this criterion is satisfied by S having an efficiently solvable word problem. • An algorithm exists to determine if function over S is an automorphism of S. • The endomorphism search problem in S should be demonstrably NP-hard. As before, in the protocol exchange below Alice is authenticating herself to Bob: (1) Alice chooses an endomorphism φ : S → S as her private key. Alice then chooses elements s, t ∈ S such that t = φ(s). The public key S, s, t is then published. If c = 0, Bob computes u ′ = ψ(t) and accepts if u = u ′ and ψ is an automorphism. If c = 1, Bob computes u ′ = (ψ • φ)(s) and accepts if u = u ′ and ψ • φ is an endomorphism.

An Authentication Scheme Based on the Group Isomorphism Problem.
The following is a new instance of the first protocol, which requires a class of finitely presented groups C with the following algorithmic properties: • The class C must have an efficiently solvable isomorphism decision problem.
• The isomorphism search problem in C should be demonstrably NP-hard. The protocol exchange is as follows: (1) Alice chooses two isomorphic groups G 1 and G 2 from C. Alice then chooses an isomorphism α : G 1 → G 2 as her private key, and publishes G 1 , G 2 . (2) The commitment/verification exchange proceeds as follows: (a) Alice chooses a group G ∈ C and an isomorphism β : G → G 1 , sending the commitment G to Bob. If c = 1, Bob accepts if G ′ ∼ = G 2 . For both of the above authentication schemes, the commitment/verification steps must be performed multiple times to yield a low probability of successful forgery.
3.8. Secret Sharing Schemes Based on the Word Problem. Habeeb, Kahrobaei, and Shpilrain [18] proposed two secret sharing schemes for groups whose presentations satisfy small cancellation conditions. In a (t, n) scheme, the threshold t is the number of participants that are required to recover the shared secret (created and disseminated by the "dealer"), with n the total number of participants.
In both schemes, the dealer wishes to share a k-bit integer x that will be represented as a column vector C ∈ B k . Prior to initiating the secret sharing, the dealer chooses groups G j given by the presentations X|R j , where X is a common generating set and R j a unique set of relators for each participant P j . The generating set X is then made public. Note that both schemes require secure communication channels between both the dealer and participants and between the participants themselves. These secure channels can be achieved using any preferred public key exchange protocol.
3.8.1. An (n, n)-threshold Scheme. In this scheme, all n participants are required to reproduce the secret x: (1) The dealer sends each participant P j their unique relator set R j .
(2) The dealer decomposes C into n vectors C j ∈ B k such that C = j C j .
(3) Each entry c kj of C j is then encoded as a word w kj ∈ G j , such that w kj ≡ 1 Gj if c kj = 1 and w kj ≡ 1 Gj otherwise. The w kj s are then sent to P J using an open channel. (4) For each w kj , participant P j solves the word problem in G j and reconstructs C j . (5) The participants can then recover C by summing over all C j s. Note that a secure sum protocol can be employed so that the C j s need not be divulged to the other participants.
3.8.2. A (t, n)-threshold Scheme. In this scheme, t participants are required to reproduce the secret x. As in Shamir's secret sharing, x must be an element in Z p with p prime, and a polynomial f of degree t − 1 must be chosen by the dealer such that f (0) = x. The dealer must also choose k-bit integers y j ≡ f (j) (mod p).
(1) The dealer sends each participant P j their unique relator set R j .
(2) Each y j has its bits b kj encoded as words w kj ∈ G j as in the previous scheme. (3) For each w kj , participant P j solves the word problem in G j , yielding y j . (4) The participants can then perform polynomial interpolation using the y j s to recover f . The shared secret x is then revealed by evaluating f (0). If t ≥ 3, Lagrange interpolation can be employed so that the B j s need not be divulged to the other participants.
The security of these schemes is contingent upon the relators R J being kept secret.

Cryptanalysis and Attacks
In this section we present a number of attacks against group-based cryptosystems, with an emphasis on those that are applicable to polycyclic groups.

4.1.
Length-Based Attack. The length-based attack (LBA) is an incomplete, local search that attempts to solve the conjugacy search problem (or its generalized version) by using the length of a word as a heuristic. It was first introduced by Hughes and Tannenbaum [21] as a means to attack the AAG key exchange protocol over braid groups. In [15], Garber, Kaplan, Teicher, Tsaban, and Vishne explored the use of length functions based on the Garside normal form of braid group elements. They demonstrated experimentally that the length-based attack in this context could break the AAG protocol, albeit inefficiently.
As the length-based attack is an iterative improvement search, it is susceptible to failing at peaks and plateaux in the search space. In [31], Myasnikov and Ushakov identified when these peaks occur and were able to make successive refinements to the algorithm to yield a high success rate.
More recently, the authors of [14] analyzed the LBA against AAG over polycyclic groups. They found that the success rate of the LBA decreased as the Hirsch length of the platform group increased. Their version of the LBA, essentially a local beam search, is presented below: then output inverse of a ε i x and stop Save (|c a ε i |, c a ε i , a ε i x) in S ′ end for After all conjugation attempts, sort S ′ by the first element of every tuple Copy the smallest M elements into S and delete the rest of S ′ end while Otherwise, output FAIL Note that the a i , b ′ ,b ′ , and N 1 are from the AAG protocol exchange in Section 3.1, whilec ′ is a candidate conjugator set. The length of a conjugator setc ′ = (c 1 , . . . , c j ) is defined as j |c j |.

Linear Decomposition Attack.
In [32], Miasnikov and Roman'kov introduced the linear decomposition attack. The attack is a general framework for the cryptanalysis of a number of group-theoretic analogues of Diffie-Hellman key exchange. For a protocol to be susceptible to the attack its platform groups must admit a linear representation. Moreover, the algorithmic security assumption of the protocol must be equivalent to commutative linear transformations. Note that the AAG protocol is not susceptible to this attack.
Given the linear structure V and subsets W ≤ V and U ≤ End(V ), the attack first computes a basis for the span of all vectors of the form w u , with w ∈ W and u ∈ U . This can be done in polynomial time with respect to the dimension of V and the sizes of W and U . This calculation can be performed offline if the platform group for a particular protocol is fixed. The public group elements transmitted during the key exchange can then be decomposed using this basis to reconstruct the shared secret without discovering the private information of each party, negating the need for an attacker to solve the underlying security problem.
The attack requires the platform group to be specified by either its linear representation V (as a vector space or an associative algebra) or by a presentation coupled with a faithful embedding into GL(V ). Moreover, the linear space into which the group is embedded must be of sufficiently small dimension to make the attack tractable. While the dimension of the smallest linear embeddings of finite groups and some classes of infinite groups such as torsion-free nilpotent and polycyclic-by-finite are known, the authors concede that no such bounds are known for other linear groups, including general polycyclic groups and metabelian groups.

4.3.
Field-Based Attack. Kotov and Ushakov [26] investigated the security of the AAG key-exchange protocol used with certain polycyclic groups of the form where O F is the maximal order and U F is the unit group generated by an irreducible polynomial in the algebraic number field F . In the semidirect product, U F acts on O F by right multiplication. These groups were the original polycyclic platform groups suggested by Eick and Kahrobaei in [10]. In [14], Garber, Kahrobaei, and Lam showed that such groups were resistant to the length-based attack, with the attack's success decreasing as the Hirsch length of the group G F increased.
Contrary to these results, the field-based attack devised by the authors is able to recover the shared key regardless of the group's Hirsch length. Using a deterministic, polynomial time algorithm, the key is recovered by solving a linear system of conjugacy equations over the field F . If the group G F is specified as a semidirect product and F is given in matrix form, the attack can be directly applied. However, if G F is given by a polycyclic presentation, the authors construct a linear representation from the presentation prior to recovering the shared key.
While the field-based attack is successful in these particular groups, the authors concede that their attack does not preclude other polycyclic groups from consideration for the AAG protocol. We claim that there are other classes of polycyclic groups that are resistant to such an attack. Such platform groups would be specified by their polycyclic presentations and have matrix representations that are not readily computable.

Quotient Attack.
In attempting to recover the shared secret from the public information of the AAG protocol, the length-based attack (LBA) operates as if the platform group G is a free group. The success of the LBA on non-free groups motivated Miasnikov and Ushakov in [34] to investigate the asymptotic properties of the given platform groups. Ultimately they determined that the LBA is successful for groups in which a random choice of elements is very likely to generate a free subgroup of G.
These investigations led to a new form of attack for the AAG key exchange protocol and others that use some variation of the membership or conjugacy search problems. Dubbed the quotient attack, the algorithms solve the search problems in a quotient group G/N . If G/N possesses the exponentially-generic free basis property the solution in the quotient will yield one in the original group. The time complexity of the attack is contingent upon the particular class of platform groups. For pure braid groups P B n the authors prove that the complexity is O(n 2 ).
As polycyclic groups do not possess the free basis property nor any free subgroups, this attack is not applicable. 4.5. Linear Centralizer Attack. Tsaban [44] devised the linear centralizer attack against AAG over the original braid group platform. The attack exploits a faithful linear representation of a braid group B n . Using this representation, the algorithm computes a basis for the double centralizer of the public subsets of the AAG protocol (which are contained in their respective double centralizers). This process produces one half of the shared key, after which random elements are tested to find an inverse that yields the other half. The algorithm runs in expected polynomial time with respect to n, but is impractical for even modest values of n.
The applicability of the linear centralizer attack to other platform groups is limited to those whose faithful representations are known and whose linear representations are sufficiently small. As mentioned previously with respect to the linear decomposition attack, these aspects of polycyclic groups are currently unknown.

Conclusion
. In this paper we have presented a survey of over ten years of research related to polycyclic group-based cryptography. We began with a study of the algorithmic properties of polycyclic groups. Polycyclic groups admit a number of representations, including polycyclic presentations, multiplication polynomials, and as matrices. In addition to the decidability of the classic decision problems of word, conjugacy, and isomorphism, the twisted conjugacy and orbit problem are also decidable. Moreover, the conjugacy decision problem for the automorphism group Aut(G) of a polycyclic group G is decidable.
. We have seen that there are a variety of key exchanges, digital signature systems, and secret sharing schemes for which a polycyclic group is an appropriate choice of platform group. These schemes use several different computational problems in polycyclic groups as listed in the paper, which are beyond use of conjugacy search problem. . While there has been considerable research activity concerning polycyclic groups and their attendant cryptosystems over the last decade, many computational complexity and algorithmic questions remain unanswered. We have collected these outstanding problems below, with the hope of stimulating interest in their solutions: (1) What is the complexity of the isomorphism search problem in polycyclic groups?
(2) What is the complexity of the twisted search conjugacy problem in polycyclic groups? (3) What is the complexity of the power conjugacy problem in polycyclic groups? (4) What is the complexity of the geodesic length problem in polycyclic groups? (5) What is the complexity of the n-root problem in polycyclic groups? (6) What is the complexity of finding matrix representation of polycyclic groups? (7) What is the complexity of the conjugacy problem in the automorphism of polycyclic groups? (8) What is the complexity of the search endomorphism (automorphism) problem in polycyclic groups? (9) What is the complexity of the homomorphism problem in polycyclic groups? (10) Are polycyclic group-based cryptosystems resistant to quantum algorithms? (11) What is the complexity of the subgroup membership search problem in polycyclic groups?