基于Polar码的ElGamal型公钥密码体制

2024-02-18 10:14刘冰吴旭聃聂艇
计算机应用研究 2024年1期

刘冰 吴旭聃 聂艇

摘 要:在量子计算技术飞速发展的时代背景下,为了满足密码应用的安全需求,提出了一种基于Polar码的ElGamal型公钥密码体制。采用Polar码为基于纠错码ElGamal型公钥密码体制中的公开码,利用SC译码算法进行译码,并对方案的译码失败概率和安全性进行了分析。结果表明算法具有较高的传信率,选取的参数满足信息集译码复杂度和译码失败概率的要求,且算法满足IND-CPA安全性。

关键词:公钥密码;ElGamal型体制;Polar码;SC译码算法

中图分类号:TP393.04   文献标志码:A   文章编号:1001-3695(2024)01-040-0254-06

doi:10.19734/j.issn.1001-3695.2023.05.0202

ELGamal public key cryptosystem based on Polar codes

Abstract:In the context of the rapid development of quantum computing technology,in order to meet the security requirements of cryptographic applications,this paper proposed an ElGamal public key cryptosystem based on Polar codes.The paper adopted Polar codes as the public code in the ElGamal public key cryptosystem based on error-correcting codes,used SC decoding algorithm to decode,and analyzed the decoding failure probability and security of the scheme.The results show that the algorithm has a high transmission rate,the selected parameters meet the requirements of information set decoding complexity and decoding failure probability,and the algorithm meets IND-CPA security.

Key words:public key cryptography;ELGamal type cryptosystem;Polar codes;SC decoding algorithm

公鑰密码技术是互联网电子商务认证和电子支付的关键技术之一。众所周知,RSA[1]算法和椭圆曲线密码[2]等广泛使用的经典公钥密码系统[3]能被在量子计算机[4]上运行的Shor[5]算法破解。幸运的是,能够进行具有实际参数长度的量子计算的量子计算机尚未出现,仍然可以使用这些经典的公钥密码系统。不过,在不久的将来有望研制出实用的量子计算机。因此,需要准备并深入研究这些算法的替代方案,这些替代方案所引出的研究方向被称为“后量子密码学(PQC)[6]”。

目前,一种安全性较高的 PQC 算法是基于纠错码(编码)的公钥密码算法。NIST最近几年开始征集后量子密码算法,其中大致分为基于纠错码的、基于格的、基于哈希函数的以及基于同源的四类。基于纠错码的方案自1978年被提出以来,就一直以可靠的安全性被人们所青睐。经过筛选,进入到第四轮的后量子算法中,密钥封装算法一共有四个,其中基于纠错码的方案占了三个,它们的安全性都能得到保障。这几种密钥封装算法都是在公钥算法基础上进行构造的,这也证明了基于纠错码的公钥密码方案在后量子领域具有一定的可行性。后续引用NIST算法时特指其基于的公钥密码算法。其中一种方案就是基于纠错码的ElGamal密码体制,这种类型的方案最早由Aguilar-Melchor等人[7]于2017年提出,它是一个安全性依赖于随机准循环码[8]译码的高效密码系统,它本质上与Mc-Eliece型[9]、Niederreiter型[10]不同,因为McEliece型、Niederrei-ter型是直接通过隐藏码的结构来保证方案的安全性,但是隐藏的码结构一旦被揭开,这些方案就会被攻破。ElGamal型加密方式采用了两个独立的码,其中随机准循环码不需要解密,保证了方案的安全性;而公开码C保证了算法的正确性,对效率有很大影响。它让使用难以隐藏但译码效率很高的公开码成为可能。与之相比,McEliece型和Niederreiter型方案的编译码方法是固定的。同时ElGamal型采用的公私钥是临时密钥,每次密钥交换时都会生成一个新的密钥对,这意味着ElGamal型方式在信息传输时的密钥是不断更新的,这样可有效抵御GJS攻击。在这之后,又出现了ElGamal型的HQC[11]和RQC[12]算法,HQC就是第四轮方案中的一个。Barreto等人[13]提出了ElGamal型的CAKE算法,Deneuville等人[14]提出了ElGamal型的Ouroboros算法,Aragon等人[15]提出了BIKE算法,其中NIST第二轮中的BIKE 3是以Ouroboros算法为基础进行改进的ElGamal型算法。2019年,王丽萍等人提出了秩距离下的ElGamal型Piglet-1算法。

