Classical and Quantum algorithms for generic Syndrome Decoding problems and applications to the Lee metric
Abstract
The security of code-based cryptography usually relies on the hardness of the syndrome decoding (SD) problem for the Hamming weight. The best generic algorithms are all improvements of an old algorithm by Prange, and they are known under the name of Information Set Decoding (ISD) algorithms. This work aims to extend ISD algorithms’ scope by changing the underlying weight function and alphabet size of SD. More precisely, we show how to use Wagner’s algorithm in the ISD framework to solve SD for a wide range of weight functions. We also calculate the asymptotic complexities of ISD algorithms both for the classical and quantum case. We then apply our results to the Lee metric, which currently receives a significant amount of attention. By providing the parameters of SD for which decoding in the Lee weight seems to be the hardest, our study could have several applications for designing code-based cryptosystems and their security analysis, especially against quantum adversaries.
1 Introduction
Code-based cryptography is one of the leading proposals for post-quantum cryptography, and it traditionally relies on the hardness of the syndrome decoding problem. For fixed , the problem is defined as follows: starting from a parity check matrix , and a syndrome , the goal is to find a vector such that , and has the Hamming weight(1)(1) (1) The Hamming weight of a vector is . . This problem has been studied for a long time, and mostly for the alphabet size . Despite many efforts, the best algorithms for solving this problem [Pra62, Ste88, Dum91, Bar97, MMT11, BJMM12, MO15] require an exponential running time, and they are all refinements of the original Prange’s algorithm [Pra62]. As such, they are all commonly known under one name: Information Set Decoding (ISD) algorithms.
It is, however, notoriously difficult to put the syndrome decoding problem into practice. For example, constructing an efficient signature scheme in code-based cryptography often requires utilizing pseudo-random functions, and some other cryptographic assumptions. A generalized version of the problem promises to be harder and to offer a more exploitable structure that leads to creating more efficient constructions. Like DURANDAL [ABG+19], some proposals replace the Hamming weight with the rank metric based weight, which allows designers to use a Schnorr-Lyubashevski type signature. Another proposal, signature scheme [DST19], utilizes syndrome decoding problem for which , and the Hamming weight is large. This further enables one to construct and exploit a trapdoor one-way preimage sampleable function, which would not be possible for or in small weight.
These examples already show the usefulness of going beyond and the Hamming weight setting. We are, however, still at an early stage of using these variants for cryptographic schemes. Therefore, it is important to study their hardness, especially against quantum computers, since a big appeal of code-based cryptography is post-quantum security.
Our work.
In this paper, we perform a generic analysis of different ISD algorithms. The analysis is applicable to any weight function satisfying , for some function , and However, we primarily focus on the Lee weight analysis, and the comparison between the Lee and Hamming weight. The reason we chose these two weight functions is that the two are commonly encountered in coding theory, and both led to proposals for cryptographic schemes.
Which ISD algorithms do we study here? We analyze algorithms by Prange and Stern/Dumer and the ISD algorithms based on Wagner’s approach to solving a Generalized Birthday problem [Wag02]. Starting from [BCDL19], where classical algorithms for a ternary alphabet and the Hamming weight were analyzed, we broaden the analysis to the higher alphabet sizes, usage of a different weight function, and the study of both classical and quantum algorithms. This is the first time such a generic analysis of quantum ISD algorithms was done since the work of [KT17] that studied only the standard case of and the Hamming weight.
To perform such a generic analysis, we need a way of computing sphere surface areas in a vector space endowed with an arbitrary metric. More precisely, we aim to calculate the sizes of sets of the form . To do this, we start with the approach presented in [Ast84], applied to the Lee metric case, and we derive a convex optimization method for calculating the asymptotic sphere surface area independently of the metric. We thus provided a simple approach to analyzing syndrome decoding problems in a vector space endowed with an arbitrary metric and a weight function derived from it.
Our framework can also be used for studying the security of the Restricted Syndrome Decoding problem [BBC+20a]. Nevertheless, it does not work for the rank metric norm where we do not know how to construct ISD algorithms better than Prange’s algorithm(2)(2) (2) There are other algorithms [BBB+20, BBC+20b] based on Gröbner basis that perform better than ISD algorithms for the rank metric..
Notations
Throughout the paper, we use and, given a finite set , we denote by its size. We consider a weight function which satisfies the following:
| (1) |
This weight function is usually - but not always - obtained as where is a distance. We will sometimes use the terminology of distance instead of weight when this is the case. When and are fixed and explicit, we define the surface area of a sphere of weight in a vector space of dimension as:
2 Quantum preliminaries
We refer to [NC00] for a basic introduction to quantum computing. In this paper, we use the canonical gate model where the running time of a quantum algorithm is the number of gates in its corresponding circuit description. We utilize the QRAM model, for which we assume the operation can be done in time when each is a single bit.
Grover’s algorithm. [Gro96]
For a function that has an efficient classical description, Grover’s algorithm can find such in time if such an exists and output ’no solution’ otherwise.
Amplitude amplification. [BH97]
Fix a function that has an efficient classical description. Consider then a quantum algorithm that outputs such that with probability and does not perform intermediate quantum measurements. Using amplitude amplification, one can find such that by making calls to . Notice that if we start from a classical algorithm , there are generic ways to run coherently as a quantum algorithm that does not have intermediate quantum measurements and behaves exactly like .
3 Syndrome Decoding Problems
When we fix an alphabet size and a weight function , the syndrome decoding problem is defined as follows:
Problem 1
Syndrome Decoding
- •
Input: A matrix , a column vector (the syndrome) .
- •
Goal: Find a column vector s.t. and .
The decision version of this problem, which asks whether there exists a vector of weight such that , is -complete for with the Hamming weight function [BMvT78].
Consider now the input distribution sampled as follows: pick a random matrix of rank , pick a random with , and output . Notice that the problem always has at least one solution for this distribution and that SD is believed to be hard, even against quantum computers. That is why, in this paper, we study algorithms for SD with this input distribution. We only consider a prime to avoid attacks that would use sub-fields of the alphabet field .
Another problem of interest, which we call Checkable Multiple Syndrome Decoding, is the following:
Problem 2
Checkable Multiple Syndrome Decoding
- •
Input: A matrix , a syndrome .
- •
Goal: output the description of a function such that is efficiently computable, and .
This problem is a bit funny looking at first sight, but we are interested in it because, in our framework, it is used as a building block for solving the generic SD problem. It is very similar to asking for solutions to the syndrome decoding problem. Indeed, from a description , one can output solutions to SD in time by enumerating all the . Reciprocally, if one can find solutions to in time , then one can solve by defining .
In the quantum setting, we want to have access to the function but without paying for a time cost of for writing down these solutions. That will allow us to search over solutions more efficiently, using Grover’s algorithm, and also justifies the slightly odd definition. Another remark is that while should be efficiently computable, it need not have an efficient description. Typically, can store some large precomputed databases, but computing will only query the database a small number of times.
4 Information Set Decoding Algorithms for any Metric
We present Information Set Decoding algorithms for SD, which consist of a partial Gaussian elimination followed by solving an instance of CMSD. The description here is essentially the one from [BCDL19] with the difference that here we use the CMSD problem.
4.1 Information Set Decoding Framework
Fix of rank and . Recall that we want to find such that and . Let us introduce and , four parameters of the system that we consider fixed for now. In this framework, an algorithm for solving consists of steps: a permutation step, a partial Gaussian Elimination step, a CMSD step, and a test step.
- 1.
Permutation step. Pick a random permutation . Let be the matrix with the columns permuted according to . We now want to solve on inputs and .
- 2.
Partial Gaussian Elimination step. If the top left square submatrix of of size is not of full rank, go back to step and choose another random permutation . That happens with constant probability.(3)(3) (3) For , this happens with probability at least and this probability increases as increases (see [Coo00], for example). If the submatrix is of full rank, perform Gaussian elimination on the rows of using the first columns. Let now be the invertible matrix corresponding to this operation. There are two matrices then, and , such that:
A vector can be written as , where and , and one can write , with and .
(2) To solve the problem, we try to find a solution to the above system such that and .
- 3.
The CMSD step. Solve on input , and let be the output function.
- 4.
The test step. For each , let and let . For each such that , Equation (2) ensures that . If and , is therefore a solution to on inputs and . The solution to can then be turned into a solution of the initial problem by permuting the indices, as detailed in Equation (3) below. If we do not find any solution after checking all , we go back to step .
At the end of the protocol, we have a vector such that and . Let be the vector with the permuted coordinates according to . Hence,
| (3) |
Therefore, is a solution to the problem.
4.2 Information Set Decoding: Complexity Analysis (Classical and Quantum)
We fix and a weight function . Recall that for any and , the surface area of a sphere (according to ) of radius in is defined as:
With this definition at hand, we now present the complexity analysis of the algorithm for solving for fixed parameters (see section 4.1 for more details).
Lemma 1
Let be the probability that at step , for a fixed , . We have:
This lemma can be seen as a generalization of Proposition 2 of [BCDL19] (where a max was omitted) for any weight function.
Proof.
Let be the set of solutions to our syndrome decoding problem on input . Let also , where is the matrix from step . By definition, , so we have that has average size and has average size
Fix and satisfying and . . is of average size . Step will find a solution if . Since and is uniformly distributed in this set, this happens with the following probability:
∎
We now present our generic formula for the running time of the Information Set Decoding algorithm from Section 4.1.
Proposition 1
Fix parameters , and of the information set decoding algorithm. The classical running time of the algorithm, , is given as:
where is the probability from the above lemma, and is the running time of step , i.e., the time required for solving .
Proof.
Steps and take time , step takes time , and step takes time for each , hence the right part of the expression. How many times does the algorithm loop over this process? Step succeeds with constant probability, and step finds a solution with probability , so it loops over the steps times, hence the result. ∎
The quantum setting.
Our formulation allows for a simple extension to the quantum setting. We consider the algorithm described earlier with the following two changes: in step , the algorithm uses Grover’s search to check whether there is such that gives us a solution; (2) for each loop, i.e., each time the algorithm starts from step , it finds a solution with probability . This loop can be made coherently with a quantum algorithm that does not do intermediate measurements and outputs a solution with probability . The algorithm then use amplitude amplification to find a solution by repeating the loop times.
Proposition 2
Fix parameters and of the information set decoding algorithm. The quantum running time of the algorithm, , is given as:
where is the probability from Lemma 1, and is the running time of step , i.e., of solving .
Proof.
Again, Steps and take time , and step takes time . In step , the algorithm runs Grover’s search, so this whole step takes time . That can be done because the function on input determines whether runs in polynomial time (since runs in polynomial time). As we described above, we repeat the loop times, which gives the result. ∎
The full ISD algorithm.
To find the best ISD algorithm for solving , we minimize the running time of the algorithm presented earlier over parameters and . In many cases, we do not have full control over and , which are predetermined from other values. For instance, in Wagner’s algorithm, we present next, there is an extra parameter (the number of levels) that predetermines and , so we optimize over , and .
5 Solving CMSD
This section presents our analysis of the application of Wagner’s algorithm [Wag02] to solving (4)(4) (4) As Wagner’s algorithm is used for solving Generalized Birthday Problem, it can be easily seen that is well suited for solving CMSD problems, too.. We first present the list merging procedure, which we utilize throughout the section, and then the two versions of our algorithm: the first one that aims to solve the CMSD problem using classical algorithms only, and the second one that utilizes both classical and quantum algorithms.
Notice here the change of the variables’ names when referring to the CMSD problem. It is introduced so that our statements can be made independently of the previous section. Notice also that the asymptotic values of the algorithms’ running times are calculated when goes to and that when presenting a proof, we ignore all the polynomial and constant terms.
5.1 List Merging
Let us take lists of vectors in : , and . Take also a set and a random vector . The merging of and into is done using the following algorithm:
List merging algorithm.
- •
Start from an empty list , and sort the elements of according to the lexicographic order on the coordinates.
- •
For each vector from the list , search for elements of that satisfy: , where , , and . For each solution found, add in and register the references to and .
Running time.
Sorting on coordinates is done in time using dichotomic search. If there are solutions for a fixed , the algorithm takes time to find them, and the total size of is . Therefore, the algorithm takes time for the first step, i.e., to sort , and it takes for the second step. Overall, the algorithm takes time .
Expected number of solutions.
If the elements in and are random vectors in , there is, on average, elements in the merged list.
List merging operator.
To enable a succinct representation of this procedure in the rest of the text, we define the list merge operator on a set and random vector , denoted as :
5.2 First Variant
We present here an approach to solving the CMSD problem, based on Wagner’s algorithm [Wag02], which utilizes classical algorithms only and is closely related to the original Wagner’s algorithm.
We start from relevant definitions. For a number of levels , where , and for each , we define:
where is a parity check matrix, defined in Section 4.1.
The sets used for the indexing the lists in the merging procedure (as described in Section 5.1) are chosen so that they form a partition of , i.e.:
The random vectors (again, described in Section 5.1) are chosen such that they satisfy the following constraint:
where refers to the syndrome, from Section 4.1, indexed by .
List creation and merging.
The algorithm starts by constructing lists of the same sizes: , for all (6)(6) (6) There are previous description where , but the inclusion improves the algorithm efficiency.. At each algorithm’s level, the lists are then taken by pairs, , and merged using the list merging procedure described in the previous subsection. More precisely, at the first level, the pairs are merged on a set and a random vector (i.e., is performed). From the created lists, at the second level, pairs are taken again and merged similarly using the operator , for each . The same procedure continues up to the top level, where only lists remain and the list merging is performed using . A function , required for the CMSD problem, is then constructed using the method described in Section 3.
One can check that the final list created by this algorithm contains solutions to the problem. In particular, elements of top level’s list are of the form , with . That comes from the property of the weight function we use (see Equation (1)) and the definitions given earlier in this subsection. An example of the algorithm for , i.e., three levels algorithm, is presented below.
Proposition 3
(7)(7) (7) Notice that and in both propositions are determined by and and cannot be chosen arbitrarily.Fix parameters , as well as a number of levels, . Let , , and . The first variant of the algorithm on levels solves the problem in time , where
and the hides an expression that goes to as goes to .
Proof.
Let us take all bottom list , to be random subsets of size of , respecitvely (8)(8) (8) Notice that so we can choose asymptotically any .. Without loss of generality, we also choose , for , and . We thus have that . Furthermore, from the merging algorithm, described earlier in this subsection, we know that all the lists up to the top level are of size , and the list at the top level is of size . As all the elements in the final list are solutions to the original problem, we expect solutions, on average. All the list mergings take time , except the last one that takes time , hence . From the proposition, we know that and , which implies , and thus . Therefore, we have an algorithm that finds solutions in time , and for . ∎
5.3 Second Variant
Starting from the original Wagner’s algorithm [Wag02], we derive a quantum version of it and utilize it as part of an algorithm that solves the CMSD problem. Our results are presented in the rest of the section.
We start from relevant definitions. For a number of levels , where and, for each , we define:
For , we let:
In both cases, is a parity check matrix, which is defined in Section 4.1.
Like in the first variant of the algorithm, the indexing sets, , are chosen so that they form a partition of . The random vectors, , for all and all , also satisfy the same constraints as in the first variant (for more details, see Section 5.2).
In this variant, all the bottom lists, , are of the same sizes, except the rightmost one, , which is quadratically larger than the others. We thus change our definitions of accordingly (see definitions above). In contrast to the first variant, the algorithm does not create the rightmost list. It computes and sorts the other lists in lexicographical order on the indices of corresponding , for all and, instead of creating the last list, it evaluates a function that describes the list, and then finds a corresponding element (if one exists) in the top list using an efficient (quantum) routine. For the rest of the lists, the algorithm use the same merging method as in the first variant (see Section 5.2). An example of the algorithm on three levels is presented below.
Let us now construct the function as it is required for the CMSD problem. First, let be the elements of , i.e., the elements of the bottom right list. For a fixed , we aim to find that satisfy the following: for , and . If they exist, for each , we find the associated (from the definition of above) such that and . If there are several such combinations, we take the first one according to the lexicographical order. Finally, let us take , so that we have . We then define as follows:
The function then can be described as follows. On an input , takes , from the list , and checks if it can be summed with from the left neighbouring list, , so that they appear in the solution sum. Again, if we have several such combinations, we take any one of them, for example, the first one in lexicographical order. The function repeats that at each level until it fails (in which case it outputs ), or it arrives to the top list, where it outputs the corresponding .
Proposition 4
(7) Fix parameters , as well as a number of levels, . Let , , and . The second variant of the algorithm on levels solves the problem in time , where
and the hides an expression that goes to as goes to .
Proof.
We choose lists to be random subsets of size of , respectively. We also choose so that is a random subset of and that it is of size . Without loss of generality, we choose such that , for all , and . We then have that . After the list merging at each level up to the top one, the new lists are of expected size , except the rightmost one, at each level, that is of expected size . At the top level, there is one list of the expected size and one of the expected size . Since , the expected size of the top list, that is the expected number of solutions to be find by the algorithm, is . The time for which the algorithm finds solutions is calculated as follows. Constructing and sorting the lists to compute take time (omitting the constant multiplicative term ), but computing afterwards take polynomial time, so we finally have . The number of such that outputs a good solution is actually the size of , i.e., and, since , this proves our proposition. ∎
Final remarks.
Our ISD algorithm aims to solve an instance of . That means we can use the above propositions to calculate the asymptotic running time of the algorithm described in section 4.1. We first define and and then do the following: we plug Proposition 3 into Proposition 1, for the classical case, and plug Proposition 4 into Proposition 2, for the quantum case. We then optimize parameters of our ISD algorithm over , and by minimizing the algorithm’s running. From the values of , and , we finally extract and and obtain the asymptotic running time of the algorithm in both the classical and quantum case.
6 Computing Surface Area of a Sphere
We here rely primarily on the combinatorial approach presented in [Ast84]. Some of the other methods are shown in more recent papers as, for example, [GS91], [BB19], [WKH+21]. We decided to use the approach from [Ast84] as it enables us to derive a generic method for calculating the asymptotic value of the sphere surface area independently of the weight function and the alphabet size.
Proposition 5
Fix a parameter , and a weight function satisfying Equation 1. Let the set be defined as follows:
where The sphere surface area, and its corresponding asymptotic value when gows to , are given by the following expressions:
| (4) |
| (5) |
Proof.
Let us first take a multiset of size where elements are taken from , and each element is repeated times, for each . The number of permutations of such a multiset is given by the multinomial coefficient, defined as This number corresponds to the number of vectors consisting of ones, twos, …, values of . By the definition of the set , and the sphere surface area, we thus have
Given the classical combinatorial result for the number of multinomial coefficients for a fixed and , the size of a set , and thus the number of the elements in the sum, is upper bounded by . The upper and lower bounds of are then given by
Following the same line of reasoning as in [Ast84], i.e., by taking of each part of the equation above, multiplying them by , where , and using Stirling’s approximation we finally obtain: ∎
This proposition can be observed as a generalization of the combinatorial approach presented in [Ast84] for any weight function and arbitrary alphabet size. Using the same reasoning, we calculate the asymptotic value of the sphere surface area, , by reducing the Expression 5 to the following convex optimization problem:
Problem 3
Let , and for each .
- •
Maximize: ,
- •
Subject to: .
It can be easily verified that when replacing the optimization variable with from , the optimization problem remains convex. If we denote by the solution of Problem 3, the asymptotic value of the sphere surface area is calculated as Notice here that we do not compute only the surface areas but also the typical weight pattern of words of Lee weight , i.e. the that maximizes the quantity in Equation 5. This is necessary if we want to use this problem in Stern’s signature scheme.
It can be shown that Problem 3 belongs to the subclass of the convex optimization problems, namely the class of conic optimization problems [BV14]. As such, it is susceptible to solving via MOSEK solver [ApS21], so we utilize MOSEK as a primary computational tool. Nevertheless, to be solved via MOSEK, Problem 3 needs to be transformed so that it aligns with the standard form of conic optimization problems, as presented in the following problem:
Problem 4
Let and .
- •
Maximize: ,
- •
Subject to: .
where the constraint means that , for each .(11)(11) (11) The notation comes from the MOSEK optimizer[ApS21] and represents the exponential convex cone. It can be easily verified that Problem 3 and Problem 4 are equivalent, hence finding a solution of either of the two yields the asymptotic value of the sphere surface area.
7 Results
We use our framework to compare SD with the Hamming and Lee weight. For and , the weight functions are the same by their definitions. For , however, our numerical results show that the asymptotic complexities of the problem differ in these two cases and that the problem is indeed harder in the Lee weight case. We present here the comparison of the complexities of our classical ISD algorithm in the Lee and Hamming weight setting and in the parameter range that is interesting from the perspective of the hardest instances of the SD problem. It can be easily verified that the complexity of the hardest instances of the Lee SD problem is indeed higher than that of the hardest Hamming instances.
In the rest of the analysis, we focus on the SD problem in Lee weight. The following plot illustrates some of the numerical results we obtain.
We observe that for any fixed and , the asymptotic complexity of our algorithms, as a function of , has local maxima: at some values and , with (12)(12) (12) This value corresponds to the average Lee weight of a vector chosen uniformly at random.. Moreover, these local maxima always satisfy:
This characterization of the local maxima is particularly useful when aiming to obtain the hardest instances of a problem. Namely, for a fixed , it allows us to find the that yields the hardest problem and then to check only the corresponding weights, and , to obtain the hardest instance. That makes our calculations more efficient, which becomes increasingly important as increases and the convex optimization part of the calculations becomes costly due to the number of constraints in Problem 3.
It is also important to notice here that many previous papers only consider the case and miss out on very interesting parameter ranges where, for the lower values of , the problem is typically the hardest. Nevertheless, we also observe that as increases, the plots become symmetric between small weight and large weight. Therefore, we can expect that for relatively high values of the difference between the small and large weights would become negligible. However, we cannot verify this claim due to the high computational cost of such verification.
The properties we observe here hold for all ISD algorithms we consider, in both classical and quantum settings. However, it is worth noticing that while these seem to be a generic property of ISD algorithms, there might be other algorithms for which these properties do not hold.
Parameters for which the problem is the hardest.
To find the hardest instances of the problem, for a given , we rely on the observation about the local maxima, and , and we optimize over to obtain the hardest instance. For the sake of simplicity, in Table 1, we present only the results of the analysis of the classical and quantum Wagner’s based ISD algorithms and remark that the other two ISD algorithms exhibit similar behaviour.
| q | Classical Wagner ISD complexity | Quantum Wagner ISD complexity | ||||||
|---|---|---|---|---|---|---|---|---|
| 3 | 0.370 | 1.000 | 0.269 | 0.170 | 0.369 | 1.000 | 0.148 | 0.093 |
| 5 | 0.572 | 1.000 | 0.357 | 0.154 | 0.569 | 1.000 | 0.206 | 0.089 |
| 13 | 0.480 | 0.957 | 0.522 | 0.141 | 0.501 | 0.962 | 0.283 | 0.076 |
| 43 | 0.454 | 0.954 | 0.794 | 0.146 | 0.472 | 0.959 | 0.429 | 0.079 |
| 163 | 0.442 | 0.967 | 1.117 | 0.152 | 0.464 | 0.971 | 0.607 | 0.083 |
| 331 | 0.438 | 0.974 | 1.291 | 0.154 | 0.464 | 0.978 | 0.703 | 0.084 |
It can be readily verified that the complexity of a problem, expressed as , becomes higher as increases. That is expected since the inputs’ size also increases, and we do not get this extra difficulty for free. If, for example, we want to use this problem in Stern’s signature scheme, where the signature size essentially scales with the size of -ary vectors of size or , this increase of the input size becomes relevant. Therefore, we propose the scaling where the complexity is of the form instead of , and we refer to them as -ary asymptotic complexity and binary asymptotic complexity, respectively. Observing -ary complexity, the problem now is the hardest for . Intricately, -ary complexity diminishes and then increases again at some point as increases. Hence, it would be interesting to calculate the asymptotic -ary complexity when both and grows beyond bounds. We can also observe that while for and the optimal values were for , this property does not hold for larger . Nevertheless, it remains in the range close to (typically, in the range ). We can see, as well, that the hardest instances of the problem occur at the mid-range code rates and, typically, in the range .
8 Conclusion
This paper analyzes different ISD algorithms, both in the classical and quantum regimes, for solving SD problems with varying sizes of alphabet and different weight functions. In the numerical part of the paper, we focused on analyzing the Hamming and Lee weight cases as representative examples of weight functions.
Our results show that, for a fixed alphabet size , the complexity of the hardest instances of SD problem is higher in the Lee than in the Hamming weight, as well as that the hardest instances occur at high weights. That is true both in the classical and quantum setting. We also show that the problem remains exponentially hard for conveniently chosen parameters both in the classical and quantum setting for the class of the algorithms we consider. Finally, for a fixed alphabet size, we offer a rough estimate of the parameters’ ranges for which the SD problem in Lee weight is typically the hardest.
These results have several implications for designers that want classical and quantum security estimates for their code-based schemes using different weight functions as, for example, for WAVE or other recently proposed schemes[BBC+20a]. For the quantum setting, our algorithms have almost a quadratic improvement over the classical setting, so it is important to update the parameters if we want to achieve quantum security.
Acknowledgments.
The authors want to thank Nicolas Sendrier and Anthony Leverrier for helpful discussions. S.E. has received funding from the European Union’s Horizon 2020 research and innovation program under the Marie Skłodowska-Curie grant agreement No 754362.
References
- [ApS21] MOSEK ApS. MOSEK Fusion API for C++. Version Release 9.2.38., 2021.
- [Ast84] Jaakko Astola. On the asymptotic behaviour of lee-codes. Discret. Appl. Math., 8(1):13–23, 1984.
- [Bar97] Alexander Barg. Complexity issues in coding theory. Electronic Colloquium on Computational Complexity, October 1997.
- [BB19] S. Bhattacharya and A. Banerjee. A method to find the volume of a sphere in the lee metric, and its applications. In 2019 IEEE International Symposium on Information Theory (ISIT), pages 872–876, 2019.
- [BBB+20] Magali Bardet, Pierre Briaud, Maxime Bros, Philippe Gaborit, Vincent Neiger, Olivier Ruatta, and Jean-Pierre Tillich. An algebraic attack on rank metric code-based cryptosystems. In Advances in Cryptology - EUROCRYPT 2020, volume 12107, pages 64–93. Springer, 2020.
- [BBC+20a] Marco Baldi, Massimo Battaglioni, Franco Chiaraluce, Anna-Lena Horlemann-Trautmann, Edoardo Persichetti, Paolo Santini, and Violetta Weger. A new path to code-based signatures via identification schemes with restricted errors. CoRR, 2020.
- [BBC+20b] Magali Bardet, Maxime Bros, Daniel Cabarcas, Philippe Gaborit, Ray A. Perlner, Daniel Smith-Tone, Jean-Pierre Tillich, and Javier A. Verbel. Improvements of algebraic attacks for solving the rank decoding and minrank problems. In Advances in Cryptology - ASIACRYPT 2020, volume 12491, pages 507–536. Springer, 2020.
- [BCDL19] Rémi Bricout, André Chailloux, Thomas Debris-Alazard, and Matthieu Lequesne. Ternary syndrome decoding with large weights. SAC 2019, 2019.
- [BH97] Gilles Brassard and Peter Høyer. An exact quantum polynomial-time algorithm for simon’s problem. In Fifth Israel Symposium on Theory of Computing and Systems, ISTCS 1997, Ramat-Gan, Israel, June 17-19, 1997, Proceedings, pages 12–23. IEEE Computer Society, 1997.
- [BJMM12] Anja Becker, Antoine Joux, Alexander May, and Alexander Meurer. Decoding random binary linear codes in : How improves information set decoding. In Advances in Cryptology - EUROCRYPT 2012, LNCS. Springer, 2012.
- [BMvT78] Elwyn Berlekamp, Robert McEliece, and Henk van Tilborg. On the inherent intractability of certain coding problems. IEEE Trans. Inform. Theory, 24(3):384–386, May 1978.
- [BV14] Stephen P. Boyd and Lieven Vandenberghe. Convex Optimization. Cambridge University Press, 2014.
- [Coo00] Colin Cooper. On the distribution of rank of a random matrix over a finite field. Random Struct. Algorithms, 17:197–212, 10 2000.
- [DST19] Thomas Debris-Alazard, Nicolas Sendrier, and Jean-Pierre Tillich. Wave: A new family of trapdoor one-way preimage sampleable functions based on codes. In Advances in Cryptology - ASIACRYPT 2019, LNCS, Kobe, Japan, December 2019. Springer.
- [Dum91] Ilya Dumer. On minimum distance decoding of linear codes. In Proc. 5th Joint Soviet-Swedish Int. Workshop Inform. Theory, pages 50–52, Moscow, 1991.
- [Gro96] Lov K. Grover. A fast quantum mechanical algorithm for database search. In Gary L. Miller, editor, Proceedings of the Twenty-Eighth Annual ACM Symposium on the Theory of Computing, Philadelphia, Pennsylvania, USA, May 22-24, 1996, pages 212–219. ACM, 1996.
- [GS91] Danièle Gardy and Patrick Solé. Saddle point techniques in asymptotic coding theory. In Algebraic Coding, First French-Soviet Workshop,, volume 573, pages 75–81. Springer, 1991.
- [KT17] Ghazal Kachigar and Jean-Pierre Tillich. Quantum information set decoding algorithms. In Post-Quantum Cryptography 2017, volume 10346 of LNCS, Utrecht, The Netherlands, June 2017. Springer.
- [MMT11] Alexander May, Alexander Meurer, and Enrico Thomae. Decoding random linear codes in . In Advances in Cryptology - ASIACRYPT 2011, volume 7073 of LNCS, pages 107–124. Springer, 2011.
- [MO15] Alexander May and Ilya Ozerov. On computing nearest neighbors with applications to decoding of binary linear codes. In E. Oswald and M. Fischlin, editors, Advances in Cryptology - EUROCRYPT 2015, volume 9056 of LNCS, pages 203–228. Springer, 2015.
- [NC00] Michael A. Nielsen and Isaac L. Chuang. Quantum Computation and Quantum Information. Cambridge University Press, 2000.
- [Pra62] Eugene Prange. The use of information sets in decoding cyclic codes. IRE Transactions on Information Theory, 8(5):5–9, 1962.
- [Ste88] Jacques Stern. A method for finding codewords of small weight. In G. D. Cohen and J. Wolfmann, editors, Coding Theory and Applications, volume 388 of LNCS, pages 106–113. Springer, 1988.
- [Wag02] David A. Wagner. A generalized birthday problem. In Moti Yung, editor, Advances in Cryptology - CRYPTO 2002, volume 2442 of Lecture Notes in Computer Science, pages 288–303. Springer, 2002.
- [WKH+21] Violetta Weger, Karan Khathuria, Anna-Lena Horlemann, Massimo Battaglioni, Paolo Santini, and Edoardo Persichetti. On the hardness of the lee syndrome decoding problem. 2021. arXiv quant-ph 2002.12785.