9.4 线性分组码

9.4.1 基本概念

  • 代数码:利用代数关系式产生监督位的编码
  • 线性分组码:代数码的一种,其监督位和信息位的关系由线性代数方程决定
  • 汉明码:一种能够纠正一个错码的线性分组码(纠1位错,至少3个码元)
  • 校正子:在偶数监督码中,计算an−1⊕an−2⊕...⊕a0=0a_{n-1} \oplus a_{n-2} \oplus ... \oplus a_0=0an−1​⊕an−2​⊕...⊕a0​=0,实际上就是计算S=an−1⊕an−2⊕...⊕a0S=a_{n-1} \oplus a_{n-2} \oplus ... \oplus a_0S=an−1​⊕an−2​⊕...⊕a0​,并检验SSS是否等于0。SSS称为校正子
  • 监督关系式:S=an−1⊕an−2⊕...⊕a0S=a_{n-1} \oplus a_{n-2} \oplus ... \oplus a_0S=an−1​⊕an−2​⊕...⊕a0​称为监督关系式

9.4.2 纠错基本原理

S=an−1⊕an−2⊕...⊕a0S=a_{n-1} \oplus a_{n-2} \oplus ... \oplus a_0S=an−1​⊕an−2​⊕...⊕a0​中。SSS只有两种取值:表示有错和无错,而不能进一步指明错码的位置
若此码组长度增加一位,则能增加一个监督关系式。这样就能得到两个校正子
两个校正子的可能取值有4种组合,即00,01,10,11,能表示4种不同的信息
若用其中一种组合表示无错码,则其他3种组合可以用于指明一位错码的3种不同位置,从而可以有纠错能力

  • 一般而言,若有rrr个监督关系式,则rrr个校正子可以指明一个错码的(2r−1)(2^r-1)(2r−1)个不同位置

当校正子可以指明的错码位数目等于或大于码组长度nnn时,才能够纠正码组中任何一个位置上的错码,即要求
2r−1≥n2^r-1 \geq n2r−1≥n或2r≥k+r+12^r \geq k+r+12r≥k+r+1

  • 汉明码:一种能够纠正一个错码的线性分组码

【填空题】要求设计一个能够纠正1个错码的分组码(n,k)(n,k)(n,k),设给定的码组中有4个信息位,即k=4k=4k=4,求nnn的值
:由2r−1≥n2^r-1 \geq n2r−1≥n或2r≥r+k+12^r \geq r+k+12r≥r+k+1知,这时要求监督位数r≥3r \geq 3r≥3
若取r=3r=3r=3,则n=k+r=7n=k+r=7n=k+r=7
现在用a6a5a4a3a2a1a0a_6a_5a_4a_3a_2a_1a_0a6​a5​a4​a3​a2​a1​a0​表示这7个码元,用S1S2S3S_1S_2S_3S1​S2​S3​表示校正子,则这3个校正子恰好能够指明23−1=72^3-1=723−1=7个错码的位置
若规定校正子和错码位置的关系如下表:

S1S2S3S_1S_2S_3S1​S2​S3​ 错码位置 S1S2S3S_1S_2S_3S1​S2​S3​ 错码位置
001 a0a_0a0​ 101 a4a_4a4​
010 a1a_1a1​ 110 a5a_5a5​
100 a2a_2a2​ 111 a6a_6a6​
011 a3a_3a3​ 000 无错码