本文提出的ElGamal 密码系统在公开码的选择上为极化(Polar)码,极化码由Arikan[16]提出并证明渐近地达到香农极限[17]。该码通过引入“信道极化”现象,并在信道条件下使用,区别于以往的纠错码。在信道极化中,通过线性处理,可以将N个等效信道渐近地分为没有错误的好信道和不能用来传输任何信息的坏信道两种类型,坏信道用来传输预先指定的比特(冻结比特),只使用好的信道来传输信息比特。通过使用SC译码算法[16],可以解码在好信道中所传输的信息。

本文提出了一种基于Polar码的ElGamal型公钥密码体制,通过使用Polar码对公开码C进行替换,提高了信息传输的效率,并对其译码失败概率等问题进行了分析。

1 Polar码简介

1.1 概述

Polar码是Arikan于2009年提出的一种理论上能够达到香农极限的信道编码方式,它根据信道极化现象进行构造。信道极化指的是在完成信道组合和信道分裂后,所有信道会呈现两极分化的现象,即一部分信道的信道容量趋于1,另一部分趋于0,且码长N越大,这种现象就越明显。编码时,在信道容量趋于1的信道上传输信息,在信道容量趋于0的信道传输固定比特。

1.2 预备知识

二进制离散无记忆信道简称B-DMC信道,可以用W表示:X→Y。X为输入,Y是输出,则转移概率为W(y|x),x∈X,y∈Y。信道是二进制输入,输入X∈(0,1},输出和转移概率是任意的。为了传输信息比特,需要选择最可靠的K个子信道作为信息位。A是K个信道的集合,Ac是其补集,包含最不可靠信道的索引。Polar码由三个参数定义:N=2n,R=K/N和基数为K的信息集A∈N,即码长、码率和信息集。

给定一个B-DMC 信道,它有信道容量I(W)和巴氏参数Z(W)两个重要的信道参数。它们表示如下:

其中:I(W)和Z(W)分别用作速率和可靠性的度量。它们取值都是[0,1],并且Z(W)≈0时,I(W)≈1;Z(W)≈1时,I(W)≈0。Z(W)越小,表明信道越可靠,适合传输信息。

1.3 信道极化

信道极化包括信道组合和信道分裂两个步骤[16],其可以從给定N个B-DMC信道W的独立副本中制造出另一组N个信道(W(i)N:1≤i≤N},这些通道在某种意义上显示出极化效应,即随着N变大,极化后的N个信道的对称容量{I(W(i)N)}项趋向于0或1。

1.3.1 信道组合

信道组合是将N个相同且相互独立的B-DWC信道通过递归的形式生成新的信道WN,可以表示为WN:XN→YN,N=2n,n≥0。图1展示了信道W2的组合过程,u21=(u1,u2)表示输入序列,x21=u21G2,WN可以通过类似的过程递归得到,xN1=uN1GN,xNN表示乘以生成矩阵后的输入,G2可以根据图推得到,也称为二元核矩阵,生成矩阵GN由G2通过克罗内克积[16]运算得到,yN1=(y1,y2,…,yN)表示输出。

1.3.2 信道分裂

信道分裂是将组合后的信道WN拆分为N个信道 W(i)N,每个信道可表示为 W(i)N:X→YN×Xi-1。分裂后的N个信道之间存在依赖关系。分裂后的信道转移概率为

其中:N是码长。

计算得到了在完成信道分裂后的巴氏参数与码长N的关系,如图2所示。可以看出,N的值越大,巴氏参数两极分化的现象就越明显,即信道容量两极分化的现象就越明显。

1.3.3 信道极化定理

对于任意B-DMC信道W,δ∈(0,1) ,当N以2的幂趋于无穷时,极化后的信道W(i)N的信道容量为I(W(i)N),I(W(i)N)∈(1-δ,1]的信道数量占全部信道数趋于I(W),I(W(i)N)∈[0,δ)的信道数占全部信道数趋于1-I(W)。

1.4 Polar码编码

