1、第 11 章 数据通信的容错和加密359第 11 章 数据通信的容错和加密容错和加密是一种提高数字通信系统可靠性的技术。本章简要介绍在信息的传输、存储和交换过程中广泛应用的奇偶校验码、循环码等差错控制码以及常用的数据加密技术。11.1 数据通信的容错数据通信中的噪音是不可避免的,为了克服因此而造成的误差,数据通信中的容错是必不可少的。下面将着重介绍差错控制码的概念、模型以及奇偶校验码和循环冗余校验码。11.1.1 引言1 差错控制码的概念香农(Shannon)于 1984 年在“通信的数学理论”一文中提出了关于在噪声信道中传输信息的重要理论,即香农第二定理。该定理指出:只要对信息进行适当的编码
2、(提供足够的冗余) ,就可以在不牺牲信息传输率的前提下把噪声信道引起的差错减少到任意希望的程度。香农的这一定理奠定了差错控制码的理论基础,后经海明(Hamming)等人的进一步发展,差错控制码形成了一套完整的理论体系。差错控制码抑制(控制)噪声的影响(差错)的实质是通过增加额外的信息(冗余信息)来揭露(检测)和或屏蔽(纠正)差错。图 11-1 示出一个数字通信系统的模型。源信息可能是消息、符号、数据或图表等信息。编码器把源信息转换成可传输的符号序列。这个序列中的每一个符号称为一个码符,表示一条信息的一个码符序列称为一个国字或码向量,表示所有源信息的码字的集合就称为一个码。源信息被转换成码字的过
3、程称为编码,码字被转换成它所表达的信息的过程称为译码。以最有效的方式(即平均用最短的码符序列)来表达信息的码称为源码。源码中含冗余最少,通常认为是无冗余码。相反,非源码的码称为冗余码或差错控制码(因为冗余能够提供差错控制能力) 。具有检测差错能力的码称为检错码,具有纠正差错能力的码称为纠错码。图 11-1 差错控制码的应用尽管差错控制码是为数字通信系统设计的,但是,它的应用远不仅限于此。事实上,只要把图 11-1 中的传输部件理解为存储部件或变换部件,立即可以看到差错控制码的更加广泛的应用领域RS-232 和调制解调器高级通信编程3602 差错模型在码字的传输过程中,有许多原因(如环境的干扰、
4、部件的失效等)都可能导致差错的发生。差错的表现形式(差错模型)由系统及系统的应用环境决定。本节将涉及以下几种最常见的差错模型并讨论控制这些差错的编码和译码技术。(1) 独立差错模型如果一个失效(或环境的一次干扰)只会使码字中的一个码符发生差错,或者说,一个码字的各个码符的差错的发生是相互独立的,则称失效的这种差错表现形式为独立差错。(2) 突发(burst)差错模型如果一个失效可能使一个码字的任意一段相邻的码符同时发生差错,则失效的这种差错表现形式被称为突发差错。(3) b 邻接差错如果一个码字被分成若干个长度为 b 的字段,一个失效可能使一个字段中的任意多个码发生差错,则失效的这种差错表现形
5、式就称为长度为 b 的 b 邻接差错。b 邻接差错是突发差错的一个特例。3 译码原则在图 11-1 所示的模型中,在正常情况下译码器的功能是把码 S0的码向量转换成它所表达的信息,该功能只须执行 S0的编码过程的逆过程就能实现。当差错发生时,即当传输部件输出的序列(向量)Y S0 时,编码过程的逆过程不能给出 Y 对应的源信息。若 S0是检错码,若发现了 Y S0。则检测到了差错。若 S0是纠错码,则译码器必须首先从 S0中选择一个码向量 V,把 Y 纠正成 V,然后把 V 译成它所表达的信息。问题是,如何选择 V 才最合理(真正达到纠错的目的)?通常有以下三种策略。(1) 条件极大似然译码当
6、收到一个非码向量 Y 时,在 S0中选择码向量 V 的最理想的原则是使S0 (11-1))|Pr(max)|Pr(ii式中 是在 Y 出现的条件下出现 X 的概率。满足式( 11-1)的纠错原则称为条|X件极大似然译码原则。(2) 极大似然译码在式(11-1)中, 不仅同 Vi 与 Y 的差异和差错模型有关,而且同 Vi 对应的)|Pr(Vi源信息的出现概率有关。精确地统计出所有源信息的出现概率往往是一件困难甚至不可能的工作。为此,可以对式(11-1 )作修改,使选择的码向量 V 满足在应该收到 V 的条件下可能收到 Y 的概率最大,即S0 (11-2))|Pr(max)|Pr(iYi这一修改
7、了的纠错原则称为极大似然译码原则。当所有源信息的出现概率相等时,上述两种纠错原则是等效的。(3) 最近距离译码原则第 11 章 数据通信的容错和加密361当码向量的所有码符出差错的概率都相等时,极大似然译码原则简化为下述最近距离译码原则。当收到向量 Y 时,最近距离译码原则选择的码向量 V S0。满足d(Y,V)=min d(Y ,V i) S0 (11-3)式中 d(Y,V)是向量 Y 与 V 间的距离,它反映 Y 与 V 之间的差异。距离的概念将在以后的各种差错模型下得到具体化。4 差错控制的策略在图 11-1 所示的传输系统中,发信者和受信者之间仅有一条单向传输线路。为了实现纠错,唯一的
8、办法是传送纠错码。这种差错控制策略通常称为前向纠错。如果在发信者和受信者之间增加一条反向传输线路,则只须把源信息编成检错码就可以 实现纠错,因为当译码器检测到差错时,可以通过反向传输线路要求重发以消除差错。这种差错控制策略通常称为自动重发请求(ARQ) 。ARQ 策略的优点是用检错码代替纠错码,因而可望比前向纠错策略用更少的正向传输线和更简单的编码器和译码器。ARQ 策略的缺点是对传输部件的永久性故障引起的差错的控制能力不如前向纠错策略,而且,ARQ 策略使系统纠错的开销时间集中于差错发生时(重发) 。因此,ARQ 系统的实时响应性不如前向纠错系统。目前,大多数编码系统中都采用了前向纠错策略,
9、例如,存储系统、远程通信系统等。ARQ 策略在电话、电报和某些卫星通信系统中得到了广泛的应用。事实上,容错技术中的重试、向后恢复等技术也采用了 ARQ 策略。11.1.2 循环冗余校验码CRC 码(Cyclic Redundancy Check)循还冗余校验码是目前通信传送系统和磁介质存储器中广泛采用的一种编码形式。下面将对其进行详细的介绍。CRC 码一般指在 k 位信息码之后再拼接 r 位校验码。其编码格式如图 11-3 所示。整个编码长度为 n 位,其中 k 位信息位,另外附加 r=(n 一 k)位校验位,这种编码又称(n,k)码。应用 CRC 码的关键是如何从 k 位信息位得到 r 位校
10、验位,以及如何从 kr 位信息码判断是否出错。图11-3 CRC 编码(1) CRC 码的编码方法:对于一个给定的(n,k)循环码,可以证明存在一个最高次幂为(nk)的多项式 q(x) ,g(x)为循环码的生成多项式,根据 g(x)可以生成 k 位信息的校验码。(2) CRC 码的校验原理:假设被传送的 k 位二进制信息用表达式 C(x)表示,则C(x) =Ck1 Ck2 C1C0,C i 取值 0 或 1。RS-232 和调制解调器高级通信编程362将 C(x)左移 nk 位(即左移 r 位) ,则可表示成 C(x)2 r。这样 C(x)的左边就会空出 r 位,这 r 位便是校验码的位置。用
11、 C(x)2 r 除以 g(x)生成多项式,所得到的余数即为所求的校验位。假设余数表达式为 r(x) ,商的表达式为 q(x) ,C(x)2 r 除以 g(x)后得:)()(2grCr将上式两边同乘以 g(x)得: )()()(xrxqr将上式右边的余数 r(x)移到余式左边得:)()(2)(grC上式左边的 C(x) 2r r(x)即为所求的 n 位 CRC 码,r(x)就是校验位。从上式可以看出,等式右边是 g(x)的倍式,那么等式左边也应该是 g(x)的倍式。把等式左边生成的 n 位CRC 码传送到接收方,接收方收到这 n 位编码后,同样除以 g(x),如果传送正确,余数应为 0,如果余
12、数不为 0 则传送出错。为什么要将前面式子右边的 r(x)移到等式的左边仍然为加 r(x)呢?这是因为 CRC 码编码所用到的特殊运算,即每一位二进制位在进行四则运算时都采用模 2 运算,运算时不考虑进位和借位。 模 2 加减:模 2 加减运算就是按位加,逻辑上可以用异或门实现。模 2 加与模 2减相同。00=0,01=1,10=1 ,11=0。 模 2 乘:模 2 乘时用模 2 加求部分积之和。例: 模 2 除:模 2 除是按模 2 减求部分余数。每上一位商,部分余数都要减一位。上商规则是只要余数最高位为 1,则商为 1,否则为 0。当部分余数的位数小于除数时,该余数为最后余数。例: 第 1
13、1 章 数据通信的容错和加密363在求 CRC 码过程中始终要遵循按位模 2 运算规则,因此 r(x)移到等式左边后仍为位加。(3) 举例:有一个(7,4)码,求 C(x)1100 的 CRC 码,生成多项式 g(x)1011。解: C(x)=1100C(x)左移 nk=3 位,即 C(x)23=110023=1100000g(x)=1011C(x)23 除以 g(x),余数位 010形成 CRC 码位 1100010(4) CRC 码的纠错前面已经讲过,将收到的 CRC 码除以约定的生成多项式 g(x),如果余数为 0,则码字无错。如果某一位出错,则余数不为 0,不同位出错余数也不同。表 1
14、1-1 列出了上例的出错模式。更换不同的测试码字,只要生成多项式不变,余数与出错位的对应关系就不变。表 11-1 (7,4)循环校验码出错模式(生成多项式 g(x)1011)CRC 码 A1 A2 A3 A4 A5 A6 A7 余数 出错位正确 1 0 0 0 1 0 000 无1 0 0 0 1 1 001 A71 0 0 0 0 0 010 A61 0 0 1 1 0 100 A51 0 1 0 1 0 011 A41 1 0 0 1 0 110 A30 0 0 0 1 0 111 A2一位出错1 0 0 0 1 0 101 A1(5) 关于生成多项式并不是任何一个最高次幂为(nk)的多项
15、式 g(x)都可以作为生成多项式。从检错和纠错的要求出发,生成多项式要满足以下要求: 任何一位发生错误都使余数不为 0; 不同位数发生错误余数不同; 余数继续作模 2 除,应使余数循环。使用者可以从有关资料上直接查到对应不同码制的生成多项式。表 11-2 给出了部分生成多项式。表 11-2 部分生成多项式N K g(x)多项式 g(x)二进制码7 4 g(x)=x3+x+1或 x3+x2+11011或 11017 3 g(x)= x4x 3+x+1或 g(x)= x4x 3+x2+111101或 1011115 11 g(x)= x4x+1 1001131 26 g(x)= x5x 2+1 1
16、001011041 1024 g(x)= x16x 15+x2+1 11000000000000101RS-232 和调制解调器高级通信编程36411.2 数据加密技术随着数据通信技术应用的不断深入,数据加密技术显得日益重要。本节将介绍几种常用的数据加密算法并将给出其 Basic 实现程序。11.2.1 概述1 密码技术历史回顾密码技术有着悠久的历史,现代英语中的 cryptograph(密码学)一词源于古希腊的kryptos(隐藏)和 graphein(写)这两个单词。密码学伴随着人类社会的发展不断完善。四千多年前至公元 14 世纪,是古典密码技术的孕育、兴起和发展时期。这个时期以手工作为加
17、密手段。14 世纪到 20 世纪中叶,是古典密码学发展的鼎盛时期。16 世纪前后,广泛地采用了密表和密本作为密码的基本体制,著名的维吉尼亚密码就是其中一例。该密码采用的是一种多字母表单字母表单元代替法。它依据“维吉尼亚字母方阵”进行加密。若设明文为 Vigenere Cipher(维吉尼亚密码)则密钥为 CSL,加密时将密钥写在明文下面,再依维吉尼亚密表得出密文,即:明文Visenere Cipher密钥CSLCSLCS LCSLCS密文XARGGPTW NKHSGJ在维吉尼亚密码于 16 世纪正式命名之前,1379 年拉文迪提出了一套专用“密钥”系统;文艺复兴时期,享有“西方密码之父”美誉的
18、意大利人艾伯蒂对加密和破译做出了很大贡献。他不仅发明了密码史上的第一个字母频率表,还发明了实现多表替代的密码盘。利用这种密码盘可以变换出多个字母表,开辟了密码技术新的重要途径,使得同一个明文单词能以完全不同的伪装形式出现。在此基础上,1553 年,意大利的白拉索提出使用密钥来控制加密字母表的选择和变换,从而把多表替代向前推进了一步。这一时期的另一个特点是,有关密码术的著述和专著相继出现。上文提及艾伯蒂发明的字母频率表是现存的最早的一部关于密码分析的著述。此外,还有许多有关密码术的著作。1499 年德国的约翰尼斯写下了他的密写 。虽然此书直到 1606 年才正式出版,但他仍不失为密码史上第一个撰
19、写密码技术专著的作者。1516 年约翰尼斯的另一部有关密码的专著复写术面世,书中涉及的众多加密字母表,其中含有可以将明文情报转换为一篇“恭维”文章的玛丽亚密码。1586 年,法国人维热约热出版了论密码 。他在书中不仅罗列了众多的密码、多字母密表、密钥,还论述了他的密钥体系。1927 年,移居美国的俄国人弗里德曼和史密斯这对“密码技术史上最有名的夫妻搭档”写出了密码破译原理一书。弗里德曼是第一次世界大战期间杰出的密码破译专家,英文单词 Cryptanalysis(密码破译)就是他创造的。1931 年,美国人亚德利出版其美国密室 。该书被译成多种外文,一时间久销不衰。第 11 章 数据通信的容错和
20、加密365这一时期的加密手段发展到机械手段,除上文提及的艾伯策发明的那种简单的密码盘外,20 世纪 30 年代前后出现了更为复杂而精巧的转轮密码机,譬如日本制造的“紫色”密码机 PURPLE,德国制造的“恩尼格码”密码机 ENIGMA,瑞典人哈格林研制的 Hagdin 密码机(即美国的 M209 密码机) 。密码机是一种把明文情报转换为密文的机械设备。例如美国 M209 密码机可以产生 101405850 个加密字母而不出现一次重复。第二次世界大战期间,传统的密码技术得到了前所未有的发展和利用,加密手段也发展到电子阶段密文通过无线电发报机发送,例如 1942 年美国制造的“北极”发报机,前苏联
21、组建的“露西”谍报网等。20 世纪 50 年代之后到现在,是传统密码学新的高水平发展时期和现代密码学的产生与研讨时期。特别是电子计算机技术的出现,促使密码学这一古老的学科焕发出空前的青春与活力,并从军事、外交等敏感部门的应用扩大到金融、商业、科技、经济等民用领域。这一时期最具有代表性的两大成就如下。1971 年美国学者塔奇曼(Tuchman )和迈耶(Meyer)依据信息论科学创始人香农(Shannon)提出的“多重加密有效性理论”创立的,后于 1977 年由美国国家标准局采纳颁布的联邦数据加密标准DES。1980 年,DES 被美国国家标准协会正式采用作为美国商业加密算法。DES 的一个显著
22、特点是公开算法的所有细节,而让秘密完全寓于密钥之中。它的面世,把传统密码学的研究推进到一个崭新的阶段,是“密码史上应用最广,影响最大的传统密码算法” 。它具有较高的保密强度,而且易于用大规模集成电路予以实现,所以被誉为是密码史上的一个里程碑。第二个重大成就,是 1976 年由美国著名的密码学家狄菲(Diffie )和赫尔曼(Hellman)创立的公开密码体制的新思想。这是密码史上划时代的革命性的新概念。它标志着现代密码学的诞生,引起了数学界、计算机科学界和密码界众多学者的广泛关注和深入探索,从而开创了密码学理论研究的新纪元。相对于传统密码体制而言,公开密钥密码体制的独特之处在于:它的加密算法和
23、加密密钥均可通过任何非安全通道(如普通电话线等)公布于众,仅将解密密钥保持秘密,特别是它易于解决密码通信系统发送方和接收方的认证,便于实现“数字签名” ,确认双方的身份,为密码技术在商业、金融等民用领域的普遍应用创造了条件,展示了令人神往的广阔前景。自 1978 年以来,陆续出现了许多实现这种新思想的实验性方案。例如:美国学者迈克尔(Merkle) 、赫尔曼(Hellman)提出的基于背包问题的公开密钥密码体制;累夫斯特(Rivest) 、沙米尔(Shamir)和艾德勒曼( Adleman)提出的基于数论中剩余函数的密钥单向特性的公开密钥密码体制(即 RSA 体制) ;荷兰学者沙尔玛(Salo
24、maa)提出的基于语言理论的公开密钥密码体制;波兰学者提出的建立在幂等元素性质之上的公开密钥密码体制;我国学者提出了基于有限自动机理论的公开密钥密码体制,基于布尔代数的公开密钥密码体制等。2 密码学的应用意义密码学的诞生及其发展,是人类文化水平不断进步的一个具体标志。历史上,人们在开始使用文字通信不久,就出现了用秘密方式伪装语言来迷惑对方的现象;自从有了战争,RS-232 和调制解调器高级通信编程366秘密通信方式及其破译手段日趋完善,其重要意义得到了充分体现。从古代战争史到近代战争史,都不乏因使用密码而获得胜利的成功战例。第一次世界大战期间,美国人对德国外长齐默尔曼秘密电报的破译,促使在战争
25、之初不愿参战的美国一改初衷,于 1917 年对德军宣战,扭转了战事的局面。在第二次世界大战期间,美国于 1940年借助密码技术,以 1200 架飞机打败了是自己三倍兵力的德军,赢得了具有决定意义的不列颠之战的巨大胜利。被称为人类历史上最关键战役之一的中途岛战役所取得的辉煌战果归功于美军成功地破译了日本海军 JN25 密本加密电报,使得美军适时地调集兵力击毁了日军曾用以偷袭珍珠港的四艘主力航空母舰,给予日本海军致命的打击而陷入完全瘫痪。随着计算机技术的问世及其日新月异的迅猛发展和广泛应用(特别是计算机网络应用的逐步增加) ,计算机已深入到人类社会生活的各个领域,对人类社会的进步产生了前所未有的积
26、极影响,人们开始步入到信息时代。信息的价值越来越为人们所重视,当代人已经认识到“信息就是时间,信息就是财富,信息就是生命” 。另一方面,由于计算机系统本身存在的脆弱性,又使得计算机系统中的信息资源和社会机密成为不法分子窥视、作案的一个主要目标, “计算机犯罪”正作为一种社会问题开始出现。如果计算机系统中的机密信息被泄露乃至被窃取,则将对国家安全造成直接或间接的威胁。因此,对信息资源的安全保护不仅成为军事、外交、政治上的迫切需要,而且还成为当今社会中商业、金融、经济、科技等各个行业和部门广泛关注的共同问题。对数据加密是有效地控制信息安全的一个重要方面。传统密码学的应用可以保护在非安全通道上的传输
27、信息;现代密码学的应用则可保护在通信网络中的传输信息以及存储在计算机系统中的信息,实现信息的保密性和真实性。密码学已经走出了“黑屋”研究,它的广泛应用不仅对国家安全,而且对人类生活的各个方面将产生越来越重要的影响。3 密码学的基本概念和有关术语把真实信息转化成为秘密形式信息的技术,有密写和编码两种类型。转化前的信息称为明文,转化后产生的信息称为密文。密写是指隐去明文信息本身固有的书面可见形式,使这些信息变得不可见,让局外人看不出来,发现不了,无可阅读,例如用微粒书写信息。如果说密写是一种外观上“无形”的表达形式,它并不改变明文信息本来的含意,那么编码则是对明文信息进行特殊变换处理的“有形”表现
28、过程。实现该过程的方式有如下两种: 密本方式(代码方式)以明文信息中的单词或者音节作为其变换的基本单位; 密表方式(密码方式)以组成明文信息的字符(字母)为变换单位。在密表方式中,可以把组成明文信息的字符变形不变位,或者变位不变形。前者即为替代密码,后者就是置换密码。不论是哪种类型的密码,它们所隐蔽的是明文信息的真实含意,即便局外人能够窃取到明文信息经变换后的某些“有形”表达形式密文,却无法识别、无从理解它们。密码学(又称保密学)既针对信息通信的保密,又针对存储数据(包括程序)的加密。它研究信息的变换与逆变换,实现明文信息真实含意的隐蔽和重现,防止局外人对信息的窃取、盗用。通信双方中的信息发送
29、者把明文转换成密文的过程称之为加密;而信息接收者,把接收到的密文再现为明文的过程就是解密。这就是密码学所包括的两大分支:第 11 章 数据通信的容错和加密367 密码编码学研究加密算法的设计,用于明文编码,隐蔽明文信息的真实含意; 密码分析学研究如何把密文还原成明文,即密码的破译。加密、解密都是在密钥的控制下进行的。把控制加密过程的密钥称为加密密钥;把控制解密过程的密钥称为解密密钥。它们分别是确定加密算法与解密算法变换过程的基本参数。11.2.2 基本的加密技术如前所述,密码编码学和密码分析学是密码学的两大组成部分。密码系统包括以下四个方面: 明文空间信息本来的原始空间; 密文空间明文经“改头
30、换面”后得到的令他人(局外人)难以理解、辨认的信息空间; 密钥空间控制算法的实现,由信息通信双方所掌握的专门信息空间; 算法“计算某些量值或对某个反复出现的数学问题求解的公式、法则或程序。它规定了明文和密文之间的变换方式。密钥和算法是密码体制中两个最基本的要素。在某种意义上,可将算法视为常量,它可以是公开的;将密钥视为变量,它是秘密的。加密和解密通常是对一特定的密码体制而言的。在一般情况下密码体制指定一些(常常是多个)密码。每个密钥 k 确定一种加密函数 ek 和解密函数 dk,用 ek 从明文 P 中获得密文 C:ek(P)C ,反之则:dk(C)P 。因此,d k(ek(P)P 。一个良好
31、的密码体制应具备的基本条件是:在不知道 dk 的情况下要将密文恢复成明文是十分困难的。众所周知,把密文还原成明文的过程即为密码的解密(破译) 。良好的密码体制应经受得住各种类型的破译攻击。数据加密标准 DES 的设计者 CHMeger 认为,所谓攻击是指“在一组给定的假定之下进行的,它们包括为达到诸如恢复明文或密钥之类的预定目标而可能获得信息的假定” 。它们大体上可分为主动型攻击(active attack)和被动型攻击(Passive attack) 。例如消息穷尽攻击、分析攻击、块频率分析及确定性攻击等。信息论的奠基人 CEShanon 指出,一个良好的密码体制的设计必须考虑到: 对密码破
32、译攻击的工作因素破译密文极为困难。算法的复杂程度使得破译者在破译过程中付出的工作量和资源代价极大; 密钥的长度为了在各种环境下都能够易于密码体制的使用,在有效地防破译的前提下,密钥长度应很小; 加密、解密的操作流程简便易行; 错码率及错码的扩散程度低; 加密后源信息的长度不受影响。RS-232 和调制解调器高级通信编程368可以认为,1975 年以前的密码体制是经典密码体制(或称传统密码体制) ,而块密码(亦称分组密码)则是经典密码中一种特别有用的密码类型。它把明文信息分割成块结构,逐块予以加密和解密;块的长度由算法设计者预先确定。密文输出块的每个信息同时受明文输入块的每个信息与密钥中每个信息
33、的综合影响,即密文中的各个信息都是明文和密钥中每个信息的尽可能复杂的数学函数,它将复杂到破译者要想从中求出其密钥的工作量极大,大到破译者在计算上望而止步、不可能实现的地步。如果按照生成密文所采用的不同方法分类,那么此密码最基本的类型有: 置换(移位)密码; 替代密码; 乘积密码。本节简述这三种密码的若干基本算法,并着重于这些算法的计算机实现技术,分别给出每一种算法的计算机高级程序设计语言的“同解”源程序,略去算法的理论推导、计算复杂度方面的分析以及这些算法的逆过程解密算法。1 置换密码置换密码又称移位密码或互换密码。它是依照某种算法使明文中的各个信息“变位不变形” ,即不改变明文中的每个信息本
34、身的形式,仅改变它在明文中的位置,再将如此重新排列后所得到的信息作为密文。实现置换密码的方法有很多,例如栏栅法、矩阵法等。为了叙述方便,下文中的明文(记为 Ptext )均以COMPUTER CENTERCHENGSHENGLI 为例。 栏栅法这种加密方法是先把明文书写成两行,再按列顺序得出密文。对已设明文 COMPUTERCENTERCHENGSHENGLI 作变换,按图 11-4 的箭头所指方向,重新排列得密文(C text)COCMHPEUETGE RS HCEENTGT ELRI。图 11-4 栏栅变换之一在此基础上再稍加变换,例如将明文排成三行,再按列序正、反相间生成密文。即对明文 Ptext 按图 11-5 方式进行变换得密文 CText CEGONMTSPEHURETNECGRH ELCNI。