编码学
文章平均质量分 91
山登绝顶我为峰 3(^v^)3
只有平凡理想的域(✪ω✪)
展开
-
卷积码(convolutional code)
Convolutional Code分块码(block code):数据流(datastream)被切分为包含kkk个数据符号(data symbol)的块,叫做数据字(dataword),然后将它们分别编码为包含nnn个码符号(code symbol)的块,叫做码字(codeword),拼接成码流(codestream)。单个码字仅仅依赖于单个数据字。Hamming码、BCH码,都是分块码。格码(trellis code):qqq元(q−aryq-aryq−ary)数据流(datastream)被切原创 2022-05-26 22:28:32 · 3343 阅读 · 0 评论 -
低密度奇偶校验码(LDPC)
LDPCLDPC码:低密度奇偶校验码(Low Density Parity Check Code),最初由Gallager提出,后被其他人重新发现。LDPC码可以从稀疏二部图(sparse bipartite graphs)G=({M,C},E)\mathbb G = (\{\mathbb M,\mathbb C\},\mathbb E)G=({M,C},E)中得到:图的一边的nnn个点叫做消息点(message nodes)M\mathbb MM,另一边的rrr个点叫做校验点(check nodes)原创 2022-05-18 21:44:35 · 3422 阅读 · 0 评论 -
基于编码的密码方案:McEliece、Niederreiter
McEliece PKC令(n,k)q(n,k)_q(n,k)q线性码C\mathscr CC可以纠正t≪nt \ll nt≪n位错,G∈GF(q)k×nG \in GF(q)^{k \times n}G∈GF(q)k×n是生成矩阵,令DCD_\mathscr CDC是有效解码算法,令GJ∈GF(q)k×kG_J \in GF(q)^{k \times k}GJ∈GF(q)k×k是GGG的可逆子方阵。GenGenGen:令S∈GF(q)k×kS \in GF(q)^{k \times k}S∈原创 2022-05-17 21:56:54 · 968 阅读 · 0 评论 -
校验子解码问题(Syndrome Decoding)
参考文献:Overbeck R, Sendrier N. Code-based cryptography[M]//Post-quantum cryptography. Springer, Berlin, Heidelberg, 2009: 95-145.校验子映射考虑[n,k]q[n,k]_q[n,k]q线性码C\mathscr CC,定义余维度(codimension)r=n−kr = n-kr=n−k,令HHH是其校验矩阵。定义校验子映射(syndrome mapping):SH:GF(q)n→原创 2022-05-17 19:24:54 · 1840 阅读 · 0 评论 -
解码器:通用极大似然解码器、线性码的校验子解码器、BCH码的PGZ解码器
极大似然解码器对于任意(非线性、线性)编码C⊆Σn\mathscr C \subseteq \Sigma^nC⊆Σn,输入接收到的字y∈Σny \in \Sigma^ny∈Σn,任取码字c∈Cc \in \mathscr Cc∈C,计算汉明距离d←dist(c,y))d \leftarrow dist(c,y))d←dist(c,y)),令z←cz \leftarrow cz←c对于C\mathscr CC中所有的码字c′≠cc' \neq cc′=c计算d′←dist(c′,y)d' \l原创 2022-05-15 16:14:45 · 816 阅读 · 0 评论 -
基于NTT的循环码:RS码、BCH码、RM码
NTT性质令时域v=(vi)∈GF(q)nv=(v_i) \in GF(q)^nv=(vi)∈GF(q)n,其中iii是时间,满足gcd(n,q)=1gcd(n,q)=1gcd(n,q)=1。那么∃m≤n, n∣qm−1\exists m \le n,\, n | q^m-1∃m≤n,n∣qm−1,令w∈GF(qm)w \in GF(q^m)w∈GF(qm)满足wn=1w^n=1wn=1,即www是nnn阶单位根。做NTT变换得到频域V=(Vj)∈GF(qm)nV=(V_j) \in GF(q^m)^n原创 2022-05-14 22:36:09 · 745 阅读 · 1 评论 -
循环码的一些实例:Hamming码、Golay码、CRC码
填充半径和堆积半径线性空间GF(q)nGF(q)^nGF(q)n中的关于v\pmb vvvv的半径为ttt的汉明球(Hamming Sphere),它是一个集合,包含所有的与v\pmb vvvv有至多ttt个不同分量的点。体积定义为包含的点数:V=∑i=0t(ni)(q−1)i V = \sum_{i=0}^t {n \choose i} (q-1)^iV=i=0∑t(in)(q−1)i汉明球不像(欧几里得)球,它使用的距离是汉明距离,只关心不同位置的数量。填充半径(packing radi原创 2022-05-13 17:04:41 · 2788 阅读 · 0 评论 -
循环码:有限域上多项式环的主理想
线性码线性码定义定义:线性码C\mathscr CC,是有限域上线性空间GF(q)nGF(q)^nGF(q)n的子空间。长度为nnn,子空间维度为kkk,最小距离为ddd,那么记做(n,k,d)(n,k,d)(n,k,d)码。性质最好的编码,几乎都是线性码,因此编码理论只研究线性码。线性码的多项式形式令C\mathscr CC是有限域GF(q)GF(q)GF(q)上的线性码,其校验矩阵H∈GF(q)(n−k)×nH \in GF(q)^{(n-k) \times n}H∈GF(q)(n−k)×n,原创 2022-05-11 22:25:45 · 1119 阅读 · 0 评论