根据极化现象可以进行编码。极化后的一部分信道的信道容量无限趋近于1,选取信道容量接近于1(巴氏参数趋近于0)的信道传输信息。

编码步骤:a)信息位的选取;b)构造生成矩阵;c)根据编码公式xN1=uN1GN进行编码。

a)确定极化码码长N和极化码的编码速率R。根据巴氏参数法[16]计算极化后信道:

并对其进行排序,Z(W(i)N)越小,信道就越可靠,由于K=RN,最后选出前K个可靠性较大的信道传输信息,其余NK个信道则传输冻结比特,这就完成了信息位的选取。Arikan[16]指出,在码长N足够大时,信息位数量K会无限接近于NI(W),这就表示,编码速率R会无限接近香农极限I(W)。将信息位的序号集合记为A,发送冻结位的序号集合记为Ac。这里的待编码序列可表示为uN1=(uA,uAc),uN1∈{0,1}N。uA是信息比特序列,uAc是冻结比特序列。

c)运用xN1=uN1GN进行编码。为了方便表示,也可以采用另一种形式:

1.5 Polar码译码

输入序列uN1在经过编码后得到编码后序列xN1,xN1经过信道传输后在输出端得到序列yN1,Polar码译码的工作就是从yN1中得到uN1的估计值N1。

译码算法可以分为以SC为基础的串行译码和以BP[19]为基础的并行译码两种类型。本文采用SC译码算法。SC译码算法在进行判决时只保留一条路径,所以若有一个环节出错,则后边也会跟着出错且无法对其进行纠正,所以存在译码失败概率。对于给定的(N,K,A,uAc)Polar码,通过计算

由于uAc是固定比特,其估计值是已知的,不会发生译码错误,所以Pe也可由式(8)表示。

对于任意的B-DMC信道W和任意选择的参数组合(N,K,A),SC译码下误块率的关键界限为

所以,当式中有uAC时

对于任意给定的B-DMC信道W和确定的码率R

SC译码是渐进最优的,复杂度低,但在有限长度上仍然不足。最高效的译码器都基于SC译码而发展的,允许探索多条路径。存在三种主要的路径探索策略,应用于列表、顺序和反转算法,每种策略都在性能和复杂性之间进行权衡。

2 基于Polar码的ElGamal型方案

2.1 方案基础

Polar码自从被提出以来,就成为编码领域研究的热点,它是唯一能在理论上被证明达到香农容量的编码方式,拥有快速译码算法,具有较高的加解密速率,很多学者将Polar码应用到公钥密码体制当中,达到了理想的效果。基于编码的公钥密码体制大致有McEliece型、Niederreiter型和ElGamal型三种类型。目前,基于Polar码的McEliece型和Niederreiter型方案都已有学者提出,这些方案的思路都是将安全性寄托在Polar码上,而本文方案与它们不同,因为ElGamal型公钥密码方案使用到码保证方案的正确性和码保证方案的安全性两种码,本文利用Polar码能达到香农容量和拥有快速译码算法的特点来提升传信率,同时安全性类似HQC等寄托于随机准循环码。

2.2 方案简介

在本文方案中,Z表示整数环,F2表示二进制有限域。此外,用ω(·)表示一个向量的汉明重量,即它的非零坐标的数量。对于某些正的n∈Z,V表示F2上维度为n的向量空间。V的元素可以视为R=F2[X]/(Xn-1)中的行向量或多项式。如果多项式Xn-1/(X-1)在R中不可约,则称素数n为原始整数。对于u,v∈V,定义它们的乘积类似于在R中,即uv=w∈V且

为了阻止结构攻击,需要使用原始整数长度为n的Polar码,以保证Xn-1只有两个不可约因子。

方案包括密钥生成、加密、解密三个部分。与HQC的ElGamal型方案相比,主要改进之处是将具有快速译码算法的公开码C替换成Polar码。方案存在两种类型的码:a)可译码的[n,k]线性码C,由G∈Fk×n2生成,并且可以通过译码算法C.Decode(·)纠正至少δ个错误;b)随机双循环[2n,n]码,具有奇偶校验矩阵(1,h)。

下边将具体描述方案。首先,生成并输出全局参数param=(n,k,δ,w,wr,we)。F2[X]/(Xn-1)是多项式剩余类环。