则仅当发生一个错码,且位置在a6a_6a6​、a5a_5a5​、a4a_4a4​或a2a_2a2​时,校正子S1S_1S1​的值才等于1;否则S1S_1S1​的值为零。这就移位着a6a5a4a2a_6a_5a_4a_2a6​a5​a4​a2​四个码元构成偶数监督关系:
S1=a6⊕a5⊕a4⊕a2S_1=a_6 \oplus a_5 \oplus a_4 \oplus a_2S1​=a6​⊕a5​⊕a4​⊕a2​
S2=a6⊕a5⊕a3⊕a1S_2=a_6 \oplus a_5 \oplus a_3 \oplus a_1S2​=a6​⊕a5​⊕a3​⊕a1​
S3=a6⊕a4⊕a3⊕a0S_3=a_6 \oplus a_4 \oplus a_3 \oplus a_0S3​=a6​⊕a4​⊕a3​⊕a0​
{a2=a6⊕a5⊕a4a1=a6⊕a5⊕a3a0=a6⊕a4⊕a3\begin{cases} a_2=a_6 \oplus a_5 \oplus a_4\\ a_1=a_6 \oplus a_5 \oplus a_3\\ a_0=a_6 \oplus a_4 \oplus a_3 \end{cases}⎩⎪⎨⎪⎧​a2​=a6​⊕a5​⊕a4​a1​=a6​⊕a5​⊕a3​a0​=a6​⊕a4​⊕a3​​

【掌握判断】若接受码组为0000011,则按上三式计算得到:S1=0,S2=1,S3=1S_1=0,S_2=1,S_3=1S1​=0,S2​=1,S3​=1。这样,由上表可知,错码位置在a3→a_3 \toa3​→ 0001011

汉明码是(7,4)(7,4)(7,4)码,其最小码距d0=3d_0=3d0​=3
则由d0≥e+1d_0 \geq e+1d0​≥e+1和d0≥2t+1d_0 \geq 2t+1d0​≥2t+1可知,此码能够检测2个错码,或纠正1个错码

【填空题】(15,11)(15,11)(15,11)汉明码中的r=4r=4r=4,最小码距d0=4d_0=4d0​=4

  • 汉明码的码率
    kn=2r−r−12r−1\frac{k}{n}=\frac{2^r-r-1}{2^r-1}nk​=2r−12r−r−1​

    • 当rrr很大时,码率趋近1——汉明码是一种高效编码

【结论】汉明码是一种可纠一位错的线性分组码,其码参数为n=2r−1,k=n−r=2r−1−r,r≥3,d0=3n=2^r-1,k=n-r=2^r-1-r,r \geq3,d_0=3n=2r−1,k=n−r=2r−1−r,r≥3,d0​=3

  • 完备码

    • 通常若要设计能纠正ttt个错码的分组码(n,k)(n,k)(n,k),则当信息位kkk,码长nnn和监督位rrr的选取应满足:
      2r−1≥Cn1+Cn2+...+Cnt=∑i=1tCnt2^r-1 \geq C_n^1+C_n^2+...+C_n^t=\sum_{i=1}^{t}C_n^t2r−1≥Cn1​+Cn2​+...+Cnt​=i=1∑t​Cnt​
      不等式左边是rrr位监督位所能显示的错码类型数,右边是所有可能发生的错码总数。取等式时,所设计的码称为完备码。汉明码是完备码

【典型题】将(7,4)(7,4)(7,4)汉明码的编码结果按行写入一个10行7列的存储器阵列,每行一个码字,共计10个码字,再按列读出后通过信道传输。若传输这10个码字时,信道中发生了连续15个错误,请问接受端解交织并译码后,能译对几个码字?
分析:本题按行输入,按列输出,连续15个错误,则应该是15=10+515=10+515=10+5,其中有5行有2个错码,其他5行为1个错码。由于(7,4)(7,4)(7,4)汉明码是可以纠1个错,因此可以纠正发生1个错码的5行,也就是能译对5个码字

  • 分组码的一般原理

    线性分组码是监督位和信息位满足一组线性方程的码,如前述(7,4)(7,4)(7,4)码满足如下关系:
    {a6⊕a5⊕a4⊕a2=0a6⊕a5⊕a3⊕a1=0a6⊕a4⊕a3⊕a0=0\begin{cases} a_6 \oplus a_5 \oplus a_4 \oplus a_2=0\\ a_6 \oplus a_5 \oplus a_3 \oplus a_1=0\\ a_6 \oplus a_4 \oplus a_3 \oplus a_0=0 \end{cases}⎩⎪⎨⎪⎧​a6​⊕a5​⊕a4​⊕a2​=0a6​⊕a5​⊕a3​⊕a1​=0a6​⊕a4​⊕a3​⊕a0​=0​
    可以改写为
    {1⋅a6+1⋅a5+1⋅a4+0⋅a3+1⋅a2+0⋅a1+0⋅a0=01⋅a6+1⋅a5+0⋅a4+1⋅a3+0⋅a2+1⋅a1+0⋅a0=01⋅a6+0⋅a5+1⋅a4+1⋅a3+0⋅a2+0⋅a1+1⋅a0=0\begin{cases} 1 \cdot a_6 + 1 \cdot a_5 +1 \cdot a_4 + 0 \cdot a_3 +1 \cdot a_2 + 0 \cdot a_1 +0 \cdot a_0=0\\ 1 \cdot a_6 + 1 \cdot a_5 +0 \cdot a_4 + 1 \cdot a_3 +0 \cdot a_2 + 1 \cdot a_1+0 \cdot a_0=0\\ 1 \cdot a_6 + 0 \cdot a_5 +1 \cdot a_4 + 1 \cdot a_3 +0 \cdot a_2 + 0 \cdot a_1+1 \cdot a_0=0\\ \end{cases}⎩⎪⎨⎪⎧​1⋅a6​+1⋅a5​+1⋅a4​+0⋅a3​+1⋅a2​+0⋅a1​+0⋅a0​=01⋅a6​+1⋅a5​+0⋅a4​+1⋅a3​+0⋅a2​+1⋅a1​+0⋅a0​=01⋅a6​+0⋅a5​+1⋅a4​+1⋅a3​+0⋅a2​+0⋅a1​+1⋅a0​=0​
    可以写成矩阵形式:
    [111010011010101011001][a6a5a4a3a2a1a0]=[000]\begin{bmatrix} 1&1&1&0&1&0&0 \\ 1&1&0&1&0&1&0 \\ 1&0&1&1&0&0&1 \end{bmatrix} \begin{bmatrix} a_6\\a_5\\a_4\\a_3\\a_2\\a_1\\a_0 \end{bmatrix}= \begin{bmatrix} 0\\0\\0 \end{bmatrix}⎣⎡​111​110​101​011​100​010​001​⎦⎤​⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡​a6​a5​a4​a3​a2​a1​a0​​⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤​=⎣⎡​000​⎦⎤​
    上式可简写为HAT=0THA^T=0^THAT=0T或AHT=0AH^T=0AHT=0
    其中Hr×n=[111010011010101011001]H_{r \times n}=\begin{bmatrix} 1&1&1&0&1&0&0 \\ 1&1&0&1&0&1&0 \\ 1&0&1&1&0&0&1 \end{bmatrix}Hr×n​=⎣⎡​111​110​101​011​100​010​001​⎦⎤​称为监督矩阵
    A=[a6a5a4a3a2a1a0]A=[a_6a_5a_4a_3a_2a_1a_0]A=[a6​a5​a4​a3​a2​a1​a0​]称为码字

    • HHH矩阵与码字的转置乘积必为零,可以用来作为判断接受码字AAA是否出错的依据
    • 监督矩阵的性质
      • 监督矩阵HHH确定码组中的信息位和监督位的关系

      • HHH的行数就是监督关系式的数目,即监督位数rrr

      • HHH的每行中“1”的位置表示相应的码元参与监督关系
        HHH可以分成两部分
        Hr×n=[1110∣1001101∣0101011∣001]=[PIr]H_{r \times n}=\begin{bmatrix} 1&1&1&0&|&1&0&0 \\ 1&1&0&1&|&0&1&0 \\ 1&0&1&1&|&0&0&1 \end{bmatrix}=[PI_r ]Hr×n​=⎣⎡​111​110​101​011​∣∣∣​100​010​001​⎦⎤​=[PIr​]为典型监督矩阵

    • 典型监督矩阵
      • 将具有[PIr][PI_r][PIr​]形式的HHH矩阵称为典型阵
      • HHH矩阵的各行应该是线性无关的,否则将得不到rrr个线性无关的监督关系式
      • 若一个矩阵能写成典型阵形式[PIr][PI_r][PIr​],则其各行一定是线性无关的
  • 生成矩阵
    {a2=a6⊕a5⊕a4a1=a6⊕a5⊕a3a0=a6⊕a4⊕a3\begin{cases} a_2=a_6 \oplus a_5 \oplus a_4\\ a_1=a_6 \oplus a_5 \oplus a_3\\ a_0=a_6 \oplus a_4 \oplus a_3 \end{cases}⎩⎪⎨⎪⎧​a2​=a6​⊕a5​⊕a4​a1​=a6​⊕a5​⊕a3​a0​=a6​⊕a4​⊕a3​​
    可以写为
    [a2a1a0]=[111011011011][a6a5a4a3]\begin{bmatrix} a_2\\ a_1\\a_0 \end{bmatrix}= \begin{bmatrix} 1&1&1&0\\ 1&1&0&1\\ 1&0&1&1 \end{bmatrix} \begin{bmatrix} a_6\\a_5\\a_4\\a_3 \end{bmatrix} ⎣⎡​a2​a1​a0​​⎦⎤​=⎣⎡​111​110​101​011​⎦⎤​⎣⎢⎢⎡​a6​a5​a4​a3​​⎦⎥⎥⎤​
    上式两端分别转置后,可以变成
    [a2a1a0]=[a6a5a4a3][111110101011]=[a6a5a4a3]Q\begin{bmatrix} a_2a_1a_0 \end{bmatrix}= \begin{bmatrix} a_6a_5a_4a_3 \end{bmatrix} \begin{bmatrix} 1&1&1\\ 1&1&0\\ 1&0&1\\ 0&1&1 \end{bmatrix}= \begin{bmatrix} a_6a_5a_4a_3 \end{bmatrix}Q [a2​a1​a0​​]=[a6​a5​a4​a3​​]⎣⎢⎢⎡​1110​1101​1011​⎦⎥⎥⎤​=[a6​a5​a4​a3​​]Q
    QQQ为k×rk \times rk×r阶矩阵,是PPP的转置,即Q=PTQ=P^TQ=PT
    将QQQ的左边加上一个kkk阶单位方阵,称为生成矩阵,即
    G=[IkQ]=[1000∣1110100∣1100010∣1010001∣011]G= [I_kQ]= \begin{bmatrix} 1&0&0&0&|&1&1&1\\ 0&1&0&0&|&1&1&0\\ 0&0&1&0&|&1&0&1\\ 0&0&0&1&|&0&1&1 \end{bmatrix} G=[Ik​Q]=⎣⎢⎢⎡​1000​0100​0010​0001​∣∣∣∣​1110​1101​1011​⎦⎥⎥⎤​
    GGG称为生成矩阵,因为可以用它产生整个码组AAA,即有
    A=[a6a5a4a3a2a1a0]=[a6a5a4a3]GA=[a_6a_5a_4a_3a_2a_1a_0]=[a_6a_5a_4a_3]GA=[a6​a5​a4​a3​a2​a1​a0​]=[a6​a5​a4​a3​]G
    【知识点】如何由监督矩阵如何产生生成矩阵?
    把监督矩阵典型化后,得到了一个Pr×kP_{r \times k}Pr×k​阶矩阵,转置后得到Qk×rQ_{k \times r}Qk×r​阶矩阵后,前面加一个kkk阶的单位矩阵,就可以得到一个典型化的生成矩阵,信息位和生成矩阵相乘,可以得到整个码组

    • 生成矩阵的性质

      • 具有[IkQ][I_kQ][Ik​Q]形式的生成矩阵称为典型生成矩阵
      • 由典型生成矩阵得出的码组AAA中,信息位的位置不变,监督位附加于其后——系统码
      • 生成矩阵G的各行也必须是线性无关的
        • 任意码组AAA都是GGG的各行的线性组合
        • GGG共有kkk行,若他们线性无关,则可组合出2k2^k2k中不同的码组AAA,它恰好是kkk位信息位的全部码组
        • 若GGG的各行有线性相关的,则不可能由GGG生出2k2^k2k中不同码组
        • 实际上,GGG的各行本身就是一个码组
      • 如果已有kkk个线性无关的码组,则可以将其用来作为生成矩阵GGG,并由它生成其余码组
  • 错误图样
    发送码组AAA是一个nnn列的行矩阵:
    A=[an−1an2...a1a0]A=[a_{n-1}a_{n_2}...a_1a_0]A=[an−1​an2​​...a1​a0​]
    接受码组是一个nnn列的行矩阵BBB:
    B=[bn−1bn−2...b1b0]B=[b_{n-1}b_{n-2}...b_1b_0]B=[bn−1​bn−2​...b1​b0​]
    令接受码组和发送码组之差位
    B−A=EB-A=EB−A=E
    EEE就是错码的行矩阵
    E=[en−1en−2...e1e0]E=[e_{n-1}e_{n-2}...e_1e_0]E=[en−1​en−2​...e1​e0​],称为错误图样
    式中,ei={0,当bi=ai1,当bi≠aie_i=\begin{cases}0,&\text{当}b_i=a_i\\1,&\text{当}b_i \neq a_i \end{cases}ei​={0,1,​当bi​=ai​当bi​​=ai​​

  • 校正子矩阵
    B−A=EB-A=EB−A=E可以改写为B=A+EB=A+EB=A+E
    在接受端解码时,将接受码组BBB带入式
    AHT=0AH^T=0AHT=0
    中AAA的位置进行计算

    • 若接受码组中无错码,则B=AB=AB=A。代入后,该式仍成立,即有:BHT=0BH^T=0BHT=0

    • 当接受码组有错时,E≠0E \neq 0E​=0,将BBB带入AHT=0AH^T=0AHT=0中,该式不一定成立

      • 只有当错码较多,已经超出了这种编码的检测能力时,BBB变为另一许用码组,上式才成立

      • 当错码未超过检错能力时,上式不成立,即其右端不为0。假设此时该式的右端等于SSS,即有
        BHT=SBH^T=SBHT=S
        将B=A+EB=A+EB=A+E代入上式,得到:
        S=(A+E)HT=AHT+EHTS=(A+E)H^T=AH^T+EH^TS=(A+E)HT=AHT+EHT
        上式右端第一项等于0,所以
        S=EHTS=EH^TS=EHT
        将SSS称为校正子。
        当HHH确定后,上式中SSS只与EEE有关,而与AAA无关
        SSS和错码EEE之间有确定的线性变形变换关系。若SSS和EEE有一一对应关系,则SSS将能代表错码位置

  • 线性码的封闭性
    若A1A_1A1​和A2A_2A2​是一种线性码中的两个码组,则仍是其中一个码组
    由于线性码具有封闭性,所以两个码组A1A_1A1​和A2A_2A2​之间的距离(即对应位不同的数目)必定时另一个码组(A1+A2)(A_1+A_2)(A1​+A2​)的重量(即“1”的数目)。因此,码的最小距离就是码的最小重量(除全“0”码组外)

【例题】已知(7,3)(7,3)(7,3)分组码的监督关系为
{a6+a3+a2+a1=0a5+a2+a1+a0=0a6+a5+a1=0a5+a4+a0=0\begin{cases} a_6+a_3+a_2+a_1=0\\ a_5+a_2+a_1+a_0=0\\ a_6+a_5+a_1=0\\ a_5+a_4+a_0=0 \end{cases} ⎩⎪⎪⎪⎨⎪⎪⎪⎧​a6​+a3​+a2​+a1​=0a5​+a2​+a1​+a0​=0a6​+a5​+a1​=0a5​+a4​+a0​=0​
求其监督矩阵、生成矩阵、全部码字及纠错能力
解:由监督关系式可写出监督矩阵
H=[1001110010011111000100110001]H=\begin{bmatrix}1&0&0&1&1&1&0\\0&1&0&0&1&1&1\\1&1&0&0&0&1&0\\0&1&1&0&0&0&1 \end{bmatrix} H=⎣⎢⎢⎡​1010​0111​0001​1000​1100​1110​0101​⎦⎥⎥⎤​
写成典型监督矩阵
H=[1011000111010011000100110001]=[PIr]H=\begin{bmatrix}1&0&1&1&0&0&0\\1&1&1&0&1&0&0\\1&1&0&0&0&1&0\\0&1&1&0&0&0&1 \end{bmatrix}=[PI_r] H=⎣⎢⎢⎡​1110​0111​1101​1000​0100​0010​0001​⎦⎥⎥⎤​=[PIr​]
生成矩阵满足关系[a6a5a4a3a2a1a0]=[a6a5a4][IkQ][a_6a_5a_4a_3a_2a_1a_0]=[a_6a_5a_4][I_kQ][a6​a5​a4​a3​a2​a1​a0​]=[a6​a5​a4​][Ik​Q]
生成矩阵为
G=[IkG]=[IkPT]=[100111001001110011101]G=[I_kG]=[I_kP^T]= \begin{bmatrix} 1&0&0&1&1&1&0\\0&1&0&0&1&1&1\\0&0&1&1&1&0&1 \end{bmatrix} G=[Ik​G]=[Ik​PT]=⎣⎡​100​010​001​101​111​110​011​⎦⎤​
最小码距d0=4d_0=4d0​=4,可纠错1位

  • 扩展汉明码
    在汉明码基础上,再加上一位所有码字进行校验的监督位

    • 监督码字由rrr增加r+1r+1r+1位

    • 信息位不变

    • d0=4d_0=4d0​=4

      • 码长n=2rn=2^rn=2r,码结构(2r,2r−r−1)(2^r,2^r-r-1)(2r,2r−r−1)
      • 纠1位错,同时检测2位错
      • 如(8,4)(8,4)(8,4)、(16,11)(16,11)(16,11)

(7,4)(7,4)(7,4)汉明码字中至少一个码字重量等于d0=3d_0=3d0​=3,加上1位监督位,则d0=4d_0=4d0​=4。于是,相应的监督矩阵HHH通过在(7,4)(7,4)(7,4)码的HHH中顶部或底部加1行“1”,右边加1列“0”来构成

【笔记整理】通信原理第九章复习——线性分组码相关推荐

  1. 【笔记整理】通信原理第九章复习——循环码

    9.5 循环码 9.5.1 循环码的概念 循环性是指任意码组循环移位后仍然是该编码中的一个码组 多项式表示法 一般情况 若(an−1an−2...a0)(a_{n-1}a_{n-2}...a_0)(a ...

  2. 通信原理第九章 多路复用和多址技术

    通信原理第九章 多路复用和多址技术 随着通信网的规模和需求的不断扩大,原来一路信号链路上现要求传输多路信号.且频带宽度足够宽,足以容纳多路信号. 但在一条链路上的信息需要相互独立,故采用正交划分的方法 ...

  3. 高等数学笔记-苏德矿-第九章-重积分(Ⅱ)-三重积分

    高等数学笔记-苏德矿 第九章-重积分(Ⅱ)-三重积分 第三节 三重积分的概念和性质 一.三重积分的典例 01 一些基本概念 (1) 立体的体密度 (2) 求立体V的质量 设有界闭区域立体 VVV 的密 ...

  4. 高等数学笔记-苏德矿-第九章-重积分(Ⅰ)-二重积分

    高等数学笔记-苏德矿 第九章-重积分(Ⅰ)-二重积分 第一节 二重积分的概念和性质 一.二重积分的典例 01 平面薄板的质量 平面薄片一点的面密度的定义: 设有一个平面薄片位于 xOyxOyxOy 平 ...

  5. MYSQL学习笔记(自用)第九章

    MYSQL学习笔记(自用)第九章 第一节. 触发器 | Triggers DELIMITER $$CREATE TRIGGER payments_after_insertAFTER INSERT ON ...

  6. NXP(I.MX6uLL) UART串口通信原理————这个未复习

    参考:Linux NXP (I.MX6uLL) UART串口通信原理 作者:一只青木呀 发布时间: 2020-09-20 16:48:33 网址:https://blog.csdn.net/weixi ...

  7. PMBOK(第六版) PMP笔记——《九》第九章(项目资源管理)

    第九章 项目资源管理 项目资源管理包括识别.获取和管理所需资源以完成项目的各个过程. 规划资源管理: 1.定义:定义如何估算.获取.管理和利用团队以及实物资源. 2.规划资源管理的工具:数据表现(层级 ...

  8. 信息论复习—线性分组码的基本性质

    目录 线性分组码: 非线性码示例: 线性码示例: 许用码字间的距离--码距: 码距与码的检错纠错能力之间的关系: 线性分组码的基本性质: 线性分组码的最小码距与最小码重的关系: 线性分组码的生成矩阵与 ...

  9. 【笔记整理】通信原理第八章复习——多路复用和伪随机序列

    多路复用和伪随机序列 8.1 概述 多路复用 目的:在一条链路上传输多路独立信号 基本原理:正交划分方法 凡是理论上正交的多个信号,在同一条链路上传输到接收端后都可能利用其正交性完全区分开 多路复用基 ...

  10. 山大信息安全原理-第二章复习整理

    对称加密:加密解密使用相同的密钥. 分析攻击:通过加密算法的特征或者密文得到明文或密钥. 暴力破解:尝试所有的密钥. 绝对安全:计算资源无限,密码也不可被破解.没有足够的信息可以唯一确定密文对应的明文 ...

最新文章

  1. 关于Entity Framework自动关联查询与自动关联更新导航属性对应的实体注意事项说明...
  2. Java基础概念(一)
  3. 什么是死锁?死锁产生的四个必要条件?如何避免与预防死锁?
  4. 度量相似性数学建模_【数学建模】day09-聚类分析
  5. php数组函数及用法,php数组函数 in_array 的用法及注意事项
  6. 蓝色三角_叶子长得像韭菜,花朵开得像个糖三角的鸢尾,用这3个方法拍摄它...
  7. Java 获取命令行输入数据(命令行输入,Scanner类)
  8. 用生产者和消费者模式实现奇数偶数不同线程交替输出
  9. c语言复制二进制文件
  10. python删除特定字符串之后的,如何删除字符串中某个字符后的所有内容?
  11. Angular CLI: 全局脚本
  12. 矢量地图质量检查现状与需求分析
  13. 几种反函数和差角公式的推导
  14. Fiddler自动回复器伪造回复
  15. 计算机科学与技术要求具备的能力,计算机科学与技术专业毕业要求
  16. html-HR标签分割线
  17. 三十分钟理解:稀疏矩阵存储格式总结+存储效率对比:COO,CSR,DIA,ELL,HYB
  18. python大数据计算_大数据计算平台 python
  19. Win32 API 函数列表1(格式有点乱)
  20. 关于千牛移动端纯H5插件和QAP应用中H5页面的概念

热门文章

  1. Dynamic Knowledge Graph Completionwith Jointly Structural and Textual Dependency
  2. 论文阅读笔记:Masked Autoencoders Are Scalable Vision Learners
  3. 新的GSMA报告强调“智联万物”在全球的作用
  4. 如何保存gif表情包里面的部分图片?
  5. 信创干部人事档案管理系统单机版 - 人力资源档案管理系统软件
  6. HP惠普游戏笔记本Win10打游戏死机蓝屏无法正常开机【记录】
  7. 圣诞节马上到了。H5+CSS3+JS制作圣诞帽头像源码送给你们。。。
  8. 技能分享:扩展名怎么修改?
  9. 一些有关MATLAB使用的基础习题
  10. Scrapy 出现DEBUG:Filtered duplicate request