基于Polar码的ElGamal型公钥密码体制如下:

c)解密。令DG是Polar码C能纠δ个错误的SC译码算法,解密如下m←DG(v-u·y)=DG(mG+xr2-r1y+e),返回DG(v-u·y)。

2.3 方案分析

如果固定A和uAC,将uA保留为自由变量,则得到从源块uA到码字块xN1的映射。这个映射是陪集码[16],它是线性分组码与生成矩阵GN(A)的陪集,陪集由固定向量uACGN(AC)决定,将这类码统称为GN陪集码。单个GN陪集码将由参数向量(N,K,A,uAC)标识,其中K是码的维度并指定A的大小,K/N为码率,A为信息集,uAC∈XN-K为冻结比特,由于GN(AC)传输的是冻结比特,实际上的生成矩阵是GN(A)。

本文提出的是一种使用极化码来提高信息传输效率的方法,不影响其原本的安全性。安全性还是由随机双循环码来保证。创建极化码生成矩阵后,仅选择给定信道条件下与良好信道对应的行,而丢弃其他行。因此,从这个选择中,可以得到大小为K×N的生成矩阵GN(A)。

为了保证译码的可靠性和足够的安全级别,n选取大于λ2的最小原始素数,以避免代数攻击,其中λ是安全参数。密码系统基于两个码:a)[n,k]码C,其高效译码算法C.Decode(·)是已知的。码C及其生成矩阵G是众所周知的;b)系统形式的[2n,n]随机双循环码,具有奇偶校验矩阵(1,h)。该系统的总体思想是使用双循环码产生一些噪声,这些噪声可以由码C处理和译码。

密码系统的私钥是一个短向量sk=(x,y)。为了加密属于某个明文空间的消息m,它首先通过生成矩阵G进行编码,然后使用校验子s和一个附加的短向量e以防止信息泄露。换句话说,加密一条消息只是简单地为它提供一个特定形式的噪声编码。合法接收者可以使用私钥sk=(x,y)获得明文的噪声版本v-u·y,然后使用高效譯码算法C.Decode恢复明文。为了保证正确性,所有基于McEliece方法的先前构造都依赖于这样一个事实,即添加到消息编码中的错误项小于或等于所使用码的译码能力。在新的构造中,不再需要这个假设,并且密码系统的正确性能够得到保证,因为合法接收者可以使用私钥sk从消息的噪声编码v中删除足够多的错误。

公钥为pk=(h,s=x+h·y)。由于公钥是“公开”信息,所以不仅仅是发送者“Alice”,每个人都知道pk,但对pk的因子x和y并不知道。因此,尽管其他人知道公钥,但他们无法正确解密密文。极化码的生成矩阵有不同的结构,可以使用文献[16]描述的矩阵F以递归的方式推导生成矩阵。

方案加密:K比特的明文m被编码如下:u=r1+h·r2,v=mG+s·r2+e,其中最后一项e是由于信道变换而主要出现在坏信道中的误差向量。

方案的解密:这里讨论了由真实接收者进行的解密。首先,使用密文部分的u乘上私钥中的向量y得到u·y。再用密文v减去u·y,可以获得如下数据:v-u·y。下面可以使用SC译码来依次译码v-u·y的比特。通过递归地计算似然比的值,如果已知前(i-1)位,可以获得第i位的似然比。利用基于似然比的比特决策规则,得到第i位比特的估计值,然后再计算出i+1位的比特值,直到整个块长度完成这个过程。在译码过程中,只需要对信息集作出判决。在冻结集中,插入了预先固定的位。在这里,预先固定的位被设置为全0向量。译码后,只选择位于信息集索引中的那些位。从连续消除译码获取的信息被给出为mG+xr2-r1y+e,再通过对xr2-r1y+e分析,即可解出明文m。

上面的讨论引出了对译码失败概率问题的研究,具体内容将在第3章中详细阐述。

2.4 与McEliece方案的比较

在McEliece加密框架中,采用的思想是直接隐藏码的结构,这导致了两个结果。首先,安全性取决于隐藏码的结构,其次,解密算法是无法更改的,只能对所隐藏的码译码。根据隐藏码的选择,这会产生不同的实例化,从而会导致许多攻击,而且无法被修改。

在本文框架中没有唯一的隐藏码,而是两个独立的码,随机双循环结构保证方案的安全性,公开码C保证正确解密。它使得考虑难以隐藏但译码非常高效的公共编码族成为可能,但是需要在译码效率和实际译码复杂性之间找到平衡。这与解密编码固定的McEliece方案不同,它是可以根据程序进行修改的。

3 译码失败概率分析

ElGamal型方案需要一个公开的纠错码C来消除解密过程中固有的噪声,码C编码速度快且有着精确的译码失败概率(DFR)分析。DFR的分析包括两个步骤:首先,要研究错误向量e′的重量分布,然后分析所选码对给定重量的错误的译码效果。无论使用哪个公共码对其进行译码,都可以进行DFR分析,本文使用的是Polar码。由于该码是公开的,其结构与安全性无关,可选择任意码族,仅影响解密失败率和参数大小。

3.1 汉明距离的误差向量分布

分析方案的译码失败概率,首先要知道错误向量e′=x·r2-r1·y+e=(e′0,…,e′n-1)的每个固定坐标e′k的概率分布。e′k服从伯努利分布,可以假设e′k为自变量,因此可以使用参数p*的二项分布来表示e′的重量分布。换句话说,需要将错误向量建模为具有参数为p*的二进制对称信道。参考HQC方案[11],可以得到

3.2 Polar码译码失败概率分析

本节将分析Polar码的DFR,它也对应整个加密方案的译码失败概率。

Polar码是陪集码,有具体的公式,为了方便计算,在此公式下可以推出其上界,下面提供了这种情况下上界和下界。

给定参数为(N,K,A,uAc)的陪集码,误块率(BLER)定义如下:

命题1 对于任意B-DMC信道W与任意选择的参数组合(N,K,A),SC译码的误块率上界

命题2 对于任意B-DMC信道W与任意选择的参数组合(N,K,A),SC译码的误块率下界

因为Polar码的构造是针对具体信道的,为此先建立一个二元对称信道(BSC)如图3所示,它是一个典型的离散无记忆信道。p*在3.1节中已给出明确的公式,给出的估计值约等于0.3,即为在二进制信道模型下的p值。而实际方案中产生错误向量的模拟信道并非BSC信道,而是一种有记忆的信道,可以利用比特间的相关性来进行纠错。这里采用BSC信道则是从最坏的情况进行估计,从而给出误块率的上界。

算法1 信道基于巴氏参数的精确构造算法

c)将巴氏参数{Z(W(i)2n)}按照从小到大排序,得到最终的可靠性结果

通过数值分析给出了不同p值下的码长N与其对应的所有Z(W(i)N)的值的关系,这里N=37 258,结果如图4~6所示。

的比较密集,也就表明可以在码长较小时基本完成极化现象。还可以进行纵向对比:可以看出p在确定的情况下,随着码长的增加,极化现象就越明显,这也验证了Polar码的最基本的原理——极化现象。为了防止结果的随机性,本文又选取了码长N=65 536的情况进行验证,可以确定这个结论具有普遍性。在完成算法后,只取前K个巴氏参数求和,其中K值由程序所求。对于巴氏参数的求和算法,给出了程序上的实现,验证了表1中的三种安全级别下的译码失败概率的上界,均满足译码失败概率的要求。实际应用中码长一般不是2n,因此需要用到打孔法来实现码长的匹配。以安全参数为128的安全级别为例,选取的实际码长为M=16 411,其中满足2n-1

当实际码长一定的情况下,译码失败概率会随着K的增加而增加,如果大于K的最大值的則不满足译码失败概率的要求,如图7所示。

在满足复杂度要求下适当改变码长,K的最大值几乎没有变化。图8和9是在128安全参数下,实际码长为16 411和16 633的测试结果。

4 安全性分析

4.1 安全性证明

题——s-DQCSD(n,k,w),是问能否以不可忽略的优势判定(H,yT) 服从s-QCSD(n,k,w)分布或是 F(sn-k)×sn2×Fsn-k2上的均匀分布。

基于编码的ElGamal型公钥密码方案满足IND-CPA安全性。类似HQC[11]和Ouroboros[14]方案简要给出如下证明过程:

定义敌手A执行IND-CPA实验 G1的优势:

在G1中替换s为随机向量,构造实验G2,可在G2基础上构造区分2-DQCSD问题实验,满足

|Pr[b=b′in G1]-Pr[b=b′ in G2]|≤Adv2-DQCSD(B)(19)

在G2基础上替换密文(u,v)为随机向量,构造实验G3,可在G3基础上构造区分3-DQCSD问题实验,满足

|Pr[b=b′ in G2]-Pr[b=b′ in G3]|≤Adv3-DQCSD(C)(20)

AdvCPA(A)≤Adv2-DQCSD(B)+Adv3-DQCSD(C)(21)

可得,在2-DQCSD和3-DQCSD困难性假设下,算法具有IND-CPA安全性。

4.2 信息集译码复杂度分析

汉明度量的SD问题的实际复杂性已被研究了50多年。最有效的攻击基于信息集译码(ISD),该技术首先由Prange[21]于1962年引入,后来由Stern[22]和Dumer[23]进行了改进。最近,有学者[24]关于某些常数c提出了2cw(1+negl(1))阶的复杂度。一项专注于w=negl(n)的特定工作证实了这个公式,c与所用码的编码速率k/n之间存在密切相关性[25]。

当码长n增长时,长度为n和维度为k的二进制线性码中的w个错误的复杂度为2cw(1+o(1)),其中c是常数,具体取决于码率k/n和错误率w/n。很多ISD变体在出现时都改进了常数c。当错误数量w是次线性时,w=o(n),所有ISD变体的复杂度仍然具有2cw(1+o(1))的形式。常数c仅取决于码率k/n,并且对于上述所有已知的ISD变体都是相同的,包括五十年前的Prange算法。

参数集的选取涵盖安全类别128(第1类)、192(第3类)和256(第5类)位经典(即前量子)的安全性,通过将安全位除以二(取复杂性的平方根),获得量子安全的安全性。它们与译码失败概率DFR密切相关。

对于参数为[n,k]的随机准循环码,r=n-k,n=2k,它是保证方案安全性的码,需要考虑其时间复杂度,以满足信息集译码复杂度的要求。估算的公式如下:

方案中向量x、y、r1、r2、e在重量为w、wr和we的向量中均匀随机且独立选择。表2给出了三种安全级别下的具体参数,k的选取需要为素数,这是为了避免代数攻击。w是N维向量x、y的重量,wr是r1和r2的重量,类似地,we=ω(e),这些向量的重量取值与w相近。

所选取的参数满足信息集译码复杂度的要求,这样就可以抵抗各种信息集译码算法的攻击,保证了安全性。

最后将本文方案与进入NIST第四轮的三个基于编码的方案进行对比,如表3所示,其中公钥规模是在256安全级别下的值。需要注意的是,在HQC中利用种子扩展的方法来生成部分公钥以进一步压缩公钥尺寸。而表3为在相同条件下进行对比,各算法公钥均采用直接给出的方式。

5 结束语

本文结合编码领域的新成果Polar码和基于编码的ElGamal型公钥密码体制,提出了基于Polar码的El-Gamal型公钥密码体制,具有较高的编译码效率,着重对其译码失败概率方面进行了分析。其安全性是基于随机准循环码的困难问题,能够抵御多种攻击类型,并给出了验证结果。当然,本文所用到的译码算法的效率还有待进一步提高,以后可以对方案的参数做进一步优化。

参考文献:

[1]Rivest R L,Shamir A,Adleman L.A method for obtaining digital signatures and public-key cryptosystems[J].Communications of the ACM,1978,21(2):120-126.

[2]王辈,胡红钢.基于椭圆曲线中配对的密码学研究综述[J].密码学报,2022,9(2):189-209.(Wang Bei,Hu Honggang.Overview of cryptography based on pairing in elliptic curves[J].Journal of Cryptography,2022,9(2):189-209.)

[3]Imam R,Areeb Q M,Alturki A,et al.Systematic and critical review of RSA based public key cryptographic schemes:Past and present status[J].IEEE Access,2021,9:155949-155976.

[4]賽迪研究院.2021量子计算技术创新与趋势展望[EB/OL].(2021-06-04).https://www.ccidgroup.com/info/1096/33151.html.(China Center for Information Industry Development.2021 quantum computing technology innovation and trend outlook[EB/OL].(2021-06-04).https://www.ccidgroup.com/info/1096/33151.html.)

[5]Shor P W.Algorithms for quantum computation:discrete logarithms and factoring[C]//Proc of the 35th annual symposium on foundations of computer science.Piscataway,NJ:IEEE Press,1994:124-134.

[6]杨嘉宇.抗量子密码的研究与应用[D].西安:西安电子科技大学,2021.(Yang Jiayu.Research and application of anti-quantum cryptography[D].Xian :Xidian University,2021.)

[7]Aguilar-Melchor C,Blazy O,Deneuville J C,et al.Efficient encryption from random quasi-cyclic codes[J].IEEE Trans on Information Theory,2018,64(5):3927-3943.

[8]Danish M N,Pasha S A,Hashmi A J.Quasi-cyclic LDPC codes for short block-lengths[C]// Proc of IEEE Aerospace Conference.Pisca-taway,NJ:IEEE Press,2021:1-8.

[9]McEliece R J.A public-key cryptosystem based on algebraic[J].Coding Thv,1978,4244:114-116.

[10]Niederreiter H.Knapsack-type cryptosystems and algebraic coding theory[J].Problems of Control and Information Theory,1986,15(2):157-166.

[11]Melchor C A,Aragon N,Bettaieb S,et al.Hamming quasi-cyclic(HQC)[J].NIST PQC Round,2018,2(4):13.

[12]Melchor C A,Aragon N,Bettaieb S,et al.Rank quasi-cyclic(RQC)[EB/OL].(2020-04-21).https://pqc-rqc.org/doc/rqc-specification_2020-04-21.pdf.

[13]Barreto P S L M,Gueron S,Güneysu T,et al.CAKE:code-based algorithm for key encapsulation[C]//Proc of the 16th IMA International Conference on Cryptography and Coding.Berlin:Springer,2017:207-226.

[14]Deneuville J C,Gaborit P,Zé mor G.Ouroboros:a simple,secure and efficient key exchange protocol based on coding theory[C]//Proc of International Workshop on Post-Quantum Cryptography.Cham:Sprin-ger,2017:18-34.

[15]Aragon N,Barreto P S L M,Bettaieb S,et al.BIKE:bit flipping key encapsulation[EB/OL].(2017-11-30).https://bikesuite.org/files/BIKE.2017.11.30.pdf.

[16]Arikan E.Channel polarization:a method for constructing capacity-achieving codes for symmetric binary-input memoryless channels[J].IEEE Trans on Information Theory,2009,55(7):3051-3073.

[17]Shannon C E.A mathematical theory of communication[J].The Bell System Technical Journal,2001,5(3):3-55.

[18]Reed I S.A class of multiple-error-correcting codes and the decoding scheme[J].Trans of the IRE Professional Group on Information Theory,2003,4(4):38-49.

[19]Saber H,Marsland I.Design of generalized concatenated codes based on polar codes with very short outer codes[J].IEEE Trans on Vehicular Technology,2016,66(4):3103-3115.

[20]Niu Kai,Chen Kai,Lin Jiaru.Beyond turbo codes:rate-compatible punctured polar codes[C]//Proc of IEEE International Conference on Communications.Piscataway,NJ:IEEE Press,2013:3423-3427.

[21]Prange E.The use of information sets in decoding cyclic codes[J].IRE Trans on Information Theory,1962,8(5):5-9.

[22]Stern J.A method for finding codewords of small weight[J].Coding Theory and Applications,1989,388:106-113.

[23]Dumer I.On minimum distance decoding of linear codes[C]//Proc of the 5th Joint Soviet-Swedish International Workshop Information Theory.1991:50-52.

[24]May A,Ozerov I.On computing nearest neighbors with applications to decoding of binary linear codes[C]//Proc of the 34th Annual International Conference on the Theory and Applications of Cryptographic Technique.Berlin:Springer,2015:203-228.

[25]Canto T R,Sendrier N.Analysis of information set decoding for a sub-linear error weight[C]//Proc of the 7th International Workshop.Cham:Springer,2016:144-161.